IP Library › Granted Patent US 8,806,159
Granted Patent B2
US 8,806,159 · App. 13/083,381 · Granted Aug 12, 2014

Data storage resource management systems and methods

Inventor: Kirubakaran Kaliannan (Beaverton, OR)
Assignee: Symantec Corporation
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 8,806,159
App. No.
13/083,381
Filed
Apr 8, 2011
Granted
Aug 12, 2014
Kind
B2
Art Unit
2186
USPC
711/162
Abstract

Storage systems and methods are presented. In one embodiment, a data storage resource management method comprises: performing a data update process, including communicating a data update input output packet between a primary storage resource and a secondary storage resource, wherein corresponding data updates in the secondary storage resource are a mirror of data updates in the primary storage resource; and performing a reclamation process, including: communicating reclamation information in a reclamation input output packet through the same interface as the data update input output packet, wherein the reclamation input output packet is communicated between the primary storage resource and the secondary storage resource; and reclaiming storage locations on the secondary storage resource in accordance with reclamation information in the reclamation input output packet communicated between the primary storage resource and secondary storage resource.

Claims (45)

1. A data storage resource management method comprising:

performing a data update process, including communicating a data update input output packet between a primary storage resource and a secondary storage resource, wherein corresponding data updates in the secondary storage resource are a mirror of data updates in the primary storage resource; and

performing a reclamation process, including:

reclaiming a storage location at the primary storage resource;

generating reclamation information indicating that the storage location has been reclaimed;

storing the reclamation information in a buffer at the primary storage resource;

generating a reclamation input output packet at the primary storage resource based on the reclamation information stored in the buffer that indicates the storage location that has been reclaimed, the reclamation input output packet being separate from the storage location, the data update input output packet, and the buffer;

communicating the reclamation input output packet through the same interface as the data update input output packet, wherein the reclamation input output packet is communicated between the primary storage resource and the secondary storage resource; and

reclaiming storage locations on the secondary storage resource in accordance with reclamation information in the reclamation input output packet communicated between the primary storage resource and the secondary storage resource.

2. The data storage resource management method of claim 1 , wherein the reclaiming of the storage locations on the secondary storage resource is performed in the same order as reclamation on the primary storage resource with respect to the data updates on the primary storage resource and the corresponding data updates on the secondary storage resource.

3. The data storage resource management method of claim 2 , wherein the reclamation input output packet includes a reclamation indication flag and reclaim specific meta data.

4. The data storage resource management method of claim 1 , wherein reclamation on the secondary resource is performed online with a running application unaltered with respect to the reclamation on the secondary side.

5. The data storage resource management method of claim 1 , wherein the reclamation input output packet is logged in a staging component in the order it is received and is temporarily stored in the buffer.

6. The data storage resource management method of claim 1 , wherein the reclamation input output packet includes a packet header, an input output header, and a payload that indicates a storage location offset to begin reclamation and an indication of the amount of storage locations to be reclaimed.

7. The data storage resource management method of claim 1 , wherein the secondary resource decodes the reclamation information in the reclamation packet.

8. A reprogrammable tangible computer readable storage medium having stored thereon computer executable instructions that, when executed by a computer system, cause the computer system to perform a method comprising:

performing a data update process, including communicating a data update input output packet between a primary storage resource and a secondary storage resource, wherein corresponding data updates in the secondary storage resource are a mirror of data updates in the primary storage resource; and

performing a reclamation process, including:

reclaiming a storage location at the primary storage resource;

generating reclamation information indicating that the storage location has been reclaimed;

storing the reclamation information in a buffer at the primary storage resource;

generating a reclamation input output packet at the primary storage resource based on the reclamation information stored in the buffer that indicates the storage location that has been reclaimed, the reclamation input output packet being separate from the storage location, the data update input output packet, and the buffer;

communicating the reclamation input output packet through the same interface as the data update input output packet, wherein the reclamation input output packet is communicated between the primary storage resource and the secondary storage resource; and

reclaiming storage locations on the secondary storage resource in accordance with reclamation information in the reclamation input output packet communicated between the primary storage resource and the secondary storage resource.

9. The reprogrammable tangible computer readable storage medium of claim 8 , wherein the reclaiming of the storage locations on the secondary storage resource is performed in the same order as reclamation on the primary storage resource with respect to the data updates on the primary storage resource and the corresponding data updates on the secondary storage resource.

10. The reprogrammable tangible computer readable storage medium of claim 8 , wherein the reclamation input output packet includes a reclamation indication flag and reclaim specific meta data.

11. The reprogrammable tangible computer readable storage medium of claim 8 , wherein reclamation on the secondary resource is performed online with a running application unaltered with respect to the reclamation on the secondary side.

12. The reprogrammable tangible computer readable storage medium of claim 8 , wherein the reclamation input output packet is logged in a staging component in the order it is received and is temporarily stored in the buffer.

13. The reprogrammable tangible computer readable storage medium of claim 8 , wherein the reclamation input output packet includes a packet header, an input output header, and a payload that indicates a storage location offset to begin reclamation and an indication of the amount of storage locations to be reclaimed.

14. The reprogrammable tangible computer readable storage medium of claim 8 , wherein the secondary resource decodes the reclamation information in the reclamation packet.

15. A computer system comprising:

a processor coupled to a computer readable storage media and executing computer readable code which causes the computer system to perform operations including:

performing a data update process, including communicating a data update input output packet between a primary storage resource and a secondary storage resource, wherein corresponding data updates in the secondary storage resource are a mirror of data updates in the primary storage resource; and

performing a reclamation process, including:

reclaiming a storage location at the primary storage resource;

generating reclamation information indicating that the storage location has been reclaimed;

storing the reclamation information in a buffer at the primary storage resource;

generating a reclamation input output packet at the primary storage resource based on the reclamation information stored in the buffer that indicates the storage location that has been reclaimed, the reclamation input output packet being separate from the storage location, the data update input output packet, and the buffer;

communicating the reclamation input output packet through the same interface as the data update input output packet, wherein the reclamation input output packet is communicated between the primary storage resource and the secondary storage resource; and

reclaiming storage locations on the secondary storage resource in accordance with reclamation information in the reclamation input output packet communicated between the primary storage resource and the secondary storage resource.

16. The computer system of claim 15 , wherein the reclaiming of the storage locations on the secondary storage resource is performed in the same order as reclamation on the primary storage resource with respect to the data updates on the primary storage resource and the corresponding data updates on the secondary storage resource.

17. The computer system method of claim 15 , wherein the reclamation input output packet includes a reclamation indication flag and reclaim specific meta data.

18. The computer system of claim 15 , wherein reclamation on the secondary resource is performed online with a running application unaltered with respect to the reclamation on the secondary side.

19. The computer system of claim 15 , wherein the reclamation input output packet is logged in a staging component in the order it is received and is temporarily stored in the buffer.

20. The computer system of claim 15 , wherein the secondary resource decodes the reclamation information in the reclamation packet.

Assignments (13)
AMENDMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Apr 8, 2025
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 070779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 070335/0013 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 8, 2011
From: KALIANNAN, KIRUBAKARAN
To: SYMANTEC CORPORATION
Reel/Frame 026099/0494 →
Continuity (1)
Related Publication 20120260050A1 · Oct 11, 2012