In network computing, it is common to discover and catalog software or hardware services that one node on a network might offer to other nodes on the network, such as file conversion services, data streaming services, database services, printing services and the like. These services ordinarily must be synchronized across the nodes, so as to ensure that each node has a catalog of services that is the same as all other nodes on the network.
In one example, each node tracks local changes by incrementing a counter. The node determines that synchronization with another node is necessary if the local counter does not match a counter at the other node.