Packet-Programmable Statelets for Data-Plane Flow Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing networking protocols for managing network state and service level objectives require lengthy standardization cycles and are limited to the control plane, lacking flexibility and efficiency in controlling and monitoring data flows across network devices.
Innovation Solution
Implementing self-driving packets with conditional commands that interact with statelets stored in network devices, allowing control and monitoring of data flows at any node in the network, independent of a central control node, and enabling fine-grained flow control in the data plane.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If custom-built protocols (RSVP, TWAMP, Netflow/IPFIX) are implemented in the control plane to manage network state and service level objectives, then network control and monitoring capabilities are provided, but standardization cycles are lengthy and flexibility is limited
Solution Approach 1:
Packets are made self-driving by embedding conditional commands directly in packet headers, enabling them to autonomously interact with statelets stored in network devices. This eliminates dependence on centralized control plane protocols and allows packets to self-manage their own routing, monitoring, and control operations throughout the network.
Solution Approach 2:
The control functionality is extracted from the control plane and embedded directly into data plane packets. By moving control commands into packet headers and state data into distributed statelets at network devices, the patent removes the bottleneck of centralized control plane processing and standardization cycles.
2Ease of operation
If centralized control plane protocols are used to monitor and control data flows, then network state management is achieved, but control is limited to specific protocol implementations and requires central coordination
Solution Approach 1:
The centralized control architecture is segmented into distributed autonomous units. Each network device maintains local statelets for specific data flows, and packets carry commands that interact with these distributed statelets. This segmentation eliminates the single point of control and enables parallel, independent flow management at multiple network nodes.
Solution Approach 2:
The control system transitions from static centralized configuration to dynamic packet-driven control. Packets carry conditional commands that can modify statelets and control flow behavior in real-time based on current network conditions, enabling adaptive and flexible flow management without centralized reconfiguration.
3Productivity
If packets carry conditional commands for self-driving control, then fine-grained flow control is enabled, but packet header complexity increases
Solution Approach 1:
The packet header is designed as a universal container that can carry multiple types of conditional commands for different control operations (routing, monitoring, resource reservation). This multi-functional header structure allows a single packet format to support diverse control functions without requiring separate specialized protocols for each function.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A network device includes a statelet storage storing statelets that retain state information associated with a packet flow through the network device and that the network device can interact with to control processing performed on packets of the data flow. The network device implements a set of instructions that interpret commands in the data packets to manage and interact with statelets. The statelets in the statelet storage are organized by a statelet key that is derived from information identifying the packet flow. Responsive to the commands in the packets, the network device can create, read, write, or delete statelets from the statelet storage. The statelet storage includes multiple statelets each statelet including multiple fields. The network device may access the statelets to control/monitor a packet flow using information in a network data plane without receiving control information from a network control plane.