IP Library Granted Patent US 9,547,562
Granted Patent B1
US 9,547,562 · App. 12/902,930 · Granted Jan 17, 2017

Boot restore system for rapidly restoring virtual machine backups

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,547,562
App. No.
12/902,930
Granted
Jan 17, 2017
Kind
B1
Abstract

A boot restore system and associated processes for rapidly restoring virtual machine images are described. The boot restore system can boot a virtual machine from a set of one or more backup files in a backup repository. The boot restore system can make the backup set available for use by the virtual machine immediately or otherwise rapidly. Thus, users may not have to wait for an actual virtual disk image to be copied to a separate file system before accessing the restored backup set. While a user is accessing the virtual machine, a live migration process can migrate the backup set to a target file system, without any disruption or substantial disruption in use of the running virtual machine.

Claims (62)

1. A system for restoring a virtual machine image, the system comprising:

a management server comprising computer hardware, the management server programmed to implement:

a backup module configured to perform one or more backups of a virtual machine image, the one or more backups comprising a backup set; and

a restore module implemented in a virtual appliance running on a hypervisor, the restore module comprising a disk image manager and a virtual machine creator, the disk image manager configured to:

receive a request to restore a backup set of the virtual machine image,

mount one or more backup files in the backup set as a pseudo disk image accessible to the restore module; and

share the pseudo disk image as a block-level device, the pseudo disk image configured to be accessible via raw disk commands;

create a cache in storage of the virtual appliance;

responsive to write requests directed to the pseudo disk image, redirecting the write requests to the cache;

responsive to read requests directed to the pseudo disk image, accessing at least one of the cache and the one or more backup files;

the virtual machine creator configured to:

create a virtual machine, said creating the virtual machine comprising creating a mapping file configured to map raw disk access requests from the virtual machine to the pseudo disk image,

start the virtual machine on a host server, such that the virtual machine is configured to send raw disk access requests to the pseudo disk image via the mapping file; and

wherein the virtual appliance comprises at least one virtual machine, the at least one virtual machine including one or more modules that interface with the backup set.

2. The system of claim 1 , wherein the backup module is further configured to create a block directory corresponding to changed blocks in the backup set, the backup set comprising a full backup file and a partial backup file.

3. The system of claim 2 , wherein the disk image manager is further configured to:

service the raw disk access requests by accessing the block directory to determine whether any changes to the full backup file were stored in the partial backup file, and

in response to determining that changes occurred, service the raw disk access requests on the partial backup file.

4. The system of claim 2 , wherein the partial backup file comprises one of the following: an incremental backup file and a differential backup file.

5. The system of claim 1 , wherein the mapping file comprises a network address of the pseudo disk image.

6. The system of claim 5 , wherein the disk image manager is further configured to share the pseudo disk image as a block-level device over a storage area network by at least transforming the pseudo disk image into an Internet Small Computer System Interface (iSCSI) target.

7. The system of claim 6 , wherein the network address further comprises an iSCSI target identifier configured to identify the pseudo disk image.

8. A method comprising, by a computer system comprising computer hardware:

by a disk image manager of a restore module implemented in a virtual appliance running on a hypervisor:

receiving a request to restore a backup set of a virtual machine image;

mounting one or more backup files of the backup set as a pseudo disk image;

sharing the pseudo disk image as a block-level device, the pseudo disk image configured to be accessible via raw disk commands;

creating a cache in storage of the virtual appliance;

responsive to write requests directed to the pseudo disk image, redirecting the write requests to the cache; and

responsive to read requests directed to the pseudo disk image, accessing at least one of the cache and the one or more backup files;

by a virtual machine creator of the restore module:

creating a virtual machine, said creating the virtual machine comprising creating a mapping file configured to map raw disk access requests from the virtual machine to the pseudo disk image; and

starting the virtual machine on a host server, such that the virtual machine is configured to send raw disk access requests to the pseudo disk image via the mapping file; and

wherein the virtual appliance comprises at least one virtual machine, the at least one virtual machine interfacing with the backup set.

9. The method of claim 8 , the method comprising creating a block directory corresponding to changed blocks in the backup set, the backup set comprising a full backup file and a partial backup file.

10. The method of claim 9 , the method comprising:

servicing the raw disk access requests by accessing the block directory to determine whether any changes to the full backup file were stored in the partial backup file, and

in response to determining that changes occurred, servicing the raw disk access requests on the partial backup file.

11. The method of claim 9 , wherein the partial backup file comprises one of the following: an incremental backup file and a differential backup file.

12. The method of claim 8 , wherein the mapping file comprises a network address of the pseudo disk image.

13. The method of claim 12 , the method comprising sharing the pseudo disk image as a block-level device over a storage area network by at least transforming the pseudo disk image into an Internet Small Computer System Interface (iSCSI) target.

