VM Memory Replication via Local Data Copying

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing live migration technique for virtual machines generates excessive network traffic and inefficiencies when replicating memory data between hosts, particularly affecting network performance during large data transfers like those involving databases.

Innovation Solution

The proposed solution involves using checksums and dirty page tracking to determine which memory data is locally available on other hosts, allowing the replication service to copy data from these hosts instead of transferring it from the source host, thereby reducing network traffic. This includes maintaining checksums for memory chunks, tracking dirty pages, and selecting hosts based on local availability and network proximity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all memory data is transferred from source host to destination host during replication, then complete memory state replication is achieved, but network traffic becomes excessive and network performance deteriorates

Engineering Contradiction:
Improvememory replication completenessVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts only the necessary memory pages (dirty pages) that have been modified since the last replication, rather than transferring all memory data. The hypervisor identifies and selects only those pages that contain changes, excluding unchanged pages from the transfer process, thereby reducing network traffic while maintaining replication completeness.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by transferring only a subset of memory pages (those marked as dirty) rather than the complete memory set. The dirty page tracking mechanism enables selective replication of only the necessary portion of memory data, optimizing network bandwidth usage while ensuring all changes are captured.

Inventive Principle:
Principle #16Partial or excessive action

2Adaptability or versatility

If memory data is transferred over the network during live migration, then the virtual machine can be moved between hosts, but network performance is negatively affected due to excessive data transfer

Engineering Contradiction:
Improvevirtual machine mobilityVSAvoidnetwork performance
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent performs preliminary action by pre-identifying dirty pages through tracking mechanisms before the actual migration transfer. The hypervisor continuously monitors and marks modified pages in advance, so that during live migration, only the pre-identified necessary pages are transferred, reducing the impact on network performance while enabling seamless VM mobility.

Inventive Principle:
Principle #10Preliminary action

3Loss of energy

If checksums are calculated and compared for all memory chunks to determine local availability, then data duplication is minimized, but processing overhead increases

Engineering Contradiction:
Improvenetwork bandwidth usageVSAvoidprocessing time
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The patent applies partial action by calculating checksums only for identified dirty pages rather than all memory chunks. The dirty page tracking mechanism narrows down the scope of checksum calculation to only those pages that have been modified, reducing processing overhead while still enabling effective detection of data duplication and optimization of replication operations.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10902014B1Reducing network traffic when replicating memory data across hosts
Publication Date: 2021.01.26 AMAZON TECH INC
  • US10902014B1 patent drawing
  • US10902014B1 patent drawing
  • US10902014B1 patent drawing

AI summary

Technologies are described herein for reducing network traffic when replicating memory data across hosts. The memory data stored in a main memory of the host computer is replicated to a main memory of a second host computer. Memory data from the local data storage of the second host computer and other hosts computers that is a duplicate of memory data from the main memory is identified. Instead of sending the memory data from the main memory that is duplicated, the duplicated memory is copied from the local storage of the second computer or from one or more of the other computers to the main memory of the second host computer.