Patent DE-102011012444-A1 (DE)
Title: Synchronizing volume of data memorized on various hosts that are not connected with one another by wireless ad-hoc-network, comprises combining several nodes into superordinate node and calculating node hash value from hash values of nodes
Inventor: ANGERMANN MICHAEL DR
IPC: G06F17/30
Filed: 2011-02-25
Abstract: The method of synchronizing volume of data that is memorized on various hosts, which are not connected with one another by a wireless ad-hoc-network, comprises combining several nodes into a superordinate node, calculating a node hash value from hash values of the nodes, which were combined into a superordinate node, combining several superordinate nodes into a root node, and calculating a root node hash value from the node hash values of the nodes, which are combined into the root node. A hash tree is formed from the data elements in the data of each host. The method of synchronizing volume of data that is memorized on various hosts, which are not connected with one another by a wireless ad-hoc-network, comprises combining several nodes into a superordinate node, calculating a node hash value from hash values of the nodes, which were combined into a superordinate node, combining several superordinate nodes into a root node, and calculating a root node hash value from the node hash values of the nodes, which are combined into the root node. A hash tree is formed from the data elements in the data of each host by calculating the hash value for each data element of the data bases on different hosts, merging multiple data elements to the node and calculating a node hash value of a top level of the hash-tree such as the root node hash value from the hash values of the data elements, which belong to the node. The data elements between the different hosts to be exchanged for synchronization are determined by transmitting the root node hash value of the data set of a first host (A) to a second host (B), comparing the root node hash value of the second host received from the first host with the node hash value of the top level of the hash-tree, terminating the synchronization process if the root node hash values of the first and second hosts are identical, and continuing the synchronization process if the root node hash values of the first and second hosts are not same. The transmitting step comprises transmitting the second highest level of the hash tree from the second host to the first host or vice versa. The method further comprises: continuing the synchronization process for all data elements or nodes, whose hash values in the first and second host are not identical, by transmitting the data elements of the first host to the second host or vice versa if the non-identical hash values in the first and second hosts belong to the data elements so that the synchronization process is finished or by transmitting the hash values of the nodes that are combined to form the identified nodes, whose hash values in the first and second host are not identical, from the first host to the second host or vice versa; comparing the hash values received by the first and/or second host with the appropriate hash values of the first and/or second host in its own volume of data; and continuing the synchronization process for all data elements or nodes, whose hash values in the first and second host are not-identical, where the nodes of one plane of the hash tree are summarized to a parent node or root node. The hash tree for the data set of each host is created in a unique manner, and a change in the data elements in the database is updated by recalculation or by the alteration of the volume of data concerned superordinate hash value. One message per plane of the hash tree is precisely exchanged for the determination of the data elements exchanged between the hosts for synchronization. The synchronized data elements and/or hash values are transferred between the hosts. The data elements exchanged between two hosts for synchronization are determined as given in the specification. The hash values are bit by bit transferred between the hosts. The data elements that are altered themselves in the same period under the same node are summarized.