IP Library Granted Patent US 11,567,687
Granted Patent B2
US 11,567,687 · App. 16/776,447 · Granted Jan 31, 2023

Uninterrupted block-based restore using a virtual container

Inventors: Mahesh Reddy A V (Bangalore, IN); Chetan Battal (Bangalore, IN); Mahantesh Ambaljeri (Bangalore, IN); Swaroop Shankar D H (Bangalore, IN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F3/065G06F3/064G06F3/0619G06F3/0647G06F3/0656G06F3/0673G06F9/45558
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 11,567,687
App. No.
16/776,447
Granted
Jan 31, 2023
Kind
B2
Abstract

For restoring data, a system with uninterrupted block-based restore has a hybrid container. The hybrid container has an operational buffer and a virtual container unit. The system receives blocks of data from a target device into the hybrid container and sends the blocks of data from the hybrid container to a destination device for a restore session. The system writes information about the blocks of data into one or more virtual containers. If there is an abort of the restore session, the system freezes state of the hybrid container and the virtual container(s). For a next restore session that resumes from where the aborted restore session stopped, the system resumes receiving blocks of data from the target device into the hybrid container and sends only leftover blocks of data to the destination device in accordance with the information in the virtual container(s).

Claims (44)

1. A system with uninterrupted block-based restore, comprising:

a hybrid container comprising an operational buffer and a virtual container unit; and

one or more processors to perform operations, the operations comprising:

receiving blocks of data from a target device into the hybrid container and send the blocks of data from the hybrid container to a destination device, responsive to receiving a request for a restore session to restore data to the destination device, wherein the blocks of data from the target device is routed through the operational buffer to the destination device instead of routed through the virtual container, wherein the virtual container only contains information about the blocks of data instead of the blocks of data themselves;

writing the information about the blocks of data into one or more virtual containers, in the virtual container unit, responsive to receiving the blocks of data by the hybrid container;

freezing a state of the hybrid container and the one or more virtual containers, responsive to an abort of the restore session; and

resuming receiving blocks of data from the target device into the hybrid container, responsive to a next restore session that resumes from where the aborted restore session stopped, sending only leftover blocks of data to the destination device in accordance with the information in the one or more virtual containers.

2. The system of claim 1 , wherein the operations further comprise routing, by a restore agent, the blocks of data from the operational buffer of the hybrid container to the destination device.

3. The system of claim 1 , wherein the operations further comprise issuing reads to the target device during the next restore session, for only the leftover blocks of data according to the information in the one or more virtual containers.

4. The system of claim 1 , wherein the operations further comprise directing the target device not to send blocks of data that have been sent previously through the operational buffer to the destination device during the restore session, according to the information in the one or more virtual containers.

5. The system of claim 1 , wherein the operations further comprise discarding, in the next restore session, blocks of data received from the target device that have been sent previously through the operational buffer to the destination device during the restore session, according to the information in the one or more virtual containers.

6. The system of claim 1 , wherein the operations further comprise directing, in the next restore session, the hybrid container to bypass blocks of data previously sent through the operational buffer to the destination device during the restore session, according to the information in the one or more virtual containers.

7. The system of claim 1 , wherein the operations further comprise directing, in the next restore session, the hybrid container to request only the leftover blocks of data from the target device, according to the information in the one or more virtual containers.

8. A method for uninterrupted block-based restore using a virtual container, the method comprising:

sending blocks of data from a target device to a hybrid container, comprising an operational buffer and a virtual container unit, and from the hybrid container to a destination device, responsive to receiving a request for a restore session, wherein the blocks of data from the target device is routed through the operational buffer to the destination device instead of routed through the virtual container, wherein the virtual container only contains details for the blocks of data instead of the blocks of data themselves;

writing the details for the blocks of data into one or more virtual containers, in the virtual container unit, responsive to receiving the blocks of data by the hybrid container;

freezing state of the hybrid container and the one or more virtual containers, responsive to an abort of the restore session; and

resuming the sending the blocks of data from the target device to the hybrid container, responsive to a next restore session that resumes from where the aborted restore session stopped, with only leftover blocks of data routed to the destination device in accordance with contents of the one or more virtual containers.

9. The method of claim 8 , further comprising routing, by a restore agent, the blocks of data from the operational buffer of the hybrid container to the destination device.

10. The method of claim 8 , wherein the resuming the sending the blocks of data with only leftover blocks of data routed to the destination device comprises:

issuing reads, from the hybrid container to the target device, for only the leftover blocks of data according to the contents of the one or more virtual containers.

11. The method of claim 8 , wherein the resuming the sending the blocks of data with only leftover blocks of data routed to the destination device comprises:

directing, from the hybrid container, that the target device not send blocks of data that have been sent previously through the operational buffer to the destination device during the restore session, according to the contents of the one or more virtual containers.

12. The method of claim 8 , wherein the resuming the sending the blocks of data with only leftover blocks of data routed to the destination device comprises:

discarding, by the hybrid container, blocks of data received at the hybrid container from the target device that have been sent previously through the operational buffer to the destination device during the restore session, according to the contents of the one or more virtual containers.

13. The method of claim 8 , wherein the resuming the sending the blocks of data with only leftover blocks of data routed to the destination device comprises:

directing, by a restore agent, the hybrid container to bypass blocks of data previously sent through the operational buffer to the destination device during the restore session, according to the contents of the one or more virtual containers.

14. The method of claim 8 , wherein the resuming the sending the blocks of data with only leftover blocks of data routed to the destination device comprises:

directing, by a restore agent, the hybrid container to read only the leftover blocks of data from the target device, according to the contents of the one or more virtual containers.

15. A non-transitory computer-readable medium having instructions thereupon which, when executed by a processor, cause the processor to:

route blocks of data from a target device through a hybrid container, comprising an operational buffer and a virtual container unit, to a destination device, responsive to receiving a request for a first restore session, wherein the blocks of data from the target device is routed through the operational buffer to the destination device instead of routed through the virtual container, wherein the virtual container only details for the blocks of data instead of the blocks of data themselves;

write the details for the blocks of data into one or more virtual containers, in the virtual container unit, responsive to routing the blocks of data through the hybrid container;

freeze state of the hybrid container, including the one or more virtual containers, responsive to an abort of the first restore session; and

resume routing the blocks of data from the target device through the hybrid container to the destination device, responsive to a second restore session that resumes from where the aborted first restore session stopped, with only leftover blocks of data routed to the destination device in accordance with contents of the one or more virtual containers.

16. The computer-readable medium of claim 15 , wherein the instructions further cause the processor to:

request, from the hybrid container to the target device, only the leftover blocks of data according to the contents of the one or more virtual containers, during the second restore session.

17. The computer-readable medium of claim 15 , wherein the instructions further cause the processor to:

direct, from the hybrid container, during the second restore session, that the target device not send blocks of data that have been routed previously through the operational buffer to the destination device during the first restore session, according to the contents of the one or more virtual containers.

18. The computer-readable medium of claim 15 , wherein the instructions further cause the processor to:

discard, by the hybrid container during the second restore session, blocks of data received at the hybrid container from the target device that have been routed previously through the operational buffer to the destination device during the first restore session, according to the contents of the one or more virtual containers.

19. The computer-readable medium of claim 15 , wherein the instructions further cause the processor to:

direct, by a restore agent during the second restore session, the hybrid container to bypass blocks of data previously sent through the operational buffer to the destination device during the first restore session, according to the contents of the one or more virtual containers.

20. The computer-readable medium of claim 15 , wherein the instructions further cause the processor to:

direct, by a restore agent during the second restore session, the hybrid container to read only the leftover blocks of data from the target device, according to the contents of the one or more virtual containers.

Assignments (9)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2022
From: REDDY A V, MAHESH; BATTAL, CHETAN; AMBALJERI, MAHANTESH; SHANKAR D H, SWAROOP
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 061308/0108 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →