US 11,888,746 B2
System and method for multi-path load balancing in network fabrics
Mohammadreza Alizadeh Attar, Santa Clara, CA (US); Thomas J. Edsall, Los Gatos, CA (US); Sarang M. Dharmapurikar, Cupertino, CA (US); and Janakiramanan Vaidyanathan, San Ramon, CA (US)
Assigned to Cisco Technology, Inc., San Jose, CA (US)
Filed by Cisco Technology, Inc., San Jose, CA (US)
Filed on Nov. 29, 2022, as Appl. No. 18/059,713.
Application 18/059,713 is a continuation of application No. 17/007,526, filed on Aug. 31, 2020, granted, now 11,528,228.
Application 17/007,526 is a continuation of application No. 14/308,464, filed on Jun. 18, 2014, granted, now 10,778,584, issued on Sep. 15, 2020.
Claims priority of provisional application 61/900,302, filed on Nov. 5, 2013.
Prior Publication US 2023/0088185 A1, Mar. 23, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 47/125 (2022.01); H04L 45/00 (2022.01)
CPC H04L 47/125 (2013.01) [H04L 45/38 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
ascertaining a remote congestion metric indicating a remote level of congestion associated with a plurality of uplinks of a first device, wherein the remote level of congestion provides a measure of congestion experienced by packets sent through a corresponding uplink of the plurality of uplinks on remote links in a network;
selecting a path of a plurality of paths from the plurality of uplinks to transmit a flowlet to a second device based at least in part on the remote congestion metric and the path being allowable to transmit to the second device, wherein the path of the plurality of paths is a previously selected path when one or more congestion metrics of the plurality of paths does not provide at least a minimum defined amount of improvement over one or more congestion metrics of the previously selected path;
encapsulating one or more packets of the flowlet with a header, the header including at least a representation of an uplink of the plurality of uplinks that will transmit the encapsulated packets and a value specifying congestion information indicating a level of congestion experienced by the one or more packets as they traverse through the network; and
transmitting the encapsulated packets via the path.