Highest bandwidth download request policy in a live streaming P2P network
AssigneeHive Streaming AB
InventorsMohammed El-Beltagy, Amgad Naiem, Fouad Essayadi
Life of this patent
Estimating the term…
Loading patent…
AssigneeHive Streaming AB
InventorsMohammed El-Beltagy, Amgad Naiem, Fouad Essayadi
Estimating the term…
The technology relates to a method of and a device for, arranging peers in a P2P network comprising a streaming source and a plurality of network peers arranged at distribution levels in the P2P network. The method receives a request from a peer entering the network to receive data content, and determines a distribution level for the entering peer with respect to the streaming source. Further, the method provides the entering peer with peers selected from the network peers from which the requested data content can be downloaded with an expected probability depending on the determined distribution level. The method also indicates upload capacity of peers, wherein the entering peer is enabled to download, with the expected probability, the requested data content from a selected one of the peers having a highest upload capacity among the selected peers.
A method at a tracker device, comprising a processing unit and a non-transitory computer readable medium, of arranging peer devices in a peer-to-peer (P2P) network comprising a streaming source and network peer devices arranged at distribution levels in the P2P network, the method comprising:
A method at a peer device of requesting data content in a peer-to-peer (P2P) network comprising a streaming source and a plurality of network peer devices arranged at distribution levels in the P2P network, the method comprising:
A tracker device for arranging peer devices in a peer-to-peer (P2P) network comprising a streaming source and network peer devices arranged at distribution levels in the P2P network, the tracker device comprising a processing unit and a non-transitory computer readable medium being arranged to:
A peer device for requesting data content in a P2P network comprising a streaming source and a plurality of network peer devices arranged at distribution levels in the P2P network, the device comprising a processing unit being arranged to:
A non-transitory computer readable medium, the computer readable medium having processor-executable instructions stored thereon, which when executed by at least one processing unit, will cause the at least one processing unit to perform a method of arranging peer devices in a peer-to-peer (P2P) network comprising a streaming source and network peer devices arranged at distribution levels in the P2P network, the method comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Server selection for load balancing: based on parameters of servers, e.g. available memory or workload
Group management mechanisms: joining mechanisms
Using node-based peer discovery mechanisms: discovery through centralising entities
Using cross-functional networking aspects: hierarchical topologies
About 7 years 2 months of term left · ends 4 Jan 2034 (estimated)
The invention relates to a method of arranging peers in a P2P network and a device for arranging peers in a P2P network, as well as a method for a peer device to request download of content, and a peer device.
For live video streaming in a client-server approach, the video stream is downloaded from the streaming server (i.e. the source of content to be streamed) to the client. A video stream consists of a set of consecutive data pieces, or data subset, that the client periodically requests in order to play the video. A scalable live streaming service requires high streaming server bandwidth to satisfy an increasing number of clients over the internet. In order to reduce the cost of the streaming server, Peer-to-peer (P2P) live streaming has been developed. The basic concept of P2P live streaming is to make the clients, referred to as peers in this context, share the load with the streaming server.
P2P live streaming systems has gained a lot of interest in the recent years as it has the advantage of allowing a streaming source to broadcast e.g. a live video event to a large number of peers, without having to provide all the required bandwidth. This is done by making use of the peers' upload capacity to assist the streaming source in broadcasting the content to the peers.
The invention is now described, by way of example, with reference to the accompanying drawings, in which:
FIG. 1 illustrates data streaming in a prior art live streaming P2P network;
FIGS. 2a and b illustrate data streaming in a live streaming P2P network in which the present invention may be applied;
The invention will now be described more fully herein after with reference to the accompanying drawings, in which certain embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided by way of example so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.
FIG. 1 shows a prior art P2P overlay network with peers p1-p15 (in practice peer devices such as television sets, mobile phones, computers, etc.) randomly connected to a streaming source in the form of a streaming server SS. Streaming source and streaming server will be used alternately throughout the application to denote the same network element. The streaming server distributes data content divided into smaller pieces of data that are streamed to the network peers. Thus, the data content is divided into consecutive pieces of data referred to as data subsets throughout this application. This is illustrated in the lower section of FIG. 1, where the data content is divided into smaller data subsets DS1-DS3. Once the streaming source SS has “packeted” a data subset DS, it can be submitted to a peer, which then can start playback of the data subset while the streaming source produces the next data subset. In FIG. 1, the streaming server uploads data subset DS1 to peers p1, p2, p3, p6, p8, p10 and p14, wherein playback of DS1 may resume at each respective peer and/or further distribution of DS1 may be effected by the respective peer to further downstream peer(s). Further, the streaming server produces data subset DS2 and uploads data subset DS2 to the peers p1, p2, p3, p6, p8, p10 and p14, while peer p2 uploads the latest fully downloaded data subset DS1 to peers p7, p9, and p13, peer p3 uploads DS1 to peer p4, and so on.
Hence, in such a prior art P2P live streaming network, each peer entering the network will ask a tracker (not shown) for the latest data subset to start streaming from as well as k random peers to be its neighbours. Then, the entering peer will turn to its neighbours for the latest subset of data, and if it finds the required data subset on any neighbouring peer, it will start streaming from that neighbouring peer. As has been explained in the above, due to network delay and asynchronicity, the entering peer will be delayed by at least the full duration of one data subset from its uploader and at least twice that from the streaming server on condition that the entering peer's uploader is delayed by at least the full duration of one data subset from the source. In other words, with respect to a real-time playback point RT of the data content distributed by the streaming source, the entering peer will have a latency of at least two data subsets, while its uploader will have a latency of at least one data subset. If the entering peer cannot find the latest data subset on one of its neighbouring peers, it will download it from the streaming server. As compared to a traditional client-server network, where the server distributes content to all clients in the network, savings in streaming server load of the P2P network in FIG. 1 is 8/15=0.53. That is, instead of streaming content to all 15 peers, the streaming server SS streams content to seven of the peers, which in their turn unload the server by streaming content to the remaining eight peers.