Network Stack Code Re-write (Possible motivations...?)
freebsd-questions-local at be-well.ilk.org
Mon Dec 22 22:13:18 UTC 2008
RW <rwmaillists at googlemail.com> writes:
> On Sat, 20 Dec 2008 17:54:24 -0500
> Lowell Gilbert <freebsd-questions-local at be-well.ilk.org> wrote:
>> commercial routers generally do not use their OS kernel this way -- it
>> is far more common that the kernel does send and receive packets
>> within its native IP stack.
> If I'm understanding you right, I'm surprised by that (the native part).
> It make any proprietary software less portable. You're also tying your
> code into third-party internals, which sounds like a maintenance
Yes, but I think that's a fairly small effect. The packet send/receive
interface involved is generally pretty small, regardless of how you
> I would have thought that the likes of Cisco and Alcatel
> etc would would have reusable codebases that abstract the OS and
> minimize OS dependencies.
That's always a goal, of course. Completely throwing out the protocol
stacks in the OS kernel doesn't make most things more portable, though.
There are a fair number of system parameters that are already
implemented in OS kernels, and reinventing that wheel doesn't buy you
> What's the advantage, don't routers usually lead OS's in terms
> of new protocol support?
Protocol support per se is generally fairly independent from the OS in a
hardware router; high level protocols are usually handled in userland,
and low level protocols are mostly a hardware issue.
Lowell Gilbert, embedded/networking software engineer, Boston area
More information about the freebsd-questions