260 likes | 416 Views
Peer-to-Peer Streaming of Scalable Video in Future Internet Application. Authors: Naeem Ramzan, Emanuele Quacchio, Toni Zgaljic, Stefano Asioli, Luca Celetto, Ebroul Izquierdo, Fabrizio Rovati. Speaker : 吳靖緯 MA0G0101. Communications Magazine, IEEE, On page(s): 128 - 135, March 2011.
E N D
Peer-to-Peer Streaming of Scalable Video in Future Internet Application Authors: Naeem Ramzan, Emanuele Quacchio, Toni Zgaljic, Stefano Asioli, Luca Celetto, Ebroul Izquierdo, Fabrizio Rovati Speaker :吳靖緯 MA0G0101 Communications Magazine, IEEE, On page(s): 128 - 135, March 2011 2012.04.24
Outline • Introduction • Scalable video coding • Streaming of scalable video over P2P networks • The MMV platform • The NextShare platform • SEAcast platform • Conclusion
Introduction • In conventional streaming architectures the client-server model and the usage of content distribution networks (CDNs) along with IP multicast were the most desirable approaches for many years. • However, severely limits the number of simultaneous users in video streaming. • The reason is the bandwidth bottleneck at the server side, since usually many clients request the content from the server.
Introduction • A CDN overcomes the same bottleneck problem by introducing dedicated servers at geographically different locations, resulting in expensive deployment and maintenance. • Compared to conventional approaches, a major advantage of peer-to-peer (P2P) streaming protocols is that each peer involved in content delivery contributes its own resources to the streaming session. • Administration, maintenance, and responsibility for operations are therefore distributed among the users instead of handled by a single entity.
Introduction • The main advantage of P2P systems is bandwidth scalability, network path redundancy, and the ability to self organize. • Nevertheless, several problems are still open and need to be addressed in order to achieve high quality of service and user experience. • In particular, the bandwidth capacity of a P2P system is extremely varying, as it relies on heterogeneous peer connection speeds, and directly depends on the number of connected peers.
Introduction • Moreover, displaying devices at the user side may range from small handsets (e.g., mobile phones) to large HD displays (e.g., LCD televisions). • Therefore, video streams need to be transmitted at a suitable spatio-temporal (ST) resolution supported by the user’s display device.
Scalable video coding • A scalable video sequence can be adapted in three dimensions: • temporal • spatial • quality • The complexity of adaptation is very low, in contrast to the adaptation complexity of non-scalable bitstreams.
Scalable video coding • Figure 1 shows an example of video distribution through links supporting different transmission speeds and display devices.
Scalable video coding • The SVC scheme gives flexibility and adaptability to video transmission over resource-constrained networks in such a way that. • At each point where video quality/resolution needs to be adjusted, an adaptation is performed. • Since the adaptation complexity is very low, the video can be efficiently streamed in such an environment.
Streaming of scalable video over P2P networks • A generic P2P streaming architecture using SVC is depicted in Fig. 2.
Streaming of scalable video over P2P networks • A chunk represents the smallest unit of data that will be transmitted over the P2P network. • Sometimes, the term piece is used to denote a chunk. • In BitTorrent, file chunks are downloaded in rarest-first fashion.
Streaming of scalable video over P2P networks • In video streaming this can result in an interruption of the video playback since chunks are not received sequentially. • Therefore, special care needs to be given to those chunks that are close to the playback position. • An example of an algorithm that takes into account these considerations is Give-to-Get (G2G).
Streaming of scalable video over P2P networks • In this algorithm chunks of compressed video are classified into three priority categories: high, medium, and low. • This classification depends on the current playback position. • Chunks close to the playback positions are marked as high-priority chunks. • Medium- and low-priority chunks are downloaded according to the standard BitTorrent strategy: rarest-first.
The MMV platform • Piece Picking Strategy • At the beginning of the streaming session, information about GOPs(groups of pictures) and layers is extracted from the bitstream description file. • Asliding window is defined, made of several GOPs (typically three to four). • Chunks are picked only from those inside the window unless all of them have already been downloaded.
The MMV platform • In the latter case, the piece picking policy will be rarest-first. • Inside the window, chunks have different priorities, following the idea from the original G2G algorithm. • First, a peer will try to download the base layer (BL), then the first enhancement layer (EL1). • Figure 3 shows the behavior of the system with a window three GOPs wide.
The MMV platform • An early stage of the prebuffering phase is shown in Fig. 3, first row. • Second row, the first two layers have been downloaded, and chunks are being picked from EL2 according to the rarest-first policy.
The MMV platform • Third row, the window has shifted. The system will pick chunks from GOP 3 until the quality of received layers is the same. • Fourth row, all GOPs within the window have the same number of completed layers, and pieces are picked from EL3.
The MMV platform • Peer Selection Strategy • Good neighbors are those peers that own the piece with the highest download rates. • Each time the window shifts, download rates of all the neighbors are evaluated, and the peers are sorted in descending order. • Pieces are then requested from peers providing download rates above the threshold.
The MMV platform • The performance of this framework is shown in Fig. 4.
The NextShare platform • The procedure implemented in NextShare to download scalable data chunks is an extension of the G2G algorithm. • Priorities are defined as in G2G and extended to the multiple files, as depicted in Fig. 5.
The NextShare platform • In the high-priority set pieces are downloaded sequentially, while in the low-priority set pieces are downloaded in a rarest-first fashion. • Each block in the figure represents a time slot. • In Fig. 5 at time instance t (playback position), the algorithm has to decide which block to download for time point (t + x).
The NextShare platform • The controller implemented in NextShare tries to switch to a higher quality as soon as there is enough saved buffer for the current quality. • Therefore, a safe buffer of chunks downloaded and not yet delivered to the player is defined; the size of this buffer is a function of the parameter x depicted in Fig. 5. • The minimum value for x corresponds to five time slots, and can vary depending on network performance.
SEAcast platform • In SEACast data packets are simply forwarded from parent to children nodes. • As shown in Fig. 6, the publisher is connected to the SEACast root node by means of a different Real-Time Transport Protocol (RTP) connection for each scalable layer. • Each SEACast client keeps a buffer of a few seconds for each tree in which it participates.
SEAcast platform • The structure of the P2P tree generated with the SEACast application is depicted in Fig. 6.
Conclusions • In P2P networks video is streamed to the user in a fully distributed fashion. • Network resources are distributed among users instead of handled by a single entity. • However, due to the diversity of users’ displaying devices and available bandwidth levels in the Internet, the underlying coding and transmission technology needs to be highly flexible.
Conclusions • In this article we have presented several advanced P2P systems supporting streaming of scalable video and designed to support future Internet applications.