ROUTING ACROSS A VIRTUAL NETWORK
First Claim
1. A virtual machine manager, the virtual machine manager being arranged to host one or more virtual machines, the virtual machines forming part of a segmented virtual network, the virtual machine manager being arranged to receive outgoing messages from the 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 having a router for determining a new intermediate destination address outside the local segment, and for routing the given outgoing message according to the new intermediate destination address.
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.
512 Citations
20 Claims
- 1. A virtual machine manager, the virtual machine manager being arranged to host one or more virtual machines, the virtual machines forming part of a segmented virtual network, the virtual machine manager being arranged to receive outgoing messages from the 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 having a router for determining a new intermediate destination address outside the local segment, and for routing the given outgoing message according to the new intermediate destination address.
- 16. A method of operating a virtual machine manager to host one or more virtual machines, the virtual machines forming part of a segmented virtual network, the method having the steps of using the virtual machine manager to receive outgoing messages from the 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, and routing the given outgoing message according to the new intermediate destination address.
-
18. A data center having a number of virtual machine managers, each virtual machine manager being arranged to host one or more virtual machines, the virtual machines forming part of a segmented virtual network, the virtual machine manager being arranged to receive outgoing messages from the virtual machines, at least some of the 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 for determining a new intermediate destination address outside the local segment, and for routing the given outgoing message according to the new intermediate destination address, the virtual machine managers each having 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.
-
19. 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 having the steps of:
-
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 given 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 given 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, and 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.
-
-
20. 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 having the steps of:
-
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 given 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 given 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 new intermediate destination address, and 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.
-
Specification