Method and system for virtual and physical network integration
US-9210079-B2 · Dec 8, 2015 · US
US9602305B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9602305-B2 |
| Application number | US-201514961801-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 7, 2015 |
| Priority date | Aug 14, 2012 |
| Publication date | Mar 21, 2017 |
| Grant date | Mar 21, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The disclosure herein describes a virtual extensible local area network (VXLAN) gateway. During operation, the VXLAN gateway receives, from a physical host, an Ethernet packet destined for a virtual machine residing in a remote layer-2 network broadcast domain that is different from a local layer-2 network broadcast domain where the physical host resides. The VXLAN gateway then determines a VXLAN identifier for the received Ethernet packet. The VXLAN gateway further encapsulates the Ethernet packet with the virtual extensible local area network identifier and an Internet Protocol (IP) header, and forwards the encapsulated packet to an IP network, thereby allowing the packet to be transported to the virtual machine via the IP network and allowing the remote layer-2 network broadcast domain and the local layer-2 network broadcast domain to be part of a common layer-2 broadcast domain.
Opening claim text (preview).
What is claimed is: 1. For a physical device separate from sources and destinations of packets in a network, a method for implementing a first virtual extensible local area network gateway at a first datacenter, the method comprising: receiving, from a physical host separate from the physical device implementing the first gateway, an Ethernet packet destined for a machine residing in a remote layer-2 network broadcast domain at a second, geographically remote datacenter that is different from a local layer-2 network broadcast domain in which the physical host resides at the first datacenter; determining a virtual extensible local area network identifier for the received Ethernet packet; encapsulating the Ethernet packet with the determined virtual extensible local area network identifier and an Internet Protocol (IP) header; and forwarding the encapsulated packet to an IP network to which the physical device implementing the first gateway connects, thereby allowing the packet to be transported to a second virtual extensible local area network gateway at the second datacenter via the IP network and allowing the remote layer-2 network broadcast domain at the second datacenter and the local layer-2 network broadcast domain at the first datacenter to be part of a common layer-2 broadcast domain. 2. The method of claim 1 further comprising: maintaining a data structure that maps the virtual extensible local area network identifier to an IP multicast group; and setting a destination IP address in the IP header to be an IP address corresponding to the IP multicast group when the Ethernet packet has a broadcast destination layer-2 address. 3. The method of claim 1 further comprising maintaining a data structure that maps at least one of (i) the physical host's medium access control (MAC) address and (ii) the physical host's virtual local area network (VLAN) tag to the virtual extensible local area network identifier. 4. The method of claim 1 further comprising: receiving, via the IP network from the second virtual extensible local area network gateway, a second packet originating from the machine at the second datacenter, wherein the packet includes an outer Ethernet header, an IP header, the virtual extensible local area network identifier, and an inner Ethernet header; decapsulating the second packet received from the second virtual extensible local area network gateway by removing the outer Ethernet header, IP header, and virtual extensible local area network identifier of the second packet; and forwarding the decapsulated second packet out of the physical device implementing the first gateway to the physical host. 5. The method of claim 1 further comprising establishing a tunnel with the second virtual extensible local area network gateway implemented by a second physical device, wherein the second gateway decapsulates the packet to remove the virtual extensible local area network identifier and IP header before forwarding the Ethernet packet to the destination machine at the second datacenter. 6. The method of claim 1 further comprising receiving configuration information from an OpenFlow controller, wherein the configuration information comprises mapping information that maps a set of addresses to the virtual extensible local area network identifier, wherein the configuration information is received as a set of flows from the OpenFlow controller. 7. The method of claim 1 , wherein the Ethernet packet received from the physical host originates from a virtual machine that operates on the physical host, wherein the Ethernet packet is an unencapsulated Ethernet packet when received by the physical device, wherein a virtual switch that operates on the physical host is not configured for encapsulating packets with virtual extensible local area network identifiers. 8. The method of claim 1 , wherein the physical host is a first physical host, the local layer-2 network broadcast domain is a first local layer-2 network broadcast domain, the Ethernet packet is a second Ethernet packet, the machine is a first machine, the remote layer-2 network broadcast domain is a first remote layer-2 network domain, the virtual extensible local area network identifier is a first virtual extensible local area network identifier, and the IP header is a first IP header, the method further comprising: receiving, from a second physical host separate from the physical device implementing the gateway, a second Ethernet packet destined for a second machine residing in a second remote layer-2 network broadcast domain at a third, geographically remote datacenter that is different from a second local layer-2 network broadcast domain in which the second physical host resides at the first datacenter; determining a second virtual extensible local area network identifier for the received second Ethernet packet; encapsulating the second Ethernet packet with the determined second virtual extensible local area network identifier and a second Internet Protocol (IP) header; and forwarding the second encapsulated packet to the IP network to which the physical device implementing the first gateway connects, thereby allowing the second packet to be transported to a third virtual extensible local area network gateway at the third datacenter via the IP network and allowing the second remote layer-2 network broadcast domain at the third datacenter and the second local layer-2 network broadcast domain at the first datacenter to be part of a common layer-2 broadcast domain. 9. The method of claim 1 , wherein the IP header comprises a source IP address corresponding to the first gateway and a destination IP address corresponding to the second gateway. 10. A non-transitory machine readable medium storing a program which when executed by a set of processing units of a physical device separate from sources and destinations of packets in a network implements a first virtual extensible local area network gateway at a first datacenter, the program comprising sets of instructions for: receiving, from a physical host separate from the physical device implementing the first gateway, an Ethernet packet destined for a machine residing in a remote layer-2 network broadcast domain at a second, geographically remote datacenter that is different from a local layer-2 network broadcast domain in which the physical host resides at the first datacenter; determining a virtual extensible local area network identifier for the received Ethernet packet; encapsulating the Ethernet packet with the determined virtual extensible local area network identifier and an Internet Protocol (IP) header; and forwarding the encapsulated packet to an IP network to which the physical device implementing the first gateway connects, thereby allowing the packet to be transported to a second virtual extensible local area network gateway at the second datacenter via the IP network and allowing the remote layer-2 network broadcast domain at the second datacenter and the local layer-2 network broadcast domain at the first datacenter to be part of a common layer-2 broadcast domain. 11. The non-transitory machine readable medium of claim 10 , wherein the program further comprises sets of instructions for: maintaining a data structure that maps the virtual extensible local area network identifier to an IP multicast group; and setting a destination IP address in the IP header to be an IP address corresponding to the IP multicast group when the Ethernet packet has a broadcast destination layer-2 address. 12. The non-transitory machine readable medium of claim 10 , wherein the program further comprises a set of instructions for maintaining a data structure that maps a
Interconnection of networks using encapsulation techniques, e.g. tunneling · CPC title
Virtual LANs, VLANs, e.g. virtual private networks [VPN] (LAN interconnection over a bridge based backbone H04L12/462; encapsulation techniques H04L12/4633; routing of packets H04L45/00; packet switches H04L49/00; virtual private networks for security H04L63/0272) · CPC title
Address processing for routing · CPC title
in the data link layer [OSI layer 2], e.g. HDLC · CPC title
Arrangements for connecting between networks having differing types of switching systems, e.g. gateways · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.