IP Library Granted Patent US 9,325,562
Granted Patent B2
US 9,325,562 · App. 13/472,410 · Granted Apr 26, 2016

Overlay tunnel information exchange protocol

Inventors: Dayavanti G. Kamath (Santa Clara, CA); Keshav G. Kamble (Fremont, CA); Jayakrishna Kidambi (San Jose, CA); Abhijit P. Kumbhare (San Jose, CA); Vijoy A. Pandey (San Jose, CA)
Assignee: International Business Machines Corporation
H04L29/08576H04L12/4633H04L12/4641H04L61/103
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,325,562
App. No.
13/472,410
Granted
Apr 26, 2016
Kind
B2
Abstract

In one embodiment, a system includes logic adapted for receiving, at a first end point station, an information exchange packet from each end point station in a virtual network having a specified virtual network identifier (VNID) and logic adapted for processing each received information exchange packet to retrieve information about connections at each end point station in the virtual network having the specified VNID, wherein each end point station either terminates or originates a tunnel shared by the first end point station in an overlay network. In this way, the information may be used to respond to address resolution protocol (ARP) requests sent locally in lieu of flooding the ARP request. Other systems, methods, and computer program products are also presented regarding the overlay tunnel information exchange protocol, according to various embodiments.

Claims (62)

1. A system, comprising:

a processor and logic integrated with and/or executable by the processor, the logic being configured to cause the processor to:

receive, by the processor at a first end point station, information exchange packets from all end point stations in a virtual network having a specified virtual network identifier (VNID); and

process each received information exchange packet to retrieve information about connections at each end point station in the virtual network having the specified VNID,

wherein each end point station either terminates or originates a tunnel shared by the first end point station in an overlay network, and

wherein each of the information exchange packets comprise a media access control (MAC) address for all member virtual machines (VMs) in the virtual network having the specified VNID connected to each end point station in the virtual network having the specified VNID.

2. The system as recited in claim 1 , wherein the logic is further configured to cause the processor to request that a second end point station send an information exchange packet to the first end point station in response to an information exchange packet not being received from the second end point station in the virtual network having the specified VNID during an anticipated timeframe.

3. The system as recited in claim 1 , wherein the logic is further configured to cause the processor to map tunnel identifiers for each end point station and the MAC address of each member VM hosted in the virtual network having the specified VNID which uses that end point station.

4. The system as recited in claim 1 , wherein the logic is further configured to cause the processor to assemble a Tunnel Information Base (TIB) for a selected tunnel end point, wherein the TIB is a table of information related to the selected tunnel end point, the TIB comprising:

a Tunnel ID,

the specified VNID,

MAC addresses of the member VMs of the virtual network having the specified VNID,

virtual port numbers corresponding to a hosting hypervisor,

Address Resolution Protocol (ARP) entries learnt by the member VMs of the virtual network having the specified VNID,

timers related to tunnel end points,

a tunnel end point source internet protocol (IP) Address,

a point-to-point or multipoint nature of the tunnel,

an IP Address of a peer tunnel end point,

shared forwarding tables of all the member VMs of the virtual network having the specified VNID,

a default Gateway MAC address of each of the member VMs,

multicast MAC and IP addresses used by all the member VMs of the virtual network having the specified VNID, and

Virtual Port members or a Mask of member virtual ports of the virtual network having the specified VNID.

5. The system as recited in claim 4 , wherein the logic is further configured to cause the processor to:

receive an ARP request from a local member VM of the virtual network having the specified VNID, the ARP request including a subject IP address;

resolve the ARP request by using the TIB to determine a MAC address corresponding to the subject IP address; and

respond to the local member VM that sent the ARP request with the MAC address corresponding to the subject IP address.

6. The system as recited in claim 1 , wherein the logic is further configured to cause the processor to send an information exchange packet to each end point station in the virtual network having the specified VNID.

7. The system as recited in claim 6 , wherein the information exchange packet comprises a media access control (MAC) address for each member virtual machine (VM) of the virtual network having the specified VNID connected to the first end point station.

