SDN Controller Incarnation Identifier for Message Ordering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In software-defined networking (SDN) controller clusters, out-of-order message processing can occur during DPN (data-plane node) reconnection, leading to incorrect connection status determination, causing errors in network management.
Innovation Solution
Generating an incremental incarnation identifier (IID) for DPN connections at reconnection time and tagging messages with this IID, then checking against the latest global IID to ensure correct processing order, thereby eliminating out-of-order message processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If DPN reconnects to a different controller node in the cluster, then connection redundancy and load balancing are improved, but message processing order becomes incorrect leading to connection status determination errors
Solution Approach 1:
The system preliminarily assigns an incarnation identifier to each DPN connection establishment. When a DPN reconnects to a different controller node, the new controller receives the connection request with the DPN's incarnation identifier, allowing it to recognize this as a reconnection event and properly handle the message ordering and connection status determination.
Solution Approach 2:
The incarnation identifier acts as an intermediary mechanism between the DPN and controller nodes. It carries connection state information across different controller nodes in the cluster, enabling seamless handoff and correct message processing order regardless of which controller node the DPN connects to.
2Productivity
If messages are processed in queue without ordering verification, then processing speed is improved, but out-of-order processing occurs causing connection status errors
Solution Approach 1:
The system replaces complex mechanical message ordering mechanisms (such as centralized queuing and sequential processing) with a lightweight incarnation identifier-based verification approach. Each message includes the DPN's incarnation identifier, and controllers verify this identifier to ensure correct processing order without blocking message flow.
Solution Approach 2:
The system changes the parameter being verified from message sequence numbers to incarnation identifiers. This parameter change allows controllers to quickly verify whether a message belongs to the current connection incarnation without complex sequence tracking, maintaining high processing speed while ensuring correctness.
Data Source
AI summary
Exemplary embodiments include methods and/or procedures for handling messages from one or more data-plane nodes (DPNs) to a plurality of controller nodes configured in a cluster, comprising: receiving a message from a DPN; tagging the message with an incarnation identifier (IID) associated with the DPN; and performing HD handling of the tagged message, which includes comparing a value of the IID of the tagged message with a value of a global IID associated with the DPN, discarding the tagged message if the value of the IID of the tagged message is less than the value of the global IID, and processing the tagged message if the value of the IID of the tagged message is not less than the value of the global IID. Exemplary embodiments also include controller nodes, controller clusters, and computer-readable media embodying operations of the exemplary methods and/or procedures.


