Efficient object distribution
First Claim
Patent Images
1. A computer-implemented method comprising:
- applying a hashing function, at a first network device of a plurality of network devices of a peer-to-peer system, to each of a plurality of deployed data objects to produce corresponding fingerprints of the deployed data objects, wherein each of the deployed data objects is serialized into a corresponding alphanumeric string before applying the hashing function, and wherein a fingerprint of a deployed data object corresponds to a filename of the deployed data object;
generating a list of filenames of the deployed data objects that are currently deployed at the first network device, wherein each of the deployed data objects is stored in a data file at the first network device and is identified by the respective filename in the list, wherein the filenames are the fingerprints of the deployed data objects;
storing, in a data store associated with the first network device, the list of file names of the deployed data objects and a first master list of file names of data objects associated with the plurality of network devices;
sending, by the first network device, a request to a second network device of the plurality of network devices, the request comprising the list of filenames of the deployed data objects; and
receiving, by the first network device from the second network device in response to the request, a comparison result indicating a difference exists between the list of filenames of the deployed data objects and a second master list of filenames of data objects associated with the plurality of network devices and stored in a data store associated with the second network device, the filenames in the second master list being generated by the second network device using the same hashing function as that applied at the first network device and indicating the data objects to be deployed at the first network device, the comparison result comprising a data structure comprising a new object field for one or more data objects to be added to the first network device and a delete object field for one or more filenames of deployed data objects to be deleted from the first network device.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for distributing objects over a network. In one embodiment, the method comprises sending a request from a first network entity to a second network entity, the request including a compressed representation of deployed objects that are currently deployed at the first network entity. The method further comprises the first network entity receiving from the second network entity a difference between the deployed objects and objects to be deployed on the first network entity as indicated by the second network entity.
-
Citations
9 Claims
-
1. A computer-implemented method comprising:
-
applying a hashing function, at a first network device of a plurality of network devices of a peer-to-peer system, to each of a plurality of deployed data objects to produce corresponding fingerprints of the deployed data objects, wherein each of the deployed data objects is serialized into a corresponding alphanumeric string before applying the hashing function, and wherein a fingerprint of a deployed data object corresponds to a filename of the deployed data object; generating a list of filenames of the deployed data objects that are currently deployed at the first network device, wherein each of the deployed data objects is stored in a data file at the first network device and is identified by the respective filename in the list, wherein the filenames are the fingerprints of the deployed data objects; storing, in a data store associated with the first network device, the list of file names of the deployed data objects and a first master list of file names of data objects associated with the plurality of network devices; sending, by the first network device, a request to a second network device of the plurality of network devices, the request comprising the list of filenames of the deployed data objects; and receiving, by the first network device from the second network device in response to the request, a comparison result indicating a difference exists between the list of filenames of the deployed data objects and a second master list of filenames of data objects associated with the plurality of network devices and stored in a data store associated with the second network device, the filenames in the second master list being generated by the second network device using the same hashing function as that applied at the first network device and indicating the data objects to be deployed at the first network device, the comparison result comprising a data structure comprising a new object field for one or more data objects to be added to the first network device and a delete object field for one or more filenames of deployed data objects to be deleted from the first network device. - View Dependent Claims (2, 3)
-
-
4. A system comprising:
-
a first network device of a plurality of network devices of a peer-to-peer system to apply a hashing function to each of a plurality of deployed data objects to produce corresponding fingerprints of the deployed data objects, wherein each of the deployed data objects is serialized into a corresponding alphanumeric string before applying the hashing function, and wherein a fingerprint of a deployed data object corresponds to a filename of the deployed data object; the first network device to generate a list of filenames of the deployed data objects that are currently deployed at the first network device, wherein each of the deployed data objects is stored in a data file at the first network device and is identified by the respective filename in the list, wherein the filenames are the fingerprints of the deployed data objects; the first network device associated with a data store to store the list of file names of the deployed data objects and a first master list of file names of data objects associated with the plurality of network devices; the first network device to send a request to a second network device of the plurality of network devices, the request comprising the list of filenames of the deployed data objects; and the first network device to receive from the second network device in response to the request, a comparison result indicating a difference exists between the list of filenames of the deployed data objects and a second master list of filenames of data objects associated with the plurality of network devices and stored in a data store associated with the second network device, the filenames in the second master list being generated by the second network device using the same hashing function as that applied at the first network device and indicating the data objects to be deployed at the first network device, the comparison result comprising a data structure comprising a new object field for one or more data objects to be added to the first network device and a delete object field for one or more filenames of deployed data objects to be deleted from the first network device. - View Dependent Claims (5, 6)
-
-
7. A non-transitory computer readable storage medium comprising instructions that, when executed by a processing system, cause the processing system to perform operations comprising:
-
applying a hashing function, at a first network device of a plurality of network devices of a peer-to-peer system, to each of a plurality of deployed data objects to produce corresponding fingerprints of the deployed data objects, wherein each of the deployed data objects is serialized into a corresponding alphanumeric string before applying the hashing function, and wherein a fingerprint of a deployed data object corresponds to a filename of the deployed data object; generating a list of filenames of the deployed data objects that are currently deployed at the first network device, wherein each of the deployed data objects is stored in a data file at the first network device and is identified by the respective filename in the list, wherein the filenames are the fingerprints of the deployed data objects; storing, in a data store associated with the first network device, the list of file names of the deployed data objects and a first master list of file names of data objects associated with the plurality of network devices; sending, by the first network device, a request to a second network device of the plurality of network devices, the request comprising the list of filenames of the deployed data objects; and receiving, by the first network device from the second network device in response to the request, a comparison result indicating a difference exists between the list of filenames of the deployed data objects and a second master list of filenames of data objects associated with the plurality of network devices and stored in a data store associated with the second network device, the filenames in the second master list being generated by the second network device using the same hashing function as that applied at the first network device and indicating the data objects to be deployed at the first network device, the comparison result comprising a data structure comprising a new object field for one or more data objects to be added to the first network device and a delete object field for one or more filenames of deployed data objects to be deleted from the first network device. - View Dependent Claims (8, 9)
-
Specification