IP Library Granted Patent US 10,884,633
Granted Patent B2
US 10,884,633 · App. 14/994,512 · Granted Jan 5, 2021

System and method for optimized signature comparisons and data replication

Inventors: George A. Klarakis (Chestnut Hill, MA); Yan Xiao (Acton, MA); Thomas G. Olson (Sturbridge, MA)
Assignee: Hewlett Packard Enterprise Development LP
G06F3/0619G06F3/065G06F3/067G06F3/0665G06F11/1453G06F11/1464H04L12/2854G06F11/1451G06F2201/815G06F2201/83G06F2201/84
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 10,884,633
App. No.
14/994,512
Granted
Jan 5, 2021
Kind
B2
Abstract

Systems, methods, and computer-readable storage media for inter-node data replication while reducing network traffic for remote backup. A system receives a command to duplicate a dataset, located on a source network node, to a remote network node, accesses, on the source network node, signatures of a previous snapshot of the dataset and signatures of a current snapshot of the dataset, performs, at the source network node, a local signature comparison between the previous snapshot and the current snapshot to identify one or more signatures that do not match, sends the signatures that do not match to the remote network node, searches, on the remote network node, for the signatures that do not match, and sends data associated with the signatures that do not match to the remote network node for incorporation within a current remote snapshot if they do not exist on a current remote network node.

Claims (40)

1. A system comprising a source network node and a remote network node, the source network node having a processor and a memory storing instructions which, when executed by the processor, cause the processor to:

receive a command to duplicate a dataset located on the source network node to the remote network node, the dataset comprising signatures of data and metadata in a tree structured file system, wherein the data and metadata are stored as objects in an object store, each object having a content-derived signature;

in response to receipt of the command, access, on the source network node, signatures of the data and the metadata of the dataset in a previously stored snapshot of the dataset and the signatures of the data and the metadata of the dataset in a current snapshot of the dataset, wherein the signatures of the data and the metadata of the dataset in the previously stored snapshot are in a tree structured file system, and wherein the previously stored snapshot corresponds to a remote snapshot of the dataset previously stored at the remote network node;

perform, at the source network node, a local signature comparison between the previously stored snapshot and the current snapshot to identify one or more signatures that do not match between the previously stored snapshot and the current snapshot, wherein the local signature comparison is an iterative top-down comparison beginning at the root of a tree of the tree structured file system, and wherein the signatures that do not match have at least one of different content or different placement in the tree;

send the signatures that do not match to the remote network node;

receive, from the remote network node, a response of whether the signatures that do not match exist at the remote network node; and

based on a determination that the signatures that do not match do not exist at the remote network node, send data associated with the signatures that do not match to the remote network node for incorporation within a current remote snapshot.

2. The system of claim 1 , wherein the source network node and the remote network node communicate across a wide area network (WAN).

3. The system of claim 2 , wherein the signatures that do not match are sent asynchronously across the WAN.

4. The system of claim 2 , wherein the signatures that do not match are batched prior to sending across the WAN.

5. The system of claim 4 , wherein the batched signatures include signatures from different sibling nodes of the tree.

6. A method for generating a remote backup copy on a remote network node of a dataset located on a source network node, the method comprising:

receiving a command to duplicate the dataset located on the source network node to the remote network node, the dataset comprising signatures of data and metadata in a tree structured file system, wherein the data and metadata are stored as objects in an object store, each object having a content-derived signature;

in response to receipt of the command, accessing, on the source network node, signatures of the data and the metadata of the dataset in a previously stored snapshot of the dataset and the signatures of the data and the metadata of the dataset in a current snapshot of the dataset, wherein the signatures of the data and the metadata of the dataset in the previously stored snapshot are in a tree structured file system, and wherein the previously stored snapshot corresponds to a remote snapshot of the dataset previously stored at the remote network node;

performing, at the source network node, a local signature comparison between the previously stored snapshot and the current snapshot to identify one or more signatures that do not match between the previously stored snapshot and the current snapshot, wherein the local signature comparison is an iterative top-down comparison beginning at the root of a tree of the tree structured file system, and wherein the signatures that do not match have at least one of different content or different placement in the tree;

