US2020336535A1PendingUtilityA1

Method and apparatus for signaling of buffer content in a peer-to-peer streaming network

Assignee: PROVENANCE ASSET GROUP LLCPriority: Jun 24, 2009Filed: Jul 6, 2020Published: Oct 22, 2020
Est. expiryJun 24, 2029(~2.9 yrs left)· nominal 20-yr term from priority
H04L 65/612H04L 65/611H04L 67/1001H04L 67/1023H04L 67/101H04L 67/1008H04L 67/104H04L 67/1068H04L 67/1002H04L 65/4076H04L 65/4084
47
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Methods, devices and computer program products for facilitating the selection of a sourcing peer in peer-to-peer (P2P) streaming environment are disclosed. These methods allow peers to select candidate source peers in an informed manner with low overhead and minimized complexity. These and other features are accomplished by signaling detailed information regarding the buffer contents to one or more requesting peers. This information includes the presence or absence of requested content segments and a listing of gaps in the requested content segments, which allow the requesting peers to select an appropriate sourcing peer. The selection of a sourcing peer is also effected by considering network connectivity and/or network congestion status between the sourcing and the requesting peers.

Claims

exact text as granted — not AI-modified
1 - 22 . (canceled) 
     
     
         23 . An apparatus for selecting a candidate source peer to provide requested content to one or more requesting peers, the apparatus comprising at least one processor and at least one memory including computer program code, a receiver of the candidate source peer, and a transmitter of the candidate source peer, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to:
 receive by the receiver a request from the one or more requesting peers for a content of the candidate source peer, the candidate source peer and the one or more requesting peers comprising an entity in a peer-to-peer streaming network;   transmit from the transmitter of the candidate source peer, in response to the received request, information related to availability of the content and detailed buffer status of the candidate source peer to the one or more requesting peers, the information comprising a status code associated with the availability of the content of the candidate source peer, wherein the information about the candidate source peer enables the one or more requesting peers to select the candidate source peer as a selected candidate source peer to provide the content to the one or more requesting peers;   receive by the receiver a selection by the one or more requesting peers of the candidate source peer as the selected candidate source peer based on the information and the status code; and   transmit, from the transmitter of the selected candidate source peer, the content to the one or more requesting peers in response to selection of the candidate source peer such that the candidate source peer is configured to simultaneously provide the content to each of the requesting peers that select the candidate source peer for receiving the content.   
     
     
         24 . The apparatus of  claim 23 , wherein the request comprises at least one of a plurality of sequence numbers or a plurality of normal play time (NPT) values associated with the content. 
     
     
         25 . The apparatus of  claim 23 , wherein the at least one memory and the computer program code configured to, with the at least one processor, further cause the apparatus to, when the selected candidate source peer determines in response to the selection that the request for the content is riot able to be accommodated and. provides the status code with an indication of a redirection, redirect by the transmitter the request to a redirect candidate source peer able to accommodate the request to enable the one or more requesting peers to select the redirect candidate source peer to provide the content to the one or more requesting peers. 
     
     
         26 . The apparatus of  claim 23  , wherein:
 the information further comprises a list of available content segments within a range of requested content segments or a list of gaps associated with lost segments within the range of requested content segments; 
 the status code provides an indication of at least one of a future content or a past content; 
 
       and
 the at least one memory and the computer program code configured to, with the at least one processor, further cause the apparatus to transmit the content to the one or more requesting peers in response to selection of the candidate source peer when the status code provide an indication of a change from at least one of the future content or the past content to available content. 
 
     
     
         27 . The apparatus of  claim 23 , wherein the information contains one or more of:
 the buffer start time;   the buffer end time;   the buffer duration;   the buffer storage capacity;   a first sequence number stored in the buffer;   a last sequence number stored in the buffer; an extent list of gaps;   a percentage of available content within a requested range; and   an indication as to completeness of content within the buffer.   
     
     
         28 . The apparatus of  claim 23 , wherein the receiver and the transmitter are configured to operate within a real-time transport streaming protocol (RTSP) session setup procedure. 
     
     
         29 . The apparatus of  claim 23 , wherein the receiver and the transmitter are configured to operate outside of a real-time transport streaming protocol (RTSP) session setup procedure. 
     
     
         30 . The apparatus of  claim 23 , wherein the receiver is configured to receive the request at the candidate source peer directly from one or more requesting peers, and the transmitter is configured to transmit the information directly to the one or more requesting peers.  3   1  . The apparatus of  claim 23 , wherein the receiver is configured to receive the request at the candidate source peer from a central entity within the peer-to-peer streaming network, and the transmitter is configured to transmit the information to the central entity.  3   2 . The apparatus of  claim 23 , wherein the one or more requesting peers are configured to initiate the request in a decentralized distributed peer- to-peer streaming network, and the transmitter is configured to transmit the information to the one or more requesting peers through one or more other peers in the decentralized distributed peer-to-peer streaming network. 
     
     
         33 . An apparatus for selecting a candidate source peer from one or more candidate source peers to provide requested. content to one or more requesting peers, the apparatus comprising at least one processor and at least one memory including computer program code, a receiver of the one or more requesting peers, and. a transmitter of the one or more requesting peers, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to:
 initiate a request by the transmitter at a requesting peer of the one or more requesting peers for a content delivery from the one or more candidate source peers to the requesting peer, the candidate source peer and the one or more requesting peers comprising an entity in a peer-to-peer streaming network;   receive, in response to the initiated request, by the receiver of the requesting peers information from the one or more candidate source peers related to availability of the content and detailed buffer status of the one or more candidate source peers, the information comprising a status code associated with the availability of the content of the candidate source peer, wherein the information relating to the one or more candidate source peers enables the requesting peer to select the candidate source peer as a selected candidate source peer to provide the content:   transmit by the requesting peer a selection of the candidate source peer as the selected candidate source peer based on the information and the status code; and   receive, at the receiver of the requesting peer, the content from the selected candidate source peer among the one or more candidate source peers that serves as the candidate source peer for at least one other requesting peer.   
     
     
         34 . The apparatus of claim  3   3 , wherein the information further comprises a description of the status code associated with the availability of the content. 
     
     
         35 . The apparatus of  claim 33 , wherein the at least one memory and the computer program code configured to, with the at least one processor, further cause the apparatus to, when the selected candidate source peer determines in response to the selection that the request for the content is not able to be accommodated and provides the status code with an indication of a redirection, the transmitter is configured to redirect the request to a redirect candidate source peer able to accommodate the request to enable the requesting peer to select the redirect candidate source peer to receive the content. 
     
     
         36 . The apparatus of claim  3   3 , wherein:
 the information further comprises a list of available content segments within a range of requested content segments or a list of gaps associated with lost segments within the range of requested content segments;   the status code provides an indication of at least one of a future content or a past content; and the at least one memory and the computer program code configured to, with the at least one processor, further cause the apparatus to receive the content to the one or more requesting peers in response to selection of the candidate source peer when the status code provide an indication of a change from at least one of the future content or the past content to available content.   
     
     
         37 . A system for selecting a candidate source peer to provide requested content to at least a requesting peer of one or more requesting peers, the system comprising:
 at least one processor and at least one memory including computer program code; and   a candidate source peer apparatus and a requesting peer apparatus, wherein the candidate source peer apparatus comprises a receiver of the candidate source peer and a transmitter of the candidate source peer, and the requesting peer apparatus comprises a receiver of the requesting peer and a transmitter of the requesting peer;   the at least one memory and the computer program code configured to, with the at least one processor, cause the system to:   initiate a request by the transmitter of the requesting peer of the one or more requesting peers for a content delivery from the one or more candidate source peers to the requesting peer, the candidate source peer and the one or more requesting peers comprising an entity in a peer-to-peer streaming network;   receive by the receiver of the candidate source peer a request from one or more requesting peers for a content of the candidate source peer for the content delivery;   transmit from the transmitter of the candidate source peer, in response to the received request, information related to availability of the content and detailed buffer status of the candidate source peer to the one or more requesting peers, the information comprising a status code associated with the availability of the content of the candidate source peer, wherein the information about the candidate source peer enables the one or more requesting peers to select the candidate source peer as a selected candidate source peer to provide the content to the one or more requesting peers;   receive, in response to the initiated request, by the receiver of the requesting peer, the information from the one or more candidate source peers;   transmit by then transmitter of the requesting peer a selection of the candidate source peer as the selected candidate source peer based on the information and the status code; and   receive by the receiver of the candidate source peer the selection by the one or more requesting peers of the candidate source peer as the selected candidate source peer; and   transmit, from the transmitter of the selected candidate source peer, the content to the one or more requesting peers in response to selection of the candidate source peer such that the candidate source peer is configured to simultaneously provide the content to each of the requesting peers that select the candidate source peer for receiving the content   
     
     
         38 . The system of  claim 37 , wherein the at least one memory and the computer program code configured to, with the at least one processor, cause the system to:
 receive, at the receiver of the requesting peer, the content from the selected candidate source peer among the one or more candidate source peers that serves as the candidate source peer for the requesting peer and at least one other requesting peer.   
     
     
         39 . The system of  claim 37 , wherein the at least one memory and the computer program code configured to, with the at least one processor, cause the system to:
 when the selected candidate source peer determines in response to the selection that the request for the content is not able to he accommodated and provides the status code with an indication of a redirection, redirect by the transmitter of the candidate source peer the request to a redirect candidate source peer able to accommodate the request to enable the one or more requesting peers to select the redirect candidate source peer to provide the content to the one or more requesting peers.   
     
     
         40 . The system of  claim 37 , wherein:
 the information further comprises a list of available content segments within a range of requested content segments or a list of gaps associated with lost segments within the range of requested content segments;   the status code provides an indication of at least one of a future content or a past content; and   the at least one memory and the computer program code configured to, with the at least one processor, further cause the candidate source peer apparatus to transmit the content to the one or more requesting peers in response to selection of the candidate source peer when the status code provide an indication of a change from at least one of the future content or the past content to available content.   
     
     
         41 . The system of  claim 37 , wherein the request comprises at least one of a plurality of sequence numbers or a plurality of normal play time (NPT) values associated with the content. 
     
     
         42 . The system of  claim 37 , wherein the at least one memory and the computer program code configured to, with the at least one processor, cause the system to:
 receive by the receiver of the candidate source peer an initial request from the one or more requesting peers in order to setup a connection with the candidate source peer.

Join the waitlist — get patent alerts

Track US2020336535A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.