8. The system as recited in claim 6 , wherein the information exchange packet is sent in response to one of the following: establishment of a tunnel, addition of a virtual machine (VM) which is a member of the virtual network having the specified VNID, subtraction of a VM which is a member of the virtual network having the specified VNID, expiration of a predetermined amount of time, a change in a configuration of any VM in which is a member of the virtual network having the specified VNID, change in overlay gateway properties, and change of a tunnel information base (TIB) on any overlay gateway.

9. The system as recited in claim 1 , wherein the logic configured to cause the processor to process each received information exchange packet is further configured to cause the processor to:

de-encapsulate an overlay header from the information exchange packet to retrieve an inner packet; and

read the inner packet to determine the information about each end point station in the virtual network having the specified VNID.

10. A computer program product for exchanging overlay tunnel information, the computer program product comprising a computer readable hardware storage device having computer readable program code embodied therewith, the computer readable program code comprising:

computer readable program code configured for receiving, at a first end point station, an information exchange packet from each end point station in a virtual network having a specified virtual network identifier (VNID); and

computer readable program code configured for processing each received information exchange packet to retrieve information about connections at each end point station in the virtual network having the specified VNID,

wherein each end point station either terminates or originates a tunnel shared by the first end point station in an overlay network, and

wherein the information exchange packet comprises a media access control (MAC) address for each member virtual machine (VM) of the virtual network having the specified VNID connected to each end point station.

11. The computer program product as recited in claim 10 , further comprising computer readable program code configured for mapping tunnel identifiers for each end point station and the MAC address for each VM hosted in the virtual network having the specified VNID which uses that end point station.

12. The computer program product as recited in claim 10 , further comprising computer readable program code configured for assembling a Tunnel Information Base (TIB) for a selected tunnel end point, wherein the TIB is a table of information related to the selected tunnel end point, the TIB comprising:

a Tunnel ID,

the specified VNID,

MAC addresses of the member VMs of the virtual network having the specified VNID,

virtual port numbers corresponding to a hosting hypervisor,

Address Resolution Protocol (ARP) entries learnt by the member VMs of the virtual network having the specified VNID,

timers related to tunnel end points,

a tunnel end point source internet protocol (IP) Address,

a point-to-point or multipoint nature of the tunnel,

an IP Address of a peer tunnel end point,

shared forwarding tables of all the member VMs of the virtual network having the specified VNID,

a default Gateway MAC address of each of the member VMs,

multicast MAC and IP addresses used by all the member VMs of the virtual network having the specified VNID, and

Virtual Port members or a Mask of member virtual ports of the virtual network having the specified VNID.

13. The computer program product as recited in claim 12 , further comprising:

computer readable program code configured for receiving an ARP request from a local member VM of the virtual network having the specified VNID, the ARP request including a subject IP address;

computer readable program code configured for resolving the ARP request by using the TIB to determine a MAC address corresponding to the subject IP address; and

computer readable program code configured for responding to the local member VM that sent the ARP request with the MAC address corresponding to the subject IP address.

14. The computer program product as recited in claim 10 , further comprising computer readable program code configured for sending an information exchange packet to each end point station in the virtual network having the specified VNID.

15. The computer program product as recited in claim 14 , wherein the information exchange packet comprises media access control (MAC) addresses of member virtual machines (VMs) of the virtual network having the specified VNID.

16. The computer program product as recited in claim 14 , wherein the information exchange packet is sent in response to one of the following: establishment of a tunnel, addition of a virtual machine (VM) which is a member of the virtual network having the specified VNID, subtraction of a VM which is a member of the virtual network having the specified VNID, expiration of a predetermined amount of time, a change in a configuration of any VM in which is a member of the virtual network having the specified VNID, change in overlay gateway properties, and change of a tunnel information base (TIB) on any overlay gateway.

17. The computer program product as recited in claim 10 , wherein the computer readable program code configured for processing each received information exchange packet comprises:

computer readable program code configured for de-encapsulating an overlay header from the information exchange packet to retrieve an inner packet; and

computer readable program code configured for reading the inner packet to determine the information about each end point station of the virtual network having the specified VNID that is contained in the inner packet.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2012
From: KAMATH, DAYAVANTI G.; KAMBLE, KESHAV G.; KIDAMBI, JAYAKRISHNA; KUMBHARE, ABHIJIT P.; PANDEY, VIJOY A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 028346/0365 →
Continuity (1)
Related Publication 20130311637A1 · Nov 21, 2013