[JNPR] Network stack as a module (RFC)

Gleb Smirnoff glebius at FreeBSD.org
Mon Nov 18 16:42:00 UTC 2013


On Sun, Nov 17, 2013 at 10:10:15AM -0800, Marcel Moolenaar wrote:
M> > S> Add a NETSTACK option to facilitate separating network stack pieces from the
M> > S> rest of the OS core. This is the first step towards having the network stack
M> > S> as a module.
M> > 
M> > You probably mean "having the network stack optional", since under module we
M> > usually mean loadable kernel module.
M> Actually, we do mean module. At Juniper we have the FreeBSD stack
M> as a loadable module now. We also have the Juniper stack as a
M> loadable module. Depending on context, we can use the most
M> appropriate one. Yes, this implies that we also have a stable
M> interface between the NIC driver and the network stack itself.
M> We'll be contributing that as well...
M> Note that assumptions in the finalization of setting up networking
M> limits the network stack from being loaded manually, not to mention
M> that unloading is an entirely different challenge. Nonetheless it's
M> very useful without all that and I think it will make it easier for
M> people to change the network stack or experiment with beta versions
M> this way.

Have you measured the performance impact on the loadable stack? I
suppose many functions, that are now called directly, with loadable
stack will be called via functon pointers.

M> It all really comes in handy for the opaque ifnet work...

Actually I wanted to start it for a long time. But since at
EuroBSDCon 2011 you said that you plan to import Junipers'
transform of ifnet, I held off my intentions. Until now I
was almost sure that plan on brining junipers ifnet was

Totus tuus, Glebius.

More information about the freebsd-net mailing list