Method and apparatus for the reliability of host data stored on fibre channel attached storage subsystems
First Claim
1. A method in a data processing system for providing end-to-end data integrity checks, the method comprising:
- performing a read/write operation, wherein the read/write operation comprises generating an initial checksum for data in the read/write operation and associating the initial checksum with the data, wherein the association exists through a plurality of layers of software and attached storage subsystems in the data processing system;
sending the initial checksum with the data in a read/write path;
responsive to receiving the initial checksum and data at a layer of software in the read/write path, performing an integrity check of the data, wherein the integrity check comprises generating a comparison checksum and determining whether the comparison checksum matches the initial checksum; and
if the initial and comparison checksums do not match, failing the read/write operation.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for improving the reliability of host data stored on Fibre Channel attached storage subsystems by performing end-to-end data integrity checks. When a read or write operation is initiated, an initial checksum for data in the read/write operation is generated and associated with the data, wherein the association exists through a plurality of layers of software and attached storage subsystems. The initial checksum is passed with the data in the read/write path. When a layer of software in the read/write path receives the initial checksum and data, the layer performs an integrity check of the data, which includes generating another checksum and comparing it to the initial checksum. If the checksums do not match, the read/write operation fails and the error is logged. If the checksums match, the integrity check is repeated through each layer in the read/write path to enable detecting data corruption at the point of source.
-
Citations
20 Claims
-
1. A method in a data processing system for providing end-to-end data integrity checks, the method comprising:
-
performing a read/write operation, wherein the read/write operation comprises generating an initial checksum for data in the read/write operation and associating the initial checksum with the data, wherein the association exists through a plurality of layers of software and attached storage subsystems in the data processing system;
sending the initial checksum with the data in a read/write path;
responsive to receiving the initial checksum and data at a layer of software in the read/write path, performing an integrity check of the data, wherein the integrity check comprises generating a comparison checksum and determining whether the comparison checksum matches the initial checksum; and
if the initial and comparison checksums do not match, failing the read/write operation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A data processing system for providing end-to-end data integrity checks, comprising:
-
a resource manager, wherein the resource manager initiates a read/write operation, wherein the read/write operation comprises generating an initial checksum for data in the read/write operation and associating the initial checksum with the data, wherein the association exists through a plurality of layers of software and attached storage subsystems in the data processing system, and wherein the resource manager sends the initial checksum with the data in a read/write path; and
layers of software and storage subsystems connected to the resource manager, wherein a layer in the read/write path receives the initial checksum and data and performs an integrity check of the data, wherein the integrity check comprises generating a comparison checksum and determining whether the comparison checksum matches the initial checksum, and wherein the layer fails the read/write operation if the initial and comparison checksums do not match. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer program product in a computer readable medium for providing end-to-end data integrity checks, comprising:
-
first instructions for performing a read/write operation, wherein the read/write operation comprises generating an initial checksum for data in the read/write operation and associating the initial checksum with the data, wherein the association exists through a plurality of layers of software and attached storage subsystems in the data processing system;
second instructions for sending the initial checksum with the data in a read/write path;
third instructions for performing an integrity check of the data in response to receiving the initial checksum and data at a layer of software in the read/write path, wherein the integrity check comprises generating a comparison checksum and determining whether the comparison checksum matches the initial checksum; and
fourth instructions for failing the read/write operation if the initial and comparison checksums do not match. - View Dependent Claims (18, 19, 20)
-
Specification