Cisco today goes some way towards making good on its promise to open up IOS, at least as far as the version running on its ISR (integrated services router) is concerned. The router will also be able to run third-party applications created using a Cisco SDK, the first step in Cisco's attempt to replace servers with network infrastructure
devices. While IOS still isn't as open as Windows (let alone Linux, on which it's based), it will allow customers to port their apps to the ISR, reducing the need for branch office servers without backhauling traffic to a data center.
Though Cisco has been the most vocal about its plans to move into server territory, it isn't the first company to ship a platform for running applications on a router. That honor went to 3com, whose OSN (open service network) first shipped about a year ago, and since then Riverbed has launched a similar initiative with WAN optimizers.
Architecturally, Cisco's product looks very similar to 3com's: Both involve branch office routers, and neither place applications directly on the router. Instead, apps run on a separate add-on module that's essentially a (very) scaled-down blade server. Requiring a separate module increases costs compared to the software-only approach of competitor Riverbed, but it helps isolate apps from the routing infrastructure while augmenting the router with the processor, memory and hard drive necessary to run x86 code.
While 3com gets by with a single OSN module, Cisco has two separate products thanks to the different expansion slots used by different ISR models. Modules are available for the mid-to-high-end 1841, 2800 and 3800 ISRs, with memory capacities ranging from 256 MB to 2 GB. This isn't much by server standards (or by any standards), but it's similar to 3com's 1GB. Both are aimed very much at running services used by a small workgroup at a branch office, not to virtualize entire datacenters.
Cisco's modules run what it describes as the AXP (application extension platform), a new version of IOS built on a Linux foundation. This is designed to make porting apps to the module relatively easy, but the presence of a Cisco proprietary layer means that the OS isn't identical to any Linux distribution. At minimum, Linux apps need to be recompiled. For them to usefully access the router's features, they also need to be rewritten to use its APIs.