Hive-based peer-to-peer network
First Claim
1. A process comprising:
- (a) identifying nodes on a network that have copies of desired content;
(b) requesting a first plurality of the nodes to respectively send pieces of the desired content to a requesting node;
(c) requesting that a second plurality of the nodes return remotely-calculated hash values for a portion of the desired content;
(d) calculating a local hash value from the portion as received at the requesting node; and
(e) comparing the local hash value and the remotely calculated hash values to determine whether the portion as received at the requesting node is valid.
1 Assignment
0 Petitions
Accused Products
Abstract
A collaborative data transferring process can combine segments from all known servers and peer-to-peer (P2P) sources simultaneously, regardless of their native protocols. The process uses variable data block size that can be dynamically selected according to sizes provided by sources, e.g., according to the protocol of the source, and can generate hash values or validation codes on the fly so that compliance with validation techniques (if any) of other protocols is not required. The process may be classified as a P2P protocol, although it also contains centralized elements. Machine language implementations and low syntax overhead allow file exchanges over a homogeneous network with high throughput and low bandwidth consumption.
-
Citations
25 Claims
-
1. A process comprising:
-
(a) identifying nodes on a network that have copies of desired content; (b) requesting a first plurality of the nodes to respectively send pieces of the desired content to a requesting node; (c) requesting that a second plurality of the nodes return remotely-calculated hash values for a portion of the desired content; (d) calculating a local hash value from the portion as received at the requesting node; and (e) comparing the local hash value and the remotely calculated hash values to determine whether the portion as received at the requesting node is valid. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A process comprising:
-
(a) identifying nodes on a network that have copies of desired content; (b) requesting that a first of the nodes send a first piece of the desired content to a requesting node, the first piece having a first size; (c) requesting that a second of the nodes send a second piece of the desired content to the requesting node, the second piece having a second size that differs from the first size; (d) requesting that a plurality of the nodes return first remotely-calculated hash values for the first piece of the desired content; (e) calculating a first local hash value from the first piece as received at the requesting node; (f) comparing the first local hash value and the first remotely calculated hash values to determine whether the first piece as received at the requesting node is valid. (g) requesting that a plurality of the nodes return second remotely-calculated hash values for the second piece of the desired content; (h) calculating a second local hash value from the second piece as received at the requesting node; and (i) comparing the second local hash value and the second remotely calculated hash values to determine whether the second piece as received at the requesting node is valid. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A process comprising:
-
(a) sending a peer list from a hive node to a requesting node; (b) identifying at the requesting node peers that are to be included in a swarm for content to be transferred, wherein identifying includes the requesting node requesting from peers on the peer list information that identifies peers to be included in the swarm; (c) transferring pieces of the content to the requesting node respectively from peers in the swarm; (d) removing one of the peers from the swarm in response to the requesting node detecting a condition associated with the peer during the transferring of pieces; and (e) sending information from the requesting node for updating of the peer list at the hive node according to the peers that are in the swarm after the transferring of the content to the requesting node. - View Dependent Claims (20, 21, 22, 23, 24, 25)
-
Specification