# US 11,907,083 B1 · Transparent snapshot-based file system consistent virtual machine protection

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,907,083 B1
- Document ID: US11907083B1
- Status: Granted
- Kind: B1
- Application number: 17/966,528
- Filed: 2022-10-14
- Granted: 2024-02-20
- Earliest claimed: 2022-10-14
- Assignees: Dell Products L.P.
- Applicants: Dell Products L.P.
- Inventors: Krishnendu Bagchi; Vipin Kaushal; Sudha Hebsur; Amarendra Behera; Pallavi Prakash
- Web page: https://patentgrep.com/patent/US11907083B1

## CPC

- G06F 11/1469: {Backup restoration techniques}
- G06F 11/1451: {by selection of backup contents}
- G06F 16/128: {Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion (error detection or correction of the data by redundancy in operations or in hardware G06F11/14, G06F11/16)}
- G06F 16/188: Virtual file systems
- G06F 2201/84: Using snapshots, i.e. a logical point-in-time copy of the data
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A command is received by a data protection agent to conduct a file system-consistent backup of a virtual machine (VM) having a copy service. A first request is issued to the copy service indicating that all files of the VM are to be backed up and that archive attributes of all the files should remain unchanged. A second request is issued to a snapshot data mover for a snapshot of the VM. The snapshot request is passed to a virtual machine manager. Upon the snapshot data mover receiving an identifier identifying the snapshot from the virtual machine manager, the snapshot identifier is passed to the data protection agent, thereby allowing the agent to locate the snapshot and conduct the backup.

## Claims

### Claim 1

A method comprising:
receiving at a data protection agent a command to conduct a file system-consistent backup of a virtual machine, the virtual machine comprising a plurality of applications and a copy service having a plurality of application writers and a plurality of system writers, the application writers being responsible for quiescing the applications, and the system writers being responsible for quiescing system state of the virtual machine;
issuing, from the data protection agent, a first request to the copy service indicating that all files of the virtual machine are to be backed up and that archive attributes of all the files should remain unchanged, the first request thereby triggering the copy service to notify the application writers and system writers of a snapshot operation;
issuing, from the data protection agent, a second request to a snapshot data mover for a snapshot of the virtual machine, the snapshot data mover executing on the host and outside of the virtual machine;
passing the request for the snapshot from the snapshot data mover to a virtual machine manager;
receiving, at the snapshot data mover, an identifier identifying the snapshot from the virtual machine manager; and
passing the snapshot identifier to the data protection agent to allow the data protection agent to locate the snapshot and conduct the backup.

### Claim 2 (depends on 1)

The method of claim 1 wherein the indication that archive attributes of all the files should remain unchanged thereby prevents application logs from being truncated.

### Claim 3 (depends on 1)

The method of claim 1 wherein the copy service comprises a volume shadow copy service (VSS) and the issuing the first request to the copy service comprises passing a value of “VSS_BT_COPY” to the copy service.

### Claim 4 (depends on 1)

The method of claim 1 wherein the issuing a first request to the copy service further comprises:
instructing a first writer associated with a first application running in the virtual machine to prepare and place the first application in a state for backup;
instructing a second writer associated with a second application running in the virtual machine to prepare and place the second application in a state for backup;
checking that the first and second writers have prepared and placed their respective applications in a state for backup; and
if any of the first or second writers have indicated that their respective applications are not in a proper state for backup, prompting a user to restart the respective application.

### Claim 5 (depends on 1)

The method of claim 1 wherein the data protection agent is installed as a guest within the virtual machine.

### Claim 6 (depends on 1)

The method of claim 1 wherein the data protection agent comprises a requestor and a provider, wherein the requestor is responsible for interfacing with the copy service to make the snapshot request and the provider is responsible for interfacing with the copy service to provide the identifier for the snapshot.

### Claim 7

