CONFIGURING INTERCOMMUNICATIONS BETWEEN COMPUTING NODES
First Claim
1. A computer-implemented method for configuring intercommunications between computing systems of a program execution service, the method comprising:
- receiving an indication of a program to be executed on behalf of a customer of a program execution service, the program to be executed on one of multiple virtual machines that are hosted by a first computing system associated with the program execution service, the first computing system being one of multiple computing systems of a first of multiple physical networks of the program execution service, the multiple physical networks being configured to communicate via an interconnection network, the interconnection network having multiple gateway networking devices that each connect at least at least one of the multiple physical networks to the interconnection network and having multiple internal networking devices that facilitate communication over the interconnection network;
determining a virtual network to which the indicated program is to be associated based at least in part on the customer of the program execution service, the determined virtual network including computing systems on multiple of the physical networks of the program execution service that each host one or more virtual machines executing one or more programs on behalf of the customer; and
automatically enabling the indicated program on the one virtual machine of the first computing system to intercommunicate with other computing systems on the determined virtual network, byidentifying a first networking identifier that is associated with the determined virtual network and that is based on a virtual local area networking protocol for use with the first physical network, and identifying a distinct second networking identifier that is associated with the determined virtual network and that is based on a distinct label switching protocol for use with the interconnection network;
configuring a virtual machine communication manager module for the first computing system to associate communications from the indicated program on the one virtual machine with the determined virtual network, the associating of the communications with the determined virtual network including modifying the communications to include the first networking identifier, such that communications including the first networking identifier on the first physical network are not forwarded to computing systems of the first physical network that do not have a hosted virtual machine associated with the determined virtual network;
configuring a gateway networking device connecting the first physical network and the interconnection network to forward communications associated with the determined virtual network over the interconnection network in accordance with the label switching protocol by modifying communications on the first physical network that include the first networking identifier so as to include the second networking identifier; and
sending a communication from the indicated program to a destination computing system of a second physical network that is a part of the determined virtual network, the sending including forwarding the communication over the first physical network using the first networking identifier and forwarding the communication over the interconnection network to the second physical network using the second networking identifier.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are described for configuring intercommunications between multiple computing nodes, such as multiple virtual machine nodes hosted on one or more physical computing machines or systems. In some situations, virtual networks may be established and maintained for groups of computing nodes, such as those operated by or on behalf of various users. Such virtual networks may be established in some situations by automatically configuring various communication manager modules to associate communications from a computing node belonging to a virtual network with one or more networking identifiers associated with the virtual network, such that other communication manager modules may appropriately forward or otherwise process such communications.
388 Citations
45 Claims
-
1. A computer-implemented method for configuring intercommunications between computing systems of a program execution service, the method comprising:
-
receiving an indication of a program to be executed on behalf of a customer of a program execution service, the program to be executed on one of multiple virtual machines that are hosted by a first computing system associated with the program execution service, the first computing system being one of multiple computing systems of a first of multiple physical networks of the program execution service, the multiple physical networks being configured to communicate via an interconnection network, the interconnection network having multiple gateway networking devices that each connect at least at least one of the multiple physical networks to the interconnection network and having multiple internal networking devices that facilitate communication over the interconnection network; determining a virtual network to which the indicated program is to be associated based at least in part on the customer of the program execution service, the determined virtual network including computing systems on multiple of the physical networks of the program execution service that each host one or more virtual machines executing one or more programs on behalf of the customer; and automatically enabling the indicated program on the one virtual machine of the first computing system to intercommunicate with other computing systems on the determined virtual network, by identifying a first networking identifier that is associated with the determined virtual network and that is based on a virtual local area networking protocol for use with the first physical network, and identifying a distinct second networking identifier that is associated with the determined virtual network and that is based on a distinct label switching protocol for use with the interconnection network; configuring a virtual machine communication manager module for the first computing system to associate communications from the indicated program on the one virtual machine with the determined virtual network, the associating of the communications with the determined virtual network including modifying the communications to include the first networking identifier, such that communications including the first networking identifier on the first physical network are not forwarded to computing systems of the first physical network that do not have a hosted virtual machine associated with the determined virtual network; configuring a gateway networking device connecting the first physical network and the interconnection network to forward communications associated with the determined virtual network over the interconnection network in accordance with the label switching protocol by modifying communications on the first physical network that include the first networking identifier so as to include the second networking identifier; and sending a communication from the indicated program to a destination computing system of a second physical network that is a part of the determined virtual network, the sending including forwarding the communication over the first physical network using the first networking identifier and forwarding the communication over the interconnection network to the second physical network using the second networking identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-implemented method for configuring intercommunications between computing systems, the method comprising:
-
determining a virtual network to which an indicated program is to be associated, the indicated program to be executed on one of multiple virtual machines that are hosted by a first computing system associated with a program execution service, the first computing system being connected to a first of multiple physical networks of the program execution service that are configured to communicate via an interconnection network, the determined virtual network including computing systems on multiple of the physical networks of the program execution service; and automatically enabling the one virtual machine of the first computing system to intercommunicate with other computing systems that are part of the determined virtual network, by identifying a first networking identifier based on a first networking protocol that is associated with the determined virtual network and that is for use with the first physical network, and identifying a second networking identifier based on a second networking protocol that is associated with the determined virtual network and that is for use with the interconnection network; configuring a communication manager module for the first computing system to associate communications from the indicated program on the one virtual machine with the determined virtual network by using the first networking identifier with the communications; and configuring a networking device that connects the first physical network to the interconnection network to forward communications associated with the determined virtual network to the other physical networks that have computing systems that are part of the determined virtual network by using the second networking identifier with the forwarded communications. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A computer-readable medium whose contents enable a computing system to configure intercommunications between computing systems, by performing a method comprising:
automatically enabling a software program executing on an indicated computing node to intercommunicate with other computing nodes associated with a virtual network, the indicated computing node being one of multiple computing nodes connected to a first of multiple physical networks of a program execution service that are able to intercommunicate via one or more networking devices, the indicated virtual network including computing nodes on multiple of the physical networks, by configuring a communication manager module for the indicated computing node to associate communications from the indicated computing node with the virtual network in such a manner as to use a first networking protocol for the first physical network; and configuring at least one of the one or more networking devices to forward communications that are associated with the indicated virtual network and received using the first networking protocol, the forwarding of the communications using a distinct second networking protocol and such that the forwarded communications are provided to at least one other of the multiple physical networks having a computing node associated with the virtual network. - View Dependent Claims (33, 34, 35, 36, 37)
-
38. A system structured to configure intercommunications between multiple hosted virtual machines each configurable to execute one or more programs, comprising:
-
one or more memories of one or more computing devices; and a system manager module configured to execute in the one or more memories in such a manner as to maintain virtual networks among multiple computing systems that each are connected to one of multiple physical networks, at least some of the multiple computing systems each hosting multiple virtual machines that are each configurable to execute one or more programs, each of the at least some computing systems having a virtual machine communication manager module configured to manage communications of the virtual machines hosted by that computing system that are sent over the physical network to which that computing system belongs, each physical network having a communication manager module configured to forward communications to other physical networks, the maintaining of the virtual networks including, in response to an indication of a virtual machine hosted on one of the at least some computing systems that is to be associated with one of the virtual networks; configuring the virtual machine communication manager module of the one computing system to associate communications by the indicated virtual machine with the one virtual network via use of a first networking identifier that is specific to the one virtual network and to the physical network to which the one computing system belongs, such that the communications by the indicated virtual machine are not made available to computing systems that are not part of the one virtual network; and configuring the communication manager associated with the physical network to which the one computing system belongs to forward received communications that use the first networking identifier to other physical networks in a manner associated with the virtual network, the forwarding of the received communications performed via use of a second networking identifier specific to the virtual network. - View Dependent Claims (39, 40, 41, 42, 43, 44, 45)
-
Specification