Systems and methods for synchronizing multple copies of a database using datablase digest
First Claim
Patent Images
1. A method of synchronizing routing data with another node in a network, comprising:
- receiving routing data;
performing a function on at least a portion of the routing data to produce a first digest, where the first digest comprises substantially less data than the routing data;
receiving a second digest from the other node;
comparing the first and second digests to determine whether they are identical to produce first comparison results; and
exchanging a portion of the routing data based on the first comparison results.
4 Assignments
0 Petitions
Accused Products
Abstract
A system uses database digests to synchronize routing data in a network (100). The system includes a first node (110-1) and a second node (110-2). The first node (110-1) stores first routing data and the second node (110-2) stores second routing data. The second node (110-2) further performs a function on a portion of the second routing data, where the function produces a database digest that has substantially less data than the portion of the second routing data. The second node (110-2) also sends the database digest to the first node (110-1) to synchronize the second routing data with the first routing data.
-
Citations
41 Claims
-
1. A method of synchronizing routing data with another node in a network, comprising:
-
receiving routing data;
performing a function on at least a portion of the routing data to produce a first digest, where the first digest comprises substantially less data than the routing data;
receiving a second digest from the other node;
comparing the first and second digests to determine whether they are identical to produce first comparison results; and
exchanging a portion of the routing data based on the first comparison results. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A first node in a network, comprising:
-
a plurality of interfaces configured to;
receive routing data, and receive a first digest from a second node in the network; and
processing logic configured to;
perform a function on at least a portion of the routing data to produce a second digest, where the second digest comprises substantially less data than the routing data, compare the first and second digests to determine whether they are identical to produce first comparison results, where the plurality of interfaces are further configured to exchange a portion of the routing data based on the first comparison results.
-
-
9. A computer-readable medium containing instructions for controlling a processor to perform a method of synchronizing routing data with another node in a network, the method comprising:
-
receiving routing data;
performing a function on at least a portion of the routing data to produce a first digest, where the first digest comprises substantially less data than the routing data and where the function comprises at least one of a checksum or a hash;
receiving a second digest from the other node;
comparing the first and second digests to determine whether they are identical to produce first comparison results; and
exchanging one or more portions of the routing data based on the first comparison results.
-
-
10. A method for designating nodes as one of a master node or a slave node for synchronizing routing data in a network, comprising:
-
subdividing routing data stored at a first node into multiple portions;
counting the number of multiple portions to produce a first count;
receiving a first message from a second node at the first node, the first message comprising a second count associated with a number of subdivided portions of the second node'"'"'s routing data;
comparing the first count with the second count to produce first comparison results;
designating the second node as a slave node based on the first comparison results; and
sending a second message to the second node if the second node is designated as a slave node, where the second message comprises a digest associated with the routing data stored at the first node. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A first node in a network, comprising:
-
a memory;
an interface configured to;
receive routing data, store the routing data in the memory, and receive a first message from a second node, the first message comprising a first count associated with a number of subdivided portions of the second node'"'"'s routing data;
processing logic configured to;
subdivide routing data stored in the memory into multiple portions, count the number of multiple portions to produce a second count, compare the second count with the first count to produce first comparison results, designate the second node as a slave node based on the first comparison comparison results;
wherein the interface is further configured to;
send a second message to the second node if the second node is designated a slave node, wherein the second message comprises a digest associated with the routing data stored in the memory.
-
-
18. A method of using database digests to synchronize routing data between a first node and a second node in a network, comprising:
-
storing first routing data at the first node;
storing second routing data at the second node;
performing, at the first node, a function on a portion of the first routing data, where the function produces a database digest that has substantially less data than the portion of the first routing data; and
sending the database digest to the second node to synchronize the first routing data with the second routing data. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A system for using database digests to synchronize routing data in a network, comprising:
-
a first node configured to store first routing data;
a second node configured to;
store second routing data, perform a function on a portion of the second routing data, where the function produces a database digest that has substantially less data than the portion of the second routing data, and send the database digest to the first node to synchronize the second routing data with the first routing data.
-
-
25. A data structure encoded on a computer-readable medium, comprising:
-
first data comprising routing data;
second data comprising an identifier for a node in a network;
third data identifying a portion of the routing data; and
fourth data comprising a first digest of the portion of the routing data, where a function is used to produce the digest and where the digest comprises substantially less data than the portion of the routing data. - View Dependent Claims (26, 27)
-
-
28. A system for using database digests to synchronize routing data between a first node and a second node in a network, comprising:
-
means for storing first routing data at the first node;
means for storing second routing data at the second node;
means for performing, at the first node, a function on one or more portions of the first routing data, where the function produces a database digest that has substantially less data then a respective one of the one or more portions of the first routing data; and
means sending the database digest to the second node to synchronize the first routing data with the second routing data.
-
-
29. A method of synchronizing data with another node in a network, comprising:
-
performing a function on at least a portion of the data to produce a first digest, where the first digest comprises substantially less data than the at least a portion of the data;
receiving a second digest from the other node;
comparing the first and second digests to determine whether they are identical to produce first comparison results; and
exchanging a portion of the data based on the first comparison results. - View Dependent Claims (30, 31, 32, 33, 34, 35)
-
-
36. A method of using database digests to synchronize data between a first node and a second node in a network, comprising:
-
storing first data at the first node;
storing second data at the second node;
performing, at the first node, a function on a portion of the first data, where the function produces a database digest that has substantially less data than the portion of the first data; and
sending the database digest to the second node to synchronize the first data with the second data. - View Dependent Claims (37, 38, 39, 40, 41)
-
Specification