Dynamic Load Balancing for Link Aggregation Groups
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Link aggregation systems face sub-optimal performance due to uneven data flow distribution across links, leading to congested and underutilized ports, which reduces throughput and efficiency.
Innovation Solution
Implement a load balancing method that redistributes data flows from congested ports to less congested ones within a link aggregation group by using congestion monitoring and quantized congestion notification algorithms to identify and migrate data flows, ensuring in-order packet arrival through timestamp management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Stability of the object's composition
If data flows are distributed across LAG links using a hashing function, then packet re-ordering is prevented, but load balancing becomes sub-optimal due to uneven distribution
Solution Approach 1:
The patent implements dynamic load balancing by continuously monitoring link utilization and reassigning data flows from congested links to less congested ones. The system transitions from a static hashing-based distribution to a dynamic approach where flow-to-link mapping changes based on real-time network conditions, thereby improving throughput while maintaining packet order through careful reassignment timing.
Solution Approach 2:
The system employs feedback mechanisms by monitoring link utilization metrics and using this information to make intelligent load balancing decisions. The load balancer receives feedback about link congestion status and adjusts flow distribution accordingly, creating a closed-loop control system that optimizes throughput while preventing packet re-ordering issues.
2Stability of the object's composition
If data flows are bound to a fixed output port, then packet re-ordering is avoided, but congestion on specific ports reduces overall network performance
Solution Approach 1:
The patent makes the flow binding dynamic by allowing reassignment of data flows between output ports based on congestion monitoring. When a port becomes congested, the system dynamically rebalances flows to less congested ports, transforming the static binding into an adaptive mechanism that maintains both stability and performance.
Solution Approach 2:
The system changes the binding parameter from a fixed hash-based assignment to a congestion-aware assignment. By monitoring utilization parameters and adjusting flow-to-port mappings based on these parameters, the system optimizes network performance while maintaining packet order through controlled reassignment.
3Reliability
If link aggregation uses multiple physical ports, then redundancy and throughput are improved, but uneven load distribution causes some ports to be underutilized
Solution Approach 1:
The system uses feedback from link utilization monitoring to dynamically adjust load distribution across aggregated ports. By continuously measuring port usage and redistributing flows from congested to underutilized ports, the system ensures balanced utilization across all physical ports while maintaining the redundancy benefits of link aggregation.
Solution Approach 2:
The patent applies local quality optimization by treating each link in the aggregation group differently based on its current utilization state. Instead of uniform distribution, the system assigns flows to specific links based on their local congestion conditions, ensuring optimal utilization of each individual port while maintaining overall system redundancy.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method is implemented by a network element to improve load sharing for a link aggregation group by redistributing data flows to less congested ports in a set of ports associated with the link aggregation group. The network element receives a data packet in a data flow at an ingress port of the network element. A load sharing process is performed to select an egress port of the network element. A check is whether the selected egress port is congested. A check is made whether a time since a previous data packet in the data flow was received exceeds a threshold value. A less congested egress port is identified in the set of ports. A flow table is updated to bind the data flow to the less congested egress port and the data packet is forwarded to the less congested egress port.