VFIO Snapshot Backup for Virtual Machine Data Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data backup methods for virtual machines are inefficient and prone to failures due to timing dependencies, performance overhead, and security vulnerabilities, particularly when using volume snapshot services and multiple proxy VMs, which can lead to application performance degradation and increased risk of attacks.

Innovation Solution

The implementation of virtual filter I/O (VFIO) snapshots, where an I/O filter driver intercepts and stores I/O operations on mirror disks, allowing for the creation of a VFIO snapshot that verifies against a production snapshot, reducing overhead and enabling selective backup without relying on timing for success, and ensuring secure communication channels.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If VSS snapshot is used to quiesce application state, then application data consistency is improved, but application performance is degraded due to timing constraints and repeated quiesce/resume events

Engineering Contradiction:
Improveapplication data consistencyVSAvoidapplication performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The backup system is segmented into multiple components: application agent, proxy VM, and storage system. The application agent handles quiescing and verification, while the proxy VM handles snapshot creation. This segmentation allows the application to quiesce only when necessary and verify backup completeness without performance degradation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The application agent performs preliminary actions by quiescing the application state before the snapshot is taken and verifying the backup completeness after the snapshot is created. This preliminary action ensures data consistency without requiring the application to remain quiesced throughout the entire backup process.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multiple proxy VMs are deployed for backup, then backup reliability is improved, but system complexity and security risk are increased

Engineering Contradiction:
Improvebackup reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The application agent receives feedback from the proxy VM regarding snapshot creation status and uses this feedback to verify backup completeness. The agent can determine whether the backup is complete based on the snapshot metadata, eliminating the need for complex coordination between multiple proxy VMs.

Inventive Principle:
Principle #23Feedback

3Reliability

If application agent reaches out to proxy VM for backup completion, then backup verification is improved, but communication overhead and failure risk are increased

Engineering Contradiction:
Improvebackup verificationVSAvoidcommunication overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The snapshot metadata serves as an intermediary that carries backup completion information between the proxy VM and the application agent. Instead of direct communication requiring credentials and authentication, the metadata acts as a mediator that conveys the necessary information efficiently.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Ease of operation

If timing-based approach is used for backup completion, then backup process simplicity is improved, but failure rate increases due to timeouts and retries

Engineering Contradiction:
Improvebackup process simplicityVSAvoidbackup failure rate
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The timing-based mechanical approach is replaced with a verification-based approach using snapshot metadata. Instead of relying on time thresholds and timeout mechanisms, the system uses the metadata to definitively determine backup completion, eliminating arbitrary timing constraints and associated failures.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS10705756B2Agent aware selective backup of a virtual machine using virtual I/O filter snapshots
Publication Date: 2020.07.07 EMC IP HLDG CO LLC
  • US10705756B2 patent drawing
  • US10705756B2 patent drawing
  • US10705756B2 patent drawing

AI summary

A method includes identifying a state of an application and taking a snapshot of application data. The method continues to generate a virtual filter input/output snapshot from I/O filter records for the snapshot. The filer records are generated by a filter driver that intercepts I/Os between the application and disks that store application data. The method further includes releasing the snapshot, resuming the application and performing a backup using the virtual filter I/O snapshot. Finally, the method triggers the filter driver to replace multiple filter driver records corresponding to the virtual filter I/O snapshot with data indicating the application data was backed up using the virtual filter I/O snapshot.