Date: Sat, 09 Nov 2002 14:08:33 -0800 From: Terry Lambert <tlambert2@mindspring.com> To: dolemite@wuli.nu Cc: freebsd-hackers@freebsd.org Subject: Re: Netgraph could be a router also. Message-ID: <3DCD8761.5763AAB2@mindspring.com> References: <20021109180321.GA559@unknown.nycap.rr.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Alex Newman wrote: > >I'm well aware of the Click Router project (which dealt with data > >at layer 3, not layer 4, BTW). > > But I could have for instance zebra taking care of the control plane > and click working with the data plane right? You're missing the point, which is that they've effectively written their own OS, which is loaded as a kernel module in FreeBSD or Linux, and takes over processing. > >Among other things, it rewrote the ethernet card firmware to get > >the packets per second rate up where it is. > > Wow that is crazy Not really. Card vendors apparently can't wite useful firmware to save their lives. Professional grade hardware is no good without professional grade software. Unfortunately's most EE's think they can write software as well as most software people think they can design hardware ("We built the hardware, after all, who knows better how to use it than us?!? We'll make this interface where you load a segment register, and then you poll this memory location, because interrupts are slow, and the most important thing any system can possibly do with its time is take with the hardware I built...", etc., etc.). > >Netgraph is more comparable to Streams. It does not support a > >"pull model", as used by ClickRouter elements, nor does it support > >the idea of flow (which, theoretically, could allow a two port card > >with shared memory avoid the PCI bus transfer overhead, the same > >way that the SiBytes card that Chris Demetriou had a hand in creating). > > So does that mean i couldn't use it for the dataplane like click? By "it", I guess you mean "FreeBSD"? What are your performance goals? Where is FreeBSD relative to those goals, right now, without you doing anything to it? Where is FreeBSD relative to those goals, right now, if you tune it very carefully, but don't hack any code? What data rate do you need to support? How much are you willing to modify FreeBSD? How much are you willing to modify your hardware design? 64 Bit PCI-X has a burst rate of about 8Gbit, which means that it's average operation is going to be about 1/3 that, and then you have to add memory latency on top of that, if you DMA data from the network card into main memory, instead of just between network cards. If you are willing to significantly modify FreeBSD, and address all of the latency issues, a multiport Gigabit router is doable, but you haven't even mentioned the most important aspect of any high speed networking system, so it's not likely that you're going to be able to do this effectively, just approaching it blind. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3DCD8761.5763AAB2>