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.