US 12,348,410 B2
Routing transport flows in a transport layer over multiple paths in a network layer
Yamin Friedman, Jerusalem (IL); Idan Borshteen, Karmiel (IL); Roee Moyal, Yokne'am Illit (IL); and Yuval Shpigelman, Netanya (IL)
Assigned to Mellanox Technologies, Ltd., Yokneam (IL)
Filed by Mellanox Technologies, Ltd., Yokneam (IL)
Filed on Jan. 17, 2024, as Appl. No. 18/414,803.
Application 18/414,803 is a continuation in part of application No. 17/901,671, filed on Sep. 1, 2022, granted, now 11,909,628.
Prior Publication US 2024/0187336 A1, Jun. 6, 2024
Int. Cl. H04L 45/24 (2022.01); H04L 45/00 (2022.01); H04L 47/122 (2022.01)
CPC H04L 45/24 (2013.01) [H04L 45/38 (2013.01); H04L 47/122 (2013.01)] 19 Claims
OG exemplary drawing
 
1. A first device comprising a network controller comprising:
a transport layer comprising a flow scheduler to schedule a transport flow from one of a plurality of transport flows, wherein the flow scheduler in the transport layer is further to:
schedule a first burst of data from a first queue pair (QP) in a first session to be sent to a destination;
schedule a second burst of data from a second QP in a second session to be sent to the destination; and
a network layer comprising multipath logic, the multipath logic to receive packets from the transport flow and select which path of a plurality of paths to the destination to use for the packets based on path congestion weights corresponding to the plurality of paths, wherein the multipath logic is further:
assign the first QP and the second QP to a multipath context, the multipath context storing a first state associated with a first network routing identifier of a first network path and a second state associated with a second network routing identifier of a second network path, the first state and the second state being based on the path congestion weights;
select the first network path for the first burst based on the first state in the multipath context; and
select the first network path or the second network path for the second burst based on the first state and the second state in the multipath context.