IP Library Granted Patent US 9,727,363
Granted Patent B2
US 9,727,363 · App. 14/438,783 · Granted Aug 8, 2017

Virtual machine migration

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,727,363
App. No.
14/438,783
Granted
Aug 8, 2017
Kind
B2
Abstract

In some examples, prior to a source cloud migrating one or more virtual machines to a destination cloud, a migration controller may establish one or more migration agreements between at least two of a client, a provider of the source cloud, and a provider of the destination cloud. The migration controller may further sort the virtual machines that execute on the source cloud based on a usage frequency and select an instance of each of the virtual machines to migrate.

Claims (61)

1. A method of virtual machine migration, the method comprising:

establishing one or more migration agreements,

wherein the one or more migration agreements apply to two or more of a client, a source cloud, and a destination cloud,

wherein the one or more migration agreements include identifiers, provided by the client, of one or more virtual machines to be migrated from the source cloud to the destination cloud under terms of the one or more migration agreements, and

wherein the source cloud maintains at least two instances of each of the one or more virtual machines to be migrated in a respective node, the at least two instances includes each respective virtual machine to be migrated and at least one copy of the each respective virtual machine to be migrated;

ordering a sequence of the one or more virtual machines to be migrated, wherein the ordering is based on one of a usage frequency of respective ones of the one or more virtual machines to be migrated;

identifying one instance of each of the one or more virtual machines to be migrated based on proximity between the respective node and a destination node on the destination cloud; and

instructing the source cloud to migrate the identified instance of each of the one or more virtual machines to be migrated under terms of the one or more migration agreements.

2. The method of claim 1 , wherein the migration agreements include at least one of:

a quantity of the multiple virtual machines to be migrated,

a deadline by which the migrating is to be completed,

a reward for completing the migrating by the deadline, and

a penalty for failing to complete the migrating by the deadline.

3. The method of claim 1 , further comprising notifying the destination cloud to reserve one or more computer resources to execute the identified instances.

4. The method of claim 1 , wherein the usage frequency is generated based on a frequency of use of each of the one or more virtual machines.

5. The method of claim 1 , wherein the instructing comprises notifying the source cloud to compress the identified instance of each of the multiple virtual machines into a data packet and to transmit the data packets to the destination cloud.

6. The method of claim 1 , wherein the instructing further comprises:

receiving feedback, from the destination cloud, that identifies one or more flawed data packets; and

notifying the source cloud to re-transmit data to replace the identified flawed data packets.

7. The method of claim 1 , wherein the ordering is based on a quantity of respective neighboring virtual machines that are controlled by another client of the source cloud.

8. A system, comprising:

a source cloud that includes multiple physical nodes;

multiple virtual machines to be migrated to a destination cloud,

wherein the multiple virtual machines execute on the source cloud, and

wherein the source cloud maintains at least two instances of each of the multiple virtual machines in a respective node of the multiple physical nodes, the at least two instances includes each respective virtual machine and at least one copy of the each respective virtual machine; and

a migration controller configured to:

establish one or more migration agreements, wherein the one or more migration agreements apply to two or more of a client, the source cloud, and the destination cloud;

order a sequence of the multiple virtual machines to be migrated, wherein the sequence is ordered based on a usage frequency of respective ones of the multiple virtual machines to be migrated;

identify one of the at least two instances of each of the multiple virtual machines to migrate based on proximity between the respective node and a destination node on the destination cloud;

instruct the source cloud to migrate the identified instance of each one of the multiple virtual machines to be migrated in accordance with the sequence to the destination cloud under terms of the one or more migration agreements; and

reward or penalize a service provider of the source cloud in accordance with the one or more migration agreements.

9. The system of claim 8 , wherein the migration agreements include at least one of:

a quantity of the multiple virtual machines to be migrated, a deadline by which the migrating is to be completed,

a reward for completion of the migration of the multiple virtual machines by the deadline, and

a penalty for failing to complete the migration of the multiple virtual machines by the deadline.

10. The system of claim 8 , wherein the migration controller is further configured to instruct the destination cloud to reserve one or more computing resources to execute the identified instances of the multiple virtual machines.

11. The system of claim 8 , wherein the migration controller is further configured to instruct the source cloud to compress the selected copy of each of the sorted multiple virtual machines into a data packet, and to instruct the source cloud to transmit the data packet to the destination cloud.

12. The system of claim 8 , wherein the migration controller is further configured to:

receive feedback, from the destination cloud, that identifies one or more flawed data packets; and

instruct the source cloud to re-transmit data to replace the flawed data packets.

13. The system of claim 8 , wherein the sequence is ordered based on a quantity of neighbor virtual machines that are controlled by another client of the source cloud.

14. The system of claim 8 , wherein the usage frequency is generated based on a frequency of use of each of the multiple virtual machines.

15. A non-transitory computer-readable medium that stores executable-instructions that, when executed, cause one or more processors to perform operations for virtual machine migration, including:

establishing one or more migration agreements,

wherein the one or more migration agreements apply to two or more of a client, a source cloud, and a destination cloud,

wherein the one or more migration agreements include identifiers, provided by the wherein the one or more migration agreements include identifiers, provided by the cloud under terms of the one or more migration agreements, and

wherein the source cloud maintains at least two instances of each of the multiple virtual machines to be migrated in a respective node, the at least two instances including each respective virtual machine to be migrated and at least one copy of each respective virtual machine to be migrated;

ordering a sequence of the multiple virtual machines to be migrated, wherein the ordering is based on a quantity of respective neighboring virtual machines that are controlled by another client of the source cloud;

identifying one instance of each of the multiple virtual machines to be migrated based on proximity between the respective node and a destination node on the destination cloud; and

instructing the source cloud to migrate the identified instance of each of the multiple virtual machines to be migrated under terms of the one or more migration agreements.

16. The non-transitory computer-readable medium of claim 15 , wherein the migration agreements include at least one of:

a quantity of the multiple virtual machines to be migrated, a deadline by which the migration of the multiple virtual machines is to be completed,

a reward for completing the migration of the multiple virtual machines by the deadline, and

a penalty for failing to complete the migration of the multiple virtual machines by the deadline.

17. The non-transitory computer-readable medium of claim 15 , wherein the instructions, in response to execution by the one or more processor, further cause the one or more processor to:

notify the destination cloud to reserve one or more computing resources to execute the identified instances of the multiple virtual machines.

18. The non-transitory computer-readable medium of claim 15 , wherein the usage frequency is generated based on a frequency of use of each of the multiple virtual machines.

19. The non-transitory computer-readable medium of claim 15 , wherein the instruction comprises:

notify the source cloud to compress the identified instance of each of the multiple virtual machines into a data packet and to transmit the data packet to the destination cloud.

20. The non-transitory computer-readable medium of claim 15 , wherein the order is based on a geographic location of the respective node.

21. The non-transitory computer-readable medium of claim 15 , wherein the instructions, in response to execution by the one or more processors, further cause the one or more processors to penalize or reward a service provider of the source cloud in accordance with the migration agreements.

Assignments (2)
RELEASE OF SECURITY INTEREST Recorded Jul 31, 2019
From: CRESTLINE DIRECT FINANCE, L.P.
To: EMPIRE TECHNOLOGY DEVELOPMENT LLC
Reel/Frame 049924/0794 →
SECURITY INTEREST Recorded Jan 29, 2019
From: EMPIRE TECHNOLOGY DEVELOPMENT LLC
To: CRESTLINE DIRECT FINANCE, L.P.
Reel/Frame 048373/0217 →