Path Weighted Equal-Cost Multipath Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current network traffic load balancing techniques fail to effectively account for downstream router behaviors and shared network link bandwidth, leading to inefficiencies in path bandwidth utilization and increased congestion.
Innovation Solution
A method where a computing router computes bandwidth for each forwarding path, considering downstream router capabilities and shared link bandwidth, and allocates traffic accordingly to optimize load balancing across equal-cost multipath (ECMP) sets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional load balancing techniques are used, then traffic is distributed across multiple paths, but downstream router behaviors and shared link bandwidth are not accounted for, leading to inefficient bandwidth utilization
Solution Approach 1:
The patent implements feedback by having routers advertise their ECMP capabilities and by computing path bandwidths that incorporate information about downstream router behaviors and shared link conditions. This feedback loop enables the source router to make informed load balancing decisions that account for actual network state, resolving the contradiction between bandwidth utilization efficiency and congestion control.
Solution Approach 2:
The patent applies preliminary action by computing path bandwidths and determining load balancing weights before traffic is actually routed. By pre-calculating the available bandwidth on each path considering downstream conditions and shared links, the system avoids congestion before it occurs, improving both bandwidth utilization efficiency and congestion control.
2Adaptability or versatility
If equal-cost multipath (ECMP) routing is used, then multiple paths are available for traffic forwarding, but paths sharing common downstream links experience bandwidth oversubscription and congestion
Solution Approach 1:
The patent applies local quality by computing individual path bandwidths that reflect the specific conditions of each path, including shared downstream links and downstream router capabilities. Instead of treating all ECMP paths equally, the system assigns different load balancing weights based on the actual bandwidth availability of each specific path, resolving the contradiction between path selection flexibility and network throughput.
Solution Approach 2:
The patent changes the parameter of path bandwidth calculation from a simple equal-cost metric to a computed bandwidth value that incorporates downstream router ECMP capabilities and shared link conditions. This parameter change enables the system to maintain path selection flexibility while optimizing network throughput by routing more traffic through paths with higher actual bandwidth availability.
3Ease of operation
If downstream routers evenly load balance without regard to downstream conditions, then simple load distribution is achieved, but shared network links become congested due to aggregated traffic from multiple upstream paths
Solution Approach 1:
The patent introduces an intermediary mechanism where the source router computes path bandwidths and determines load balancing weights based on downstream conditions, acting as a mediator between upstream traffic sources and downstream link capacities. This intermediary calculation prevents congestion at shared links while maintaining simple even load balancing at downstream routers, resolving the contradiction between load balancing simplicity and link congestion.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Routers balance network traffic among multiple paths through a network according to an amount of bandwidth that can be sent on an outgoing interface computed for each of the paths. For example, a router receives a link bandwidth for network links that are positioned between the first router and a second router of the network, and selects a plurality of forwarding paths from the first router to the second router. Upon determining that one of the network links is shared by multiple of the plurality of forwarding paths, the router computes a path bandwidth for each of the plurality of forwarding paths so as to account for splitting of link bandwidth of the shared network link across the multiple forwarding paths that share the network link. The router assigns packet flows to the forwarding paths based at least on the computed amount of bandwidth for each of the forwarding paths.