IP Library Granted Patent US 7,571,344
Granted Patent B2
US 7,571,344 · App. 11/357,657 · Granted Aug 4, 2009

Ensuring data integrity in network memory

Assignee: Silver Peak Systems, Inc.
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 7,571,344
App. No.
11/357,657
Granted
Aug 4, 2009
Kind
B2
Abstract

A first appliance for ensuring data integrity in network memory is disclosed. The first appliance includes a processor and a communications interface that communicates over a communication network with a second appliance of the network memory. The processor determines whether reconciliation between a first peer state information in the first appliance and a second peer state information in the second appliance is needed. The first peer state information and the second peer state information track the status of data in the network memory. The processor determines an action to reconcile the first peer state information with the second peer state information based on a positive determination that the reconciliation is needed. The processor then performs the action to reconcile the first peer state information with the second peer state information.

Claims (34)

1. A method for ensuring data integrity in network memory, the method comprising:

determining whether reconciliation between a first peer state information in a first appliance and a second peer state information in a second appliance is needed, the first peer state information and the second peer state information tracking the status of data in the network memory;

determining an action to reconcile the first peer state information with the second peer state information based on a positive determination that the reconciliation is needed; and

performing the action to reconcile the first peer state information with the second peer state information.

2. The method of claim 1 wherein the first peer state information and the second peer state information comprise the status of the data in the network memory locally accessible to the first appliance and the status of the data in the network memory locally accessible to the second appliance.

3. The method of claim 1 determining whether reconciliation between the first peer state information and the second peer state information is needed comprises discovery of the first peer state information and discovery of the second peer state information.

4. The method of claim 1 wherein determining whether reconciliation between the first peer state information and the second peer state information is needed comprises determining whether reconciliation is needed based on time.

5. The method of claim 1 wherein determining whether reconciliation between the first peer state information and the second peer state information is needed comprises determining whether reconciliation is needed based on an error condition when obtaining the data from the network memory.

6. The method of claim 5 further comprising generating and transmitting an error message between the first appliance and the second appliance based on the error condition.

7. The method of claim 1 wherein performing the action to reconcile the first peer state information with the second peer state information comprises exchanging the first peer state information in the first appliance with the second peer state information in the second appliance.

8. The method of claim 7 wherein performing the action further comprises updating the status of the data in the first peer state information with the status of the data in the second peer state information.

9. The method of claim 1 wherein performing the action comprises transmitting a range of addresses of the network memory in the first peer state information and in the second peer state information between the first appliance and the second appliance.

10. A first appliance for ensuring data integrity in network memory, the first appliance comprising:

a communications interface configured to communicate over a communication network with a second appliance of the network memory; and

a processor configured to determine whether reconciliation between a first peer state information in the first appliance and a second peer state information in the second appliance is needed, the first peer state information and the second peer state information tracking the status of data in the network memory, determine an action to reconcile the first peer state information with the second peer state information based on a positive determination that the reconciliation is needed, and perform the action to reconcile the first peer state information with the second peer state information.

11. The first appliance of claim 10 wherein the first peer state information and the second peer state information comprise the status of the data in the network memory locally accessible to the first appliance and the status of the data in the network memory locally accessible to the second appliance.

12. The first appliance of claim 10 wherein the processor is configured to determine whether reconciliation is needed based on discovery of the first peer state information and discovery of the second peer state information.

13. The first appliance of claim 10 wherein the processor is configured to determine whether reconciliation is needed based on time.

14. The first appliance of claim 10 wherein the processor is configured to determine whether reconciliation is needed based on an error condition when obtaining the data from the network memory.

15. The first appliance of claim 14 wherein the processor is further configured to generate and transmit an error message over the communication network between the first appliance and the second appliance based on the error condition.

16. The first appliance of claim 10 wherein the processor is further configured to exchange the first peer state information in the first appliance with the second peer state information in the second appliance.

17. The first appliance of claim 16 wherein the processor is further configured to update the status of the data in the first peer state information with the status of the data in the second peer state information.

18. The first appliance of claim 10 wherein the processor is further configured to transmit a range of addresses of the network memory in the first peer state information and in the second peer state information over the communication network between the first appliance and the second appliance.

19. A software product for ensuring data integrity in network memory, the software product comprising:

software operational when executed by a processor to direct the processor to determining whether reconciliation between a first peer state information in a first appliance and a second peer state information in a second appliance is needed, the first peer state information and the second peer state information tracking the status of data in the network memory, determine an action to reconcile the first peer state information with the second peer state information based on a positive determination that the reconciliation is needed, and perform the action to reconcile the first peer state information with the second peer state information; and

a software storage medium operational to store the software.

20. The software product of claim 19 wherein the first peer state information and the second peer state information comprise the status of the data in the network memory locally accessible to the first appliance and the status of the data in the network memory locally accessible to the second appliance.

21. The software product of claim 19 wherein the software is operational when executed by the processor to direct the processor to determine whether reconciliation is needed based on discovery of the first peer state information and discovery of the second peer state information.

22. The software product of claim 19 wherein the software is operational when executed by the processor to direct the processor to determine whether reconciliation is needed based on time.

23. The software product of claim 19 wherein the software is operational when executed by the processor to direct the processor to determine whether reconciliation is needed based on an error condition when obtaining the data from the network memory.

24. The software product of claim 23 wherein the software is operational when executed by the processor to further direct the processor to generate and transmit an error message between the first appliance and the second appliance based on the error condition.

25. The software product of claim 19 wherein the software is operational when executed by the processor to further direct the processor to exchange the first peer state information in the first appliance with the second peer state information in the second appliance.

26. The software product of claim 25 wherein the software is operational when executed by the processor to further direct the processor to update the status of the data in the first peer state information with the status of the data in the second peer state information.

27. The software product of claim 19 wherein the software is operational when executed by the processor to further direct the processor to transmit a range of addresses of the network memory in the first peer state information and in the second peer state information between the first appliance and the second appliance.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2022
From: SILVER PEAK SYSTEMS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 059669/0892 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2022
From: SILVER PEAK SYSTEMS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 058943/0296 →
RELEASE OF SECURITY INTEREST Recorded Sep 22, 2020
From: GOLUB CAPITAL LLC
To: SILVER PEAK SYSTEMS, INC.
Reel/Frame 053852/0231 →
SECURITY INTEREST Recorded Apr 16, 2019
From: SILVER PEAK SYSTEMS, INC.
To: GOLUB CAPITAL LLC, AS AGENT
Reel/Frame 048921/0455 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2006
From: HUGHES, DAVID ANTHONY; BURNS, JOHN; YIN, ZHIGANG
To: SILVER PEAK SYSTEMS, INC.
Reel/Frame 017579/0198 →
Continuity (2)
Continuation In Part 1120269700 · Aug 12, 2005
Related Publication 20070038816A1 · Feb 15, 2007