Efficient Content Delivery in P2P networks

Alexander Libov, Ph.D. Thesis Seminar
Wednesday, 21.10.2015, 14:30
Taub 601
Prof. Roy Friedman

Internet video streaming already accounts for over 64% all global IP traffic and is projected to increase in the foreseeable future. Consequently, improving the delivery mechanisms of video streaming is an important challenge with real-world consequences that has seen a plethora of protocols and systems been published and made available by industry and academia over the years. Of these systems, peer-to-peer (P2P) delivery, either between client machines, set-top boxes, middle-boxes, or intermediate (possibly software defined) routers, is compelling as it relieves much of the congestion off the video source or networks controlled by the video provider. Further, if done correctly, distributed delivery spreads the network load in a more balanced and localized manner among participants than centralized solutions. In this work we present StreamAid, a modular framework for rapid development and evaluation of P2P live streaming systems. StreamAid allows P2P streaming protocols to be decomposed into basic blocks, each associated with a standard functional specification. Next, we introduce the notion of ingredients: a novel abstraction denoting the smallest inter-operable units of code that each express a single design choice. Our framework provides tools for designing protocols in terms of ingredients, systematically testing the impact of every design decision in a simulator, and deploying them in a wide-area testbed such as PlanetLab for evaluation. Finally, we explore how to dynamically join multiple systems to adapt to variable environments. We implement a multi-armed bandits (MAB) algorithm component in our framework that adjusts to changing environments and demonstrate how the performance of an autonomous adaptive approach outperforms each part in isolation. StreamAid is written in Java and is freely available as an open-source project at https://github.com/alibov/StreamAid.

Back to the index of events