A system comprising: a processor; and memory configured to store one or more sequences of instructions which, when executed by the processor, cause the processor to carry out the steps of:
receiving at a data protection agent a command to conduct a file system-consistent backup of a virtual machine, the virtual machine comprising a plurality of applications and a copy service having a plurality of application writers and a plurality of system writers, the application writers being responsible for quiescing the applications, and the system writers being responsible for quiescing system state of the virtual machine;
issuing, from the data protection agent, a first request to the copy service indicating that all files of the virtual machine are to be backed up and that archive attributes of all the files should remain unchanged, the first request thereby triggering the copy service to notify the application writers and system writers of a snapshot operation;
issuing, from the data protection agent, a second request to a snapshot data mover for a snapshot of the virtual machine, the snapshot data mover executing on the host and outside of the virtual machine;
passing the request for the snapshot from the snapshot data mover to a virtual machine manager;
receiving, at the snapshot data mover, an identifier identifying the snapshot from the virtual machine manager; and
passing the snapshot identifier to the data protection agent to allow the data protection agent to locate the snapshot and conduct the backup.

### Claim 8 (depends on 7)

The system of claim 7 wherein the indication that archive attributes of all the files should remain unchanged thereby prevents application logs from being truncated.

### Claim 9 (depends on 7)

The system of claim 7 wherein the copy service comprises a volume shadow copy service (VSS) and the issuing the first request to the copy service comprises passing a value of “VSS_BT_COPY” to the copy service.

### Claim 10 (depends on 7)

The system of claim 7 wherein the issuing a first request to the copy service further comprises:
instructing a first writer associated with a first application running in the virtual machine to prepare and place the first application in a state for backup;
instructing a second writer associated with a second application running in the virtual machine to prepare and place the second application in a state for backup;
checking that the first and second writers have prepared and placed their respective applications in a state for backup; and
if any of the first or second writers have indicated that their respective applications are not in a proper state for backup, prompting a user to restart the respective application.

### Claim 11 (depends on 7)

The system of claim 7 wherein the data protection agent is installed as a guest within the virtual machine.

### Claim 12 (depends on 7)

The system of claim 7 wherein the data protection agent comprises a requestor and a provider, wherein the requestor is responsible for interfacing with the copy service to make the snapshot request and the provider is responsible for interfacing with the copy service to provide the identifier for the snapshot.

### Claim 13

A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein, the computer-readable program code adapted to be executed by one or more processors to implement a method comprising:
receiving at a data protection agent a command to conduct a file system-consistent backup of a virtual machine, the virtual machine comprising a plurality of applications and a copy service having a plurality of application writers and a plurality of system writers, the application writers being responsible for quiescing the applications, and the system writers being responsible for quiescing system state of the virtual machine;
issuing, from the data protection agent, a first request to the copy service indicating that all files of the virtual machine are to be backed up and that archive attributes of all the files should remain unchanged, the first request thereby triggering the copy service to notify the application writers and system writers of a snapshot operation;
issuing, from the data protection agent, a second request to a snapshot data mover for a snapshot of the virtual machine, the snapshot data mover executing on the host and outside of the virtual machine;
passing the request for the snapshot from the snapshot data mover to a virtual machine manager;
receiving, at the snapshot data mover, an identifier identifying the snapshot from the virtual machine manager; and
passing the snapshot identifier to the data protection agent to allow the data protection agent to locate the snapshot and conduct the backup.

### Claim 14 (depends on 13)

The computer program product of claim 13 wherein the indication that archive attributes of all the files should remain unchanged thereby prevents application logs from being truncated.

### Claim 15 (depends on 13)

The computer program product of claim 13 wherein the copy service comprises a volume shadow copy service (VSS) and the issuing the first request to the copy service comprises passing a value of “VSS_BT_COPY” to the copy service.

### Claim 16 (depends on 13)

The computer program product of claim 13 wherein the issuing a first request to the copy service further comprises:
instructing a first writer associated with a first application running in the virtual machine to prepare and place the first application in a state for backup;
instructing a second writer associated with a second application running in the virtual machine to prepare and place the second application in a state for backup;
checking that the first and second writers have prepared and placed their respective applications in a state for backup; and
if any of the first or second writers have indicated that their respective applications are not in a proper state for backup, prompting a user to restart the respective application.

### Claim 17 (depends on 13)

The computer program product of claim 13 wherein the data protection agent is installed as a guest within the virtual machine.

### Claim 18 (depends on 13)

The computer program product of claim 13 wherein the data protection agent comprises a requestor and a provider, wherein the requestor is responsible for interfacing with the copy service to make the snapshot request and the provider is responsible for interfacing with the copy service to provide the identifier for the snapshot.
