Method and system for scalable content storage and delivery
First Claim
1. In a peer-to-peer communication system having a local tracker node communicating with a set of local peers to form a local torrent, a method comprising the steps of:
- storing, by the local tracker node, collaboration information related to a list of files, the collaboration information including, for each respective file in the list of files, a first list of local peers actively participating in the local torrent and a second list of dormant peers, wherein each dormant peer is currently participating in a second torrent, previously participated in the local torrent, is not currently participating in the local torrent, and stores the respective file, the files including an unavailable file which is unavailable from the local peers actively participating and is stored at a dormant peer;
receiving from a local peer a first request for a file;
determining whether the file requested is available from local peers actively participating listed on the first list;
selecting the dormant peer from the second list, when it is determined that the file requested is unavailable from local peers actively participating listed on the first list;
sending to the dormant peer selected from the second list a second request for the file requested;
enabling the establishment of a communication between the local peer and the dormant peer selected from the second list, if the dormant peer accepts the second request; and
if the dormant peer selected from the second list denies the second request;
providing to the requesting local peer the information needed for the requesting local peer to negotiate directly with the dormant peer in the second torrent, such that the requesting local peer offers additional files to the dormant peer.
1 Assignment
0 Petitions
Accused Products
Abstract
A peer-to-peer communication system in which a peer communicating with a tracker node on a local torrent can locate and download files that are not currently available from other peers communicating on the local torrent. To enable this, the tracker node maintains collaboration information for a list of files. The collaboration information includes, for each file, a list of locations at which a full copy of the file may be located. The list of locations may include active peers, dormant peers and remote tracker nodes. The collaboration information may be obtained from each peer when it joins a local torrent. Upon joining the torrent, the peer may provide the local tracker node with a list of files that it is willing to serve.
35 Citations
12 Claims
-
1. In a peer-to-peer communication system having a local tracker node communicating with a set of local peers to form a local torrent, a method comprising the steps of:
-
storing, by the local tracker node, collaboration information related to a list of files, the collaboration information including, for each respective file in the list of files, a first list of local peers actively participating in the local torrent and a second list of dormant peers, wherein each dormant peer is currently participating in a second torrent, previously participated in the local torrent, is not currently participating in the local torrent, and stores the respective file, the files including an unavailable file which is unavailable from the local peers actively participating and is stored at a dormant peer; receiving from a local peer a first request for a file; determining whether the file requested is available from local peers actively participating listed on the first list; selecting the dormant peer from the second list, when it is determined that the file requested is unavailable from local peers actively participating listed on the first list; sending to the dormant peer selected from the second list a second request for the file requested; enabling the establishment of a communication between the local peer and the dormant peer selected from the second list, if the dormant peer accepts the second request; and if the dormant peer selected from the second list denies the second request; providing to the requesting local peer the information needed for the requesting local peer to negotiate directly with the dormant peer in the second torrent, such that the requesting local peer offers additional files to the dormant peer. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A non-transitory computer readable recording medium comprising computer program instructions stored therein which, when executed by a processor, define the steps of:
-
storing collaboration information related to the location of a list of files, the collaboration information including, for each respective file in the list of files, a first list of local peers actively participating in the local torrent and a second list of dormant peers, wherein each dormant peer is currently participating in a second torrent, previously participated in the local torrent, and each dormant peer is not currently participating in the local torrent, and stores the respective file, the files including an unavailable file which is unavailable from the local peers actively participating and is stored at a dormant peer; receiving from a local peer a first request for a file; determining whether the file requested is available from local peers actively participating listed on the first list; selecting the dormant peer from the second list, when it is determined that the file requested is unavailable from the local peers actively participating listed on the first list; sending to the dormant peer selected from the second list a second request for the file requested; enabling the establishment of a communication between the local peer and the dormant peer selected from the second list, if the dormant peer accepts the second request; and if the dormant peer selected from the second list denies the second request; providing to the requesting local peer the information needed for the requesting local peer to negotiate directly with the dormant peer in the second torrent, such that the requesting local peer offers additional files to the dormant peer. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification