Policy-driven Dynamic Load Balancing
Dynamic Load Balancing (DLB) is an advanced hashing mechanism that
-
enhances traditional ECMP forwarding,
-
optimizes traffic distribution by considering the link load, and
-
dynamically directs traffic over underutilized links
This occurs at the Layer 3 and is often implemented in modern networking hardware such as N9364E-SG2 Silicon One switches.
The policy-driven Dynamic Load Balancing (DLB) feature is introduced on the N9364E-SG2 Silicon One switches in Cisco NX-OS Release 10.5(3)F. For more information about Dynamic Load Balancing, see Cisco Nexus 9000 Series NX-OS Unicast Routing Configuration Guide on Cisco.com.
Dynamic Load Balancing supports two modes:
-
Flowlet Load Balancing (FLB)—In this mode, load balancing occurs at flowlet level based on DRE metrics. This is the default mode. Flowlets are bursts of packets from a flow, identified by their 5-tuple (or selected fields from the packet), that are separated by large enough gaps such that they can be routed independently without causing reordering.
-
Per-packet Load Balancing (PLB)—In this mode, the load balancing decision occurs at a per-packet level instead of the flowlet level. Per-packet Load Balancing can be used for scenarios where the endpoints (for example, Smart NICs) allow for packet re-ordering. This mode distributes traffic packet by packet across all available links in a DLB ECMP group and spreads out the traffic, reducing network congestion.