14. The method of claim 13 , wherein the network address further comprises an iSCSI target identifier configured to identify the pseudo disk image.

15. A non-transitory computer-readable storage medium comprising computer-executable instructions configured to implement a method, the method comprising:

by a disk image manager of a restore module implemented in a virtual appliance running on a hypervisor:

receiving a request to restore a backup set of a virtual machine image;

mounting one or more backup files of the backup set as a pseudo disk image;

sharing the pseudo disk image as a block-level device, the pseudo disk image configured to be accessible via raw disk commands;

creating a cache in storage of the virtual appliance;

responsive to write requests directed to the pseudo disk image, redirecting the write requests to the cache; and

responsive to read requests directed to the pseudo disk image, accessing at least one of the cache and the one or more backup files;

by a virtual machine creator of the restore module:

creating a virtual machine, said creating the virtual machine comprising creating a mapping file configured to map raw disk access requests from the virtual machine to the pseudo disk image;

starting the virtual machine on a host server, such that the virtual machine is configured to send raw disk access requests to the pseudo disk image via the mapping file; and

wherein the virtual appliance comprises at least one virtual machine, the at least one virtual machine interfacing with the backup set.

16. The non-transitory computer-readable storage medium of claim 15 , the method comprising creating a block directory corresponding to changed blocks in the backup set, the backup set comprising a full backup file and a partial backup file.

17. The non-transitory computer-readable storage medium of claim 16 , the method comprising:

servicing the raw disk access requests by accessing the block directory to determine whether any changes to the full backup file were stored in the partial backup file, and

in response to determining that changes occurred, servicing the raw disk access requests on the partial backup file.

18. The non-transitory computer-readable storage medium of claim 16 , wherein the partial backup file comprises one of the following: an incremental backup file and a differential backup file.

19. The non-transitory computer-readable storage medium of claim 15 , wherein the mapping file comprises a network address of the pseudo disk image.

20. The non-transitory computer-readable storage medium of claim 19 , the method comprising sharing the pseudo disk image as a block-level device over a storage area network by at least transforming the pseudo disk image into an Internet Small Computer System Interface (iSCSI) target.

21. The non-transitory computer-readable storage medium of claim 20 , wherein the network address further comprises an iSCSI target identifier configured to identify the pseudo disk image.

Assignments (29)
RELEASE OF SECURITY INTEREST Recorded Nov 19, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.
Reel/Frame 073606/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 18, 2025
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.
Reel/Frame 073613/0326 →
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0649 →
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0001 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059105/0479 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 2, 2022
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.; ONE IDENTITY LLC; ONELOGIN, INC.; ONE IDENTITY SOFTWARE INTERNATIONAL DESIGNATED ACTIVITY COMPANY
To: GOLDMAN SACHS BANK USA
Reel/Frame 058945/0778 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 2, 2022
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.; ONE IDENTITY LLC; ONELOGIN, INC.; ONE IDENTITY SOFTWARE INTERNATIONAL DESIGNATED ACTIVITY COMPANY
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058952/0279 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059096/0683 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0347 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0486 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS RECORDED AT R/F 040581/0850 Recorded May 22, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 046211/0735 →
CHANGE OF NAME Recorded Dec 6, 2017
From: DELL SOFTWARE INC.
To: QUEST SOFTWARE INC.
Reel/Frame 044800/0848 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 040587 FRAME: 0624. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 28, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 044811/0598 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 10, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040587/0624 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 9, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040581/0850 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040039/0642) Recorded Oct 31, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0016 →
RELEASE OF SECURITY INTEREST Recorded Oct 31, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0467 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0618 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040030/0187 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040039/0642 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
CHANGE OF NAME Recorded Aug 19, 2013
From: QUEST SOFTWARE, INC.
To: DELL SOFTWARE INC.
Reel/Frame 031035/0914 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Sep 28, 2012
From: WELLS FARGO CAPITAL FINANCE, LLC (FORMERLY KNOWN AS WELLS FARGO FOOTHILL, LLC)
To: QUEST SOFTWARE, INC.; AELITA SOFTWARE CORPORATION; SCRIPTLOGIC CORPORATION; VIZIONCORE, INC.; NETPRO COMPUTING, INC.
Reel/Frame 029050/0679 →
AMENDMENT NUMBER SEVEN TO PATENT SECURITY AGREEMENT Recorded Apr 20, 2011
From: QUEST SOFTWARE, INC.; AELITA SOFTWARE CORPORATION; SCRIPTLOGIC CORPORATION; VIZIONCORE, INC.; NETPRO COMPUTING, INC.
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 026159/0409 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2011
From: FEATHERGILL, DAVID ALLEN; MATTOX, JASON
To: QUEST SOFTWARE, INC
Reel/Frame 025696/0168 →