IP Library Granted Patent US 9,154,416
Granted Patent B2
US 9,154,416 · App. 13/801,858 · Granted Oct 6, 2015

Overlay tunnel in a fabric switch

Inventor: Phanidhar Koganti (Hyderabad, IN)
Assignee: BROCADE COMMUNICATIONS SYSTEMS, INC.
H04L45/74H04L45/586H04L49/356H04L49/70
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,154,416
App. No.
13/801,858
Granted
Oct 6, 2015
Kind
B2
Abstract

One embodiment of the present invention provides a switch. The switch includes a tunnel management module, a packet processor, and a forwarding module. The tunnel management module operates the switch as a tunnel gateway capable of terminating an overlay tunnel. During operation, the packet processor, which is coupled to the tunnel management module, identifies in a data packet a virtual Internet Protocol (IP) address associated with a virtual tunnel gateway. This virtual tunnel gateway is associated with the switch and the data packet is associated with the overlay tunnel. The forwarding module determines an output port for an inner packet in the data packet based on a destination address of the inner packet.

Claims (43)

1. A switch, comprising:

a tunnel management module configurable to:

operate the switch as a tunnel gateway capable of terminating an overlay tunnel;

learn a MAC address of a virtual machine via a tunnel initiated by a first hypervisor associated with the virtual machine; and

construct a message for a second hypervisor comprising an Internet Protocol (IP) address of the first hypervisor in response to receiving a data frame with unknown destination from a virtual machine associated with the second hypervisor; and

a packet processor configurable to identify in a data packet a virtual IP address associated with a virtual tunnel gateway, wherein the virtual tunnel gateway is associated with the switch; and

a forwarding module configurable to determine an output port for an inner packet in the data packet based on a destination address of the inner packet.

2. The switch of claim 1 , wherein the tunnel management module is further configurable to identify a hypervisor controlling a virtual machine, wherein the virtual machine initiates the overlay tunnel by encapsulating the inner packet using the virtual IP address.

3. The switch of claim 1 , wherein the packet processor is further configurable to identify in the data packet a virtual media access control (MAC) address corresponding to the virtual IP address.

4. The switch of claim 1 , further comprising a device management module configurable to generate a configuration message comprising the virtual IP address as a tunnel gateway address in response to detecting a hypervisor.

5. The switch of claim 4 , wherein the virtual IP address in the configuration message corresponds to a default gateway router.

6. The switch of claim 1 , wherein the virtual IP address is further associated with a remote switch, wherein the remote switch operates as a tunnel gateway and is associated with the virtual tunnel gateway.

7. The switch of claim 1 ,

wherein the packet processor is further configurable to:

encapsulate the data packet in an encapsulation packet; and

including a virtual switch identifier as an ingress switch identifier of the encapsulation packet; and

wherein the switch identifier is associated with the switch.

8. The switch of claim 1 , further comprising a switch management module configurable to maintain a membership in a network of interconnected switches.

9. The switch of claim 8 , wherein the packet processor is further configurable to identify the inner packet to be a broadcast, unknown unicast, or multicast packet; and

wherein the tunnel management module is further configurable to select a multicast tree in the network to distribute the inner packet based on one or more of: multicast group membership, virtual local area network (VLAN) membership, and network load.

10. The switch of claim 8 , wherein the virtual tunnel gateway appears as a member switch of the network.

11. The switch of claim 1 , wherein the packet processor is further configurable to construct an Address Resolution Protocol (ARP) response message comprising a virtual MAC address associated with the switch in response to an ARP query message for the virtual IP address.

12. A computer-executable method, comprising:

operating a switch as a tunnel gateway capable of terminating an overlay tunnel;

learning a MAC address of a virtual machine via a tunnel initiated by a first hypervisor associated with the virtual machine;

constructing a message for a second hypervisor comprising an Internet Protocol (IP) address of the first hypervisor in response to receiving a data frame with unknown destination from a virtual machine associated with the second hypervisor; and

identifying in a data packet a virtual IP address associated with a virtual tunnel gateway, wherein the virtual tunnel gateway is associated with the switch; and

determining an output port for an inner packet in the data packet based on a destination address of the inner packet.

13. The method of claim 12 , further comprising identifying a hypervisor controlling a virtual machine, wherein the virtual machine initiates the overlay tunnel by encapsulating the inner packet using the virtual IP address.

14. The method of claim 12 , further comprising identifying in the data packet a virtual media access control (MAC) address corresponding to the virtual IP address.

15. The method of claim 12 , further comprising generating a configuration message comprising the virtual IP address as a tunnel gateway address in response to detecting a hypervisor.

16. The method of claim 15 , wherein the virtual IP address in the configuration message corresponds to a default gateway router.

17. The method of claim 12 , wherein the virtual IP address is further associated with a remote switch, wherein the remote switch operates as a tunnel gateway and is associated with the virtual tunnel gateway.

18. The method of claim 12 , further comprising:

encapsulating the data packet in an encapsulation packet; and

identifying a virtual switch identifier as an ingress switch identifier of the encapsulation packet; and

wherein the virtual switch identifier is associated with the switch.

19. The method of claim 12 , further comprising maintaining a membership in a network of interconnected switches.

20. The method of claim 19 , further comprising:

identifying the inner packet to be a broadcast, unknown unicast, or multicast packet; and

selecting a multicast tree in the network to distribute the inner packet based on one or more of: multicast group membership, virtual local area network (VLAN) membership, and network load.

21. The method of claim 19 , wherein the virtual tunnel gateway appears as a member switch of the network.

22. The method of claim 12 , further comprising constructing an Address Resolution Protocol (ARP) response message comprising a virtual MAC address associated with the switch in response to an ARP query message for the virtual IP address.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2018
From: BROCADE COMMUNICATIONS SYSTEMS LLC
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047270/0247 →
CHANGE OF NAME Recorded Dec 13, 2017
From: BROCADE COMMUNICATIONS SYSTEMS, INC.
To: BROCADE COMMUNICATIONS SYSTEMS LLC
Reel/Frame 044891/0536 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2013
From: KOGANTI, PHANIDHAR
To: BROCADE COMMUNICATIONS SYSTEMS, INC.
Reel/Frame 030527/0927 →
Continuity (2)
Provisional Application 61614392 · Mar 22, 2012
Related Publication 20130250951A1 · Sep 26, 2013