The Internetworking Operating System ( IOS ) is a family of proprietary network operating systems used on several router and network switch models manufactured by Cisco Systems . The system is a package of routing, switching, internetworking, and telecommunications functions integrated into a multitasking operating system. Although the IOS code base includes a cooperative multitasking kernel, most IOS features have been ported to other kernels, such as Linux and QNX , for use in Cisco products.
31-540: CIOS may refer to: Cisco IOS , software used on routers and network switches Cyprus-Israel Optical System , a cable system linking Cyprus and Israel Channel Islands Occupation Society , a military history organisation Combined Intelligence Objectives Subcommittee , an organization gathering technical intelligence in Germany after WW2 CIOS-FM 98.5 FM - A radio station licensed to Stephenville, NL Topics referred to by
62-452: A Linux-based operating system. The IOS network operating system was created from code written by William Yeager at Stanford University , which was developed in the 1980s for routers with 256 kB of memory and low CPU processing power. Through modular extensions, IOS has been adapted to increasing hardware capabilities and new networking protocols. When IOS was developed, Cisco Systems' main product line were routers. The company acquired
93-644: A later major revision because they may be running critical infrastructure on their devices, and hence prefer to minimize change and risk. Interim releases – Are usually produced on a weekly basis, and form a roll-up of current development effort. The Cisco advisory web site may list more than one possible interim to fix an associated issue (the reason for this is unknown to the general public). Maintenance releases – Rigorously tested releases that are made available and include enhancements and bug fixes. Cisco recommend upgrading to Maintenance releases where possible, over Interim and Rebuild releases. Cisco says, "A train
124-800: A local account is usually still required for emergency situations. At the Black Hat Briefings conference in July 2005, Michael Lynn, working for Internet Security Systems at the time, presented information about a vulnerability in IOS. Cisco had already issued a patch, but asked that the flaw not be disclosed. Cisco filed a lawsuit, but settled after an injunction was issued to prevent further disclosures. With IOS being phased out on devices, IOS-XE adopted many improvements including updated defaults. Some use cases can now store secrets as one-way hashes . For Cisco products that required very high availability, such as
155-529: A number of young companies that focused on network switches, such as the inventor of the first Ethernet switch Kalpana , and as a result Cisco switches did not initially run IOS. Prior to IOS, the Cisco Catalyst series ran CatOS . The IOS command-line interface (CLI) provides a fixed set of multiple-word commands . The set available is determined by the "mode" and the privilege level of the current user. "Global configuration mode" provides commands to change
186-499: A particular function can be determined using the Cisco Feature Navigator . Routers come with IP Base installed, and additional feature pack licenses can be installed as bolt-on additions to expand the feature set of the device. The available feature packs are: IOS images can not be updated with software bug fixes. To patch a vulnerability in IOS, a binary file with the entire operating system needs to be loaded. Cisco IOS
217-422: A unique reference to that interface. IOS is shipped as a unique file that has been compiled for specific Cisco network devices. Each IOS Image therefore include a feature set, which determine the command-line interface (CLI) commands and features that are available on different Cisco devices. Upgrading to another feature set therefore entails the installation of a new IOS image on the networking device and reloading
248-504: Is a vehicle for delivering Cisco software to a specific set of platforms and features." Before Cisco IOS release 15, releases were split into several trains , each containing a different set of features. Trains more or less map onto distinct markets or groups of customers that Cisco targeted. There were other trains from time to time, designed for specific needs — for example, the 12.0AA train contained new code required for Cisco's AS5800 product. Starting with Cisco IOS release 15, there
279-445: Is an operating system architecture with the entire operating system running in kernel space . The monolithic model differs from other architectures such as the microkernel in that it alone defines a high-level virtual interface over computer hardware . A set of primitives or system calls implement all operating system services such as process management , concurrency , and memory management . Device drivers can be added to
310-474: Is different from Wikidata All article disambiguation pages All disambiguation pages Cisco IOS Not all Cisco networking products run IOS. Exceptions include some Cisco Catalyst switches, which run IOS XE , and Cisco ASR routers, which run either IOS XE or IOS XR ; both are Linux-based operating systems. For data center environments, Cisco Nexus switches ( Ethernet ) and Cisco MDS switches ( Fibre Channel ) both run Cisco NX-OS , also
341-502: Is just a single train, the M/T train. This train includes both extended maintenance releases and standard maintenance releases. The M releases are extended maintenance releases, and Cisco will provide bug fixes for 44 months. The T releases are standard maintenance releases, and Cisco will only provide bug fixes for 18 months. Because IOS needs to know the cleartext password for certain uses, (e.g., CHAP authentication) passwords entered into
SECTION 10
#1732855785413372-614: Is no memory protection between processes and IOS has a run to completion scheduler , which means that the kernel does not pre-empt a running process . Instead the process must make a kernel call before other processes get a chance to run. IOS considers each process a single thread and assigns it a priority value, so that high priority processes are executed on the CPU before queued low priority processes, but high priority processes cannot interrupt running low priority processes. The Cisco IOS monolithic kernel does not implement memory protection for
403-425: Is used by the forwarding function of the router. On router platforms with software-only forwarding (e.g., Cisco 7200), most traffic handling, including access control list filtering and forwarding, is done at interrupt level using Cisco Express Forwarding (CEF) or dCEF (Distributed CEF). This means IOS does not have to do a process context switch to forward a packet. Routing functions such as OSPF or BGP run at
434-403: Is versioned using three numbers and some letters, in the general form a.b(c.d)e , where: Rebuilds – Often a rebuild is compiled to fix a single specific problem or vulnerability for a given IOS version. For example, 12.1(8)E14 is a Rebuild, the 14 denoting the 14th rebuild of 12.1(8)E. Rebuilds are produced to either quickly repair a defect, or to satisfy customers who do not want to upgrade to
465-679: The Cisco CRS-1 , the limitations of a monolithic kernel were not acceptable. In addition, competitive router operating systems that emerged 10–20 years after IOS, such as Juniper 's Junos OS , were designed to not have these limitations. Cisco's response was to develop a completely new operating system that offered modularity, memory protection between processes, lightweight threads, pre-emptive scheduling , ability to independently restart failed processes and massive scale for use in Service Provider networks. The IOS XR development train initially used
496-524: The real-time operating system microkernel ( QNX ) and a large part of the IOS source code was re-written to take advantage of the features offered by the kernel. In 2005 Cisco introduced the Cisco IOS XR network operating system on the 12000 series of network routers, extending the microkernel architecture from the CRS-1 routers to Cisco's widely deployed core routers . As of release 6.x of Cisco IOS XR, QNX
527-455: The CLI by default are weakly encrypted as 'Type 7' ciphertext, such as " Router(config)#username jdoe password 7 0832585B1910010713181F ". This is designed to prevent "shoulder-surfing" attacks when viewing router configurations and is not secure – they are easily decrypted using software called "getpass" available since 1995, or "ios7crypt", a modern variant, although the passwords can be decoded by
558-583: The IOS operating system. Information about the IOS version and feature-set running on a Cisco device can be obtained with the show version command. Most Cisco products that run IOS also have one or more "feature sets" or "packages", typically eight packages for Cisco routers and five packages for Cisco network switches. For example, Cisco IOS releases meant for use on Catalyst switches are available as "standard" versions (providing only basic IP routing), "enhanced" versions, which provide full IPv4 routing support, and "advanced IP services" versions, which provide
589-586: The IP address, interface state, and packet statistics for networking data. Cisco's IOS software maintains one IDB for each hardware interface in a particular Cisco switch or router and one IDB for each subinterface. The number of IDBs present in a system varies with the Cisco hardware platform type. Physical and logical interfaces on the switch will be referenced with either expanded or abbreviated port description names. This combined with slot, module, and interface numbering creates
620-456: The architectural level of modularity inherent in server-client operating systems (and its derivatives sometimes marketed as hybrid kernel ) which use microkernels and servers (not to be mistaken for modules or daemons). Practically speaking, dynamically loading modules is simply a more flexible way of handling the operating system image at runtime—as opposed to rebooting with a different operating system image. The modules allow easy extension of
651-424: The data of different processes. The entire physical memory is mapped into one virtual address space. The Cisco IOS kernel does not perform any memory paging or swapping. Therefore the addressable memory is limited to the physical memory of the network device on which the operating system is installed. IOS does however support aliasing of duplicated virtual memory contents to the same physical memory. This architecture
SECTION 20
#1732855785413682-481: The enhanced features as well as IPv6 support. Beginning with the 1900, 2900 and 3900 series of ISR Routers, Cisco revised the licensing model of IOS. To simplify the process of enlarging the feature-set and reduce the need for network operating system reloads, Cisco introduced universal IOS images, that include all features available for a device and customers may unlock certain features by purchasing an additional software license . The exact feature set required for
713-489: The event of an IOS crash, the operating system automatically reboots and reloads the saved configuration. In all versions of Cisco IOS, packet routing and forwarding ( switching ) are distinct functions. Routing and other protocols run as Cisco IOS processes and contribute to the Routing Information Base (RIB). This is processed to generate the final IP forwarding table (FIB, Forwarding Information Base), which
744-441: The interpreter can be scripted to react to events within the networking environment, such as interface failure or periodic timers. Available command modes include: And more than 100 configuration modes and submodes. Cisco IOS has a monolithic architecture, owing to the limited hardware resources of routers and switches in the 1980s. This means that all processes have direct hardware access to conserve CPU processing time. There
775-481: The kernel as loadable kernel modules . Modular operating systems such as OS-9 and most modern monolithic-kernel operating systems such as OpenVMS , Linux , FreeBSD , NetBSD , DragonFly BSD , Solaris , AIX , and Multics can dynamically load (and unload) executable kernel modules at runtime. This modularity of the operating system is at the binary (image) level and not at the architecture level. Modular monolithic operating systems are not to be confused with
806-452: The process level. In routers with hardware-based forwarding, such as the Cisco 12000 series, IOS computes the FIB in software and loads it into the forwarding hardware (such as an ASIC or network processor), which performs the actual packet forwarding function. An Interface Descriptor Block, or simply IDB, is a portion of memory or Cisco IOS internal data structure that contains information such as
837-505: The router using the "key chain" command and entering the type 7 password as the key, and then issuing a "show key" command; the above example decrypts to "stupidpass". However, the program will not decrypt 'Type 5' passwords or passwords set with the enable secret command, which uses salted MD5 hashes . Cisco recommends that all Cisco IOS devices implement the authentication, authorization, and accounting (AAA) security model. AAA can use local, RADIUS , and TACACS+ databases. However,
868-405: The same term [REDACTED] This disambiguation page lists articles associated with the title CIOS . If an internal link led you here, you may wish to change the link to point directly to the intended article. Retrieved from " https://en.wikipedia.org/w/index.php?title=CIOS&oldid=1004842348 " Category : Disambiguation pages Hidden categories: Short description
899-433: The system's configuration, and "interface configuration mode" provides commands to change the configuration of a specific interface. All commands are assigned a privilege level , from 0 to 15, and can only be accessed by users with the necessary privilege. Through the CLI, the commands available to each privilege level can be defined. Most builds of IOS include a Tcl interpreter. Using the embedded event manager feature,
930-485: Was dropped in favor of Linux. Part of the initial work focused on modularity inspired modification of monolithic IOS into modular IOS, which extends the microkernel architecture into the IOS environment, while still providing the software upgrade capabilities. That idea was only tested on Catalyst 6500, got limited exposure and was quickly discontinued as requirements were too high and significantly impaired platform operation. Monolithic kernel A monolithic kernel
961-414: Was implemented by Cisco in order to ensure system performance and minimize the operational overheads of the operating system. The disadvantage of the IOS architecture is that it increases the complexity of the operating system, data corruption is possible as one process can write over the data of another, and one process can destabilize the entire operating system or even cause a software-forced crash . In