Disaggregated Network OS for Programmable Packet Offload
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional network operating systems (NOS) are monolithic, leading to slow evolution of data plane functionality due to specialized hardware and customer certification processes, resulting in long deployment cycles and inflexible feature updates.
Innovation Solution
A disaggregated network operating system (NOS) with a programmable packet pipeline that separates control and data planes, allowing dynamic updates and independent evolution of data plane components, enabling dynamic feature implementation and certification.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional monolithic network operating system is used, then hardware stability and reliability are maintained, but feature evolution speed and deployment flexibility are reduced
Solution Approach 1:
The network operating system is segmented into distinct components: control plane functions and data plane functions. The control plane runs on general-purpose processors and manages network logic, while the data plane runs on specialized hardware and handles packet forwarding. This segmentation allows independent evolution of each component, enabling faster feature deployment without compromising hardware stability.
Solution Approach 2:
Control plane functions are extracted from the traditional monolithic network operating system and placed on general-purpose processors. This extraction allows the control plane to evolve independently through software updates without requiring hardware changes or complex certification processes, thereby accelerating feature evolution while maintaining the stability of the data plane hardware.
2Adaptability or versatility
If control plane and data plane are tightly coupled, then system simplicity is maintained, but scalability and flexibility are reduced
Solution Approach 1:
The system is divided into control plane and data plane segments that communicate through well-defined interfaces. The control plane contains network logic and can be independently updated to provide new services, while the data plane maintains stable packet forwarding capabilities. This segmentation enables flexible service deployment without requiring complex reintegration of control and data plane components.
Solution Approach 2:
The control plane is designed as a universal component that can be deployed across different hardware platforms and service types. By separating control logic from data plane hardware, the same control plane software can manage diverse network services and hardware configurations, enhancing adaptability without increasing integration complexity.
3Loss of time
If monolithic network operating system is used, then certification process simplicity is maintained, but deployment cycle time is increased
Solution Approach 1:
Control plane functions are extracted from the monolithic system and placed on general-purpose processors, creating an independent software component that can be developed, tested, and certified separately from the hardware-based data plane. This extraction significantly reduces deployment cycle time as control plane updates no longer require full system recertification, thereby improving feature deployment efficiency.
Solution Approach 2:
The system is segmented into independently certifiable components: the data plane hardware and control plane software. This segmentation allows the control plane to undergo rapid software certification processes while the data plane maintains its hardware certification, dramatically reducing overall deployment cycle time and enabling more efficient feature rollouts.
Data Source
AI summary
Systems, methods and apparatuses provide a disaggregated network operating system in which control plane and data plane components of the network operating system are distributed across a network controller and network elements. An information model describes a network element and identifies packet processing plug-ins executable by general purpose processors of the network element. The network controller uses the model to generate a packet pipeline program for execution by a programmable packet pipeline of the network element, and generates a list of packet processing plug-ins for handling offload conditions. The network controller transmits the packet pipeline program and list of packet processing plug-ins to the network element. The network element installs the packet pipeline program to the programmable packet pipeline and downloads the listed packet processing plug-ins. When the pipeline detects an offload condition, the pipeline forwards the network packet to the packet processing plug-in associated with the offload condition.


