Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 17 Nov 2001 18:14:21 -0600
From:      Alfred Perlstein <bright@mu.org>
To:        "George V. Neville-Neil" <gnn@neville-neil.com>
Cc:        Julian Elischer <julian@elischer.org>, Peter Wemm <peter@wemm.org>, Julian Elischer <julian@vicor-nb.com>, current@FreeBSD.ORG, net@FreeBSD.ORG, wollman@FreeBSD.ORG
Subject:   Re: re-entrancy and the IP stack.
Message-ID:  <20011117181421.E13393@elvis.mu.org>
In-Reply-To: <200111172215.OAA421007@meer.meer.net>; from gnn@neville-neil.com on Sat, Nov 17, 2001 at 02:17:32PM -0800
References:  <julian@elischer.org> <200111172215.OAA421007@meer.meer.net>

next in thread | previous in thread | raw e-mail | index | archive | help
* George V. Neville-Neil <gnn@neville-neil.com> [011117 16:17] wrote:
> I recommend you all look at The Click Modular router
> 
> http://www.pdos.lcs.mit.edu/click/
> 
> which is a step in the right direction.
> 
> Of course given the current architecture it may be very hard
> to adapt it to this kind of model.
> 
> I led/worked on a project at Wind River Systems to do a multi-instance
> stack based off of the 4.4 BSD lite code.   I can tell you that without
> quite a bit of rearchitecting what you get is always a hack.

Actually, usually when you rearchitect what you get is a hack to
allow multi-instance instead of relying on tried and true algorithms
like Van Jacobson. :)

> There are (were?) over 100 global variables in the 4.4BSD lite code.  I've
> not counted on 4.4 or -CURRENT so I can't say.  There are also the issues
> of the locks though I suspect in -CURRENT (since the kernel is MP) you
> have handled these in some way.
> 
> An extensible, multi-threaded TCP/IP would NOT look like the 4.4BSD-Lite code.

I really can't agree with this, there isn't all that much that makes the
version of the stack in FreeBSD not modular, I usually find that with
enough study one quickly learns why things are done versus immediatly
screaming "this needs to be rewritten so that _I_ can understand it."

> Is this a goal of FreeBSD now?  I am working on some things to make this 
> possible
> but it is independent of FreeBSD and very very early days as yet.

The goal right now is more MPsafe than extensable, an extensable
stack would be an interesting project but I doubt it would be as
stable nor as fast as what we already have.

-- 
-Alfred Perlstein [alfred@freebsd.org]
'Instead of asking why a piece of software is using "1970s technology,"
 start asking why software is ignoring 30 years of accumulated wisdom.'
                           http://www.morons.org/rants/gpl-harmful.php3

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011117181421.E13393>