Cisco IOS XR

From Wikipedia, the free encyclopedia
(Redirected from IOS-XR)
Jump to navigation Jump to search

Cisco IOS XR
DeveloperCisco Systems
OS familyUnix-like
Working stateCurrent
Source modelClosed source
Latest release25.3.1 / September 16, 2025; 9 months ago (2025-09-16)
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Supported platformsNCS 5x0, NCS 5x00, 8000, ASR 9000 and XRv 9000 Series Routers
UserlandLinux
Official websiteCisco IOS XR
File:IOX-RUN.jpg
Line card running IOS XR.

IOS XR is a release train of Cisco Systems' widely deployed Internetwork Operating System (IOS), used on their high-end Network Convergence System (NCS) and carrier-grade routers such as the ASR 9000 series and Carrier Routing System series of routers.

Architecture

[edit | edit source]

According to Cisco's product literature, IOS XR shares very little infrastructure with the other IOS trains, and is instead built upon a "preemptive, memory protected, multitasking, microkernel-based operating system".[1] The microkernel was formerly provided by QNX;[2] versions 6.0 up to 7.5.2 use the Wind River Linux distribution.[3] From version 7.6.1 and onwards, the kernel has been switched to OpenEmbedded.

IOS XR aims to provide the following advantages over the earlier IOS trains:

  • Improved high availability (largely through support for hardware redundancy and fault containment methods such as protected memory spaces for individual processes and process restartability)
  • Better scalability for large hardware configurations (through a distributed software infrastructure and a two-stage forwarding architecture)
  • A package based software distribution model (allowing optional features such as multicast routing and MPLS to be installed and removed while the router is in service)
  • The ability to install package upgrades and patches (potentially while the router remains in service)
  • A web-based GUI for system management (making use of a generic, XML management interface)

History

[edit | edit source]

IOS XR was announced along with the CRS-1 in May 2004.[4] The first generally available version was 2.0.

Some significant releases include the following.

  • 3.2 – first generally available version for the 12000 router series
  • 3.9 – first generally available version for the ASR 9000 router series
  • 5.0 – first generally available version for the NCS6000 series, which is based upon a Linux kernel instead of QNX, and was released in September 2013[5]
  • 6.1.1 - Introduces support for the 64-bit Linux-based IOS XR operating system on ASR 9000 series [6]

Differences between IOS and IOS XR

[edit | edit source]

An example BGP configuration for IOS and IOS XR is shown.

More examples can be found in the Cisco document Converting Cisco IOS Configurations to Cisco IOS XR Configurations.[7]

IOS

router bgp 109
  no synchronization
  bgp log-neighbor-changes
  neighbor 203.0.113.1 remote-as 109
  neighbor 203.0.113.1 update-source Loopback0
  no auto-summary

IOS XR

router bgp 109
  neighbor 203.0.113.1
    remote-as 109
    update-source Loopback0

See also

[edit | edit source]

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ QNX press release Confirming use of their microkernel in IOS XR
  3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
[edit | edit source]