IP Library Granted Patent US 7,353,432
Granted Patent B1
US 7,353,432 · App. 10/723,204 · Granted Apr 1, 2008

Maintaining high data integrity

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,353,432
App. No.
10/723,204
Granted
Apr 1, 2008
Kind
B1
Abstract

A protection domain for a set of errors is defined using an association between data and first integrity metadata to protect data traversing an input/output datapath. The datapath has a storage device as one endpoint and a first generation integrity point for a host as an opposite endpoint. A first sub-domain is defined within the protection domain using an association between the data and second integrity metadata to further protect a portion of the datapath having a second generation integrity point as one endpoint. In another aspect, a second sub-domain is defined within the protection domain using an association between the data and third integrity metadata further protect data traversing a portion of the datapath having a third generation integrity point as one endpoint. The first and second sub-domains are nested within the protection boundary and may be in a hierarchical relationship.

Claims (79)

1. A computerized method comprising:

defining a protection domain for a set of errors using an association between data and a first integrity metadata, the protection domain to protect data traversing an input/output (I/O) datapath having a storage device and a first generation integrity point for a host as opposite endpoints;

defining a first sub-domain nested within the protection domain using an association between the data and a second integrity metadata, the first sub-domain to further protect data traversing a portion of the datapath having a second generation integrity point as an endpoint;

defining a second sub-domain nested within the protection domain using an association between the data and a third integrity metadata, the second sub-domain to further protect data traversing a portion of the datapath having a third generation integrity point as an endpoint; and

wherein the first and second sub-domains are nested in the protection domain as a hierarchy.

2. The computerized method of claim 1 , wherein the third integrity metadata is operable to detect a subset of the set of data errors.

3. The computerized method of claim 1 , wherein the first integrity metadata is operable to detect a first subset of the set of data errors.

4. The computerized method of claim 3 , wherein the second integrity metadata is operable to detect a second subset of the set of data errors.

5. The computerized method of claim 4 , wherein the first and second subsets together are operable to detect the set of data errors.

6. The computerized method of claim 1 , wherein the portion of the datapath protected by the first sub-domain has one of the storage device and host as an opposite endpoint.

7. The computerized method of claim 1 , wherein the set of data errors comprises bit corruption, misdirected I/O, and phantom I/O.

8. The computerized method of claim 1 further comprising:

detecting a data error within the protection domain using at least one of the first and second integrity metadata; and

identifying a portion of the I/O data path as a potential source of the data error.

9. The computerized method of claim 8 , wherein detecting a data error comprises:

validating the data at one of the first and second integrity points.

10. The computerized method of claim 8 further comprising:

retrying a data transfer at the potential source of the data error.

11. The computerized method of claim 10 wherein retrying comprises:

resuming the data transfer using a replica.

12. The computerized method of claim 8 further comprising:

retrying a data transfer at an integrity point prior to the potential source of the data error.

13. The computerized method of claim 1 , wherein a replication point is co-located with at least one of the first and second generation integrity points.

14. The computerized method of claim 1 further comprising:

establishing the first generation integrity point for the host; and

establishing the second generation integrity point for an intermediary component in the datapath.

15. An article of manufacture comprising:

a computer readable storage medium having computer readable instructions embodied therein to cause a processor to execute a method comprising:

defining a protection domain for a set of errors using an association between data and a first integrity metadata, the protection domain to protect data traversing an input/output (I/O) datapath having a storage device and a first generation integrity point for a host as opposite endpoints;

defining a first sub-domain nested within the protection domain using an association between the data and a second integrity metadata, the first sub-domain to further protect data traversing a portion of the datapath having a second generation integrity point as an endpoint;

defining a second sub-domain nested within the protection domain using an association between the data and a third integrity metadata, the second sub-domain to further protect data traversing a position of the datapath having a third generation integrity point as an endpoint; and

wherein the first and second sub-domains are nested in the protection domain as a hierarchy.

16. The article of manufacture of claim 15 , wherein the third integrity metadata is operable to detect a subset of the set of data errors.

