Using virtual networking devices to manage external connections
First Claim
1. A computer-implemented method comprising:
- under control of one or more computing systems of a configurable network service that provides virtual computer networks to remote customers, and for each of multiple remote customers,receiving configuration information from the customer for a virtual computer network provided for the customer by the configurable network service, the provided virtual computer network including multiple of a plurality of computing nodes provided by the configurable network service, the configuration information being received via a programmatic interface of the configurable network service and indicating network topology information for the provided virtual computer network and indicating multiple network addresses to use for the provided virtual computer network, the indicated network topology information specifying one or more network routers that each are indicated to be connected to one or more of the multiple computing nodes of the provided virtual computer network;
assigning one of the multiple network addresses to each of the specified network routers to enable communications to be directed over the virtual computer network to the specified network router; and
automatically providing the virtual computer network for the customer in accordance with the indicated network topology information by overlaying the virtual computer network on a distinct substrate network without physically providing the one or more specified network routers, the providing of the virtual computer network including;
forwarding multiple communications between the multiple computing nodes over the substrate network in a manner that emulates functionality that would be provided by the one or more specified network routers if the one or more specified network routers were physically provided;
establishing a virtual private network (“
VPN”
) connection between the provided virtual computer network and a remote computer network of the customer, the remote computer network including multiple computing systems and including one or more physical network router devices and being located at one or more geographical locations distinct from a geographical location of the substrate network;
after the forwarding of the multiple communications, receiving one or more routing communications via the established VPN connection that are each directed to at least one of the specified network routers and include network routing information for the remote computer network of the customer that is specified in accordance with a predefined network routing protocol, the one or more routing communications being sent by at least one of the one or more physical network router devices of the remote computer network;
updating the network topology information for the virtual computer network based on the established VPN connection and on the specified network routing information included in the received one or more routing communications; and
after the updating of the network topology information, forwarding one or more additional communications from the multiple computing nodes of the provided virtual computer network over the established VPN connection to the remote computer network of the customer in accordance with the updated network topology information.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are described for providing managed virtual computer networks that may have a configured logical network topology with one or more virtual networking devices, with corresponding networking functionality provided for communications between multiple computing nodes of the virtual computer network by emulating functionality that would be provided by the networking devices if they were physically present. In some situations, the emulating of networking device functionality includes receiving routing communications directed to the networking devices and using included routing information to update the configured network topology for the managed computer network. In addition, the techniques may further include supporting interactions with devices that are external to the virtual computer network, including remote physical networking devices that are part of a remote computer network configured to interoperate with the virtual computer network, and/or specialized network devices that are accessible via a substrate network on which the virtual computer network is overlaid.
-
Citations
25 Claims
-
1. A computer-implemented method comprising:
under control of one or more computing systems of a configurable network service that provides virtual computer networks to remote customers, and for each of multiple remote customers, receiving configuration information from the customer for a virtual computer network provided for the customer by the configurable network service, the provided virtual computer network including multiple of a plurality of computing nodes provided by the configurable network service, the configuration information being received via a programmatic interface of the configurable network service and indicating network topology information for the provided virtual computer network and indicating multiple network addresses to use for the provided virtual computer network, the indicated network topology information specifying one or more network routers that each are indicated to be connected to one or more of the multiple computing nodes of the provided virtual computer network; assigning one of the multiple network addresses to each of the specified network routers to enable communications to be directed over the virtual computer network to the specified network router; and automatically providing the virtual computer network for the customer in accordance with the indicated network topology information by overlaying the virtual computer network on a distinct substrate network without physically providing the one or more specified network routers, the providing of the virtual computer network including; forwarding multiple communications between the multiple computing nodes over the substrate network in a manner that emulates functionality that would be provided by the one or more specified network routers if the one or more specified network routers were physically provided; establishing a virtual private network (“
VPN”
) connection between the provided virtual computer network and a remote computer network of the customer, the remote computer network including multiple computing systems and including one or more physical network router devices and being located at one or more geographical locations distinct from a geographical location of the substrate network;after the forwarding of the multiple communications, receiving one or more routing communications via the established VPN connection that are each directed to at least one of the specified network routers and include network routing information for the remote computer network of the customer that is specified in accordance with a predefined network routing protocol, the one or more routing communications being sent by at least one of the one or more physical network router devices of the remote computer network; updating the network topology information for the virtual computer network based on the established VPN connection and on the specified network routing information included in the received one or more routing communications; and after the updating of the network topology information, forwarding one or more additional communications from the multiple computing nodes of the provided virtual computer network over the established VPN connection to the remote computer network of the customer in accordance with the updated network topology information. - View Dependent Claims (2, 3)
-
4. A computer-implemented method comprising:
under control of one or more computing systems of a configurable network service provided by a first entity and that provides virtual computer networks to clients, receiving one or more requests to provide a first virtual computer network for a first client in accordance with specified configuration information, the configuration information indicating one or more specified networking devices of the first virtual computer network that interconnect multiple computing nodes of the first virtual computer network; and automatically providing the first virtual computer network in accordance with the configuration information by overlaying the first virtual computer network on a distinct substrate network without physically providing the one or more specified networking devices, the multiple computing nodes being connected to the substrate network, the providing of the first virtual computer network including; forwarding multiple communications between the multiple computing nodes over the substrate network in a manner that emulates functionality that would be provided by the one or more specified networking devices if the one or more specified networking devices were physically provided; establishing a connection between the first virtual computer network and multiple computing systems of the first client that are external to the first virtual computer network and under control of a second entity distinct from the first entity; after the forwarding of the multiple communications, receiving one or more routing communications via the established connection that are each directed to at least one of the specified networking devices and include network routing information that is specified in accordance with a predefined network routing protocol, the one or more routing communications being sent by at least one device associated with the multiple computing systems and including information related to the multiple computing systems; updating the configuration information for the first virtual computer network based on the established connection and the specified network routing information included in the received one or more routing communications; and after the updating of the configuration information, forwarding one or more additional communications from one or more of the multiple computing nodes over the established connection to one or more of the multiple computing systems in accordance with the updated configuration information. - View Dependent Claims (5, 6, 7, 8, 9, 10)
-
11. A non-transitory computer-readable storage medium whose stored contents configure a computing system of a configurable network service to perform a method, the method comprising:
under control of the configured computing system of the configurable network service, the configurable network service being operated by a first entity and providing virtual computer networks to clients, receiving one or more requests to provide a first virtual computer network for a first client in accordance with specified configuration information, the configuration information indicating one or more specified networking devices of the first virtual computer network that interconnect multiple computing nodes of the first virtual computer network; and automatically providing the first virtual computer network in accordance with the configuration information by overlaying the first virtual computer network on a distinct substrate network without physically providing the one or more specified networking devices, the multiple computing nodes being connected to the substrate network, the providing of the first virtual computer network including; forwarding multiple communications between the multiple computing nodes over the substrate network in a manner that emulates functionality that would be provided by the one or more specified networking devices if the one or more specified networking devices were physically provided; establishing a connection between the first virtual computer network and multiple computing systems of the first client that are external to the first virtual computer network and under control of a second entity distinct from the first entity; after the forwarding of the multiple communications, receiving one or more routing communications via the established connection that are each directed to at least one of the specified networking devices and include network routing information that is specified in accordance with a predefined network routing protocol, the one or more routing communications being sent by at least one device associated with the multiple computing systems and including information related to the multiple computing systems; updating the configuration information for the first virtual computer network based on the established connection and the specified network routing information included in the received one or more routing communications; and after the updating of the configuration information, forwarding one or more additional communications from one or more of the multiple computing nodes over the established connection to one or more of the multiple computing systems in accordance with the updated configuration information. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
19. A computing system, comprising:
-
one or more processors; and a manager module of a configurable network service being provided by a first entity, the configurable network service providing virtual computer networks to clients, the manager module being configured to, when executed by at least one of the processors; receive one or more requests to provide a first virtual computer network for a first client in accordance with specified configuration information, the configuration information indicating one or more specified networking devices of the first virtual computer network that interconnect multiple computing nodes of the first virtual computer network; and automatically provide the first virtual computer network in accordance with the configuration information by overlaying the first virtual computer network on a distinct substrate network without physically providing the one or more specified networking devices, the multiple computing nodes being connected to the substrate network, the providing of the first virtual computer network including; forwarding multiple communications between the multiple computing nodes over the substrate network in a manner that emulates functionality that would be provided by the one or more specified networking devices if the one or more specified networking devices were physically provided; establishing a connection between the first virtual computer network and multiple computing systems of the first client that are external to the first virtual computer network and under control of a second entity distinct from the first entity; after the forwarding of the multiple communications, receiving one or more routing communications via the established connection that are each directed to at least one of the specified networking devices and include network routing information that is specified in accordance with a predefined network routing protocol, the one or more routing communications being sent by at least one device associated with the multiple computing systems and including information related to the multiple computing systems; updating the configuration information for the first virtual computer network based on the established connection and the specified network routing information included in the received one or more routing communications; and after the updating of the configuration information, forwarding one or more additional communications from one or more of the multiple computing nodes over the established connection to one or more of the multiple computing systems in accordance with the updated configuration information. - View Dependent Claims (20, 21, 22, 23, 24, 25)
-
Specification