Peer to peer Synchronization system and method
First Claim
1. A method of enabling peer to peer synchronization between members of a synchronization network, the synchronization network being implemented in respect of a predefined synchronization reference area on each network member, the method comprising:
- detecting, on a first member of the synchronization network, a change to a data item within the predefined synchronization reference area;
determining a type of the change made to the data item;
determining a relative path within the predefined synchronization reference area to the data item associated with the change;
obtaining a current version value calculated based upon content of a current version of the data item on said first member of the synchronization network;
upon determining that a previous version of the data item exists on said first member of the synchronization network, obtaining a previous version value calculated based upon content associated with the previous version of the data item;
obtaining a current log number counter on said first member of the synchronization network, the current log counter being associated with an incremental count of logs that is updated with each change made to data items of the synchronization network on said first member of the synchronization network;
generating a log representing the change based upon;
a current log number on said first member of the synchronization network, the type of change, the relative path to the data item associated with the change, the current version value, and if a previous version of the data item exists, the previous version value,wherein said generating a log further comprises, in case that the change is associated with implementing on said first member of the synchronization network a different log received from another member of the synchronization network, including in the log representing the change on said first member of the synchronization network a member identifier of said other member of the synchronization network and the number of the different log on said other member of the synchronization network; and
forwarding the log to two or more members of the synchronization network, wherein said log enables two or more members of the synchronization network to synchronize the data item through local processing of the log from the first member on said two or more members of the synchronization network.
9 Assignments
0 Petitions
Accused Products
Abstract
A method and system for enabling peer to peer synchronization between members of a synchronized network. A predefined synchronization reference area on each member of the network is provided. A common identifier associated with the synchronization network is provided to each member. Changes are detected on a member regarding a data item. A network identifier associated is obtained. A unique identifier of a synchronization module is obtained. A relative path to the data item within the predefined synchronization reference area is obtained. A unique value is calculated based upon a content of a version of the data item that is associated with the change. A log number counter is incremented. A log representing the data item and the chance is created. The log includes data regarding the type of change, the network identifier, the unique identifier of the synchronization module, the relative path, the unique value, and the log number.
82 Citations
14 Claims
-
1. A method of enabling peer to peer synchronization between members of a synchronization network, the synchronization network being implemented in respect of a predefined synchronization reference area on each network member, the method comprising:
-
detecting, on a first member of the synchronization network, a change to a data item within the predefined synchronization reference area; determining a type of the change made to the data item; determining a relative path within the predefined synchronization reference area to the data item associated with the change; obtaining a current version value calculated based upon content of a current version of the data item on said first member of the synchronization network; upon determining that a previous version of the data item exists on said first member of the synchronization network, obtaining a previous version value calculated based upon content associated with the previous version of the data item; obtaining a current log number counter on said first member of the synchronization network, the current log counter being associated with an incremental count of logs that is updated with each change made to data items of the synchronization network on said first member of the synchronization network; generating a log representing the change based upon;
a current log number on said first member of the synchronization network, the type of change, the relative path to the data item associated with the change, the current version value, and if a previous version of the data item exists, the previous version value,wherein said generating a log further comprises, in case that the change is associated with implementing on said first member of the synchronization network a different log received from another member of the synchronization network, including in the log representing the change on said first member of the synchronization network a member identifier of said other member of the synchronization network and the number of the different log on said other member of the synchronization network; and forwarding the log to two or more members of the synchronization network, wherein said log enables two or more members of the synchronization network to synchronize the data item through local processing of the log from the first member on said two or more members of the synchronization network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A program storage device which performs a method of enabling peer to peer synchronization between members of a synchronization network, the synchronization network being implemented in respect of a predefined synchronization reference area on each network member, the device comprising:
-
one or more processors; and a machine readable medium comprises one or more sequences of instructions, which when executed by the one or more processors, cause; detecting on a first member of the synchronization network a change with respect to a data unit within the predefined synchronization reference area, the data unit is associated with a data item of the synchronization network; determining a relative path within the predefined synchronization reference area to the data unit associated with the change; determining a type of the change; obtaining a value calculated based upon a content of the current version of the data item on said first member of the synchronization network; if a previous version of the data item exists on said first member of the synchronization network, obtaining a value calculated based upon a content of a data unit that is associated with a previous version of the data item; obtaining a current log number for said first member of the synchronization network, the current log number is associated with an incremental count of logs that is updated in connection with a change occurring with respect to a data item of said synchronization network on said first member of the synchronization network; generating a log representing the change based upon;
a current log number on said first member of the synchronization network, said type of change, said relative path, said value corresponding to the content of a current version of the data item, and if a previous version of the data item exists, the value corresponding to the content of the previous version of the data item,wherein said generating a log further comprises, in case that the change is associated with implementing on said first member of the synchronization network a different log received from another member of the synchronization network, including in the log representing the change on said first member of the synchronization network a member identifier of said other member of the synchronization network and the number of the different log on said other member of the synchronization network; and forwarding the log to two or more members of the synchronization network.
-
-
14. A computer program product comprising a computer useable medium having computer readable program code embodied therein of enabling peer to peer synchronization between members of a synchronization network, the synchronization network is implemented in respect of a predefined synchronization reference area on each network member, the computer program product comprising:
-
computer readable program code for causing the computer to detect on a first member of the synchronization network a change with respect to a data unit within the predefined synchronization reference area, the data unit is associated with a data item of the synchronization network; computer readable program code for causing the computer to determine a relative path within the predefined synchronization reference area to the data unit associated with the change; computer readable program code for causing the computer to determine a type of the change; computer readable program code for causing the computer to obtain a value calculated based upon a content of the current version of the data item on said first member of the synchronization network; computer readable program code for causing the computer to obtain a value calculated based upon a content of a data unit that is associated with a previous version of the data item, if a previous version of the data item exists on said first member of the synchronization network; computer readable program code for causing the computer to obtain a current log number for said first member of the synchronization network, the current log number is associated with an incremental count of logs that is updated in connection with a change occurring with respect to a data item of said synchronization network on said first member of the synchronization network; computer readable program code for causing the computer to generate a log representing the change based upon;
a current log number on said first member of the synchronization network, said type of change, said relative path, said value corresponding to the content of a current version of the data item, and if a previous version of the data item exists, the value corresponding to the content of the previous version of the data itemwherein causing the computer to generate a log further comprises, in case that the change is associated with implementing on said first member of the synchronization network a different log received from another member of the synchronization network, including in the log representing the change on said first member of the synchronization network a member identifier of said other member of the synchronization network and the number of the different log on said other member of the synchronization network; and computer readable program code for causing the computer to forward the log to two or more members of the synchronization network.
-
Specification