OS Router Challenges Proprietary Networking
Jane Walker writes "Dave Roberts talks about Vyatta's open source router and how open source technology may soon alter the landscape of enterprise networking." From the article: "Initially, we believe that the x86 PC running Vyatta -- given the range of hardware that's available in the PC world -- can basically replace the midrange of the router market; to use Cisco terminology and model numbers, simply because it's convenient shorthand, basically from the 2800 series to the 7200 series. There's a whole host of equivalent products from Nortel and Alcatel -- but essentially in that range. I wouldn't describe it as Cisco model numbers so much as T1 branch office to gigabit LAN product categories."
I love open source and all, but can a project like this really offer the same number of WIC modules?
I can plug damn near anything into a Cisco router....
I guess those BSD guys have just been playing around all these years.
"To those who are overly cautious, everything is impossible. "
While a company such as Vyatta may be able to deliver the software to actually do the routing, you still need hardware pieces to actually connect to your equipment.
There aren't many PCI (full or half height) cards that can do ATM with OC3, etc....
Then there is the size factor. Data centre space is sparse and expensive, cisco (and such) equipment is built for this space. x86 PCs also run hotter (and louder) than specifically designed hardware from vendors such as cisco, juniper and 3com. oh and they draw more power.
i just can't see how this will take off in the top end of the market.
sure, for a small branch office that connects to frame, isdn, dsl or pstn and runs a vpn it may be fine, but not in a data centre or racked environment.
It is when you have shareholders. Like it or not.
"I'd rather be a lightning rod than a seismometer." -Ken Kesey
who the hell modded this up? the routers described in the article and the pissweak nat-in-a-boxes that parent speaks of are so dissimilar it's not funny. -1, clueless idiot talking about things he knows nothing about
Right; the parent's point is that commodity hardware is even threatening the high end (e.g. above the Cisco 7200 mentioned in the summary).
Of course, lack of support and other issues will keep this away from the enterprise for the foreseeable future-- but this could make sense for a lot of startups with specialized needs or wishing to push a lot of traffic on the cheap.
I got a few concerns about diting my cisco and juniper boxen. I've blown a sup on cat 6000. for those of you not up on your cisco slang, a sup is your supervisor engine, analogus to a motherboard/processor pair. two thumb screws, one console cable and 10 minutes later. i was back on line. I cant see swapping out x86 platform that quick. I dont see something like statefull switch over in an x86 style platform. the hardware/software intergration for that is absolutly sick. while on the topic of x86... I peer one of these guys up to a new AS or VRF and suck down a larger BGP table, is it going to pause forwarding and routing while it does a memory swap becuase its underlying os wants to do memory managment buisness as usual style? I'm not knocking open source, but wanting to set your sights on the upper end of the router segment, you need to look at why cisco and juniper are that segment. If you have a need to sustain 4 to 5 gig of routing performance, you're probably going to need more than a routing table
The common responses on here seem to revolve around the inability of PC hardware to handle high bandwidth. To an extent this is necessarily true. A general purpose PC is going to rely on its CPU to handle each packet traversing the box. Processors are fast and cheap and becoming faster and cheaper as time passes. Most commercial router vendors realized quite a while ago that any architecture whose perforance is based on a single, centrl CPU inherently represents an eventual bottleneck and thus a serious challenge to scalability. As such, most commercial routers have moved to a model where forwarding is pushed as far as possible from a control plane that is as discrete as possible.
In other words, if we push the actual heavy lifting of forwarding out to distributed components (e.g. the interfaces themselves) then we're no longer left in a situation where our BGP process is vying for cycles and memory access with packets in transit. When properly implemented this means that I can be moving huge amounts of traffic through my router without interrupting network control traffic, management of the box, etc, etc.. It also means that by distributing packet switching they can hit massive performance levels with a comparitively modest CPU.
At the high end with Cisco and Juniper you're paying for the development of some exotic ASIC's and some even more exotic interface hardware. You're also paying for the capability to support high density - PC platforms aren't going to support tens of 10G or hundreds of 1G interfaces any time soon. The capacity for redundant CPU's, stateful failover, etc is also worth remembering.
At every level of Cisco and Juniper hardware you're paying for the ongoing development and maintenance of a highly complex codebase full of features that just aren't practical (or, in some situations, possible) for the OSS community to implement well. Implicit in this is a huge system test and regression faculty.
I've used and deployed open source routers up to OC3 bandwidth. They worked and, for the most part, worked well when faced with relatively simple networking tasks - multihoming enterprises to the Internet, basic WAN routing, etc. My observation has been that these platfoms start to fall apart when faced with requirements for complex routing policies, fancy QoS, MPLS, etc.
There's a definite place in the world for PC-based open source routing platforms - particularly at the edge of larger networks or in the midst of small and medium sized ones but I don't think Cisco and Juniper need to worry about being rendered completely obsolete any more than Oracle needs to worry about being driven completely out of business by MySQL or PG.
So it's a growth issue. I buy that.
Now, question: How hard would it be to solicit new VC funding if you've suddenly got a big name customer? Crank that couple million to a couple hundered million.
I realize there's training timeline issues along with it, but an appropriately motivated company should be able to handle it.
I think it's just an issue of knowing when to change leadership (e.g., the guy that motivates a couple hundered programmers isn't necessarily the same guy capable of motivating a couple thousand tech support monkeys)
110100 1101000 1101000 1100110 0 1101111 1101000 1100011 1
Perhaps not a $40K router, but a $15K one--for $3K (including the replacement, should the first unit fail).
1) it takes an RTOS to make things work well. You can grind all the driver code you want, but an RTOS foundation is required with lots of cache
IOS is not a real-time operating system, which nicely disproves your claim. 8-)
2) only PCI-X bus gets close, and most 1Us don't have it. That gives you a real ceiling in terms of port-port throughput; don't kid yourself
In some of the Cisco low-to-mid-range routers, the line cards are connected to PCI busses (not that what's usually called L3 switches, of course). In fact, these routers are basically PCs with a MIPS CPU.
3) the algorithms needed to maintain cross-bar speed are gruesome. You don't find this kind of code in anything but sledge-hammered C and assembler, and code that only a mother (and an embedded systems engineer) could love. There is very little forgiveness here.
Most vendors do not offer wirespeed performance in all cases, either. You usually do not need the last 10% or 20% in performance. Given the savings (both in terms of device price and training), I'm willing to sacrifice 50% of the performance and more.
The real issue is the feature set of the available software. For GNU/Linux or the BSDs, the basic protocol support is usually there (but perhaps just in a userspace implementation which sacrifices some performance), but even pretty common things are sometimes missing because those who sponsered the development didn't need it (and it's not required by the standards, either). In some case, the implemntation isn't very mature yet. For the price difference of a Cisco box, you could hire someone in Russia to implement the missing stuff, but this gets a bit complicated, especially if you just want a working router.
On the other hand, there are some things which are impossible to do with IOS (obscure policy-based routing, most kinds of payload analysis, prefix-based accounting, OpenVPN). But most people don't expect routers to do such things anyway.