Question about bridging code

Barney Wolff barney at databus.com
Thu Oct 16 16:00:11 PDT 2003


On Thu, Oct 16, 2003 at 05:18:24PM -0400, Robert Watson wrote:
> 
> My conclusion from my BPF bridge experience was that prototyping in
> userspace made it a lot easier to experiment with changes, and
> dramatically reduced the development time.  On the other hand, it did
> terrible things to performance on high bandwidth tests, and because we
> weren't using mbufs in userspace, made it harder to port to the kernel. 
> One nice benefit, though, was that we had TCP/IP people programming TCP/IP
> stuff without having to teach them about mbuf semantics or kernel
> debugging :-).

It's actually not so hard to get kernel mbuf-oriented code running in
userspace.  I did a userspace PPP implementation in 1994, and when it
came time to do VJ compression I took the BSD kernel VJ code (from lbl.gov,
if I recall correctly), defined some of the mbuf fields in my own
structs, and it compiled and worked correctly without changing a single
line of the VJ code.

That project would never have survived if every bug had caused a kernel
panic.  The code is still running in commercial service today.

-- 
Barney Wolff         http://www.databus.com/bwresume.pdf
I'm available by contract or FT, in the NYC metro area or via the 'Net.


More information about the freebsd-net mailing list