Apparatus, system, and method for validating that a correct data segment is read from a data storage device
First Claim
1. An apparatus to validate that a correct data segment is read from a storage device, the apparatus comprising:
- a read request receiver module that receives a read storage request from a requesting device, the storage request to read a data segment of a file or object stored on a data storage device, the storage request comprising one or more source parameters for the data segment, the source parameters comprising one or more virtual addresses that identify the data segment;
a hash generation module that generates one or more hash values from the one or more virtual addresses;
a read data module that reads the requested data segment and returns one or more data packets and corresponding stored hash values stored with the data packets, the stored hash values being generated from source parameters of a data segment written to the data storage device and containing data of the data packets; and
a hash check module that verifies that the one or more hash values generated by the hash generation module match the respective one or more stored hash values returned by the read data module, wherein the read request receiver module, the hash generation module, the read data module, and the hash check module comprise one or more of logic, hardware and executable code, the executable code stored on a non-transitory computer readable storage medium.
16 Assignments
0 Petitions
Accused Products
Abstract
An apparatus, system, and method are disclosed for validating that correct data is read from a storage device. A read request receiver module receives a read storage request to read a data segment of a file or object stored on a data storage device. The storage request includes one or more source parameters for the data segment. The source parameters include one or more virtual addresses that identify the data segment. A hash generation module generates one or more hash values from the virtual addresses. A read data module reads the requested data segment and returns one or more data packets and corresponding stored hash values stored with the data packets. The stored hash values were generated from a data segment written to the data storage device that contains data of the data packets. A hash check module verifies that the generated hash values match the respective stored hash values.
-
Citations
23 Claims
-
1. An apparatus to validate that a correct data segment is read from a storage device, the apparatus comprising:
-
a read request receiver module that receives a read storage request from a requesting device, the storage request to read a data segment of a file or object stored on a data storage device, the storage request comprising one or more source parameters for the data segment, the source parameters comprising one or more virtual addresses that identify the data segment; a hash generation module that generates one or more hash values from the one or more virtual addresses; a read data module that reads the requested data segment and returns one or more data packets and corresponding stored hash values stored with the data packets, the stored hash values being generated from source parameters of a data segment written to the data storage device and containing data of the data packets; and a hash check module that verifies that the one or more hash values generated by the hash generation module match the respective one or more stored hash values returned by the read data module, wherein the read request receiver module, the hash generation module, the read data module, and the hash check module comprise one or more of logic, hardware and executable code, the executable code stored on a non-transitory computer readable storage medium. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A system to validate that a correct data segment is read from a storage device, the system comprising:
-
a data storage device; a storage controller that controls data storage on the data storage device; a read request receiver module that receives a read storage request from a requesting device, the storage request to read a data segment of a file or object stored on the data storage device, the storage request comprising one or more source parameters for the data segment, the source parameters comprising one or more virtual addresses that identify the data segment; a hash generation module that generates one or more hash values from the one or more virtual addresses; a read data module that reads the requested data segment and returns one or more data packets and corresponding stored hash values stored with the data packets, the stored hash values being generated from source parameters of a data segment written to the data storage device and containing data of the data packets; and a hash check module that verifies that the one or more hash values generated by the hash generation module match the respective one or more stored hash values returned by the read data module, wherein the read request receiver module, the hash generation module, the read data module, and the hash check module comprise one or more of logic hardware and executable code, the executable code stored on a non-transitory computer readable storage medium. - View Dependent Claims (19, 20, 21, 22)
-
-
23. A computer program product comprising a non-transitory computer readable medium having computer usable program code executable to perform operations for validating that a correct data segment is read from a storage device, the operations of the computer program product comprising:
-
receiving a read storage request from a requesting device, the storage request to read a data segment of a file or object stored on a data storage device, the storage request comprising one or more source parameters for the data segment, the source parameters comprising one or more virtual addresses that identify the data segment; generating one or more hash values from the one or more virtual addresses; reading the requested data segment and returning one or more data packets and corresponding stored hash values stored with the data packets, the stored hash values being generated from source parameters of a data segment written to the data storage device and containing data of the data packets; and verifying that the one or more generated hash values match the respective one or more stored hash values returned in response to the read request.
-
Specification