Routing across a virtual network
First Claim
1. A virtual machine manager to host one or more virtual machines that form part of a segmented virtual network and to receive outgoing messages from the one or more virtual machines, at least a given one of the outgoing messages having a part allocated for an intermediate destination address representing an intermediate node in a local segment of the segmented virtual network, the intermediate node being suitable for passing the given outgoing message on towards a destination node in another of the segments, the virtual machine manager comprising:
- a router configured to determine a new intermediate destination address outside the local segment, and to route the given outgoing message according to the new intermediate destination address;
wherein the router is configured to change the intermediate destination address of the given outgoing message from an address in the virtual network to an address of a node in a physical communications network; and
wherein the virtual machine manager is configured to receive an incoming message from the physical communications network destined for one or more of the one or more hosted virtual machines, and wherein the router is configured to change an intermediate destination address of the incoming message from an address in the physical communications network to an address in the virtual network.
3 Assignments
0 Petitions
Accused Products
Abstract
A data center can share processing resources using virtual networks. A virtual machine manager (10) hosts one or more virtual machines (11, 411), the virtual machines forming part of a segmented virtual network (34). Outgoing messages from the virtual machines have an intermediate destination address of an intermediate node in a local segment of the segmented virtual network, and the virtual machine manager has a router (18) for determining a new intermediate destination address outside the local segment, for routing the given outgoing message. By having the router as part of the virtual machine manager rather than having only a switch in the virtual machine manager, the need for virtual machines for implementing gateways is avoided. This can reduce the number of “hops” for the message between virtual entities hosted, and thus improve performance. This can help a service provider to share physical processing resources of a data center between different clients having their own virtual networks.
205 Citations
18 Claims
-
1. A virtual machine manager to host one or more virtual machines that form part of a segmented virtual network and to receive outgoing messages from the one or more virtual machines, at least a given one of the outgoing messages having a part allocated for an intermediate destination address representing an intermediate node in a local segment of the segmented virtual network, the intermediate node being suitable for passing the given outgoing message on towards a destination node in another of the segments, the virtual machine manager comprising:
-
a router configured to determine a new intermediate destination address outside the local segment, and to route the given outgoing message according to the new intermediate destination address; wherein the router is configured to change the intermediate destination address of the given outgoing message from an address in the virtual network to an address of a node in a physical communications network; and wherein the virtual machine manager is configured to receive an incoming message from the physical communications network destined for one or more of the one or more hosted virtual machines, and wherein the router is configured to change an intermediate destination address of the incoming message from an address in the physical communications network to an address in the virtual network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method of operating a virtual machine manager to host one or more virtual machines, the one or more virtual machines forming part of a segmented virtual network, the method comprising:
-
using the virtual machine manager to receive outgoing messages from the one or more virtual machines, at least a given one of the outgoing messages having a part allocated for an intermediate destination address representing an intermediate node in a local segment of the segmented virtual network, the intermediate node being suitable for passing the given outgoing message on towards a destination node in another of the segments; determining a new intermediate destination address outside the local segment; routing the given outgoing message according to the new intermediate destination address; changing the intermediate destination address of the given outgoing message from an address in the virtual network to an address of a node in a physical communications network; receiving an incoming message from the physical communications network, destined for one or more of the one or more hosted virtual machines; and changing an intermediate destination address of the incoming message from an address in the physical communications network to an address in the virtual network. - View Dependent Claims (15)
-
-
16. A data center having a number of virtual machine managers, wherein each virtual machine manager is configured to host one or more virtual machines, the one or more virtual machines forming part of a segmented virtual network and to receive outgoing messages from the one or more virtual machines, at least some of the outgoing messages having a part allocated for an intermediate destination address representing an intermediate node in a local segment of the segmented virtual network, the intermediate node being suitable for passing the given outgoing message on towards a destination node in another of the segments, the virtual machine manager having a router configured to determine a new intermediate destination address outside the local segment, and to route the given outgoing message according to the new intermediate destination address, the virtual machine managers each having a physical network interface configured to communicate with others of the virtual machine managers over a physical communications network, and to route messages to virtual machines hosted by the other virtual machine managers,
wherein the router is configured to change the intermediate destination address of the given outgoing message from an address in the virtual network to an address of a node in the physical communications network, and wherein the virtual machine manager is configured to receive an incoming message from the physical communications network, destined for one or more of the hosted one or more virtual machines, and wherein the route is configured to change an intermediate destination address of the incoming message from an address in the physical communications network to an address in the virtual network.
-
17. A method of providing a service to a user, the service being run by one or more virtual machines in a data center, the data center having a number of virtual machine managers each hosting one or more of the virtual machines, the virtual machines forming part of a segmented virtual network, the virtual machine managers each having a router and a physical network interface to communicate with others of the virtual machine managers over a physical communications network, to route messages to virtual machines hosted by the other virtual machine managers, the method comprising:
-
receiving from a user remote from the data center, an input to the service, the input causing a given one of the virtual machines to send an outgoing message to another of the virtual machines, the outgoing message having a part allocated for an intermediate destination address representing an intermediate node in a local segment of the segmented virtual network, the intermediate node being suitable for passing the outgoing message on towards a destination node outside the local segment, and thus causing the router of the virtual machine manager to determine a new intermediate destination address outside the local segment, and to route the given outgoing message according to the new intermediate destination address; generating a response by running the service, and sending the response to the user using one or more of the virtual machines running the service; changing the intermediate destination address of the outgoing message from an address in the virtual network to an address of a node in the physical communications network; receiving an incoming message from the physical communications network, destined for one or more of the one or more hosted virtual machines; and changing an intermediate destination address of the incoming message from an address in the physical communications network to an address in the virtual network.
-
-
18. A method of using a service run by one or more virtual machines in a data center the data center having a number of virtual machine managers each hosting one or more of the virtual machines, the virtual machines forming part of a segmented virtual network, the virtual machine managers each having a router and a physical network interface to communicate with others of the virtual machine managers over a physical communications network, to route messages to virtual machines hosted by the other virtual machine managers, the method comprising:
-
a user remote from the data center using the service by sending an input to the service which causes a given one of the virtual machines to send an outgoing message to another of the virtual machines, the outgoing message having a part allocated for an intermediate destination address representing an intermediate node in a local segment of the segmented virtual network, the intermediate node being suitable for passing the outgoing message on towards a destination node outside the local segment, and to cause the router of the virtual machine manager to determine a new intermediate destination address outside the local segment, and to route the given outgoing message according to the near intermediate destination address; the user receiving a response generated by the service, the response having been sent to the user by one of the virtual machines running the service; changing the intermediate destination address of the outgoing message from an address in the virtual network to an address of a node in the physical communications network; receiving an incoming message from the physical communications network, destined for one or more of the one or more hosted virtual machines; and changing an intermediate destination address of the incoming message from an address in the physical communications network to an address in the virtual network.
-
Specification