[openbeos] Re: Networking : R5 or BONE

  • From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
  • To: openbeos@xxxxxxxxxxxxx
  • Date: Sat, 26 Jan 2002 18:19:04 CET (+0100)

> Really? It says in the FAQs that they are staying in user land. 
> Besides, much of the overhead with net_server is not context switch 
> overhead. app_server has the same kind of ops and low latency. What 
> killed net_server's performance was the truly enormous number of 
> copies 
> (I think it was in the double digits) that it made of *every* piece 
> of 
> data that went through it. BONE was a one copy (memory->net card) 
> stack, and was made as close to zero-copy as humanly possible, which 
> is 
> responsible for much of its performance.

Yes, the FAQ is outdated; it was originally planned to implement a user
-land stack.

And although the number of copies is huge for the net_server, this 
could be fixed with a better implementation. And if the Net API would 
do it right, real zero-copy would be possible, which is not with the 
BSD API.

But the context switch overhead and the fact, that Travis is already 
working on a networking stack in kernel-space lead to the conclusion 
that it makes more sense to follow that route.

Adios...
   Axel.



Other related posts: