Adaptive load balancing can be enabled per LAG to dynamically resolve traffic imbalance between LAG member ports. Traffic distribution imbalance between LAG ports can be caused by the following:
hashing limitations in the presence of large flows
flow bias or service imbalance leading to more traffic over specific ports
Adaptive load balancing actively monitors the traffic rate of each LAG member port and identifies if an optimization can be made to distribute traffic more evenly between LAG ports. The traffic rate of each LAG port is pooled at regular intervals and an optimization is only executed if the most loaded LAG link is beyond 30% utilization and the adaptive load balancing tolerance threshold is reached.
The interval for pooling LAG statistics from the line cards is configurable in seconds. The system optimizes traffic distribution after two pooling intervals.
The tolerance is a configurable percentage value corresponding to the difference between the most and least loaded ports in the LAG. The following formula is used to calculate the tolerance:
Tolerance = (rate of the most loaded link - rate of the least loaded link)/rate of the most loaded link * 100
Using a LAG of two ports as an example, where port A = 10 Gb/s and port B = 8 Gb/s, the difference between the most and least loaded ports in the LAG is equal to the following: (10 - 8) / 10 * 100 = 20%.
Adaptive load balancing is not supported in combination with per-link hash, mixed-speed LAG, customized hash-weight values, per-fp-egr-queuing, per-fp-sap-instance, port cross-connect, MC-LAG, or ESM.
In classic CLI, adaptive load balancing requires a LAG ID from 1 to 64. In model-driven interfaces, it is supported on LAGs with max-ports configured to 64.
The following configuration example shows an adaptive load balancing with 20% tolerance:
*A:Dut-C>config>lag# info
----------------------------------------------
mode access
encap-type dot1q
port 1/1/1
port 1/1/2
adaptive-load-balancing tolerance 20
no shutdown
----------------------------------------------