Network operating system

A network operating system (NOS) is a specialized operating system for a network device such as a router, switch or firewall.

Historically operating systems with networking capabilities were described as network operating systems, because they allowed personal computers (PCs) to participate in computer networks and shared file and printer access within a local area network (LAN). This description of operating systems is now largely historical, as common operating systems include a network stack to support a client–server model.

History
Early microcomputer operating systems such as CP/M, MS-DOS and classic Mac OS were designed for one user on one computer. Packet switching networks were developed to share hardware resources, such as a mainframe computer, a printer or a large and expensive hard disk. As local area network technology became available, two general approaches to handle sharing of resources on networks arose.

Historically, a network operating system was an operating system for a computer which implemented network capabilities. Operating systems with a network stack allowed personal computers to participate in a client-server architecture in which a server enables multiple clients to share resources, such as printers. Early examples of client-server operating systems that were shipped with fully integrated network capabilities are Novell NetWare using the Internetwork Packet Exchange (IPX) network protocol and Banyan VINES which used a variant of the Xerox Network Systems (XNS) protocols.

These limited client/server networks were gradually replaced by Peer-to-peer networks, which used networking capabilities to share resources and files located on a variety of computers of all sizes. A peer-to-peer network sets all connected computers equal; they all share the same abilities to use resources available on the network. The most popular peer-to-peer networks as of 2020 are Ethernet, Wi-Fi and the Internet protocol suite. Software that allowed users to interact with these networks, despite a lack of networking support in the underlying manufacturer's operating system, was sometimes called a network operating system. Examples of such add-on software include Phil Karn's KA9Q NOS (adding Internet support to CP/M and MS-DOS), PC/TCP Packet Drivers (adding Ethernet and Internet support to MS-DOS), and LANtastic (for MS-DOS, Microsoft Windows and OS/2), and Windows for Workgroups (adding NetBIOS to Windows). Examples of early operating systems with peer-to-peer networking capabilities built-in include MacOS (using AppleTalk and LocalTalk), and the Berkeley Software Distribution.

Today, distributed computing and groupware applications have become the norm. Computer operating systems include a networking stack as a matter of course. During the 1980s the need to integrate dissimilar computers with network capabilities grew and the number of networked devices grew rapidly. Partly because it allowed for multi-vendor interoperability, and could route packets globally rather than being restricted to a single building, the Internet protocol suite became almost universally adopted in network architectures. Thereafter, computer operating systems and the firmware of network devices tended to support Internet protocols.

Network device operating systems
Network operating systems can be embedded in a router or hardware firewall that operates the functions in the network layer (layer 3). Notable network operating systems include:

Proprietary network operating systems

 * Cisco IOS, a family of network operating systems used on Cisco Systems routers and network switches. (Earlier switches ran the Catalyst operating system, or CatOS)
 * RouterOS by MikroTik
 * ZyNOS, used in network devices made by ZyXEL

FreeBSD, NetBSD, OpenBSD, and Linux-based operating systems

 * Cisco NX-OS, IOS XE, and IOS XR; families of network operating systems used across various Cisco Systems device including the Cisco Nexus and Cisco ASR platforms
 * Junos OS; a network operating system that runs on Juniper Networks platforms
 * Cumulus Linux distribution, which uses the full TCP/IP stack of Linux
 * DD-WRT, a Linux kernel-based firmware for wireless routers and access points as well as low-cost networking device platforms such as the Linksys WRT54G
 * Dell Networking Operating System; DNOS9 is NetBSD based, while OS10 uses the Linux kernel
 * Extensible Operating System runs on switches from Arista and uses an unmodified Linux kernel
 * ExtremeXOS (EXOS), used in network devices made by Extreme Networks
 * FTOS (Force10 Operating System), the firmware family used on Force10 Ethernet switches
 * ONOS, an open source SDN operating system (hosted by Linux Foundation) for communications service providers that is designed for scalability, high performance and high availability.
 * OpenBSD, an open source operating system which includes its own implementations of BGP, RPKI, OSPF, MPLS, VXLAN, and other IETF standardized networking protocols, as well as firewall (PF) and load-balancing functionality.
 * OpenWrt used to route IP packets on embedded devices
 * pfSense, a fork of M0n0wall, which uses PF
 * OPNsense, a fork of pfSense
 * SONiC, a Linux-based network operating system developed by Microsoft
 * VyOS, an open source fork of the Vyatta routing package