Virtual Machine Migration via Dirty Page Tracking and Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtual machine migration causes performance degradation due to brownout and blackout periods, where the tracking mechanism slows down execution and the virtual machine is stopped for state transfer, respectively, leading to downtime and workload balancing challenges.

Innovation Solution

Implementing a source computer system that maps pages as writable in response to guest OS changes, compresses pages before transfer, and cancels/reeissues IO jobs to minimize downtime and improve transfer efficiency during migration.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a tracking mechanism is used to track all modifications made to memory of the virtual machine, then consistency is maintained, but execution performance is slowed down

Engineering Contradiction:
Improvememory consistencyVSAvoidexecution performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the memory tracking process by dividing memory into pages and using a page table to track only modified pages (dirty pages) rather than tracking every memory access. This selective tracking approach maintains consistency while reducing the overhead on execution performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a page table as an intermediary data structure between the guest OS memory and the tracking mechanism. The page table acts as a mediator that records page modification status without requiring direct intervention in every memory access operation, thereby reducing performance impact.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the virtual machine is stopped to ensure runtime state consistency during transfer, then data integrity is maintained, but downtime increases

Engineering Contradiction:
Improveruntime state consistencyVSAvoidblackout period
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by stopping the virtual machine briefly before the transfer to capture a consistent runtime state snapshot. This preliminary stop ensures that the state being transferred is consistent, while the actual transfer can proceed without further interruptions, minimizing the total blackout period.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses periodic action by implementing iterative pre-copy migrations where the virtual machine is stopped periodically to capture updated runtime states. This allows the system to transfer memory pages in multiple passes, reducing the duration of each individual blackout period while maintaining consistency.

Inventive Principle:
Principle #19Periodic action

3Reliability

If pages are transferred during migration, then memory state is replicated, but network bandwidth is consumed

Engineering Contradiction:
Improvememory state replicationVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies parameter changes by compressing memory pages before transfer to reduce their size and thereby reduce network bandwidth consumption. Compression changes the parameter of page size, allowing more efficient use of network resources while still achieving complete memory state replication.

Inventive Principle:
Principle #35Parameter changes

4Reliability

If IO jobs are cancelled and re-issued on target system, then migration consistency is maintained, but migration time increases

Engineering Contradiction:
Improvemigration consistencyVSAvoidmigration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary action by cancelling pending IO jobs before the virtual machine stop and re-issuing them after migration. This ensures that no IO operations are left in an inconsistent state during migration, maintaining reliability while minimizing the time impact by batch processing the re-issuance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP4050477B1Virtual machine migration techniques
Publication Date: 2023.08.23 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP4050477B1 patent drawingFigure 1
  • EP4050477B1 patent drawingFigure 2
  • EP4050477B1 patent drawingFigure 3

AI summary

Techniques for migrating a virtual machine from a source computer system to a target computer system are disclosed. In an exemplary embodiment, a group of pages can be mapped writable in response to determining that the guest operating system attempted to change a specific page. In the same, or other embodiments, pages can be compressed prior to sending such that throughput of a communication channel is maximized. In the same, or other embodiments, storage IO jobs can be canceled on a source computer system and reissued by a target computer system.