Speeds and feeds are not all that matters when building reliable routers for the internet core.
Indeed, the software component of these high-speed devices may play an even larger role in ensuring that packets and sessions are not dropped. That's why Cisco Systems is building more resiliency and redundancy into its next generation IOS software. That's also why Juniper Networks plays up the reliability of its Junos operating system.
And perhaps that's why these two rivals try to point out the deficiencies of each others' software offerings. Although Cisco has been around a lot longer than Juniper, both companies are courting the same customers in the service provider market, where Cisco is a relative newcomer.
"Juniper continues to eat away at Cisco's leading market share -- which is still in the 70 per cent range -- and this trend should continue," market researcher Current Analysis stated in a recent report.
"Our broader strength is our six major releases in 18 months," says Scott Kriens, Juniper CEO, commenting on Junos. "We can deliver innovation faster than anyone else. It's that accumulated breadth that is our competitive advantage."
Eighteen months pales in comparison to 15 years, which is how long Cisco has been developing and selling IOS.
"We are the market share leader from a control plane perspective," says Martin McNealis, marketing manager in Cisco's IOS Technologies division, referring to the Multi-protocol Label Switching, VPN, voice and multicast features of the Cisco software. "We're not hearing service providers hammer the table saying we need to have certain features because (Juniper) has it."
It's neither Juniper nor Junos that's prompting Cisco to build more resiliency, availability and redundancy into the next major release of IOS. IOS will feature "more intelligent" handling of outages and service upgrades, McNealis says.
"We're now looking to deliver a bulletproof architecture," McNealis says. "Now that we're a systems company, we have to accept that there will be hardware and software failures."
Cisco is building stateful redundancy into IOS whereby information on the state of routes, sessions or packets can be replicated within a router chassis. Currently, Cisco offers redundancy between two distinct routers via the Hot Standby Routing Protocol in IOS.
Juniper refers to this version of IOS as IOS NG, with NG standing for "Next Generation". IOS NG is Cisco's attempt to be more competitive with Junos by having a more modular architecture and being tailored specifically for service providers, Kriens says.
Juniper's definition of modular means separate processes -- such as routing protocols, management and security -- each run in protected memory. Currently, IOS is "monolithic", Kriens says, meaning all processes run together and are interdependent.
"It's kind of comparing Windows with DOS," Kriens says, noting the modular nature of Windows compared with the monolithic nature of DOS.
Perhaps it's best to compare an operating system that was built from the ground up to perform routing versus one that has its roots in a general purpose operating system such as Berkeley Sockets -- the precursor to Unix -- but has been modified to do routing, says Cisco's McNealis. IOS is the former while Junos is the latter.
"IOS was always tailored for infrastructure," McNealis says. "It's very network-centric. It's control plane and data plane optimisation versus a general-purpose operating system. You do make some compromises when it has to be that portable."
Juniper selected Berkeley Sockets as the source code for Junos because it was readily available in the public domain, Kriens says. But more importantly, Berkeley Sockets source code represents four years and 300 to 400 years of collective labour of development, he says.
"Any resemblance (to Berkeley Sockets) would be so remote as to be irrelevant," Kriens says.