IP Library Granted Patent US 10,666,460
Granted Patent B2
US 10,666,460 · App. 15/972,090 · Granted May 26, 2020

Measurement based routing through multiple public clouds

Inventors: Israel Cidon (San Francisco, CA); Chen Dar (Magshimim, IL); Prashanth Venugopal (San Francisco, CA); Eyal Zohar (Shimshit, IL); Alex Markuze (Ramat Gan, IL); Aran Bergman (Givatayim, IL)
Assignee: VMWARE, INC.
H04L12/4641H04L12/14H04L12/1403H04L12/1428H04L12/2854H04L12/2859H04L12/4633H04L41/0803H04L43/0829H04L43/0852H04L43/0888H04L45/04H04L45/12H04L45/14H04L45/64H04L45/74H04L45/745H04L61/1511H04L61/25H04L61/255H04L61/2514H04L61/305H04L63/0245H04L63/20H04L67/10H04M15/00H04M15/51H04L41/046H04L43/08H04L63/0263H04L63/0272H04L63/0281H04L2212/00
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 10,666,460
App. No.
15/972,090
Filed
May 4, 2018
Granted
May 26, 2020
Kind
B2
Examiner
AUNG, SAI
Art Unit
2416
USPC
370/392
Abstract

Some embodiments establish for an entity a virtual network over several public clouds of several public cloud providers and/or in several regions. In some embodiments, the virtual network is an overlay network that spans across several public clouds to interconnect one or more private networks (e.g., networks within branches, divisions, departments of the entity or their associated datacenters), mobile users, and SaaS (Software as a Service) provider machines, and other web applications of the entity. The virtual network in some embodiments can be configured to optimize the routing of the entity's data messages to their destinations for best end-to-end performance, reliability and security, while trying to minimize the routing of this traffic through the Internet. Also, the virtual network in some embodiments can be configured to optimize the layer 4 processing of the data message flows passing through the network.

Claims (26)

1. A method for establishing a virtual network for an entity over a plurality of public cloud datacenters of a plurality of public cloud providers, the method comprising:

deploying first and second sets of forwarding elements in first and second multi-tenant public cloud datacenters operated by first and second public cloud providers;

configuring a set of measurement agents deployed in the first and second public cloud datacenters to obtain measurements regarding connections between forwarding elements in the first and second sets;

based on the obtained measurements, defining virtual-network routes through the first and second set forwarding elements;

distributing said routes to the first and second sets of forwarding elements to configure these elements to implement the virtual network;

wherein a set of controllers aggregates said measurements, and based on the aggregated measurements, defines the virtual-network routes; and

wherein the virtual-network routes are overlay routes established by encapsulating data messages traversing these routes with encapsulation headers that store network addresses for ingress and egress forwarding elements for entering and exiting the virtual network and network addresses of next hop forwarding elements for identifying next hop destinations for traversing the virtual network.

2. The method of claim 1 , wherein the measurements include measurements that quantify data message throughput speeds of the connections.

3. The method of claim 1 , wherein the measurements include measurements that quantify data message loss values or delay values of the connections.

4. The method of claim 1 , wherein the entity and the virtual network are a first entity and a first virtual network, the method further comprising defining virtual-network routes through at least a subset of the first forwarding element set and at least a subset of the second forwarding element set in order to define a second virtual network for a second entity.

5. The method of claim 1 , wherein at least a subset of the forwarding elements are also configured to implement virtual networks for other entities, wherein the encapsulation headers also store an entity identifier value that identifies the entity associated with the data message.

6. The method of claim 1 , wherein the virtual network is a virtual wide area network (WAN) that connects machines at multiple different machine locations of the entity, said locations including at least two of an office location, a datacenter location, a remote device location, and a SaaS (Software as a Service) provider location.

7. The method of claim 1 , wherein the first and second datacenters are in different regions.

8. The method of claim 7 , wherein said different regions are different cities, different states, or different countries.

9. The method of claim 1 , wherein the measurement agents obtain measurements by sending pinging messages to each other in order to measure signal latency.

10. The method of claim 1 , wherein the measurement agents obtain measurements by sending pinging messages to each other in order to measure signal drop rates.

11. A system for establishing a virtual network for an entity over a plurality of public cloud datacenters in a plurality of regions, the system comprising:

a first set of forwarding elements in a first multi-tenant public cloud datacenter in a first region;

a second set of forwarding elements in a second multi-tenant public cloud datacenter in a second region different than the first region;

a set of measurement agents deployed in the public clouds to obtain measurements regarding connections between forwarding elements in the first and second sets;

a set of controllers to aggregate said measurements and to define virtual-network routes through the first and second set forwarding elements, said routes distributed to the first and second sets of forwarding elements to configure these elements to implement the virtual network; and

wherein the virtual-network routes are overlay routes established by encapsulating data messages traversing these routes with encapsulation headers that store network addresses for ingress and egress forwarding elements for entering and exiting the virtual network and network addresses of next hop forwarding elements for identifying next hop destinations for traversing the virtual network.

12. The system of claim 11 , wherein the measurements include measurements that quantify at least one of data message throughput speeds, data loss rates, and data delay values of the connections.

13. The system of claim 11 , wherein at least a subset of the forwarding elements are also configured to implement virtual networks for other entities, wherein the encapsulation headers also store an entity identifier value that identifies the entity associated with the data message.

14. The system of claim 11 , wherein the virtual network is a virtual wide area network (WAN) that connects machines at multiple different machine locations of the entity, said locations including at least two of an office location, a datacenter location, a remote device location, and a SaaS (Software as a Service) provider location.

15. The system of claim 11 , wherein the measurement agents obtain measurements by sending pinging messages to each other.

Assignments (3)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2019
From: NICIRA, INC.
To: VMWARE, INC.
Reel/Frame 049743/0073 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2019
From: CIDON, ISRAEL; DAR, CHEN; VENUGOPAL, PRASHANTH; ZOHAR, EYAL; MARKUZE, ALEX; BERGMAN, ARAN
To: NICIRA, INC.
Reel/Frame 048733/0049 →
Continuity (2)
Provisional Application 62566524 · Oct 2, 2017
Related Publication 20190104051A1 · Apr 4, 2019
Cited By (33)
US 12,218,800 US 12,218,845 US 12,237,990 US 12,250,114 US 12,261,777 US 12,267,364 US 12,316,524 US 12,335,131 US 12,355,655 US 12,368,676 US 12,375,403 US 12,401,544 US 12,425,332 US 12,425,335 US 12,425,347 US 12,425,395 US 12,483,968 US 12,489,672 US 12,506,678 US 12,507,120 US 12,507,148 US 12,507,153 US 12,526,183 US 12,549,465 US 12,563,438 US 12,568,039 US 12,587,468 US 12,603,827 US 12,603,848 US 12,632,330 US 12,652,217 US 12,659,719 US 12,719,782