Producer computing system leasing on behalf of consumer computing system
First Claim
Patent Images
1. A method of accessing a service provided by a producer virtual machine in an overlay network, the method comprising:
- by a consumer system host comprising one or more processors, the consumer system host configured to host one or more consumer virtual machines, wherein at least one of the consumer virtual machines is associated with a first overlay network;
receiving a service access request sent from a consumer virtual machine to the consumer system host to access a service provided by a producer virtual machine hosted by a producer system host in communication with the consumer system host, the consumer virtual machine hosted by the consumer system host, wherein the service access request includes an inner header, the inner header comprising a consumer virtual machine address associated with the consumer virtual machine and a target virtual address;
determining whether there is a lease pool associated with the consumer virtual machine by accessing a virtual machine mapping repository storing lease information identifying one or more pools of producer virtual machines hosted by the producer system host and leased on behalf of the one or more consumer virtual machines;
in response to determining that there is a lease pool associated with the consumer virtual machine, accessing the lease pool associated with the consumer virtual machine, the lease pool including a set of leased producer virtual machines currently leased on behalf of the consumer virtual machine, wherein the consumer virtual machine is authorized to access one or more services provided by any of the producer virtual machines in the lease pool;
determining whether the lease information accessed from the virtual machine mapping repository indicates that the lease pool includes at least one unused producer virtual machine usable to handle the service access request from the consumer virtual machine;
in response to determining that the lease information accessed from the virtual machine mapping repository indicates that the lease pool includes at least one unused producer virtual machine, selecting a leased producer virtual machine to be used to provide the service requested by the consumer virtual machine from the at least one unused producer virtual machine in the lease pool;
replacing the target virtual address in the inner header with a producer virtual machine address associated with the leased producer virtual machine;
identifying the producer system host associated with the leased producer virtual machine, the producer system host configured to host one or more producer virtual machines, wherein at least one of the producer virtual machines is associated with the first overlay network;
encapsulating the service access request with an outer header comprising a producer system host address associated with the producer system host and a consumer system host address associated with the consumer system host; and
providing the service access request received from the consumer virtual machine to the producer system host via a network, thereby enabling the producer system host to process the service access request.
1 Assignment
0 Petitions
Accused Products
Abstract
Processes and systems are disclosed for leasing a producer virtual machine on behalf of a consumer virtual machine in an overlay network. The consumer host of the consumer virtual machine can communicate with a set of leasing agents to obtain the identity of a number of producer virtual machines capable of providing the consumer virtual machine with access to a service. When the consumer virtual machine attempts to communicate with a producer system, the consumer host can identify a producer host that hosts a target producer virtual machine and redirect a service request to the producer host.
-
Citations
23 Claims
-
1. A method of accessing a service provided by a producer virtual machine in an overlay network, the method comprising:
by a consumer system host comprising one or more processors, the consumer system host configured to host one or more consumer virtual machines, wherein at least one of the consumer virtual machines is associated with a first overlay network; receiving a service access request sent from a consumer virtual machine to the consumer system host to access a service provided by a producer virtual machine hosted by a producer system host in communication with the consumer system host, the consumer virtual machine hosted by the consumer system host, wherein the service access request includes an inner header, the inner header comprising a consumer virtual machine address associated with the consumer virtual machine and a target virtual address; determining whether there is a lease pool associated with the consumer virtual machine by accessing a virtual machine mapping repository storing lease information identifying one or more pools of producer virtual machines hosted by the producer system host and leased on behalf of the one or more consumer virtual machines; in response to determining that there is a lease pool associated with the consumer virtual machine, accessing the lease pool associated with the consumer virtual machine, the lease pool including a set of leased producer virtual machines currently leased on behalf of the consumer virtual machine, wherein the consumer virtual machine is authorized to access one or more services provided by any of the producer virtual machines in the lease pool; determining whether the lease information accessed from the virtual machine mapping repository indicates that the lease pool includes at least one unused producer virtual machine usable to handle the service access request from the consumer virtual machine; in response to determining that the lease information accessed from the virtual machine mapping repository indicates that the lease pool includes at least one unused producer virtual machine, selecting a leased producer virtual machine to be used to provide the service requested by the consumer virtual machine from the at least one unused producer virtual machine in the lease pool; replacing the target virtual address in the inner header with a producer virtual machine address associated with the leased producer virtual machine; identifying the producer system host associated with the leased producer virtual machine, the producer system host configured to host one or more producer virtual machines, wherein at least one of the producer virtual machines is associated with the first overlay network; encapsulating the service access request with an outer header comprising a producer system host address associated with the producer system host and a consumer system host address associated with the consumer system host; and providing the service access request received from the consumer virtual machine to the producer system host via a network, thereby enabling the producer system host to process the service access request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
14. A system for accessing a service provided by a producer in an overlay network, the system comprising:
a consumer system host comprising one or more processors, the consumer system host configured to host one or more consumers, the consumer system host comprising; a mapping repository configured to store a mapping of producers to producer system hosts and lease information identifying one or more producers hosted by the producer system hosts and leased on behalf of the one or more consumers; and an overlay network proxy configured to; receive a request sent from a consumer hosted by the consumer system host to the consumer system host to access a service provided by a producer hosted by one of the producer system hosts in communication with the consumer system host; access the lease information stored in the mapping repository; determine whether the lease information accessed from the mapping repository indicates that a lease pool associated with the consumer includes at least one unused producer usable to handle the request from the consumer; in response to determining that the lease information accessed from the mapping repository indicates that the lease pool includes at least one unused producer, select a leased producer from the at least one unused producer in the lease pool, the lease pool including a set of leased producers currently leased on behalf of the consumer, the leased producers comprising physical or virtual computing devices, wherein the consumer is authorized to access one or more services provided by any of the producers in the lease pool; access the mapping in the mapping repository to identify a producer system host associated with the selected leased producer, the producer system host configured to host one or more producers; and send the request received from the consumer to the producer system host. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
21. Non-transitory physical computer storage comprising computer-executable instructions that, when implemented in one or more processors, direct a computing system to provide access to a service provided by a producer virtual machine in an overlay network by at least:
-
in response to receiving a request sent from a consumer virtual machine hosted by the computing system to the computing system to access a service provided by a producer virtual machine hosted by a producer system host in communication with the computing system, determining whether lease information accessed from a mapping repository indicates that a lease pool associated with the consumer virtual machine includes at least one unused producer virtual machine usable to handle the request from the consumer virtual machine, the request including a target virtual address, in response to determining that the lease information accessed from the mapping repository indicates that the lease pool associated with the consumer virtual machine includes at least one unused producer virtual machine, selecting a leased producer virtual machine to be used to provide the service requested by the consumer virtual machine from the at least one unused producer virtual machine in the lease pool, the lease pool comprising connection information for producer virtual machines currently leased on behalf of the consumer virtual machine, wherein the consumer virtual machine is authorized to access one or more services provided by any of the producer virtual machines in the lease pool; replacing the target virtual address in a header of the request with a producer virtual machine address associated with the leased producer virtual machine; determining the producer system host associated with the leased producer virtual machine; and causing the request received from the consumer virtual machine to be sent to the producer system host to be provided to the leased producer virtual machine thereby enabling the lease producer virtual machine to process the request to access the service. - View Dependent Claims (22, 23)
-
Specification