Post-copy migration of a group of virtual machines that share memory

US2016266940A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016266940-A1
Application numberUS-201615162277-A
CountryUS
Kind codeA1
Filing dateMay 23, 2016
Priority dateNov 18, 2014
Publication dateSep 15, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A hypervisor of a source host receives a request to migrate a group of virtual machines that provide network function virtualization support (NFV) from the source host to a destination host. The hypervisor of the source host determines that a first virtual machine of the group of virtual machines being migrated to the destination host shares a memory space on the source host with the group of virtual machines on the source host. Upon receiving a request from a second virtual machine of the group of virtual machines on the source host to access a first memory page of the shared memory space on the source host that has been migrated to the destination host, the hypervisor of the source host initiates migration of the second virtual machine to the destination host.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method comprising: determining, by a processing device executing a hypervisor on a source host, that a first virtual machine of a group of virtual machines on the source host has been migrated to a destination host during migration of the group of virtual machines to the destination host, wherein the group of virtual machines comprises a group of virtual machines providing network function virtualization (NFV) support; receiving, by the processing device executing the hypervisor on the source host, a request from a second virtual machine of the group of virtual machines on the source host to access a first memory page of shared memory space on the source host, wherein the shared memory space is shared by the group of virtual machines; and responsive to determining that the first memory page of the shared memory space on the source host has been migrated to the destination host, stopping, by the hypervisor of the source host, execution of the second virtual machine on the source host, and migrating, by the hypervisor of the source host, the second virtual machine to the destination host. 2 . The method of claim 1 further comprising: receiving, by the hypervisor of the source host, a request from the destination host for a second memory page of the shared memory space on the source host; migrating, by the hypervisor of the source host, the second memory page of the shared memory space on the source host to the destination host; and designating, by the hypervisor of the source host, the second memory page of the shared memory space on the source host as not present. 3 . The method of claim 2 further comprising: responsive to determining that a number of memory pages of the shared memory space remaining on the source host meets a predetermined threshold condition, notifying, by the hypervisor of the source host, the destination host that shared memory transfer has completed. 4 . The method of claim 1 wherein determining that the first virtual machine has been migrated to the destination host comprises determining that a portion of a state of the first virtual machine has been migrated to the destination host, the portion of the state of the first virtual machine comprising a device state, a CPU register state, and a RAM pages state. 5 . The method of claim 2 wherein the hypervisor of the destination host is to: start the first virtual machine on the destination host; receive a request from the first virtual machine for the second memory page of the shared memory space; access a page table entry for the second memory page within a memory page table of the destination host; determine whether the second memory page is missing from the destination host in view of the page table entry for the second memory page; responsive to determining that the second memory page of the shared memory space is missing from the destination host, pause the execution of the first virtual machine; retrieve the second memory page from the source host; and resume execution of the first virtual machine. 6 . The method of claim 5 wherein to retrieve the second memory page, the hypervisor of the destination host is to: send a request to the source host for the second memory page; designate the second memory page on the destination host as having been requested; receive the second memory page from the source host; and designate the second memory page on the destination host as present by updating the page table entry for the second memory page in the memory page table of the destination host. 7 . The method of claim 6 wherein the hypervisor of the destination host is further to: start a timer upon sending the request to the source host for the second memory page; detect an expiration of the timer prior to receiving the second memory page from the source host; and resend the request to the source host for the second memory page. 8 . A computing apparatus comprising: a memory; and a processing device, operatively coupled to the memory, to execute a hypervisor on a source host to: receive a request from a virtual machine on the source host to access a first memory page of shared memory space on the source host; and responsive to determining that the first memory page of the shared memory space on the source host has been migrated to a destination host, stop, by the hypervisor of the source host, execution of the virtual machine on the source host, and migrate, by the hypervisor of the source host, the virtual machine to the destination host. 9 . The apparatus of claim 8 wherein the processing device is further to: receive, by the hypervisor of the source host, a request from the destination host for a second memory page of the shared memory space on the source host; migrate, by the hypervisor of the source host, the second memory page of the shared memory space on the source host to the destination host; and designate, by the hypervisor of the source host, the second memory page of the shared memory space on the source host as not present. 10 . The apparatus of claim 9 wherein the processing device is further to: responsive to determining that a number of memory pages of the shared memory space remaining on the source host meets a predetermined threshold condition, notify, by the hypervisor of the source host, the destination host that shared memory transfer has completed. 11 . The apparatus of claim 8 wherein the virtual machine of the source host is one of a group of virtual machines providing network function virtualization (NFV) support being migrated to the destination host, and wherein the shared memory space is shared by the group of virtual machines. 12 . The apparatus of claim 9 , wherein the hypervisor of the destination host is to: start the virtual machine on the destination host; receive a request from the virtual machine for the second memory page of the shared memory space; access a page table entry for the second memory page within a memory page table of the destination host; determine whether the second memory page is missing from the destination host in view of the page table entry for the second memory page; responsive to determining that the second memory page of the shared memory space is missing from the destination host, pause the execution of the virtual machine; retrieve the second memory page from the source host; and resume execution of the virtual machine. 13 . The apparatus of claim 12 , wherein to retrieve the second memory page, the hypervisor of the destination host is to: send a request to the source host for second memory page; designate the second memory page on the destination host as having been requested; receive the second memory page from the source host; and designate the second memory page on the destination host as present by updating the page table entry for the second memory page in the memory page table of the destination host. 14 . The apparatus of claim 13 , wherein the hypervisor of the destination host is further to: start a timer upon sending the request to the source host for the second memory page; detect an expiration of the timer prior to receiving the second memory page from the source host; and resend the request to the source host for the second memory page. 15 . A non-transitory computer readable storage medium, having instructions stored therein, which when executed by a processing device of a computer system, cause the processing device to: determine, by the processing device executing a hypervisor on a source host, that a first virtual machine of a grou

Assignees

Inventors

Classifications

  • G06F9/5088Primary

    involving task migration · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • the resource being the memory · CPC title

  • Priority · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016266940A1 cover?
A hypervisor of a source host receives a request to migrate a group of virtual machines that provide network function virtualization support (NFV) from the source host to a destination host. The hypervisor of the source host determines that a first virtual machine of the group of virtual machines being migrated to the destination host shares a memory space on the source host with the group of v…
Who is the assignee on this patent?
Red Hat Israel Ltd
What technology area does this patent fall under?
Primary CPC classification G06F9/5088. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Sep 15 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).