Synchronization of web service endpoints in a multi-master synchronization environment
First Claim
1. A method for data synchronization between a plurality of nodes communicatively coupled via one or more networks, comprising:
- transmitting a ping from an originating node to a different node independent from data to be synchronized;
subsequent to transmitting the ping and based on a determination obtained in response to the ping that one or more updates to knowledge maintained by the different node have occurred subsequent to a previous synchronization, transmitting knowledge to be synchronized from the originating node to the different node, the knowledge to be synchronized being transmitted subsequent to the ping and in a separate transmission from the ping, the knowledge including a label for each object in the knowledge to be synchronized and version information for each object in the knowledge to be synchronized;
receiving the knowledge maintained by the different node in response to the transmission of the knowledge from the originating node, the knowledge maintained by the different node including a label for each object in the knowledge maintained by the different node and version information for each object in the knowledge maintained by the different node, the knowledge maintained by the different node being received with one or more changes related to one or more objects in the knowledge maintained by the different node;
performing a comparison of a scope of the knowledge maintained by the originating node with a scope of the knowledge maintained by the different node; and
synchronizing the knowledge maintained by the originating node with the knowledge maintained by the different mode.
2 Assignments
0 Petitions
Accused Products
Abstract
A Web service synchronization protocol is provided that sets forth the metadata and messaging by which endpoints roam, share and synchronize common information with one another in a multi-master networked computing ecosystem. A general SOAP-based protocol is defined for synchronizing data between two endpoints where one or more of the endpoints supports a Web service. Defining messaging for knowledge-based transfers using XML Web services, the protocol allows devices, services and applications to synchronize through firewalls, allows for flexibility by allowing any common set or subset of information across endpoints and allows for extensibility by not prescribing the schema of the actual data being synchronized at the endpoints.
41 Citations
23 Claims
-
1. A method for data synchronization between a plurality of nodes communicatively coupled via one or more networks, comprising:
-
transmitting a ping from an originating node to a different node independent from data to be synchronized; subsequent to transmitting the ping and based on a determination obtained in response to the ping that one or more updates to knowledge maintained by the different node have occurred subsequent to a previous synchronization, transmitting knowledge to be synchronized from the originating node to the different node, the knowledge to be synchronized being transmitted subsequent to the ping and in a separate transmission from the ping, the knowledge including a label for each object in the knowledge to be synchronized and version information for each object in the knowledge to be synchronized; receiving the knowledge maintained by the different node in response to the transmission of the knowledge from the originating node, the knowledge maintained by the different node including a label for each object in the knowledge maintained by the different node and version information for each object in the knowledge maintained by the different node, the knowledge maintained by the different node being received with one or more changes related to one or more objects in the knowledge maintained by the different node; performing a comparison of a scope of the knowledge maintained by the originating node with a scope of the knowledge maintained by the different node; and synchronizing the knowledge maintained by the originating node with the knowledge maintained by the different mode. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system configured to synchronize data between a plurality of nodes communicatively coupled via one or more networks, comprising:
-
at least one processor; a transmitting component configured to transmit a request associated with synchronizing filtered knowledge maintained by an originating node with filtered knowledge maintained by a different node, wherein the filtered knowledge maintained by the originating node corresponds to a subset of knowledge maintained by the originating node, and wherein the filtered knowledge maintained by the different node corresponds to a subset of knowledge maintained by the different node, the transmitting component also being configured to transmit a ping from the originating node to a different node independent from data to be synchronized; a receiving component configured to receive the filtered knowledge maintained by the different node in response to the request; a synchronization component configured to synchronize the knowledge maintained by the originating node with the knowledge maintained by the different mode based on a comparison of a scope of the filtered knowledge maintained by the originating node with a scope of the filtered knowledge maintained by the different node by at least comparing versioning of one or more objects identified in the received knowledge from the different node with versioning of the one or more objects that are also identified from the knowledge of the originating node; and one or more storage media having stored computer-executable instructions which are executable by the at least one processor to implement a method that includes; transmitting the ping; subsequent to transmitting the ping and based on a determination obtained in response to the ping that one or more updates to the knowledge maintained by the different node have occurred subsequent to a previous synchronization, transmitting the knowledge to be synchronized from the originating node to the different node, the knowledge to be synchronized being transmitted subsequent to the ping and in a separate transmission from the ping; receiving the filtered knowledge maintained by the different node in response to the transmission of the filtered knowledge from the originating node, the filtered knowledge maintained by the different node including a label for each object in the filtered knowledge maintained by the different node and version information for each object in the filtered knowledge maintained by the different node, the filtered knowledge maintained by the different node being received with one or more changes related to one or more objects in the filtered knowledge maintained by the different node; performing the comparison of the scope of the filtered knowledge maintained by the originating node with the scope of the filtered knowledge maintained by the different node; and synchronizing the filtered knowledge maintained by the originating node with the filtered knowledge maintained by the different mode. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. One or more hardware storage device storing computer-readable instructions which are executable by one or more processor of a computing system for causing the one or more processor to execute the following acts:
-
transmitting a ping from an originating node to a different node independent from data to be synchronized; subsequent to transmitting the ping and based on a determination obtained in response to the ping that one or more updates to knowledge maintained by the different node have occurred subsequent to a previous synchronization, transmitting knowledge to be synchronized from the originating node to the different node, the knowledge to be synchronized being transmitted subsequent to the ping and in a separate transmission from the ping, the knowledge including a label for each object in the knowledge to be synchronized and version information for each object in the knowledge to be synchronized; receiving the knowledge maintained by the different node in response to the transmission of the knowledge from the originating node, the knowledge maintained h the different node including a label for each object in the knowledge maintained by the different node and version information for each object in the knowledge maintained by the different node, the knowledge maintained by the different node being received with one or more changes related to one or more objects in the knowledge maintained by the different node; performing a comparison of a scope of the knowledge maintained by the originating node with a scope of the knowledge maintained by the different node; and synchronizing the knowledge maintained by the originating node with the knowledge maintained by the different mode. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
Specification