Peer-to-peer live streaming
First Claim
1. A method for distributing content in a peer-to-peer network according to a protocol, the method comprising:
- dividing, by a source computer system, content into a plurality of data blocks;
assigning, by the source computer system, each of the plurality of data blocks to one of a plurality of clubs in a peer-to-peer network, the peer-to-peer network including a plurality of peers, each of the plurality of peers part of at least two clubs from the plurality of clubs;
transmitting, by the source computer system, each of the plurality of data blocks to at least one peer that is part of the club to which the data block is assigned;
wherein an authentication signature is attached to each of the plurality of data blocks;
wherein a peer in a club of the plurality of clubs transmits a notification to other peers in the club with which it has download connections, when the peer receives a particular data block assigned to the club and successfully authenticates the particular data block using the authentication signature of the particular data block, the notification preventing the other peers from transmitting the particular data block to the peer;
wherein the peer, upon authenticating the particular data block, transmits the particular data block to at least one receiving peer in the club with which the peer has an upload connection, in response to not having yet received a notification from the at least one receiving peer indicating that the at least one receiving peer has already received the particular data block; and
wherein the peer has download connections with a first subset of peers in the club and upload connections with a second subset of peers in the club.
3 Assignments
0 Petitions
Accused Products
Abstract
According to a peer-to-peer protocol, a peer-to-peer network includes multiple clubs and multiple peers that receive content distributed by a source of the network. Each of the plurality of peers is part of at least two of the clubs. As content is generated, the source divides the content into multiple data blocks and assigns each data block to a club. Each data block is transmitted to peers that belong to the club assigned to the data block. When a peer in a club receives a data block assigned to that club, the peer distributes the data block to other peers in the club. Additionally, the peer transmits the data block to peers in other clubs. Also, the peer receives data blocks assigned to other clubs from peers that are not members of the club.
-
Citations
18 Claims
-
1. A method for distributing content in a peer-to-peer network according to a protocol, the method comprising:
-
dividing, by a source computer system, content into a plurality of data blocks; assigning, by the source computer system, each of the plurality of data blocks to one of a plurality of clubs in a peer-to-peer network, the peer-to-peer network including a plurality of peers, each of the plurality of peers part of at least two clubs from the plurality of clubs; transmitting, by the source computer system, each of the plurality of data blocks to at least one peer that is part of the club to which the data block is assigned; wherein an authentication signature is attached to each of the plurality of data blocks; wherein a peer in a club of the plurality of clubs transmits a notification to other peers in the club with which it has download connections, when the peer receives a particular data block assigned to the club and successfully authenticates the particular data block using the authentication signature of the particular data block, the notification preventing the other peers from transmitting the particular data block to the peer; wherein the peer, upon authenticating the particular data block, transmits the particular data block to at least one receiving peer in the club with which the peer has an upload connection, in response to not having yet received a notification from the at least one receiving peer indicating that the at least one receiving peer has already received the particular data block; and wherein the peer has download connections with a first subset of peers in the club and upload connections with a second subset of peers in the club. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system for distributing content in a peer-to-peer network according to a protocol, the computer system comprising:
-
one or more computer processors; and a non-transitory computer readable storage medium storing computer program instructions executed by the one or more computer processors for; dividing content into a plurality of data blocks; assigning each of the plurality of data blocks to one of a plurality of clubs in a peer-to-peer network, the peer-to-peer network including a plurality of peers, each of the plurality of peers part of at least two clubs from the plurality of clubs; transmitting each of the plurality of data blocks to at least one peer that is part of the club to which the data block is assigned; wherein an authentication signature is attached to each of the plurality of data blocks; wherein a peer in a club of the plurality of clubs transmits a notification to other peers in the club with which it has download connections, when the peer receives a particular data block assigned to the club and successfully authenticates the particular data block using the authentication signature of the particular data block, the notification preventing the other peers from transmitting the particular data block to the peer; wherein the peer, upon authenticating the particular data block transmits the particular data block to at least one receiving peer in the club with which the peer has an upload connection, in response to not having yet received a notification from the at least one receiving peer indicating that the at least one receiving peer has already received the particular data block; and wherein the peer has download connections with a first subset of peers in the club and upload connections with a second subset of peers in the club.
-
-
11. A computer program product for distributing content in a peer-to-peer network according to a protocol, the computer program product having a non-transitory computer-readable storage medium having computer program instructions for:
-
dividing, by a source computer system, content into a plurality of data blocks; assigning, by the source computer system, each of the plurality of data blocks to one of a plurality of clubs in a peer-to-peer network, the peer-to-peer network including a plurality of peers, each of the plurality of peers part of at least two clubs from the plurality of clubs; transmitting, by the source computer system, each of the plurality of data blocks to at least one peer that is part of the club to which the data block is assigned; wherein an authentication signature is attached to each of the plurality of data blocks; wherein a peer in a club of the plurality of clubs transmits a notification to other peers in the club with which it has download connections, when the peer receives a particular data block assigned to the club and successfully authenticates the particular data block using the authentication signature of the particular data block, the notification preventing the other peers from transmitting the particular data block to the peer; wherein the peer, upon authenticating the particular data block, transmits the particular data block to at least one receiving peer in the club with which the peer has an upload connection, in response to not having yet received a notification from the at least one receiving peer indicating that the at least one receiving peer has already received the particular data block; and wherein the peer has download connections with a first subset of peers in the club and upload connections with a second subset of peers in the club. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
Specification