Gang migration of virtual machines using cluster-wide deduplication
First Claim
1. A method of tracking duplication of memory content, comprising:
- computing in each of a plurality of servers, a respective a hash value for each of a plurality of respective memory pages used by the plurality of servers;
communicating the hash value for each of the plurality of respective memory pages for the plurality of servers to a memory control server for the plurality of servers, to form a hash table;
transmitting the hash table of the memory control server for the plurality of servers through a communication network to a corresponding memory control server for a different plurality of servers;
receiving, from the corresponding memory control server, a corresponding hash table comprising a plurality of corresponding hash values for memory pages used by the different plurality of servers;
comparing, by the memory control server, the respective hash values in the hash table with the corresponding hash values in the corresponding hash table; and
determining memory duplication between the plurality of server and the plurality of different servers, based on said comparing.
0 Assignments
0 Petitions
Accused Products
Abstract
Gang migration refers to the simultaneous live migration of multiple Virtual Machines (VMs) from one set of physical machines to another in response to events such as load spikes and imminent failures. Gang migration generates a large volume of network traffic and can overload the core network links and switches in a datacenter. In this paper, we present an approach to reduce the network overhead of gang migration using global deduplication (GMGD). GMGD identifies and eliminates the retransmission of duplicate memory pages among VMs running on multiple physical machines in the cluster. The design, implementation and evaluation of a GMGD prototype is described using QEMU/KVM VMs. Evaluations on a 30-node Gigabit Ethernet cluster having 10GigE core links shows that GMGD can reduce the network traffic on core links by up to 65% and the total migration time of VMs by up to 42% when compared to the default migration technique in QEMU/KVM. Furthermore, GMGD has a smaller adverse performance impact on network-bound applications.
-
Citations
20 Claims
-
1. A method of tracking duplication of memory content, comprising:
-
computing in each of a plurality of servers, a respective a hash value for each of a plurality of respective memory pages used by the plurality of servers; communicating the hash value for each of the plurality of respective memory pages for the plurality of servers to a memory control server for the plurality of servers, to form a hash table; transmitting the hash table of the memory control server for the plurality of servers through a communication network to a corresponding memory control server for a different plurality of servers; receiving, from the corresponding memory control server, a corresponding hash table comprising a plurality of corresponding hash values for memory pages used by the different plurality of servers; comparing, by the memory control server, the respective hash values in the hash table with the corresponding hash values in the corresponding hash table; and determining memory duplication between the plurality of server and the plurality of different servers, based on said comparing. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for transfer of information to a plurality of servers in a server rack under control of a memory server, from a corresponding memory server, comprising:
-
determining the content redundancy in memory pages or sub-pages across the plurality of servers in the server rack at a respective time for each respective memory page or sub-page; transferring, from the corresponding memory server to the memory server, a copy of each unique memory page or sub-page through a communication interface of the server rack; determining, by the memory server, which of the plurality of servers in the server rack require the unique memory page or sub-page; and duplicating, under control of the memory server, the unique memory page or sub-page within the server rack for each server that requires but did not receive the copy of the unique memory page or sub-page. - View Dependent Claims (18)
-
-
19. A method for gang migration, comprising:
-
determining, by a memory server associated with the plurality of servers, a content redundancy in memory pages for use by a plurality of virtual machines to be gang migrated to the plurality of servers; initiating a gang migration under control of the memory server, wherein only a single copy of each unique memory page according to the determined content redundancy is transferred during the gang migration to the plurality of servers, with a reference to each respective unique memory page for virtual machines that require but do not receive a copy of the unique memory page; and after receipt of a unique memory page by the plurality of servers, communicating the unique memory page under control of the memory server to each virtual machine that requires but did not receive the copy of the unique memory page. - View Dependent Claims (20)
-
Specification