IP Library Granted Patent US 11,212,238
Granted Patent B2
US 11,212,238 · App. 16/662,427 · Granted Dec 28, 2021

Providing recommendations for implementing virtual networks

Inventors: Israel Cidon (San Francisco, CA); Prashanth Venugopal (San Francisco, CA); Aran Bergman (Givatayim, IL); Chen Dar (Magshimim, IL); Alex Markuze (Ramat Gan, IL); Eyal Zohar (Shimshit, IL)
Assignee: VMWARE, INC.
H04L49/354H04L12/4633H04L12/4641H04L12/66H04L41/046H04L41/0803H04L41/0806H04L41/0813H04L41/142H04L43/026H04L43/045H04L43/06H04L43/08H04L43/0811H04L45/24H04L45/38H04L45/42H04L45/50H04L47/827H04L49/20H04L49/252H04L61/1511H04L67/10H04L67/101H04L67/1097H04L2012/562H04L2012/5612H04L2012/5623
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 11,212,238
App. No.
16/662,427
Granted
Dec 28, 2021
Kind
B2
Abstract

Some embodiments provide a novel method for deploying different virtual networks over several public cloud datacenters for different entities. For each entity, the method (1) identifies a set of public cloud datacenters of one or more public cloud providers to connect a set of machines of the entity, (2) deploys managed forwarding nodes (MFNs) for the entity in the identified set of public cloud datacenters, and then (3) configures the MFNs to implement a virtual network that connects the entity's set of machines across its identified set of public cloud datacenters. In some embodiments, the method identifies the set of public cloud datacenters for an entity by receiving input from the entity's network administrator. In some embodiments, this input specifies the public cloud providers to use and/or the public cloud regions in which the virtual network should be defined. Conjunctively, or alternatively, this input in some embodiments specifies actual public cloud datacenters to use.

Claims (52)

1. A method of providing recommendations regarding a virtual network of an entity that is defined over a set of two or more public cloud datacenters, the method comprising:

receiving, from the entity, identities of the set of public cloud datacenters over which the virtual network for the entity should be defined;

deploying and configuring a set of forwarding elements operating in the set of public cloud datacenters to implement the virtual network for the entity;

to improve a performance metric of the virtual network, identifying at least one forwarding element in a particular public cloud that is not in the set of public cloud datacenters to add to the set of forwarding elements; and

providing a recommendation to add the particular public cloud to the set of public cloud datacenters in order to improve the performance metric of the virtual network.

2. The method of claim 1 further comprising:

receiving, from the entity, a request to add the particular public cloud to the set of public cloud datacenters;

deploying at least one particular forwarding element in the particular public cloud; and

configuring the particular forwarding element and reconfiguring at least one forwarding element in the set of forwarding elements so that the particular forwarding element and the set of forwarding elements implement the virtual network.

3. The method of claim 1 , wherein configuring the set of forwarding elements comprises:

performing path search processes to identify paths through the virtual network to connect machines of the entity;

generating forwarding records based on the identified paths; and

using the forwarding records to configure the set of forwarding elements.

4. The method of claim 3 , wherein the machines of the entity comprise machines outside of the set of public cloud datacenters that comprise mobile machines, office machines or private datacenter machines of the entity.

5. The method of claim 3 , wherein the forwarding elements comprise routers and the forwarding records are routing records.

6. The method of claim 5 , wherein the routing records are next hop records.

7. The method of claim 5 , wherein the routers are implemented as machines that execute on host computers in the first set of public cloud datacenters.

8. The method of claim 1 further comprising:

deploying measurement machines in the public cloud datacenters in a second set of public cloud datacenters that includes the first set of public cloud datacenters as well as public cloud datacenters outside of the first set of public cloud datacenters;

receiving measurements to assess network connections between different pairs of public cloud datacenters;

using the generated measurements to perform a first set of path searches to identify a first set of paths through the first set of public cloud datacenters in order to configure the set of forwarding elements to implement the virtual network; and

using the generated measurements to perform a second set of path searches to identify a second set of paths through the second set of public cloud datacenters in order to identify at least one particular path that uses the particular public cloud outside of the first set of public cloud datacenters and that is better than one path in the first set of paths.

9. The method of claim 8 , wherein the network measurements include at least one of:

(i) measurements quantifying loss experienced on connections between pairs of public cloud datacenters;

