US 12,335,066 B2
Methods and systems to offload overlay network packet encapsulation to hardware
Shoby Cherian, Dublin, CA (US); Raghavendra Subbarao Narahari Venkata, Santa Clara, CA (US); and Tanuja Ingale, Campbell, CA (US)
Assigned to VMWare LLC, Palo Alto, CA (US)
Filed by VMware LLC, Palo Alto, CA (US)
Filed on Aug. 30, 2021, as Appl. No. 17/461,908.
Application 17/461,908 is a continuation of application No. 16/199,305, filed on Nov. 26, 2018, granted, now 11,108,593.
Application 16/199,305 is a continuation of application No. 15/633,485, filed on Jun. 26, 2017, granted, now 10,142,127, issued on Nov. 27, 2018.
Application 15/633,485 is a continuation of application No. 14/320,386, filed on Jun. 30, 2014, granted, now 9,692,698, issued on Jun. 27, 2017.
Prior Publication US 2021/0392017 A1, Dec. 16, 2021
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 12/46 (2006.01); G06F 9/455 (2018.01); H04L 45/745 (2022.01); H04L 49/354 (2022.01); H04L 69/22 (2022.01); H04L 49/90 (2022.01); H04L 61/103 (2022.01); H04L 101/622 (2022.01)
CPC H04L 12/4633 (2013.01) [G06F 9/45558 (2013.01); H04L 45/745 (2013.01); H04L 49/354 (2013.01); H04L 69/22 (2013.01); G06F 2009/45595 (2013.01); H04L 2012/4629 (2013.01); H04L 49/9068 (2013.01); H04L 61/103 (2013.01); H04L 2101/622 (2022.05)] 21 Claims
OG exemplary drawing
 
1. A physical network interface controller (PNIC) for a host computer, the PNIC comprising at least one processing unit and a non-transitory machine readable medium storing a program for performing packet decapsulation for an overlay network when executed by the processing unit, the program comprising sets of instructions for:
receiving, from a hypervisor executing on the host computer and through a virtual NIC emulator, a mapping table associating each virtual machine (VM) in a set of two or more VMs executing on the host computer with one tunnel endpoint;
decapsulating an encapsulated packet, to provide a decapsulated packet, received from the overlay network and destined for a particular VM operating on the hypervisor executing on the host computer, by removing an overlay network encapsulation header from the encapsulated packet, the encapsulation header comprising a particular tunnel endpoint address; and
based on a determination that the particular tunnel endpoint address in the overlay network encapsulation header matches a tunnel endpoint address associated in the mapping table with a particular VM address in the decapsulated packet, forwarding the decapsulated packet to the particular VM.