Network Forwarding Apparatus Stateful Processing via Extended Finite State Machines
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
OpenFlow's data plane API limitations prevent stateful processing within network forwarding apparatuses, leading to centralized control plane dependencies, increased signaling load, and processing delays, which can hinder real-time reconfiguration of data plane forwarding behavior.
Innovation Solution
The introduction of Extended Finite State Machines (XFSM) within network forwarding apparatuses allows for stateful processing and action updates without controller interaction, using a state table, flow table, and global variables to determine action and update information, enabling high-speed implementation while maintaining vendor-agnosticism.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Extent of automation
If stateful processing is implemented within network forwarding apparatuses using traditional OpenFlow, then processing capabilities are improved, but controller dependency and signaling load increase
Solution Approach 1:
The patent implements self-service by enabling the network forwarding apparatus to perform stateful processing autonomously using local state tables and finite state machines, without requiring continuous controller intervention. The apparatus maintains its own state information and makes forwarding decisions independently, reducing signaling load and controller dependency while preserving automation capabilities.
2Ease of operation
If centralized control plane is used for all forwarding decisions, then control simplicity is improved, but processing delays increase
Solution Approach 1:
The patent segments the control functions by separating state maintenance from control plane communication. The data plane apparatus maintains local state tables and performs stateful processing independently, while the control plane remains simplified for configuration and management. This segmentation eliminates the need for continuous controller involvement in forwarding decisions, reducing processing delays while maintaining control simplicity.
3Adaptability or versatility
If vendor-specific interfaces are used for network apparatus configuration, then implementation flexibility is improved, but network manageability deteriorates
Solution Approach 1:
The patent implements universality by using standardized OpenFlow protocols and data structures for state table management and finite state machine configuration. The vendor-neutral approach allows different network apparatuses from various vendors to be managed through a common interface, improving network manageability while maintaining implementation flexibility through the standardized abstraction layer.
Data Source
AI summary
The apparatus (SW) has a plurality of input/output ports (P1, P2, P3, P4, P5) for receiving and transmitting data packets, and comprises a data packets handling circuitry (DPL) arranged to forward data packets between the input/output ports (P1, P2, P3, P4, P5) and an internal apparatus controller (CPL) arranged to control the data packet handling circuitry (DPL); the apparatus controller (CPL) is arranged to store (MEM) at least one state transition table (TT) to be used for controlling the forwarding of data packets by the data packets handling circuitry (DPL); the apparatus controller (CPL) is arranged to use the state transition table (TT) for implementing at least one finite state machine (FSM); the apparatus controller (CPL) is arranged to use the state transition table (TT) for handling separately distinct incoming data packets flows through corresponding distinct instances of finite state machine; the state transition table (TT) corresponds to the combination of a state table (ST), a condition table (CT) and a flow table (FT); the apparatus controller (CPL) is arranged to store (MEM) the state table (ST), the condition table (CT) and the flow table (FT); the apparatus controller (CPL) comprises a condition logic (CL) for calculating conditions stored in the condition table (CT) based on data from the state table (ST) in order to query the flow table (FT).


