ECMP CRC Seeding via LBFV Reordering to Prevent Path Polarization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Equal-Cost Multi-Path (ECMP) routing in computer networks experiences polarization due to correlated routing decisions across stages, leading to suboptimal network utilization, especially in Massively Scalable Data Centers, where Cyclic Redundancy Check (CRC) functions exacerbate the issue by not affecting the distribution of routing decisions effectively.
Innovation Solution
The method involves generating a Load Balancing Flow Vector (LBFV) and partitioning it into blocks, which are then reordered at each network element using a unique reordering sequence different from others, followed by hashing to select a next hop link, thereby differentiating ECMP decisions across stages and preventing correlation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional CRC-based hashing is used for ECMP routing decisions, then the routing process is simple and fast, but routing decisions become correlated across stages leading to polarization and suboptimal network utilization
Solution Approach 1:
The patent segments the Load Balancing Flow Vector (LBFV) into multiple blocks and applies different reordering sequences to different stages. This segmentation allows each stage to independently manipulate its portion of the flow vector, breaking the correlation between stages while maintaining overall load balancing functionality.
Solution Approach 2:
The patent applies reordering sequences to the LBFV blocks before the hashing operation. This preliminary action modifies the input to the CRC function in a way that prevents polarization from occurring in the first place, rather than trying to correct it afterward.
2Reliability
If the same CRC function is used across all network stages, then implementation is consistent and simple, but routing decisions remain correlated causing polarization
Solution Approach 1:
The patent applies different reordering sequences (local variations) to different network stages while keeping the underlying CRC hashing function the same. This allows each stage to have unique characteristics that prevent correlation, while maintaining the benefits of a consistent base algorithm across the network.
Solution Approach 2:
The patent changes the reordering sequence parameter for each stage of the ECMP routing process. By modifying this specific parameter while keeping other aspects unchanged, the system achieves independent routing decisions without requiring a complete redesign of the hashing mechanism.
3Productivity
If LBFV blocks are reordered with unique sequences at each network element, then routing decisions are differentiated and polarization is prevented, but the processing complexity increases
Solution Approach 1:
The patent divides the LBFV into blocks that can be independently reordered. This segmentation allows the reordering operation to be performed efficiently on smaller data units rather than the entire flow vector, reducing the time penalty associated with the additional processing.
Data Source
AI summary
A network element is configured to efficiently load balance packets through a computer network. The network element receives a packet associated with flow attributes and generates a Load Balancing Flow Vector (LBFV) from the flow attributes. The network element partitions the LBFV into a plurality of LBFV blocks and reorders the LBFV blocks to generate a reordered LBFV. The LBFV blocks are reordered based on a reordering sequence that is different from reordering sequences on other network elements in the computer network. The network element hashes the reordered LBFV to generate a hash key for the packet and selects a next hop link based on the hash key. The next hop link connects the network elements to a next hop network element in the computer network.


