IP Library › Granted Patent US 9,146,937
Granted Patent B2
US 9,146,937 · App. 13/530,718 · Granted Sep 29, 2015

Client-based data replication

Inventors: Matthew W. Benjamin (Ann Arbor, MI); Adam C. Emerson (Ann Arbor, MI); Peter Honeyman (Ann Arbor, MI)
Assignee: Cohort FS, LLC
G06F17/30212
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 9,146,937
App. No.
13/530,718
Granted
Sep 29, 2015
Kind
B2
Abstract

A client computing device having a processor and a memory receives, in response to a request, a replication layout from a replication controller. The client device initiates a data replication request at each of a plurality of data servers according to the replication layout. The client device receives, from each of the data servers, integrity information representing a state of a replication dataset at each of the servers. The client device transmits the integrity information to the replication controller.

Claims (35)

1. A method, comprising:

receiving, in a client computing device having a processor and a memory, in response to a request, a replication layout from a replication controller;

initiating, in the client device, a data replication request at each of a plurality of data servers according to the replication layout;

receiving, in the client device, from each of the data servers, integrity information representing a state of a replication dataset at each of the servers; and

transmitting, from the client device, the integrity information to the replication controller;

wherein the integrity information includes a replication integrity assertion that is a mathematical result computed at a specific data server (RDS) for the layout (L); and

the integrity assertion is included in an ordered pair (IA L , S(IA L )), where IA L , represents the state of the replication dataset at a data server providing the integrity assertion, and S(IA L )) is a signature from the data server providing the integrity assertion that includes an encrypted authentication code.

2. The method of claim 1 , further comprising, in the replication controller, evaluating the integrity information to determine whether the replication request was performed successfully.

3. The method of claim 1 , wherein IA L is a linear hash value composed from recursively computed hash values of each data object modified under the layout.

4. The method of claim 1 , wherein IA L is based on is a file hierarchical checksum of objects L root represented in the layout at the data server providing the integrity assertion.

5. The method of claim 1 , wherein each of the data servers becomes stateless with respect to replication upon transmitting the integrity information.

6. A system, comprising:

a computing device that includes a processor and a memory, the device configured to:

receive, in response to a request, a replication layout from a replication controller;

initiate a data replication request at each of a plurality of data servers according to the replication layout;

receive, from each of the data servers, integrity information representing a state of a replication dataset at each of the servers; and

transmit the integrity information to the replication controller;

wherein the integrity information includes a replication integrity assertion that is a mathematical result computed at a specific data server (RDS) for the layout (L); and

the integrity assertion is included in an ordered pair (IA L , S(IA L )), where IA L , represents the state of the replication dataset at a data server providing the integrity assertion, and S(IA L )) is a signature from the data server providing the integrity assertion that includes an encrypted authentication code.

7. The system of claim 6 , wherein the replication controller is configured to evaluate the integrity information to determine whether the replication request was performed successfully.

8. The system of claim 6 , wherein IA L is a linear hash value composed from recursively computed hash values of each data object modified under the layout.

9. The system of claim 6 , wherein IA L is based on is a file hierarchical checksum of objects L root represented in the layout at the data server providing the integrity assertion.

10. The system of claim 6 , wherein each of the data servers becomes stateless with respect to replication upon transmitting the integrity information.

11. A computer-readable medium tangibly embodying instructions executable by a computer processor, the instructions comprising instructions for:

receiving, in a client computing device having a processor and a memory, in response to a

request, a replication layout from a replication controller;

initiating, in the client device, a data replication request at each of a plurality of data servers according to the replication layout;

receiving, in the client device, from each of the data servers, integrity information representing a state of a replication dataset at each of the servers; and

transmitting, from the client device, the integrity information to the replication controller;

wherein the integrity information includes a replication integrity assertion that is a mathematical result computed at a specific data server (RDS) for the layout (L); and

the integrity assertion is included in an ordered pair (IA L , S(IA L )), where IA L , represents the state of the replication dataset at a data server providing the integrity assertion, and S(IA L )) is a signature from the data server providing the integrity assertion that includes an encrypted authentication code.

12. The medium of claim 11 , wherein the replication controller is configured to evaluate the integrity information to determine whether the replication request was performed successfully.

13. The medium of claim 11 , wherein IA L is a linear hash value composed from recursively computed hash values of each data object modified under the layout.

14. The medium of claim 11 , wherein IA L is based on is a file hierarchical checksum of objects L root represented in the layout at the data server providing the integrity assertion.

15. The medium of claim 11 , wherein each of the data servers becomes stateless with respect to replication upon transmitting the integrity information.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2015
From: COHORTFS LLC
To: RED HAT, INC.
Reel/Frame 036668/0824 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2012
From: BENJAMIN, MATTHEW W.; EMERSON, ADAM C.; HONEYMAN, PETER
To: COHORTFS, LLC
Reel/Frame 028427/0380 →
Continuity (2)
Provisional Application 61571230 · Jun 23, 2011
Related Publication 20120330892A1 · Dec 27, 2012