Virtual tunnel endpoints for congestion-aware load balancing
US-10320681-B2 · Jun 11, 2019 · US
US11095551B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11095551-B2 |
| Application number | US-201815896315-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 14, 2018 |
| Priority date | Jul 29, 2015 |
| Publication date | Aug 17, 2021 |
| Grant date | Aug 17, 2021 |
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.
For multipathing using a network of overlays, a set of virtual network interfaces (VNICs) corresponding to a physical network interface (PNIC) is created in a first data processing system. A first virtual network interface (VNIC) from the set of VNICs is bound to a virtual machine (VM) executing in a first data processing environment across a data network from the first data processing system. During a data communication with a second data processing system, data is divided into a first portion and a second portion, the first portion using a first path from the first VNIC to the first VM to the second data processing system, and the second portion using a second path from the PNIC to the second data processing system.
Opening claim text (preview).
What is claimed is: 1. A method for multipathing using a network of overlays, the method comprising: creating a first overlay virtual machine (VM) in a first datacenter; binding a first virtual network interface (VNIC) to the first overlay VM across a data network from a first data processing system, the first VNIC corresponding to a physical network interface (PNIC) in the first data processing system, the binding creating a first tunnel between the first data processing system and the first datacenter; creating a second tunnel between the first data processing system and a second datacenter by binding a second VNIC corresponding to the PNIC to a second overlay VM executing in the second datacenter; and dividing, during a data communication with a second data processing system, data into a first portion and a second portion, the first portion using a first path from the first VNIC to the first overlay VM to the second data processing system using the first tunnel through the first datacenter, and the second portion using a second path from the second VNIC to the second overlay VM to the second data processing system using the second tunnel through the second datacenter, wherein the first path has a better path performance metric than the second path because of the binding with the first overlay VM. 2. The method of claim 1 , further comprising: configuring a Network Address Translation (NAT) such that the second data processing system communicates with the first data processing system by communicating with the first overlay VM at the first data processing environment. 3. The method of claim 1 , further comprising: further dividing, during the data communication with the second data processing system, the data into a third portion, the third portion using a third path via the second tunnel from the second VNIC to the second overlay VM to the second data processing system. 4. The method of claim 1 , further comprising: configuring the first overlay VM to direct the first portion of the data to a third VM in a third data processing environment; and directing, in the first path, the first portion from the first VNIC to a set of VMs in a set of data processing environments to the second data processing system, wherein the set of VMs in a set of data processing environments includes the first overlay VM and the third VM. 5. The method of claim 1 , further comprising: receiving, at the first data processing system from the second data processing system, a message to initiate the data, communication; providing, from the first data processing system to the second data processing system, responsive to the message, information of the PNIC and information of the set of VNICs. 6. The method of claim 5 , further comprising: causing, responsive to the information of the set of VNICs, a MultiPath Transmission Control Protocol (MPTCP) component of the second data processing system to establish the first path and the second path. 7. The method of claim 6 , further comprising: receiving, responsive to the causing, a first portion of a second data from the second data processing system on the first path, and a second portion of the second data from the second data processing system on the second path. 8. The method of claim 1 , further comprising: creating the first overlay VM in a data processing system in the first datacenter, wherein creating the first VNIC in the set of VNICs, the creating the first overlay VM, and the binding are performed according to a demand on the first data processing system. 9. The method of claim 8 , wherein the demand comprises a request for the data communication from the second data processing system. 10. The method of claim 1 , further comprising: terminating the data communication with the second data processing system; and terminating the first overlay VM in the first data processing environment responsive to terminating the data communication with the second data processing system. 11. The method of claim 1 , wherein the path performance metric is a measurement of a throughput, and wherein the first path has a higher throughput than the second path because of the binding with the first overlay VM. 12. A computer usable program product comprising a computer readable storage medium including computer usable code for multipathing using a network of overlays, the computer usable code comprising: computer usable code for creating a first overlay virtual machine (VM) in a first datacenter; computer usable code for binding a first virtual network interface (VNIC) to the first overlay VM across a data network from a first data processing system, the first VNIC corresponding to a physical network interface (PNIC) in the first data processing system, the binding creating a first tunnel between the first data processing system and the first datacenter; computer usable code for creating a second tunnel between the first data processing system and a second datacenter by binding a second VNIC corresponding to the PNIC to a second overlay VM executing in the second datacenter; and computer usable code for dividing, during a data communication with a second data processing system, data into a first portion and a second portion, the first portion using a first path from the first VNIC to the first overlay VM to the second data processing system using the first tunnel through the first datacenter, and the second portion using a second path from the second VNIC to the second overlay VM to the second data processing system using the second tunnel through the second datacenter, wherein the first path has a better path performance metric than the second path because of the binding with the first overlay VM. 13. The computer usable program product of claim 12 , further comprising: computer usable code for configuring a Network Address Translation (NAT) such that the second data processing system communicates with the first data processing system by communicating with the first overlay VM at the first data processing environment. 14. The computer usable program product of claim 12 , further comprising: computer usable code for further dividing, during the data communication with the second data processing system, the data into a third portion, the third portion using a third path via the second tunnel from the second VNIC to the second overlay VM to the second data processing system. 15. The computer usable program product of claim 12 , further comprising: computer usable code for configuring the first overlay VM to direct the first portion of the data to a third VM in a third data processing environment; and computer usable code for directing, in the first path, the first portion from the first VNIC to a set of VMs in a set of data processing environments to the second data processing system, wherein the set of VMs in a set of data processing environments includes the first overlay VM and the third VM. 16. The computer usable program product of claim 12 , further comprising: computer usable code for receiving, at the first data processing system from the second data processing system, a message to initiate the data communication; computer usable code for providing, from the first data processing system to the second data processing system, responsive to the message, information of the PNIC and information of the set of VNICs. 17. The computer usable program product of claim 16 , further comprising: computer usable code for causing, responsive to the information of the set of VNICs, a MultiPath Transmission Control Protocol (MPTCP) component of the
using tunnelling or encapsulation · CPC title
Multipath · CPC title
Network integration; Enabling network access in virtual machine instances · CPC title
Hypervisor-specific management and integration aspects · CPC title
between local and global IP addresses · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.