US 12,073,241 B2
Learning of tunnel endpoint selections
Jianjun Shen, Redwood City, CA (US); Alexander Tessmer, Mountain View, CA (US); Mukesh Hira, Palo Alto, CA (US); Pankaj Thakkar, Cupertino, CA (US); and Hua Wang, Beijing (CN)
Assigned to Nicira, Inc., Palo Alto, CA (US)
Filed by Nicira, Inc., Palo Alto, CA (US)
Filed on Sep. 4, 2022, as Appl. No. 17/902,881.
Application 17/902,881 is a continuation of application No. 16/920,397, filed on Jul. 2, 2020, granted, now 11,436,037.
Application 16/920,397 is a continuation of application No. 14/956,736, filed on Dec. 2, 2015, granted, now 10,719,341, issued on Jul. 21, 2020.
Prior Publication US 2022/0413893 A1, Dec. 29, 2022
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/455 (2018.01); H04L 12/46 (2006.01); H04L 45/00 (2022.01); H04L 45/74 (2022.01); H04L 47/70 (2022.01); H04L 49/00 (2022.01); H04L 101/00 (2022.01); H04L 101/622 (2022.01); H04L 101/677 (2022.01)
CPC G06F 9/45558 (2013.01) [H04L 12/4633 (2013.01); H04L 45/72 (2013.01); H04L 45/74 (2013.01); H04L 47/825 (2013.01); H04L 49/70 (2013.01); G06F 2009/45595 (2013.01); H04L 2101/00 (2022.05); H04L 2101/622 (2022.05); H04L 2101/677 (2022.05)] 20 Claims
OG exemplary drawing
 
1. For a managed forwarding element (MFE), a method comprising:
receiving a packet from a data compute node for which the MFE performs first-hop processing, wherein the data compute node is associated with a plurality of tunnel endpoints of the MFE;
determining a destination tunnel endpoint for the packet;
using a load balancing algorithm to select one of the plurality of tunnel endpoints of the MFE as a source tunnel endpoint for the packet by (i) calculating a hash of a set of packet header values of the packet comprising source and destination network layer addresses, source and destination transport layer port number, and a transport layer protocol and (ii) assigning, based on the hash, the set of packet header values of the packet to a particular one of the plurality of tunnel endpoints; and
encapsulating the packet in a tunnel using the source and destination tunnel endpoints;
wherein using the load balancing algorithm to select one of the plurality of tunnel endpoints of the MFE further comprises:
assessing a current load on each tunnel endpoint of the plurality of tunnel endpoints based on fullness of queues corresponding to the tunnel endpoints; and
assigning the packet to a particular one of the plurality of tunnel endpoints based on the load assessment.