17. The article of manufacture of claim 15 , wherein the first integrity metadata is operable to detect a first subset of the set of data errors.

18. The article of manufacture of claim 17 , wherein the second integrity metadata is operable to detect a second subset of the set of data errors.

19. The article of manufacture of claim 18 , wherein the first and second subsets together are operable to detect the set of data errors.

20. The article of manufacture of claim 15 , wherein the portion of the datapath protected by the first sub-domain has one of the storage device and host as an opposite endpoint.

21. The article of manufacture of claim 15 , wherein the set of data errors comprises bit corruption, misdirected I/O, and phantom I/O.

22. The article of manufacture of claim 15 , wherein the method further comprises:

detecting a data error within the protection domain using at least one of the first and second integrity metadata; and

identifying a portion of the I/O data path as a potential source of the data error.

23. The article of manufacture of claim 22 , wherein detecting a data error comprises:

validating the data at one of the first and second integrity points.

24. The article of manufacture of claim 22 , wherein the method further comprises:

retrying a data transfer at the potential source of the data error.

25. The article of manufacture of claim 24 wherein retrying comprises:

resuming the data transfer using a replica.

26. The article of manufacture of claim 22 , wherein the method further comprises:

retrying a data transfer at an integrity point prior to the potential source of the data error.

27. The article of manufacture of claim 15 , wherein a replication point is co-located with at least one of the first and second generation integrity points.

28. The article of manufacture of claim 15 , wherein the method further comprises:

establishing the first generation integrity point for the host; and

establishing the second generation integrity point for an intermediary component in the datapath.

29. An apparatus comprising:

means for defining a protection domain for a set of errors using an association between data and a first integrity metadata, the protection domain to protect data traversing an input/output (I/O) datapath having a storage device and a first generation integrity point for a host as opposite endpoints;

means for defining a first sub-domain nested within the protection domain using an association between the data and a second integrity metadata, the first sub-domain to further protect data traversing a portion of the datapath having a second generation integrity point as an endpoint;

means for defining a second sub-domain nested within the protection domain using an association between the data and a third integrity metadata, the second sub-domain to further protect data traversing a portion of the datapath having a third generation integrity point as an endpoint;

wherein the first and second sub-domains are nested in the protection domain as a hierarchy; and

wherein the third integrity metadata is operable to detect a subset of the set of data errors.

30. The apparatus of claim 29 , wherein the first integrity metadata is operable to detect a first subset of the set of data errors.

31. The apparatus of claim 30 , wherein the second integrity metadata is operable to detect a second subset of the set of data errors.

32. The apparatus of claim 31 , wherein the first and second subsets together are operable to detect the set of data errors.

33. The apparatus of claim 29 , wherein the portion of the datapath protected by the first sub-domain has one of the storage device and host as an opposite endpoint.

34. The apparatus of claim 29 , wherein the set of data errors comprises bit corruption, misdirected I/O, and phantom I/O.

35. The apparatus of claim 29 further comprising:

means for detecting a data error within the protection domain using at least one of the first and second integrity metadata; and

means for identifying a portion of the I/O data path as a potential source of the data error.

36. The apparatus of claim 35 , wherein the means for detecting a data error comprises:

means for validating the data at one of the first and second integrity points.

37. The apparatus of claim 35 further comprising:

means for retrying a data transfer at the potential source of the data error.

38. The apparatus of claim 37 wherein the means for retrying comprises:

means for resuming the data transfer using a replica.

39. The apparatus of claim 35 further comprising:

means for retrying a data transfer at an integrity point prior to the potential source of the data error.

40. The apparatus of claim 29 , wherein a replication point is co-located with at least one of the first and second generation integrity points.

41. The apparatus of claim 29 further comprising:

means for establishing the first generation integrity point for the host; and

means for establishing the second generation integrity point for an intermediary component in the datapath.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037303/0025 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 25, 2003
From: TALAGALA, NISHA D.; WONG, BRIAN
To: SUN MICROSYSTEMS, INC.
Reel/Frame 014762/0891 →