Why do you need a network operating system?
It’s quite simple, really.
A cloud-based platform enables flexible scalability and shared, high-resource utilization, while increasing productivity and collaboration. As such, operating systems in general, both for PC (e.g., Windows 11) and for Networks (i.e., NOS), are evolving to leverage cloud advantages.
DriveNets’ distributed, cloud-native OS (a.k.a, DNOS) is a networking operating system, built from containerized microservices. It creates a unified, shared infrastructure over a distributed architecture seeking to eliminate the lengthy, repetitive manual tasks associated with service deployment.
What is a network operating system?
Yes, yes, I know… Sounds complicated. About six months ago, when I joined DriveNets, it took me some time to understand what “shared infrastructure over a distributed architecture” means – what does it entail? What are its benefits? And how it can (significantly!) help our networks evolve?
It might be easier to explain by quickly reviewing the evolution of Network Operating Systems (NOS), or even start with the basic definition of a Network Operating System.
Network OS is a system software that manages the network hardware resources and provides services to the application software. There are many types of operating systems, with different functionalities and features. They all support the industry standards with specific features for establishing VPNs and security processes. However, they go beyond standards with each vendor’s proprietary techniques necessary for their own routing equipment.
The Evolution of Network Operating Systems
Over the years, there has been an evolution in the software architecture of network OS. The first stage was the traditional Monolithic OS (e.g., Cisco IOS), which runs as a single operation, while all processes share the same memory space. If there are a few bugs in the monolithic software architecture, it can have an impact on or corrupt other processes. Any change/new features to the operating system means that the OS has to be disabled, restored, and loaded back again with the new feature.
The next stage in evolution was the Modular OS, which runs protected, segregated and exclusive memory space for each process. These processes run as modules on top of the kernel.
Examples of Network Operating Systems
For example, Juniper’s JUNOS is based on FreeBSD, and Cisco’s IOS-XR is based on Unix QNX. A modular OS supports in-service software upgrade, meaning new features and bug fixes can be implemented without disabling the entire OS. In addition, functional failures tend to be more limited in terms of impact vs. the traditional monolithic OS. The modular and segregated architecture enables an improved overall network availability.
The Power of the Cloud: Taking OS to the Next Level
And recently, a new stage in OS evolution has emerged. It embraces and utilizes the power of the cloud to create a unified, shared network routing infrastructure that is managed as a single entity: a Distributed cloud-based OS, with distributed networking software, built from containerized microservices, over virtualized, disaggregated networking and compute resources from white boxes.
That’s where DriveNets’ DNOS comes in.
It is clear that legacy NOS designs do not fit the evolution of networks as a shared infrastructure. Therefore, the design needs to be built using the attributes and qualities that are more similar to the way webscalers built cloud infrastructure, rather than how traditional routing or switching OSs (e.g., IOS, Junos, etc.) built them.
Features of cloud-based network operating system
Leading the transformation to software-based networks, DriveNets Network Operating System (DNOS) virtualizes distributed networking and compute resources from white boxes and servers to create a unified, shared infrastructure that is managed as a single entity.
- Unified Virtualized Network Infrastructure
- Carrier-Grade Routing
- Multiservice Support
- Native “Cloudification” of the Network
- Routing without Chassis Limitations
- Accelerate Cloud-Native Edge Cloud
DriveNets Network Operating System (DNOS) supports multiple service offerings at scale, including both third-party and self-built routing and other network functions. By combining cloud and virtualization technologies, DNOS enables the running of any service on the unified shared infrastructure, and dynamically attaching any service to any port.
What is DriveNets Network Operating System (DNOS)
DriveNets Network Operating System (DNOS) is a distributed OS running over Docker containers, which offers flexibility, multi-platform support, native virtualization, and fast deployment processes. It is a cloud-native software with open APIs for automation, configuration and telemetry. The use of microservices enables using the same software form factor on different physical form factors.
DriveNets Network Operating System (DNOS) is a full-featured networking stack, ready to run on any Network Cloud-certified hardware platform. It creates a unified, shared network infrastructure that spans multiple servers and white boxes and is managed as a single network entity. Combining cloud and virtualization technologies, DNOS enables running any service on the unified shared infrastructure and attaching any service to any port.
With DriveNets Network Cloud, every element is a repository of resources. Control card, fabric or line cards all become logical functions that need to be orchestrated and allocated by DNOS to the right place, creating a unified network element.
Every element in the cluster is abstracted in the same way so it is easy to stack them. The server and white box contain an x86 chip as both a compute resource and as a networking resource; they also have a switching ASIC (e.g., Broadcom) or software-based data plane (e.g., DPDK).
On top of the CPU and switching ASIC there is the platform and board controlling mechanism managing the LEDs, fans, power supply units, etc. The base Operating System (base OS), built from DriveNets flavor of Linux, includes an orchestration agent, which allows DriveNets to control the box.
On top of the base OS are Docker and the DNOS containers. The containers are where the DriveNets routing functionality application runs.
Advantages of cloud-based network operating system
Delivering operational efficiency and built for flexibility, security and reliability, distributed, cloud-based OS gives network operators key competitive advantages over those who still run on traditional monolithic or modular network operating systems. These advantages include:
- Hardware agnostic – Creates a shared resource pool by abstracting any hardware resource for multiple OCP-standard ODM white boxes.
- Carrier-grade high availability – Provides inherent support for high availability and resiliency through containers, microservices and smart clusters.
- Optimal scaling – Addresses any scale with telco-grade high availability. Like in any distributed and non-distributed system, when scale comes into play, it amplifies the probability of error, exposing any design weakness. With distributed, cloud-based OS, there is no performance degradation. Using a virtualization layer, it is possible to scale up the data plane by adding more white boxes to the same logical network element, with no performance degradation or downtime.
- Rich set of network solutions – Supports core, aggregation/peering, edge, and access routing, as well as hosted third-party services, with consistent features across platforms, from the smallest to the largest router.
In DriveNets we say: “Behind every successful CLOUD there is a NETWORK”. Though compute and storage are the building blocks of any cloud, these are eventually worthless elements without the third, essential piece of networking. A proven, distributed cloud-based Network Operating System (NOS) is the ultimate enabler to build future networks that operate like hyperscaler clouds.
Frequently Asked Questions
What are the unique capabilities of DriveNets Network Operating System (DNOS) for operating large-scale clusters?
- Multiplexing management and control traffic (e.g., BGP, IS-IS): from all line cards at scale together with internal needs like cluster management, traces, counters, etc.
- Layered and distributed high availability: enabling decisions to be made locally even when they have a global effect.
- Large distributed transactions: the ability to commit user-defined configurations that provision all line cards without affecting service.
- Timing synchronization: the ability to synchronize all the white boxes to the same time base for service and other needs (logs, traces, certificates).
- Allocation of module IDs: while the chassis uses slots (physical location) to identify modules, for the disaggregated system DriveNets had to reinvent the mechanism to allow transparency of every device’s physical location and its logical role; for that, DriveNets built a new software-based algorithm which auto-provisions the white boxes in the distributed virtual system (there is no physical slot number).
- Handling distributed logs and traces: the ability to debug the system by easily tracing a system-wide event, such as looking at a virtual log file aggregating log entries from many elements.
How does DriveNets use Docker containers in the Network Operating System?
- Infrastructure layer: Auto-discovery of the Docker containers and mechanisms enables connecting to the right container at the right time – during a switchover, graceful restart, BGP NSR, etc.
- Management plane: Despite the numerous microservices, users experience a single network element (e.g., a single SSH session to a single CLI, just like with a monolithic router).
- Control plane: The routing protocols are containerized and can either run on a server or on the x86 chip inside the white box, using the same software.
- Data plane: Data path services are containerized and expose software and/or hardware-based functions (e.g., ACLs, routes FIB, flow monitoring services, performance and fault measurements).
White Paper
Which Network Architecture Is Right for You