Network Operating Systems
Sometimes it can be hard to tell the difference between a dis-agreggated “operating system” which is modular and open source or a full stack (closed) solution. Where its a full-stack product, I’ll list it as an OS.
Backed by a broad spectrum of organizations from across the networking industry, Stratum is building an open, minimal, production-ready distribution for white box switches. Stratum exposes a set of next-generation SDN interfaces including P4Runtime and OpenConfig, enabling interchangeability of forwarding devices and programmability of forwarding behaviors. Stratum delivers a complete white box switch solution truly delivering on the ‘software defined’ promise of SDN.
Stratum Project – Developing a reference implementation for white box switches supporting next-generation SDN interfaces
NOS - Cumulus Networks
Cumulus Linux is a Debian based Linux distribution that runs on a variety of commodity hardware. Cumulus is active in the Open Compute Project and contributed multiple projects back to the community.
- Open Network Install Environment(ONIE) contributed to the OCP
- ifupdown2 now in Debian stable
NOS - Big Switch Switch Light
Switch Light OS is an SDN-centric NOS that Big Switch has developed to closely integrate with whitebox hardware and ensure that OpenFlow-like functions will operate on the current generation of switching silicon for the data center.
- Built on Linux
- Open-sourced to form the basis of Open Network Linux (see next)
NOS - Open Network Linux
Open Network Linux (ONL) is a Linux distribution for “bare metal” switches, that is, network forwarding devices built from commodity components. ONL uses ONIE to install onto on-board flash memory.
- Open Network Linux is a part of the Open Compute Project
- Currently ONL is OpenFlow-centric
NOS - PICA8
PicOS is qualified to run bare metal switches from several manufacturers. Pica8 sells PicOS separately or bundled with their own whitebox switches.
- Switching and routing stack built on the XORP routing community (General public license now owned by Pica8)
- Switching and routing support for existing networks
- Open-vSwitch (OVS) support and CrossFlow technology enables mixing of switching, routing and OpenFlow traffic
NOS - Dell Systems
FTOS was originally developed by Force10 Networks. Dell acquired Force10 and has continued to develop the NOS with new features. At the same time, Dell Networks has embraced partnerships with Cumulus and BigSwitch to sell Whitebrand (or britebox) switching using open network hardware for those customers who want choices for NOS on their hardware.
NOS - IPinFusion
OcNOS™ is a NOS for data center and enterprise networking, including advanced capabilities such as extensive protocol support for MPLS (Multiprotocol Label Switching). Available for OCP hardware.
IPFusion has previously been OEMing its operating system to network vendors in a modular format and many vendors routing protocols are actually ZebOS components. Management APIs may also be provided by ZebOS. (See also Tail-F)
NOS - Cisco Systems
Cisco has had many operating systems over the decades and several of them are listed here.
IOS – a monolithic operating system that runs single threaded on a wide range of CPUs. Designed and developed in a different era. Obsolete at current time and on life support for recalcitrant customers. The software architecture was a product of its time and made it prone to memory leaks and packaging problems for different CPUs and motherboards. It was difficult to fix bugs and hard to add features. Bugs would often reappear in the mainline due to internal problems with library management at compile time.
IOS-SX – a fork of IOS was made in the mid-2000s, with Ethernet Switching features added to the code. It had all the limitations of IOS and took some years to stabilise into a reliable operating system. Many customers remain fearful to move on based on the pain experienced to date. Attempts to modularise this code and support modern features like process restart, ISSU, etc have been abandoned due to poor results (aka bugs).
- Supports Spanning Tree
- Instant Access is an 802.1BR implementation for Cat6800 family and acts like a virtual stacking function
- Backward compatibility remains vital for many customers and will be around for many years to come
IOS-XE – Addresses to IOS monolithic problem by abstracting some modules.
- The underlying operating system is based on a Linux distro but there is no access to it
- Runs on multi-core CPUs
- Isolates control plane and data plane in the software architecture
- Stabilises the operational interfaces for SNMP, XML, HTTP for external operations
- Runs on multiple hardware platforms from different business units but mostly in the mid-to-low end market (perhaps reflecting the its rumoured skunkworks development internally)
Since, historically, IOS has served as an Operating System as well as providing the key Routing Infrastructure, there has always been an aspect of Platform Dependent (PD) and Platform Independent (PI) code within IOS. IOS XE allows the platform dependent code to be abstracted from a single monolithic image. By moving drivers outside of IOS, IOS XE enables a more purely PI-focused IOS process. This provides a more efficient software delivery model for both the core IOS team, as well as platform developers, since the software can be developed, packaged and released independently. LINK
NX-OS – “Nexus Operating System” was developed to replace IOS-SX and modernise Cisco’s internal development process and tooling for software. Targeted at the Data Centre and
- A highly customised version Linux is the base operating system
- Support for multiple CPUs (although most versions use only one CPU)
- Multithreaded preemptive multitasking capabilities
- Support for Virtual Device Contexts and 802.1BR–called Fabric Extensions (FEX) by Cisco
- Implements memory protected process for process recovery and fault detection
- Fault detection through process monitoring to detect internal errors
IOS-XR – The premium, high-end operating system developed internally by Cisco using a range of third party software.
- Preemptive, memory protected, multitasking, microkernel-based operating system
- Uses QNX (aka Blackberry) as the operating system kernel on CRS and ASR families. Uses Linux kernel on NCS family where routing functions and the system administration functions are run on separate virtual machines (VMs)
- 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)
- intended for service provider operations
This software is usually found on the largest of Cisco routers and premium pricing applies. The Cisco CRS, NCS and ASR routers are the current product families.
CatOS/CatalystOS – acquired when Cisco bought Crescendo communications in the late 1990’s. Used for the now obsolete Catalyst 5000 and 6000/6500 product families.
- Although supported for many years because of customer reluctance to upgrade, it is now widely regarded as obsolete
- The CLI was unlike any other Cisco IOS product (and was awful)
NOS - Coriant
Coriant makes the Coriant NOS, aimed at service providers and carriers who are interested in disaggregation. The site is loaded with the usual number of buzzwords such as “disruption,” but they boast a large number of applications & use cases that make Coriant feel like the real deal for those service providers they hope to charm.
- SDN/NFV Solutions
- Data Center Interconnect
- Universal Switching
- Open Line Systems
- Programmable High Speed Optical Transport
- LH/ULH Transport
- Metro Transport
- Packet Access
- Network Migration & Modernization
- Fiber Deep
Coriant was acquired by Infinera in October 2018.
NOS - Juniper Networks
Junos is loosely based on FreeBSD. (needs more info here)
NOS - Avaya
In June 2016, Avaya announced disagregation of its NOS from their hardware.
From the press release: Avaya’s approach to network operating system software is fundamentally different. Avaya has implemented a protocol change at the most foundational layer of the operating system software. This change negates the need for up to 10 legacy protocols (for details see Appendix A) that makes once formidable networking tasks now possible, all while improving performance elements in a switch.
NOS - Arista Networks
The EOS (Extensible Operating System) is
- A single image of EOS that runs on all Arista switches
- Uses a Linux kernel
- All networking software runs in user processes for compatibility
- Full access to Linux operating system – can run most Linux software
NOS - Tail-F
Conf-D is a set of software modules for a wide range of hardware platforms that offers NetCONF and YANG, SNMP and other management APIs.
Tail-F was acquired by Cisco in 2014 but still sells its Conf-D products pseudo-independently to support existing contracts (and could be a good source of competitor intelligence for Cisco).
NOS - Facebook
Facebook developed its own applications for switch/routing inside its data centre and then released parts of the code into the public domain via the OpenCompute project.
NOS - Microsoft SONiC (Azure Cloud Switch)
Microsoft announced that is has built its own network operating system for whitebox switches in its own data centres.
NOS - HP Enterprise
HP Enterprise has two operating systems in active development – ProVision and Comware (not including Aruba for Campus/Wireless).
ComWare – HP acquired 3Com to build out its networking business, the ComWare operating system has been at the centre of the HP Networking for big iron. It runs on the chassis-based switches and WAN routers, has a broad range of features and protocols. Comware was part of the network portfolio sold to Tsinghua.
Last Updated: 2017-06-15
ProVision – This operating system runs on ProCurve network hardware that we developed internally at HP. Mostly focussed on LAN Switching and very popular in campus networks.
Note that HP Enterprise has a Whitebrand product strategy that offers their own brand of whitebox Ethernet switches running 3rd party operating systems such as Cumulus, PicOS etc. HP Enterprise seems keen to offer a wide range of products so that customers can partner for all their needs.
Aruba HPE – ArubaOS-CX
Aruba Networks announced a new operating system for the Aruba 8400 Switch Series platform focussed on the campus core and aggression.
Last Updated: 2017-06-15
NOS - OpenSwitch
OpenSwitch is a community-based, open source network operating system. In June 2016, the project transferred to Linux Foundation (reference).
Announced Oct 2015 and a consortium led by HP with notable support from VMware, Arista and Broadcom. Will update when I understand more.
NOS - Aricent ConvergedOS
Don’t know much about this one. Check out the Aricent website and see if you can find more information. Not sure what sort of distribution there is.
Looks reasonably complete:
- Network virtualization overlay with VXLAN, MP-BGP-based EVPN
- Advanced QoS
- Traffic monitoring with sFLOW and remote mirroring
- Multi-Chassis Link-Aggregation Group (MC-LAG)
- Event-driven BGP and time synchronization for packet tracing
- Port density and flexible port speeds supporting 10, 25, 40, 50 and 100 GbE
- Policy-based telemetry
Last updated 2017-06-15
NOS - NoviFlow Noviware
NoviFlow began as a university project in Quebec that was successful enough to build a company around. NoviFlow’s big idea is to present a programmable pipeline via an open, northbound API. This allows customers with special packet forwarding needs to craft whatever sort of pipeline they require, within the boundaries of what the ASIC they are using is capable of.
In their early days, NoviFlow distinguished themselves by offering support for the full OpenFlow specification. While OpenFlow is still used when appropriate, NoviFlow is currently keen on the P4 language, and has ported Noviware to the Barefoot Networks’ Tofino chipset. Noviware also runs against other match-action programmable data planes such as the EzChip/Mellanox NP5.
Use cases for NoviFlow are delivered as a part of an SDN stack. For instance, the Lumina SDN controller can speak the NoviFlow API. In this context, applications such as security, bandwidth on demand, and more can be delivered at hardware line-rate. The SDN apps speak to Lumina, and Lumina speaks to Noviware, which programs the pipeline.
To date, service providers have been the most significant consumers of NoviFlow’s Noviware.
“Designed from the ground up to be the industry’s most complete and highest performance NOS for programmable forwarding planes, switches and routers.” NoviWare
Last updated : 2018-09-04
NOS - Pluribus Networks Netvisor
Pluribus Netvisor uses a clustering app on its own NOS (Netvisor Linux) as a ‘controller free SDN’ solution. The Netvisor app runs as a distributed control plane on every device to maintain the configuration and state of the entire network in every device and offers a network fabric. Runs on well known whitebox switches including Dell ON, Edgecore and DLink.
Last updated: 2018-06-28
NOS - VYOS
Once Vyatta, then Brocade the open source code based live on as VYOS after Broadcom sucked profitable Fibrechannel and discarded the IP Networking like a used dishcloth. A software only, open source operating system with a comprehensive set of apps for routing. Popular with telcos, carriers and the smarter end of Enterprise who know how software and routers operate.
“VyOS is more similar to traditional hardware routers, with a focus on comprehensive support for advanced routing features such as dynamic routing protocols and command line interface. However, we do not neglect other features such as VPN and firewalls.”
Last updated : 2017-10-13
Source - https://packetpushers.net/virtual-toolbox/list-network-operating-systems/Last modified on Monday, 21 January 2019