Method for data synchronization in web-based communications management system
First Claim
1. A method for data synchronization, comprising:
- generating a tree data structure containing data requiring synchronization between a web server and a client and a number of change flags that each correspond to a separate leaf node of the tree data structure and each indicating whether a revision has been made to leaf node data stored in the leaf node;
setting each of the number of change flags to a true value, if the corresponding leaf node data is revised;
transmitting the tree data structure, except the number of change flags, to the client, when an initial connection is requested by the client;
generating a number of first checksums, each for the leaf node data stored in a separate one of the number of leaf nodes stored by the web server;
comparing each of the number of first checksums to a corresponding one of a number of second checksums contained in a request datagram communicated to the web server by the client;
for each of the number of leaf nodes whose first checksum did not match its corresponding second checksum during the comparison, transmitting the leaf node data associated with the first checksum and a first event number, associated with the leaf node data, to the client in a response datagram;
inspecting the value of each of the number of the change flags occasionally; and
for each of the number of change flags set to the true value, transmitting the corresponding leaf node data in an event datagram to the client.
3 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is a method for data synchronization in a web-based transmission device management system, in which managing data requiring synchronization between a web server and a client is constructed as a tree data structure, and a change flag for judging a data change is easily set. The web server increases a second event number by a certain degree whenever an event datagram is transmitted to the client, and the client judges whether or not the event datagram is lost by comparing the second event number and a first event number stored by the client whenever an event datagram is transmitted from the web server. If the event datagram is not lost, the client increases the first event number by a certain degree and performs data synchronization using the received event datagram. However, if the event datagram is lost, the client transmits every checksum of the leaf nodes in its tree data structure in one request datagram to the web server, and performs data synchronization by receiving changed data from the web server. Therefore, a loss of data is recognized promptly and precisely, and change of data on the web server also can be recognized promptly.
-
Citations
24 Claims
-
1. A method for data synchronization, comprising:
-
generating a tree data structure containing data requiring synchronization between a web server and a client and a number of change flags that each correspond to a separate leaf node of the tree data structure and each indicating whether a revision has been made to leaf node data stored in the leaf node;
setting each of the number of change flags to a true value, if the corresponding leaf node data is revised;
transmitting the tree data structure, except the number of change flags, to the client, when an initial connection is requested by the client;
generating a number of first checksums, each for the leaf node data stored in a separate one of the number of leaf nodes stored by the web server;
comparing each of the number of first checksums to a corresponding one of a number of second checksums contained in a request datagram communicated to the web server by the client;
for each of the number of leaf nodes whose first checksum did not match its corresponding second checksum during the comparison, transmitting the leaf node data associated with the first checksum and a first event number, associated with the leaf node data, to the client in a response datagram;
inspecting the value of each of the number of the change flags occasionally; and
for each of the number of change flags set to the true value, transmitting the corresponding leaf node data in an event datagram to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for data synchronization, comprising:
-
receiving a tree data structure requiring synchronization between a web server and a client by connecting to the web server;
generating a checksum of leaf node data in each of a number of leaf nodes in the received tree data structure and initializing a first event number for judging a loss of data;
comparing the first event number to a second event number included in an event datagram, when the event datagram is transmitted from the web server;
increasing the first event number by a certain degree, updating the leaf node data of a first set of leaf nodes of the number of leaf nodes in the tree data structure using data included in the event datagram, and regenerating the checksums of the updated first set of leaf nodes, if the first event number and the second event number are the same;
transmitting the checksums of every leaf node of the number of leaf nodes in the tree data structure in one request datagram to the web server, if the first event number and the second event number are different from each other; and
updating the leaf node data of a second set of leaf nodes of the number of leaf nodes in the tree data structure using the data included in a response datagram, updating the first event number, and regenerating the checksums of the updated second set leaf nodes, when the response datagram is transmitted from the web server. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A method for data synchronization, comprising:
-
generating a first tree data structure requiring synchronization between a web server and a client in a web-based communication device management system and transmitting the first tree data structure to the client as a second tree data structure when the client initially connects to the web server;
inspecting a change flag of each leaf node of a number of leaf nodes in the first tree data structure periodically to detect whether a change of leaf node data has occurred within any leaf node;
transmitting the leaf node data of every leaf node in the first tree data structure, having a change of leaf node data, in an event datagram at each period to the client;
inspecting whether or not an event is lost by comparing a first event number of the client to a second event number included in the event datagram, when the event datagram is received by the client;
transmitting a request datagram comprising a second checksum for each leaf node of the number of leaf nodes of the second tree data structure to the web server, if the event is lost;
generating a first checksum of each leaf node of the number of leaf nodes in the first tree data structure, and judging whether a change has occurred to the first tree data structure by comparing the corresponding first checksum and second checksum of each leaf node in the first and second tree data structures, respectively, when the request datagram is transmitted to the web server;
transmitting a response datagram comprising both the leaf node data of each of the number of leaf nodes in the first tree data structure having an associated first checksum that differs from the corresponding second checksum and the second event number to the client, if at least one first checksum and its corresponding second checksum differ;
updating the leaf node data of each of the number of leaf nodes in the second tree data structure having an associated first checksum that differs from the corresponding second checksum using the corresponding leaf node data of the first tree data structure in the response datagram; and
updating the leaf node data of each of the number of leaf nodes in the second tree data structure having a corresponding first tree data structure leaf node in the event datagram, if the event is not lost. - View Dependent Claims (14, 16)
-
-
15. The method according of 13, wherein the second event number is increased by a certain degree whenever the event datagram is transmitted, and the first event number is increased by the certain degree only when the event datagram is received without any loss.
-
17. A method for data synchronization, comprising:
-
for each of a number of communication devices, generating a server leaf node within a server tree data structure comprising management data of the respective communication device and a change flag;
communicating the server tree data structure to a client of a client server system as a client tree data structure, wherein each server leaf node has a corresponding client leaf node within the client tree structure;
setting the change flag of the corresponding server leaf node when the management data of one of the number of communication devices is revised; and
resetting the change flag of the corresponding server leaf node when the revised management data is communicated by the server to the client. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification