Open Source BGP-router?
Can someone point me to an Open Source OS which can host a BGP-capable router? Thanks. Best Regards, Simon -- The future is still out there...
On Thu, Dec 06, 2001 at 12:28:53AM -0800, Simon Higgs <simon@higgs.net> wrote a message of 15 lines which said:
Can someone point me to an Open Source OS which can host a BGP-capable router?
You mean free software (Open Source is a buzzword for suits)? Any free Unix will work. I use Zebra <URL:http://www.zebra.org/> on Debian <http://www.debian.org/> machines running the Linux kernel but, from reading the Zebra list, it seems most Zebraists use FreeBSD.
There is also the Multi Threaded Routing Toolkit from Merit, which has a Cisco-a-like configuration. Please See: http://www.mrtd.net/ Regards, James On Thu, 6 Dec 2001, Stephane Bortzmeyer wrote:
On Thu, Dec 06, 2001 at 12:28:53AM -0800, Simon Higgs <simon@higgs.net> wrote a message of 15 lines which said:
Can someone point me to an Open Source OS which can host a BGP-capable router?
You mean free software (Open Source is a buzzword for suits)? Any free Unix will work. I use Zebra <URL:http://www.zebra.org/> on Debian <http://www.debian.org/> machines running the Linux kernel but, from reading the Zebra list, it seems most Zebraists use FreeBSD.
I have implemented a number of network throughout the years (shut up Neil :-) starting with Gated on NetBSD then OpenBSD and then switched gated to zebra. Current personal 'state of the art' is OpenBSD 3.0 with zebra 0.92a - waiting for the new stuff in the zebra CVS tree to hit a new release. Peter ----- Original Message ----- From: "Simon Higgs" <simon@higgs.net> To: <nanog@merit.edu> Sent: Thursday, December 06, 2001 8:28 AM Subject: Open Source BGP-router?
Can someone point me to an Open Source OS which can host a BGP-capable
router?
Thanks.
Best Regards,
Simon
-- The future is still out there...
I have implemented a number of network throughout the years (shut up Neil :-) starting with Gated on NetBSD then OpenBSD and then switched gated to zebra.
Current personal 'state of the art' is OpenBSD 3.0 with zebra 0.92a - waiting for the new stuff in the zebra CVS tree to hit a new release.
:-) I was going to suggest the same thing, a few things to bear in mind with this approach: It needs significant maintenance in a high bandwidth / large network setup, i.e. its fine for driving a couple of E1 or T1's and maybe a couple of FE's but beyond that it turns into a management nightmare. Tweaking kernel compile parameters in the middle of the night because you've ran out of sometype of buffer isn't my idea of fun. If you are strapped for cash then I highly recommend it but thats about the only situation I'd recommend it in, you can also gain a number of flexibilities in that you can hack the source code and do alsorts of other interesting stuff. Regards Neil.
Any of the BSD derivatives will work fine. My personal preference being FreeBSD. Remember though, without significat hardware changes, the home x86/BSD/zebra solution is not going to work in a core environment - there are backplane throughput issues stopping you there. This should be considered as box for either the lab or the small lan/wan environment. Yours, J.A. Terranson sysadmin@mfn.org On Thu, 6 Dec 2001, Simon Higgs wrote:
Date: Thu, 06 Dec 2001 00:28:53 -0800 From: Simon Higgs <simon@higgs.net> To: nanog@merit.edu Subject: Open Source BGP-router?
Can someone point me to an Open Source OS which can host a BGP-capable router?
Thanks.
Best Regards,
Simon
-- The future is still out there...
Does anybody have any rough figures for what kind of load (both bytes/s total throughput and packets/s) a more or less vanilla x86 running a free OS can handle today? The last time I looked at this -- several years ago -- I seemed to top out at somewhere close to 200 Mb/s total throughput; I figured I could safely count on 100 Mb/s. That is consistent with a 32-bit PCI bus running at 33 MHz: raw capacity is 1 Gb/s, but each bit takes two trips over the bus, so that's 500 Mb/s, but then there's substantial bus overhead (contention, burst setup overhead, etc.). I didn't look at packet count limits, as they didn't seem to be a problem for me in my actual traffic mix; but I expect that with enough small packets, packet count would become the limiting factor. That was in the days when a Pentium 133 was a mid-range PC. I would expect faster memories, bigger caches, but (most of all) a 64-bit PCI bus running at 66 MHz to make a big difference. Hypothetically, a box that could handle, say, 750 Mb/s is not suitable for "core" use, but it can certainly handle more than "a couple of T1s." Jim Shankland
Does anybody have any rough figures for what kind of load (both bytes/s total throughput and packets/s) a more or less vanilla x86 running a free OS can handle today? The last time I looked at this -- several years ago -- I seemed to top out at somewhere close to 200 Mb/s total throughput; I figured I could safely count on 100 Mb/s. That is consistent with a 32-bit PCI bus running at 33 MHz: raw capacity is 1 Gb/s, but each bit takes two trips over the bus, so that's 500 Mb/s, but then there's substantial bus overhead (contention, burst setup overhead, etc.).
It should be alot I agree but you have to factor in drivers, other cards esp if [ISA] disk drives video cards etc.
I didn't look at packet count limits, as they didn't seem to be a problem for me in my actual traffic mix; but I expect that with enough small packets, packet count would become the limiting factor.
That was in the days when a Pentium 133 was a mid-range PC. I would expect faster memories, bigger caches, but (most of all) a 64-bit PCI bus running at 66 MHz to make a big difference.
Hypothetically, a box that could handle, say, 750 Mb/s is not suitable for "core" use, but it can certainly handle more than "a couple of T1s."
Only if you have a decent serial card, which I've never seen. Neil.
* nanog@shankland.org (Jim Shankland) [Thu 06 Dec 2001, 17:28 CET]:
Does anybody have any rough figures for what kind of load (both bytes/s total throughput and packets/s) a more or less vanilla x86 running a free OS can handle today? The last time I looked at this --
From the FreeBSD commit logs of src/sys/i386/conf/NOTES (rev 1.961):
| Add device driver support for the Broadcom BCM570x family of gigabit | ethernet controllers. This adds support for the 3Com 3c996-T, the | SysKonnect SK-9D21 and SK-9D41, and the built-in gigE NICs on | Dell PowerEdge 2550 servers. The latter configuration hauls ass: | preliminary measurements show TCP speeds of over 900Mbps using | only normal size frames. | | TCP/IP checksum offload, jumbo frames and VLAN tag insertion/stripping | are supported, as well as interrupt moderation. | | Still need to fix autonegotiation support for 1000baseSX NICs, but | beyond that, driver is pretty solid.
Hypothetically, a box that could handle, say, 750 Mb/s is not suitable for "core" use, but it can certainly handle more than "a couple of T1s."
Depends on what your core looks like. Note that the above were TCP speeds, not packet forwarding speeds; I assume counts for the latter would be slightly higher. To save you some clicking, a PowerEdge 2550 is a 2U chassis with one of those adapters on-board connected to a 64-bit 66 MHz PCI bus, three free 64-bit 33 MHz PCI slots, dual Pentium III CPUs and oodles of ECC 133 MHz SDRAM with memory interleaving support. Oh, and please note that I am staying very far away from a discussion of PC vs. Cisco equipment quality and software reliability. :-) Regards, -- Niels.
Date: Thu, 6 Dec 2001 08:32:19 -0800 From: Jim Shankland <nanog@shankland.org>
Does anybody have any rough figures for what kind of load (both bytes/s total throughput and packets/s) a more or less vanilla x86 running a free OS can handle today? The last time I looked at this -- several years ago -- I seemed to top out at somewhere close to 200 Mb/s total throughput; I figured I could safely count on 100 Mb/s. That is consistent with a 32-bit PCI bus running at 33 MHz: raw capacity is 1 Gb/s, but each bit takes two trips over the bus, so that's 500 Mb/s, but then there's substantial bus overhead (contention, burst setup overhead, etc.).
Hardly vanilla x86, but in between PCs and <insert favorite router mfg here> one has CompactPCI and cPSB. A quick Google search will give more info. Eddy --------------------------------------------------------------------------- Brotsman & Dreger, Inc. - EverQuick Internet Division Phone: +1 (316) 794-8922 Wichita/(Inter)national Phone: +1 (785) 865-5885 Lawrence --------------------------------------------------------------------------- Date: Mon, 21 May 2001 11:23:58 +0000 (GMT) From: A Trap <blacklist@brics.com> To: blacklist@brics.com Subject: Please ignore this portion of my mail signature. These last few lines are a trap for address-harvesting spambots. Do NOT send mail to <blacklist@brics.com>, or you are likely to be blocked.
In the referenced message, measl@mfn.org said:
Any of the BSD derivatives will work fine. My personal preference being FreeBSD. Remember though, without significat hardware changes, the home x86/BSD/zebra solution is not going to work in a core environment - there are backplane throughput issues stopping you there. This should be considered as box for either the lab or the small lan/wan environment.
Yours, J.A. Terranson sysadmin@mfn.org
Of course, it is possible to only offload the best-path computations, and keep non-PC routers for packet forwarding. This in much the same way as the current route-servers operate. For IBGP, route-reflector clusters with the masters being zebra boxes, would probably work. For EBGP, mrtd is probably the best if you already express your routing policy in the IRR (public or private), or gated/zebra otherwise. Haven't tested in "real-life" but it seems workable.
On Mon, Dec 10, 2001 at 02:26:30PM -0500, Stephen Griffin <stephen.griffin@rcn.com> wrote a message of 24 lines which said:
Of course, it is possible to only offload the best-path computations, and keep non-PC routers for packet forwarding. This in much the same way as the current route-servers operate. For IBGP, route-reflector
Actually, Juniper routers work exactly that way (the BGP computation is done on a separate processor, which is a Pentium). I would like to see packet forwarding cards for PC (with suitable documentation to write the Linux driver): it would allow to build "poor man's Junipers" with only free software.
participants (10)
-
E.B. Dreger
-
James Thomason
-
Jim Shankland
-
measl@mfn.org
-
neil@DOMINO.ORG
-
Niels Bakker
-
Peter Galbavy
-
Simon Higgs
-
Stephane Bortzmeyer
-
Stephen Griffin