sending the signatures that do not match to the remote network node;

receiving, from the remote network node, a response of whether the signatures that do not match exist at the remote network node; and

based on a determination that the signatures that do not match do not exist at the remote network node, sending data associated with the signatures that do not match to the remote network node for incorporation within a current remote snapshot.

7. The method of claim 6 , wherein the source network node and the remote network node communicate across a wide area network (WAN).

8. The method of claim 7 , wherein the signatures that do not match are sent asynchronously across the WAN.

9. The method of claim 7 , further comprising:

batching the signatures that do not match prior to sending across the WAN.

10. The method of claim 9 , wherein the batched signatures include signatures from different sibling nodes of the tree.

11. A non-transitory computer-readable storage medium having stored therein instructions which, when executed by a processor, cause the processor to:

receive a command to duplicate a dataset located on a source network node to a remote network node, the dataset comprising signatures of data and metadata in a tree structured file system, wherein the data and metadata are stored as objects in an object store, each object having a content-derived signature;

in response to receipt of the command, access, on the source network node, signatures of the data and the metadata of the dataset in a previously stored snapshot of the dataset and the signatures of the data and the metadata of the dataset in a current snapshot of the dataset, wherein the signatures of the data and the metadata of the dataset in the previously stored snapshot are in a tree structured file system, and wherein the previously stored snapshot corresponds to a remote snapshot of the dataset previously stored at the remote network node;

perform, at the source network node, a local signature comparison between the previously stored snapshot and the current snapshot to identify one or more signatures that do not match between the previously stored snapshot and the current snapshot, wherein the local signature comparison is an iterative top-down comparison beginning at the root of a tree of the tree structured file system, and wherein the signatures that do not match have at least one of different content or different placement in the tree;

send the signatures that do not match to the remote network node;

receive, from the remote network node, a response of whether the signatures that do not match exist at the remote network node; and

based on a determination that the signatures that do not match do not exist at the remote network node, send data associated with the signatures that do not match to the remote network node for incorporation within a current remote snapshot.

12. The non-transitory computer-readable storage medium of claim 11 , wherein the source network node and the remote network node communicate across a wide area network (WAN).

13. The non-transitory computer-readable storage medium of claim 12 , wherein the signatures that do not match are sent asynchronously across the WAN.

14. The non-transitory computer-readable storage medium of claim 12 , storing additional instructions which, when executed by the processor, cause the processor to perform operations comprising:

batching the signatures that do not match prior to sending across the WAN.

15. The non-transitory computer-readable storage medium of claim 14 , wherein the batched signatures include signatures from different sibling nodes of the tree.

16. The system of claim 1 , wherein remote network node is to, based on receipt of the signatures that do not match from the source network node, perform a search for the signatures that do not match and send the response of whether the signatures that do not match exist at the remote network node to the source network node.

17. The system of claim 1 , wherein each of the content-derived signatures of the objects comprises a cryptographic digest of an entire content of an object.

18. The method of claim 6 , wherein each of the content-derived signatures of the objects comprises a cryptographic digest of an entire content of an object.

19. The method of claim 6 , wherein remote network node is to, based on receipt of the signatures that do not match from the source network node, perform a search for the signatures that do not match and send the response of whether the signatures that do not match exist at the remote network node to the source network node.

20. The non-transitory computer-readable storage medium of claim 11 , wherein each of the content-derived signatures of the objects comprises a cryptographic digest of an entire content of an object.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2017
From: SIMPLIVITY CORPORATION
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 042565/0608 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2016
From: KLARAKIS, GEORGE A.; XIAO, YAN; OLSON, THOMAS G.
To: SIMPLIVITY CORPORATION
Reel/Frame 037533/0222 →
Continuity (2)
Provisional Application 62102808 · Jan 13, 2015
Related Publication 20160202927A1 · Jul 14, 2016
Cited By (2)
US 12,645,663 US 12,687,979