(ii) measurements quantifying delay experienced on connections between pairs of public cloud datacenters;

(iii) measurements quantifying jitter experienced on connections between pairs of public cloud datacenters; and

(iv) measurements expressing reliability of connections between pairs of public cloud datacenters.

10. The method of claim 1 , wherein at least one pair of public cloud datacenters are two public cloud datacenters in a same region, while another pair of public cloud datacenters are two public cloud datacenters in two different regions.

11. A non-transitory machine readable medium storing a program for providing recommendations regarding a virtual network of an entity that is defined over a set of two or more public cloud datacenters, the program comprising sets of instructions for:

identifying, from the entity, the set of public cloud datacenters over which the virtual network for the entity should be defined;

configuring a set of forwarding elements deployed in the set of public cloud datacenters to implement the virtual network for the entity;

to improve a performance metric of the virtual network, identifying at least one forwarding element in a particular public cloud that is not in the set of public cloud datacenters to add to the set of forwarding elements; and

providing a recommendation to add the particular public cloud to the set of public cloud datacenters in order to improve the performance metric of the virtual network.

12. The non-transitory machine readable medium of claim 11 , wherein the program further comprises sets of instructions from:

receiving, from the entity, a request to add the particular public cloud to the set of public cloud datacenters;

deploying at least one particular forwarding element in the particular public cloud; and

configuring the particular forwarding element and reconfiguring at least one forwarding element in the set of forwarding elements so that the particular forwarding element and the set of forwarding elements implement the virtual network.

13. The non-transitory machine readable medium of claim 11 , wherein the set of instructions for configuring the set of forwarding elements comprises sets of instructions for:

performing path search processes to identify paths through the virtual network to connect machines of the entity;

generating forwarding records based on the identified paths; and

using the forwarding records to configure the set of forwarding elements.

14. The non-transitory machine readable medium of claim 13 , wherein the machines of the entity comprise machines outside of the set of public cloud datacenters that comprise mobile machines, office machines or private datacenter machines of the entity.

15. The non-transitory machine readable medium of claim 13 , wherein the forwarding elements comprise routers and the forwarding records are routing records.

16. The non-transitory machine readable medium of claim 15 , wherein the routing records are next hop records.

17. The non-transitory machine readable medium of claim 15 , wherein the routers are implemented as machines that execute on host computers in the first set of public cloud datacenters.

18. The non-transitory machine readable medium of claim 11 , wherein the program further comprises sets of instructions for:

receiving, from measurement machines deployed in the public cloud datacenters in a second set of public cloud datacenters that includes the first set of public cloud datacenters as well as public cloud datacenters outside of the first set of public cloud datacenters, measurements to assess network connections between different pairs of public cloud datacenters;

using the generated measurements to perform a first set of path searches to identify a first set of paths through the first set of public cloud datacenters in order to configure the set of forwarding elements to implement the virtual network; and

using the generated measurements to perform a second set of path searches to identify a second set of paths through the second set of public cloud datacenters in order to identify at least one particular path that uses the particular public cloud outside of the first set of public cloud datacenters and that is better than one path in the first set of paths.

19. The non-transitory machine readable medium of claim 11 , wherein at least one pair of public cloud datacenters are two public cloud datacenters in a same region, while another pair of public cloud datacenters are two public cloud datacenters in two different regions.

20. The non-transitory machine readable medium of claim 11 , wherein the first set of public cloud datacenters comprises public cloud datacenters operated by different public cloud providers.

21. The non-transitory machine readable medium of claim 11 , wherein the first set of public cloud datacenters comprises public cloud datacenters operated by one public cloud provider.

Assignments (3)
SUPPLEMENT NO. 1 TO INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 11, 2024
From: SURECOST, LLC
To: CAMBRIDGE TRUST COMPANY
Reel/Frame 067696/0679 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2019
From: CIDON, ISRAEL; BERGMAN, ARAN; DAR, CHEN; ZOHAR, EYAL; VENUGOPAL, PRASHANTH; MARKUZE, ALEX
To: VMWARE, INC.
Reel/Frame 050819/0810 →
Cited By (38)
US 12,212,494 US 12,218,800 US 12,218,845 US 12,237,989 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,375,533 US 12,401,544 US 12,407,598 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,640,990 US 12,652,217 US 12,659,719 US 12,719,782