IP Library Granted Patent US 11,556,379
Granted Patent B2
US 11,556,379 · App. 17/148,415 · Granted Jan 17, 2023

Protect cloud objects from attacks

Inventors: Jagannathdas Rath (Bengaluru, IN); Kalyan C. Gunda (Bengaluru, IN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F9/4881G06F11/0757G06F11/0772G06F12/0253G06F2201/825
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,556,379
App. No.
17/148,415
Granted
Jan 17, 2023
Kind
B2
Abstract

A lock is applied automatically without any user involvement, to each of one or more data objects stored by the data processing system. Each of the one or more locks prevent deletion, by any user, of the one or more data objects within a predetermined time frame. A cloud garbage collector marks the one or more data objects for a) deletion, or b) for lock extension, the garbage collector scheduled to run periodically at a period that is less than the predetermined time frame. The deletion or the lock extension is executed for the one or more data objects, based on marks by the garbage collector. Other embodiments are described and claimed.

Claims (31)

1. A computer-implemented method, comprising:

applying a lock to each of one or more data objects stored by a networked computing device, each of the one or more locks preventing deletion, by any user, of the one or more data objects within a predetermined time frame;

marking, with a garbage collector, the one or more data objects for a) deletion, or b) for lock extension, the garbage collector scheduled to run periodically at a period that is less than the predetermined time frame; and

executing the deletion or the lock extension for the one or more data objects, based on marks by the garbage collector.

2. The method of claim 1 , wherein executing the deletion or the lock extension of the one or more data objects is performed with one or more independent background threads, separate from the garbage collector.

3. The method of claim 1 , wherein, in response to execution of a manual garbage collector, the lock extension is not performed, unless the manual garbage collector is executed in response to a failure of the garbage collector that is scheduled to run periodically where the one or more data objects expire before a next scheduled garbage collector run, or based on configuration of a lock extension setting.

4. The method of claim 1 , wherein the garbage collector that is scheduled to run periodically is locked to prevent cancellation.

5. The method of claim 4 , wherein if an input is received to modify the period of the garbage collector that is within an upper limit, then a first garbage collection run after the input is received is performed based on the period, and subsequent garbage collection runs are performed based on the modified period.

6. The method of claim 1 , wherein the predetermined time frame is greater than a sum of a) the period, and b) an estimated or calculated time to perform garbage collection of the one or more data objects.

7. The method of claim 1 , wherein the predetermined time frame is an expiration of each of the one or more locks that is common to all data objects stored, including new data objects that are created between adjacent garbage collector runs.

8. A non-transitory computer-readable medium storing instructions which, when executed by one or more processors of a networked computing device, cause the computing device to perform operations comprising:

applying a lock to each of one or more data objects stored by the networked computing device, each of the one or more locks preventing deletion, by any user, of the one or more data objects within a predetermined time frame;

marking, with a garbage collector, the one or more data objects for a) deletion, or b) for lock extension, the garbage collector scheduled to run periodically at a period that is less than the predetermined time frame; and

executing the deletion or the lock extension for the one or more data objects, based on marks by the garbage collector.

9. The non-transitory computer-readable medium of claim 8 , wherein executing the deletion or the lock extension of the one or more data objects is performed with one or more independent background threads, separate from the garbage collector.

10. The non-transitory computer-readable medium of claim 8 , wherein, in response to execution of a manual garbage collector, the lock extension is not performed, unless the manual garbage collector is executed in response to a failure of the garbage collector that is scheduled to run periodically where the one or more data objects expire before a next scheduled garbage collector run, or based on configuration of a lock extension setting.

11. The non-transitory computer-readable medium of claim 8 , wherein the garbage collector that is scheduled to run periodically is locked to prevent cancellation.

12. The non-transitory computer-readable medium of claim 11 , wherein if an input is received to modify the period of the garbage collector that is within an upper limit, then a first garbage collection run after the input is received is performed based on the period, and subsequent garbage collection runs are performed based on the modified period.

13. The non-transitory computer-readable medium of claim 8 , wherein the predetermined time frame is greater than a sum of a) the period, and b) an estimated or calculated time to perform garbage collection of the one or more data objects.

14. The non-transitory computer-readable medium of claim 8 , wherein the predetermined time frame is an expiration of each of the one or more locks that is common to all data objects stored, including new data objects that are created between adjacent garbage collector runs.

15. A data processing system, comprising:

computer-readable memory; and

a processor that executes instructions stored on the computer-readable memory, causing the data processing system to perform operations including:

applying a lock to each of one or more data objects stored by the data processing system, each of the one or more locks preventing deletion, by any user, of the one or more data objects within a predetermined time frame;

marking, with a garbage collector, the one or more data objects for a) deletion, or b) for lock extension, the garbage collector scheduled to run periodically at a period that is less than the predetermined time frame; and

executing the deletion or the lock extension for the one or more data objects, based on marks by the garbage collector.

16. The data processing system of claim 15 , wherein executing the deletion of the lock extension or the one or more data objects is performed with one or more independent background threads, separate from the garbage collector.

17. The data processing system of claim 15 , wherein, in response to execution of a manual garbage collector, the lock extension is not performed, unless the manual garbage collector is executed in response to a failure of the garbage collector that is scheduled to run periodically where the one or more data objects expire before a next scheduled garbage collector run, or based on configuration of a lock extension setting.

18. The data processing system of claim 15 , wherein the garbage collector that is scheduled to run periodically is locked to prevent cancellation.

19. The data processing system of claim 15 , wherein if an input is received to modify the period of the garbage collector that is within an upper limit, then a first garbage collection run after the input is received is performed based on the period, and subsequent garbage collection runs are performed based on the modified period.

20. The data processing system of claim 15 , wherein the predetermined time frame is greater than a sum of a) the period, and b) an estimated or calculated time to perform garbage collection of the one or more data objects.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0342) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0460 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0051) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0663 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056136/0752) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0771 →
RELEASE OF SECURITY INTEREST AT REEL 055408 FRAME 0697 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0553 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056136/0752 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0051 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0342 →
SECURITY AGREEMENT Recorded Feb 25, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 055408/0697 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2021
From: RATH, JAGANNATHDAS; GUNDA, KALYAN C.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 054911/0351 →
Continuity (1)
Related Publication 20220222074A1 · Jul 14, 2022
Cited By (1)
US 12,248,585