IP Library Granted Patent US 11,106,831
Granted Patent B2
US 11,106,831 · App. 15/954,794 · Granted Aug 31, 2021

Method and device for managing storage system

Inventors: Lester Zhang (Beijing, CN); Chen Gong (Beijing, CN); Leon Zhang (Beijing, CN); Geng Han (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F21/78G06F12/0238G06F21/6227G09C1/00H04L9/0877G06F2212/1052G06F2212/402
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,106,831
App. No.
15/954,794
Granted
Aug 31, 2021
Kind
B2
Abstract

Implementations of the present disclosure relate to method and device for managing a storage system. The method comprises in response to receiving a write request at a storage system, determining whether storage units allocated to a logic storage unit of the storage system are sufficient for data associated with the write request. The method also comprises in response to determining that the allocated storage units are insufficient, allocating a new storage unit to the logic storage unit. The method further comprises updating metadata associated with allocation of the storage units of the storage system, the metadata indicating a mapping between the logic storage unit and the storage units. The method also comprises encrypting the updated metadata. Other implementations of the present disclosure also involve corresponding method, device and computer-readable medium for decryption metadata and recovering the logic storage unit using the decrypted metadata.

Claims (52)

1. A method of managing a storage system, comprising:

in response to receiving a write request at the storage system, determining whether storage units allocated to a logic storage unit of the storage system are sufficient for data associated with the write request, the storage system being used for allocating a plurality of storage units to a logic storage unit and providing the logic storage unit to a user, the plurality of storage units derived from a physical layer that provides storage units for allocation to a support layer, the storage system including at least one other layer above the support layer for providing the logic storage unit to the user;

in response to determining that the allocated storage units are insufficient, allocating a new storage unit to the logic storage unit;

updating metadata associated with allocation of the storage units of the storage system, the metadata indicating a mapping between the logic storage unit and the storage units; and

encrypting only a portion of the updated metadata, the portion associated with allocations of storage units from the physical layer to the support layer but excluding metadata in any layer above the support layer, wherein the support layer includes a sparse volume and a layer above the support layer includes a file system, and wherein the method further comprises selectively accessing data of the logic storage unit based on decrypting the encrypted portion of metadata and recovering therefrom a mapping between the logic storage unit and the plurality of allocated storage units,

wherein encrypting the updated metadata comprises encrypting the updated metadata by using information associated with a hardware component of the storage system as an encryption key.

2. The method of claim 1 , wherein the information associated with the hardware component includes

an identifier of a mainboard of the storage system.

3. The method of claim 1 , wherein the metadata indicates at least one of: a storage unit map entry, a storage unit mark, file system information, and a storage unit allocation table.

4. The method of claim 1 , further comprising:

in response to a request for initializing the logic storage unit, initiating mounting of the plurality of storage units allocated to the logic storage unit;

reading the metadata associated with allocation of the storage units of the storage system;

decrypting the encrypted portion of the read metadata; and

recovering the logic storage unit using the decrypted metadata.

5. The method of claim 4 , wherein decrypting the read metadata comprises:

decrypting the read metadata by using the information associated with the hardware component of the storage system as a decryption key.

6. The method of claim 4 , wherein the metadata comprises a plurality of data items, and recovering the logic storage unit using the decrypted metadata comprises:

in response to determining at least one of the plurality of data items being incorrect, selecting a correct data item from the plurality of data items based on a voting mechanism.

7. The method of claim 4 , wherein the metadata is selected from at least one of: a storage unit map entry, a storage unit mark, file system information, and a storage unit allocation table.

8. The method of claim 1 , wherein the file system includes file system mapping metadata for providing the logic storage unit to the user, and wherein encrypting only the portion of the updated metadata excludes the file system mapping metadata.

9. The method of claim 8 , wherein the at least one other layer above the support layer further includes a logic storage unit mapping layer that includes metadata for providing the logic storage unit to the user, and wherein encrypting only the portion of the updated metadata excludes metadata in the logic storage unit mapping layer.

10. The method of claim 8 , wherein encrypting the portion of the updated metadata includes encrypting a slice map entry (SME) that describes mapping relationships among logic units in the physical layer.

11. The method of claim 1 , wherein encrypting the portion of the updated metadata obscures user data without requiring encryption of the user data.

12. An electronic device, comprising:

at least one processor; and

a memory coupled to the at least one processor, the memory comprising instructions stored thereon, which, when executed on the at least one processor, cause the device to perform acts comprising:

in response to receiving a write request at the storage system, determining whether storage units allocated to a logic storage unit of the storage system are sufficient for data associated with the write request, the storage system being used for allocating a plurality of storage units to a logic storage unit and providing the logic storage unit to a user, the plurality of storage units derived from a physical layer that provides storage units for allocation to a support layer, the storage system including at least one other layer above the support layer for providing the logic storage unit to the user;

in response to determining that the allocated storage units are insufficient, allocating a new storage unit to the logic storage unit;

updating metadata associated with allocation of the storage units of the storage system, the metadata indicating a mapping between the logic storage unit and the storage units; and

encrypting only a portion of the updated metadata, the portion associated with allocations of storage units from the physical layer to the support layer but excluding metadata in any layer above the support layer,

wherein the support layer includes a sparse volume and a layer above the support layer includes a file system, and wherein the acts further comprise selectively accessing data of the logic storage unit based on decrypting the encrypted portion of metadata and recovering therefrom a mapping between the logic storage unit and the plurality of allocated storage units, and

wherein encrypting the updated metadata comprises encrypting the updated metadata by using information associated with a hardware component of the storage system as an encryption key.

13. The device of claim 12 , wherein the information associated with the hardware component includes

an identifier of a mainboard of the storage system.

14. The device of claim 12 , wherein the metadata indicates at least one of:

a storage unit map entry, a storage unit mark, file system information, and a storage unit allocation table.

15. A computer program product including a set of non-transitory, computer-readable media having instructions which, when executed by control circuitry of a computerized apparatus, cause the computerized apparatus to perform a method of managing a storage system, the method comprising:

in response to receiving a write request at the storage system, determining whether storage units allocated to a logic storage unit of the storage system are sufficient for data associated with the write request, the storage system being used for allocating a plurality of storage units to a logic storage unit and providing the logic storage unit to a user, the plurality of storage units derived from a physical layer that provides storage units for allocation to a support layer, the storage system including at least one other layer above the support layer for providing the logic storage unit to the user;

in response to determining that the allocated storage units are insufficient, allocating a new storage unit to the logic storage unit;

updating metadata associated with allocation of the storage units of the storage system, the metadata indicating a mapping between the logic storage unit and the storage units; and

encrypting only a portion of the updated metadata, the portion associated with allocations of storage units from the physical layer to the support layer but excluding metadata in any layer above the support layer, wherein the support layer includes a sparse volume and a layer above the support layer includes a file system, and wherein the method further comprises selectively accessing data of the logic storage unit based on decrypting the encrypted portion of metadata and recovering therefrom a mapping between the logic storage unit and the plurality of allocated storage units,

wherein encrypting the updated metadata comprises encrypting the updated metadata by using information associated with a hardware component of the storage system as an encryption key.

16. The computer program product of claim 15 , wherein the information associated with the hardware component includes an identifier of a mainboard of the storage system.

17. The computer program product of claim 15 , wherein the metadata indicates at least one of: a storage unit map entry, a storage unit mark, file system information, and a storage unit allocation table.

18. The computer program product of claim 15 , wherein the method further comprises:

in response to a request for initializing the logic storage unit, initiating mounting of the plurality of storage units allocated to the logic storage unit;

reading the metadata associated with allocation of the storage units of the storage system;

decrypting the encrypted portion of the read metadata; and

recovering the logic storage unit using the decrypted metadata.

19. The computer program product of claim 18 , wherein decrypting the read metadata comprises decrypting the read metadata by using the information associated with the hardware component of the storage system as a decryption key.

20. The computer program product of claim 18 , wherein the metadata comprises a plurality of data items, and recovering the logic storage unit using the decrypted metadata comprises:

in response to determining at least one of the plurality of data items being incorrect, selecting a correct data item from the plurality of data items based on a voting mechanism.

Assignments (8)
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 (046366/0014) Recorded May 20, 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 060450/0306 →
RELEASE OF SECURITY INTEREST AT REEL 046286 FRAME 0653 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0093 →
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 21, 2019
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 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Jun 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046286/0653 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jun 1, 2018
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 046366/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2018
From: ZHANG, LESTER; GONG, CHEN; ZHANG, LEON; HAN, GENG
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 045595/0711 →
Priority Claims (1)
CN 201710250201.0 · Apr 17, 2017 · national
Continuity (1)
Related Publication 20180300508A1 · Oct 18, 2018