GRAPH BASED ROUTING THROUGH MULTIPLE PUBLIC CLOUDS
First Claim
1. A method of defining routes for data message flows associated with an entity through a virtual network defined over a plurality of public cloud datacenters, the method comprising:
- generating a routing graph that comprises a plurality of nodes representing a plurality of forwarding elements in at least two public cloud datacenters of two different public cloud providers, wherein at least a set of nodes are edge nodes that connect to external machines of the entity that are outside of the public cloud datacenters; and
performing path-search processes to identify a plurality of paths each of which is between two edge nodes in the routing graph and specifies a route through the virtual network for a data message flow from an external machine of the entity.
3 Assignments
0 Petitions
Accused Products
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.
88 Citations
20 Claims
-
1. A method of defining routes for data message flows associated with an entity through a virtual network defined over a plurality of public cloud datacenters, the method comprising:
-
generating a routing graph that comprises a plurality of nodes representing a plurality of forwarding elements in at least two public cloud datacenters of two different public cloud providers, wherein at least a set of nodes are edge nodes that connect to external machines of the entity that are outside of the public cloud datacenters; and performing path-search processes to identify a plurality of paths each of which is between two edge nodes in the routing graph and specifies a route through the virtual network for a data message flow from an external machine of the entity. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory machine readable medium storing a program for defining routes for data message flows associated with an entity through a virtual network defined over a plurality of public cloud datacenters, the program for execution by at least one hardware processing unit, the program comprising sets of instructions for:
-
generating a routing graph that comprises a plurality of nodes representing a plurality of forwarding elements in at least two public cloud datacenters of two different public cloud providers, wherein at least a set of nodes are edge nodes that connect to external machines of the entity that are outside of the public cloud datacenters; and performing path-search processes to identify a plurality of paths each of which is between two edge nodes in the routing graph and specifies a route through the virtual network for a data message flow from an external machine of the entity. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification