Cooperative Push/Pull Protocols for Live Peer-Assisted Streaming

Video streaming is rapidly becoming one of the key services of the Internet. Most streaming is today "on demand" and delivered via unicast delivery; however, many applications require delivery to many end-users and the lack of ubiquitous IP multicast remains a weakness of the Internet. Given this scenario, the peer-to-peer (P2P) or peer-assisted communications is an appealing solution, especially in light of its intrinsic scalability and its extremely low initial investment requirements. However, the design of efficient, robust, and performing P2P streaming systems remains a high challenge, in particular when real-time (hard or soft) constraints are part of the service quality, as in TV distribution or conferencing. This thesis deals with P2P live streaming, concentrating on unstructured, swarm-based systems. The protocols explored and proposed are based in general on mixed Push/Pull phases, i.e., the behavior of peers alternates between offering content to other peers and seeking the content from other peers. The first part of the work is dedicated to the analysis of the fundamental properties of the Push/Pull protocols, including the enhancement of base protocols with a chunks' negotiation phase, which enable peers to execute parallel communications at the same time, fully exploiting their resources and drastically reducing duplicates and waste. Next, the focus is shifted on the impact of network parameters in video streaming distribution, showing that promoting locality in interactions leads to better performance than selecting target peers randomly. Then, the attention is focused on wireless scenarios by mixing local multicast techniques (based on a modified version of the Protocol Independent Multicast --PIM-- adapted to wireless environments) with active Pull recovery of missing data, with a peer-assisted approach. This protocol, called PullCast, enables end-users to pull missed data packets via unicast communications while they receive video packet in multicast via push, exhibiting interesting results in terms of chunks diffusion delay and fraction of end-users served. Finally, the GRAPES library is introduced to provide a set of open-source components conceived as basic building blocks for developing new P2P streaming applications which have in mind the intelligent usage of network resources as well as the Quality of Experience of final users. GRAPES is the core library behind PeerStreamer, an open source P2P media streaming framework developed under the NAPA-WINE European research project, and currently supported by the EIT ICT Labs.

Identiferoai:union.ndltd.org:unitn.it/oai:iris.unitn.it:11572/368250
Date January 2013
CreatorsRusso, Alessandro
ContributorsRusso, Alessandro
PublisherUniversità degli studi di Trento, place:TRENTO
Source SetsUniversità di Trento
LanguageEnglish
Detected LanguageEnglish
Typeinfo:eu-repo/semantics/doctoralThesis
Rightsinfo:eu-repo/semantics/openAccess
Relationfirstpage:1, lastpage:158, numberofpages:158

Page generated in 0.0023 seconds