Collection synchronization using equality matched network names
First Claim
1. A computer-implemented method, comprising, at a local node of a content-centric network in which a collection of content objects are represented in a local manifest:
- receiving, by the local node, an advertisement corresponding to a remote manifest of a remote node of the content-centric network, the advertisement indicating a routable prefix of the remote manifest;
determining that the local node contains the local manifest indicating a same collection as the remote manifest, based on a routable prefix of the local manifest and the routable prefix of the remote manifest, wherein the local manifest represents a collection of content objects at the local node, includes corresponding hash values for the content objects, and further includes a root hash value which is an arithmetic sum of the hash values for the content objects, wherein each content object is a single piece of named data bound to a unique name that is location independent;
in response to determining that the root hash value of the local manifest is different from a root hash value of the remote manifest, sending a request for the remote manifest, wherein the request is an interest packet that includes a unique name of the remote manifest;
determining a set of content objects indicated in the remote manifest that are different from the content objects indicated in the local manifest; and
in response to transmitting a set of interests that includes the unique names for the different content objects, receiving the different content objects, which causes the local node to synchronize the collection represented by the local manifest with the collection represented by the remote manifest.
3 Assignments
0 Petitions
Accused Products
Abstract
One embodiment provides a system that facilitates synchronization collections of data between a local and a remote node by using exact match names. During operation, a local node receives an advertisement corresponding to a remote manifest at a remote node. A manifest represents a collection of content objects at a node. In some embodiments, a manifest corresponds to a root hash value that identifies the content objects of the collection. The local node determines that the local manifest and the remote manifest both indicate the same collection of content objects. The local node then determines if the content of the collections are different by comparing the root hash value of the local manifest with the root hash value of the remote manifest. Responsive to determining that the root hash values of the manifests are different, the local node retrieves the remote manifest by sending a request for the remote manifest. The local node determines which content objects identified in the remote manifest are different from the content objects identified in the local manifest. The local node transmits a set of interests for the content objects that are different and receives the requested set of content objects, thereby facilitating synchronization of content objects associated with the manifests at both the local and remote node.
384 Citations
25 Claims
-
1. A computer-implemented method, comprising, at a local node of a content-centric network in which a collection of content objects are represented in a local manifest:
-
receiving, by the local node, an advertisement corresponding to a remote manifest of a remote node of the content-centric network, the advertisement indicating a routable prefix of the remote manifest; determining that the local node contains the local manifest indicating a same collection as the remote manifest, based on a routable prefix of the local manifest and the routable prefix of the remote manifest, wherein the local manifest represents a collection of content objects at the local node, includes corresponding hash values for the content objects, and further includes a root hash value which is an arithmetic sum of the hash values for the content objects, wherein each content object is a single piece of named data bound to a unique name that is location independent; in response to determining that the root hash value of the local manifest is different from a root hash value of the remote manifest, sending a request for the remote manifest, wherein the request is an interest packet that includes a unique name of the remote manifest; determining a set of content objects indicated in the remote manifest that are different from the content objects indicated in the local manifest; and in response to transmitting a set of interests that includes the unique names for the different content objects, receiving the different content objects, which causes the local node to synchronize the collection represented by the local manifest with the collection represented by the remote manifest. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 25)
-
-
10. A computer-implemented method, comprising, at a local node of a content-centric network in which a collection of content objects are represented in a manifest:
-
transmitting, by the local node, an advertisement corresponding to the manifest, wherein the manifest represents the collection of content objects at the local node, the advertisement corresponds to an interest that indicates a root hash value of the manifest, and the root hash value is an arithmetic sum of the hash values for the content objects represented by the manifest, wherein each content object is a single piece of named data bound to a unique name that is location independent; transmitting the manifest to a remote node of the content-centric network in response to receiving a request for the manifest; receiving a request for a content object represented by the manifest, wherein the request is an interest packet that includes a unique name of the manifest; and transmitting the content object to the remote node. - View Dependent Claims (11, 12)
-
-
13. A non-transitory, computer-readable storage medium storing instructions that, when executed by a local node of a content-centric network in which a collection of content objects are represented in a local manifest, cause the local node to perform a method, the method comprising:
-
receiving an advertisement corresponding to a remote manifest of a remote node of the content-centric network, the advertisement indicating a routable prefix of the remote manifest; determining that the local node contains the local manifest indicating a same collection as the remote manifest, based on a routable prefix of the local manifest and the routable prefix of the remote manifest, wherein the local manifest represents a collection of content objects at the local node, includes corresponding hash values for the content objects, and further includes a root hash value which is an arithmetic sum of the hash values for the content objects, wherein each content object is a single piece of named data bound to a unique name that is location independent; in response to determining that the root hash value of the local manifest is different from a root hash value of the remote manifest, sending a request for the remote manifest, wherein the request is an interest packet that includes a unique name of the remote manifest; determining a set of content objects indicated in the remote manifest that are different from the content objects indicated in the local manifest; and in response to transmitting a set of interests that includes the unique names for the different content objects, receiving the different content objects, which causes the local node to synchronize the collection represented by the local manifest with the collection represented by the remote manifest. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A non-transitory, computer-readable storage medium storing instructions that, when executed by a local node of a content-centric network in which a collection of content objects are represented in a manifest, cause the local node to perform a method, the method comprising:
-
transmitting an advertisement corresponding to the manifest, wherein the manifest represents the collection of content objects at the computer, the advertisement corresponds to an interest that indicates a root hash value of the manifest, and the root hash value is an arithmetic sum of the hash values for the content objects represented by the manifest, wherein each content object is a single piece of named data bound to a unique name that is location independent; transmitting the manifest to a remote node of the content-centric network in response to receiving a request for the manifest; receiving a request for a content object represented by the manifest, wherein the request is an interest packet that includes a unique name of the manifest; and transmitting the content object to the remote node. - View Dependent Claims (23, 24)
-
Specification