OpenFlow Switch Flow Identifier Encapsulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
OpenFlow switches cannot effectively encapsulate a flow identifier, limiting their ability to utilize hash calculation results as assignments for new added flow identifiers, which is required for efficient network traffic distribution in ECMP implementations.
Innovation Solution
The method involves an OpenFlow switch adding a flow identifier to a packet during successful flow table matching and invoking a pre-saved function entry to assign a value to the flow identifier, allowing the encapsulation of the flow identifier, thereby enabling the use of hash calculation results as assignments for new added flow identifiers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the core layer performs hash calculation on preset fields of original packet in encapsulated packet, then ECMP can be realized, but extracting fields from deep position in encapsulated packet is heavy burden and hardware implementation is complex and expensive
Solution Approach 1:
The patent applies preliminary action by pre-calculating the hash value of the original packet at the edge node before encapsulation, and using this hash value as the outer label. This eliminates the need for core layer nodes to extract deep fields and perform hash calculation, thereby reducing hardware complexity while maintaining ECMP functionality.
2Productivity
If flow identifier is encapsulated using hash calculation result, then burden of network node is alleviated, but OpenFlow switch cannot assign hash calculation result to new added flow identifier
Solution Approach 1:
The patent applies dynamics by extending the static OpenFlow switch specification to dynamically support function entries that can perform hash calculation and assign results to flow identifiers. This enables OpenFlow switches to adaptively calculate hash values and use them as outer labels, improving processing efficiency while maintaining specification compatibility.
Solution Approach 2:
The patent applies parameter changes by modifying the OpenFlow switch's label assignment mechanism to accept hash calculation results as valid assignments for outer labels. This parameter extension allows the switch to use calculated hash values instead of only manually configured values, thereby enabling efficient ECMP while maintaining OpenFlow compatibility.
3Adaptability or versatility
If OpenFlow switch adds flow identifier and invokes function entry to assign value, then encapsulation of flow identifier is enabled, but existing OpenFlow switch specification must be overcome
Solution Approach 1:
The patent introduces function entries as an intermediary mechanism between the OpenFlow switch's flow table and the packet processing logic. These function entries serve as mediators that perform hash calculation and assign results to flow identifiers, enabling encapsulation capability while maintaining compatibility with existing OpenFlow switch architecture and reducing the need to fundamentally change the specification.
Data Source
Figure 1~3
Figure 4~5
Figure 6~8
AI summary
Disclosed is a method and system for encapsulating a flow identifier. The method for encapsulating a flow identifier comprises: in the case where flow table matching is successfully performed on a packet, an OpenFlow switch adds a flow identifier to the packet; and the OpenFlow switch invokes a pre-saved function entry to assign a value to the flow identifier, so as to complete the encapsulation of the flow identifier. The disclosure achieves the effect of enabling an OpenFlow network node to take a hash calculation result of some fields of an original packet before encapsulation as the assignment of a new added flow identifier, which is required by the encapsulation of the flow identifier.