Time-Based Virtual Machine Reversion with Bitmap Block Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for reverting virtual machines to previous states are time-consuming and resource-intensive, often causing user downtime due to the need to load entire virtual machine disks, especially when network congestion or multiple users access secondary storage.

Innovation Solution

A filter driver monitors input/output commands between the virtual machine and its disk, capturing changes to create recovery points and generate bitmaps, allowing selective replacement of modified data blocks to revert the virtual machine to a previous state without loading the entire disk.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the entire virtual machine disk is loaded to revert to a previous state, then the virtual machine can be restored, but the process becomes time-consuming and resource-intensive

Engineering Contradiction:
Improvevirtual machine restorationVSAvoidrevert time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts only the modified data blocks from the virtual machine disk using bitmap information, rather than loading the entire disk. The bitmap tracks which blocks have changed, allowing the system to selectively retrieve and replace only those specific blocks needed for reversion, significantly reducing restoration time and resource consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The virtual machine disk is segmented into individual data blocks, and the patent operates at the block level rather than treating the disk as a monolithic unit. By identifying and processing only the modified blocks through bitmap tracking, the system divides the restoration task into manageable segments that can be handled efficiently.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If monitoring is performed to detect changes in the virtual machine, then changes can be captured for reversion, but monitoring may cause changes to the virtual machine or consume virtual machine resources

Engineering Contradiction:
Improvechange detection accuracyVSAvoidvirtual machine resource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent introduces a filter driver as an intermediary component that sits between the virtual machine and the storage system. This filter driver intercepts and monitors write operations without requiring direct access to or modification of the virtual machine's core processes, thereby detecting changes with high precision while minimizing resource consumption and avoiding interference with virtual machine operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If multiple users access secondary storage or network congestion occurs, then data access becomes slower, but the need to revert virtual machines remains

Engineering Contradiction:
Improvevirtual machine reversion capabilityVSAvoiddata access speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent extracts bitmap information that identifies modified data blocks, allowing the system to request only those specific blocks from secondary storage rather than accessing the entire disk. This selective data retrieval approach maintains reversion capability while significantly improving access speed even under network congestion or multi-user conditions.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12430214B2Time-based virtual machine reversion
Publication Date: 2025.09.30 COMMVAULT SYSTEMS INC
  • US12430214B2 patent drawing
  • US12430214B2 patent drawing
  • US12430214B2 patent drawing

AI summary

Recovery points can be used for replicating a virtual machine and reverting the virtual machine to a different state. A filter driver can monitor and capture input/output commands between a virtual machine and a virtual machine disk. The captured input/output commands can be used to create a recovery point. The recovery point can be associated with a bitmap that may be used to identify data blocks that have been modified between two versions of the virtual machine. Using this bitmap, a virtual machine may be reverted or restored to a different state by replacing modified data blocks and without replacing the entire virtual machine disk.