Architecture · Topic 3 of 6

IOS, IOS XE, IOS XR and Provider Virtualization

Compare IOS, IOS XE and IOS XR architecture, then describe NFV infrastructure, VNF workloads, containers and application hosting in a service provider.

  • 5 min
In a nutshell
  • IOS is monolithic. IOS XE runs IOS as a daemon on a Linux kernel.
  • IOS XR is modular and distributed, and a single process can restart alone.
  • IOS XR stages the configuration and applies it with commit.

What it is

Cisco ships three network operating systems, and each suits a different part of a provider network.

IOS is the original single image system. IOS XE moves IOS onto a Linux base. IOS XR is the modular system built for large provider routers.

After the software, this page covers how providers run network functions as software.

IOSmonolithic imageevolved intoIOS XEIOS on a Linux baseseparate designIOS XRmodular and distributed

How it works

The software architecture decides how a router behaves when a process fails and how you change its configuration.

IOS

Classic IOS is a monolithic image. All processes share one memory space, so a fault in one process can affect the whole system. It is simple and familiar, and it is found on older and smaller platforms.

IOS XE

IOS XE keeps the IOS command line but runs on a Linux kernel. IOS runs as a daemon, called IOSd, next to other processes for platform functions.

This gives better programmability, with NETCONF, RESTCONF and model driven telemetry. It also supports patching and in service upgrades on some platforms, and it can host applications.

IOS XR

IOS XR is designed for carrier class routers. Its processes are modular, and each one runs in its own protected memory space. A process can restart without bringing the router down, and the system supports distributed control planes across line cards.

IOS XR 7 is built on a Linux base. The configuration model also differs from IOS, because changes are staged and then committed.

FeatureIOSIOS XEIOS XR
ArchitectureMonolithicLinux base, IOSdModular, distributed
ConfigurationApplied at onceApplied at onceStaged, then commit
IPv4 address commandip addressip addressipv4 address
Typical platformOlder routersEnterprise and some SP routersCore and edge SP routers

In IOS XR the target configuration is built first, and nothing changes until you commit.

RP/0/RP0/CPU0:XR1(config)# interface GigabitEthernet0/0/0/0
RP/0/RP0/CPU0:XR1(config-if)# ipv4 address 192.0.2.1 255.255.255.0
RP/0/RP0/CPU0:XR1(config-if)# no shutdown
RP/0/RP0/CPU0:XR1(config-if)# commit

Related commands help you check and undo changes:

  • show configuration shows the uncommitted changes in the current session.
  • commit confirmed rolls the change back if you do not confirm it in time.
  • rollback configuration last 1 reverts the last commit.
  • abort leaves configuration mode and drops the staged changes.

NFV infrastructure and VNFs

Network functions virtualisation (NFV) runs network functions as software on standard servers. The ETSI model has three blocks:

  • NFVI: the compute, storage and network resources, plus the hypervisor that shares them.
  • VNF: a virtual network function, such as a virtual router, firewall or load balancer.
  • MANO: management and orchestration, which deploys and manages the VNFs.

A VNF workload is the software function itself. Virtual router images exist for both IOS XE and IOS XR. The benefit is speed: a function can be started on demand rather than waiting for new hardware.

Containers

A container packages an application with its libraries, and it shares the host kernel. It starts faster and uses fewer resources than a full virtual machine.

A cloud native network function (CNF) is a network function built as containers, usually managed by an orchestrator such as Kubernetes. Virtual machines give stronger isolation. Containers give higher density and speed.

Application hosting

Application hosting lets a router run third party or custom applications on the device. Examples are monitoring agents and small scripts that sit close to the traffic.

On IOS XE the Guest Shell gives a Linux environment on the router, and other applications run as containers.

Router# guestshell enable
Router# show app-hosting list

These are IOS XE commands, and the prerequisites and supported platforms vary by release.

IOS XR also runs applications in containers on its Linux base. In both cases the application is kept apart from the routing software, so a faulty application does not stop forwarding.

Standard serverNFVIrunsHypervisoror container enginehostsVNF or CNFrouter firewallmanaged byMANOorchestration

What to remember for the exam

Seven facts cover most questions on this topic.

  • IOS is monolithic. IOS XE runs IOS as a daemon on a Linux kernel.
  • IOS XR is modular and distributed, and a single process can restart alone.
  • IOS XR stages the configuration and applies it with commit.
  • IOS XR uses ipv4 address where IOS and IOS XE use ip address.
  • NFV has three blocks: NFVI, VNF and MANO.
  • Containers share the host kernel, so they are lighter than virtual machines.
  • Application hosting runs applications on the router, apart from the routing software.
Exam tip

A question about restarting one routing process without a reload points to IOS XR.

Common mistakes

These four mistakes appear often.

Expecting IOS XR changes to apply as you type. Nothing takes effect until commit.

Typing ip address on IOS XR. The IOS XR command is ipv4 address.

Treating a VNF as hardware. A VNF is software that runs on NFVI.

Assuming containers have their own kernel. They share the host kernel, which is why they are lighter.

Watch out

Do not reload a router to recover from a bad IOS XR change. Use rollback configuration last 1 or commit confirmed first.

Check yourself

Work through these three questions.

  • What must you enter for IOS XR configuration changes to take effect?

    You must enter commit, because IOS XR stages the changes until then.

  • Which NFV block deploys and manages VNFs?

    MANO, the management and orchestration block, deploys and manages them.

  • Why are containers lighter than virtual machines?

    A container shares the host kernel instead of carrying its own.

Topic 3 of 6 in Architecture

Test yourself on Architecture

The full Cisco CCNP 350-501 SPCOR question bank has 738 questions, with timed practice exams and an explanation for every answer.

This study guide is independent and is not affiliated with, endorsed by, or sponsored by Cisco. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.