Flow-Based Routing for Data Center Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current load balancing techniques in data center networks, such as ECMP, fail to effectively distribute traffic loads across multiple paths, leading to network congestion despite abundant bandwidth, as they are based on per-flow hashing and do not account for varying bit rates, and require complex modifications to routers and switches.
Innovation Solution
A method for flow-based routing that detects big flows, probes the network to discover alternative paths, and alters packet header information to reroute traffic through less congested paths without modifying existing switches or routers, using a centralized controller to manage traffic and maintain path associations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If ECMP routing with per-flow hashing is used, then traffic is distributed across multiple paths, but load balancing is ineffective because it does not account for varying bit rates and causes network congestion
Solution Approach 1:
The patent changes the routing parameter from per-flow hashing to per-packet routing. By altering the granularity of traffic distribution from flow-level to packet-level, the system achieves effective load balancing that accounts for varying bit rates across different flows, thereby improving network utilization without causing congestion.
Solution Approach 2:
The patent introduces dynamic path selection where packets can be routed along different paths based on real-time network conditions. This dynamic approach allows the system to adapt to changing traffic patterns and congestion levels, ensuring optimal load balancing effectiveness that static per-flow hashing cannot achieve.
2Ease of operation
If sophisticated hash function adjustment is implemented, then network-wide load balancing may be achieved, but the complexity increases and cannot follow dynamic traffic changes
Solution Approach 1:
The patent extracts the complex hash function tuning and routing decision-making from individual routers and centralizes it in a controller. This extraction allows sophisticated load balancing to be achieved without increasing router complexity, as the controller handles the intelligent routing decisions while routers simply forward packets based on controller instructions.
Solution Approach 2:
The patent introduces a controller as an intermediary between the network traffic and the routing infrastructure. This mediator receives traffic information, makes intelligent routing decisions considering network-wide conditions, and directs packets accordingly, achieving network-wide load balancing without requiring complex adjustments at each router.
3Productivity
If flow-based routing with path discovery is implemented, then traffic can be rerouted around congestion, but the routing system becomes more complex
Solution Approach 1:
The patent performs preliminary path discovery and congestion detection before making routing decisions. By proactively identifying alternative paths and congestion points in advance, the system can quickly reroute traffic without complex real-time calculations, thereby improving rerouting capability while keeping the system relatively simple.
Data Source
AI summary
Load balancing is performed in a network using flow-based routing. For example, upon detection of a big flow, one or more alternative paths from a source host to a destination host in the network may be discovered by probing the network and generating, for each of the one or more alternative paths, an association of the packet header information of the big flow to an alternative path discovered using results of probing the network. Upon congestion in a path currently being used by the big flow, an alternative path that is not congested is selected from the one or more discovered alternative paths. The packet header information of the big flow is altered using the generated association of the packet header information to the selected alternative path such that the big flow will be transmitted using the selected alternative path.


