Virtual Machine Memory Migration via Hypervisor Page Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

System migrations of virtual machines often result in excessive downtime due to halting the source virtual machine for snapshot creation, or introduce update propagation issues when migrating while the source virtual machine is executing.

Innovation Solution

A system and method for migrating memory contents from a source virtual machine to a target virtual machine by iteratively identifying and transmitting only modified pages, using a hypervisor to establish communication and manage the migration process, and employing data structures to track updates and determine an efficient migration order based on system configuration and access patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the source virtual machine is halted to create a snapshot for migration, then the target virtual machine can be created with accurate source data, but system downtime increases excessively

Engineering Contradiction:
Improvedata accuracyVSAvoidsystem downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by creating a snapshot of the source virtual machine's memory state before migration begins, then using this snapshot as a baseline for incremental updates. This allows the migration to proceed with the source VM running, as subsequent changes are tracked and applied to the target VM without requiring the source to be halted.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements continuity of useful action by enabling the source virtual machine to continue executing and processing requests during the migration process. Instead of halting the source VM, the system continuously tracks memory page modifications and propagates them to the target VM, ensuring both VMs remain operational throughout the migration.

Inventive Principle:
Principle #20Continuity of useful action

2Productivity

If the source virtual machine continues executing during migration, then system availability is maintained, but tracking and propagating memory updates becomes complex

Engineering Contradiction:
Improvesystem availabilityVSAvoidupdate propagation mechanism
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the virtual machine's memory into discrete pages and tracking modifications at the page level. Each memory page can be independently monitored and updated, allowing the system to manage complexity through fine-grained control rather than treating the entire memory space as a single unit.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary component that acts as a mediator between the source and target virtual machines. This intermediary tracks memory page modifications in the source VM and automatically propagates changes to the target VM, simplifying the update propagation mechanism by centralizing the coordination logic in a dedicated component.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If all memory pages are transmitted initially, then the target virtual machine has complete data, but transmission time and bandwidth usage increase

Engineering Contradiction:
Improvedata completenessVSAvoidtransmission time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies the taking out principle by extracting only the necessary data for migration - specifically, memory page modification information - rather than transmitting entire memory contents. By identifying and extracting only the pages that have changed since the snapshot was taken, the system reduces transmission time and bandwidth usage while ensuring data completeness for the target VM.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements partial action by transmitting only a subset of memory pages - specifically, those that have been modified since the snapshot - rather than all memory pages. This partial transmission approach maintains data completeness for migrated pages while significantly reducing overall transmission time and network bandwidth consumption.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8671256B2Migrating contents of a memory on a virtual machine
Publication Date: 2014.03.11 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8671256B2 patent drawing
  • US8671256B2 patent drawing
  • US8671256B2 patent drawing

AI summary

A system and computer program product for migrating contents of a memory on a virtual machine. The system includes a source virtual machine executing on a host system, the source virtual machine including a memory. The system also includes a hypervisor executing on the host system. The hypervisor is in communication with the source virtual machine and includes instructions. The instructions facilitate establishing communication from the source virtual machine to a target virtual machine, the source virtual machine including a memory. The contents of the memory on the source virtual machine are transmitted to the target virtual machine. The contents of the memory on the source virtual machine include a plurality of pages. It is determined if all or a subset of the pages have been modified on the source virtual machine subsequent to being transmitted to the target virtual machine. If it is determined that all or a subset of the pages have been modified, then the modified pages, including a page location and page content for each of the modified pages, are transmitted to the target virtual machine. The determining and transmitting the modified pages continues until the number of remaining pages that have been modified is less than a threshold. The virtual machine is then paused the remaining pages are transmitted to the target virtual machine.