Network Structure in Linux Operating System: Network Glossary Definition
Discussing the network structure in a Linux operating system gets a bit complicated. By itself, Linux does not address networking; it is, after all, a server operating system intended to run applications, not networks. OpenStack, however, does provide a networking service that’s meant to be used with Linux.
OpenStack is a combination of open source software tools for building and managing virtualized cloud computing services, providing services including compute, storage and identity management. There’s also a networking component, Neutron, which enables all the other OpenStack components to communicate with one another. Given that OpenStack was designed to run on a Linux kernel, it could be said that Neutron is a networking service for Linux – but only when used in an OpenStack cloud environment.
Neutron enables network virtualization in an OpenStack environment, providing software-defined network services through a series of plug-ins. It is intended to enable organizations to spin up network services on demand, including virtual LANS and virtual private networks (VPNs), as well as services such as firewalls, intrusion detection and load balancing.
In practice, the networking capabilities of Neutron are somewhat limited, with its main drawback being a lack of scalability. While companies may use Neutron in a lab environment, when it comes to production they typically look for other options.
A number of companies have developed SDN and network virtualization software that is more enterprise-ready. Pica8, for example, offers PICOS, an open network operating system built on a Debian Linux kernel. PICOS is a white box NOS intended to run on white box network switches and be used in a virtualized, SDN environment. But it provides the scalability required to extend to hundreds or thousands of white box switches, making it a viable option for enterprise use.