AngelCast: cloud-based peer-assisted live streaming using optimized multi-tree construction
MetadataShow full item record
CitationSweha, Raymond; Ishakian, Vatche; Bestavros, Azer. "AngelCast: Cloud-based Peer-Assisted Live Streaming Using Optimized Multi-Tree Construction", Technical Report BUCS-TR-2011-026, Computer Science Department, Boston University, December 14, 2011. [Available from: http://hdl.handle.net/2144/11383]
Increasingly, commercial content providers (CPs) offer streaming and IPTV solutions that leverage an underlying peer-to-peer (P2P) stream distribution architecture. The use of P2P protocols promises significant scalability and cost savings by leveraging the local resources of clients -- specifically, uplink capacity. A major limitation of P2P live streaming is that playout rates are constrained by the uplink capacities of clients, which are typically much lower than downlink capacities, thus limiting the quality of the delivered stream. Thus, to leverage P2P architectures without sacrificing the quality of the delivered stream, CPs must commit additional resources to complement those available through clients. In this paper, we propose a cloud-based service--AngelCast--that enables CPs to elastically complement P2P streaming "as needed". By subscribing to AngelCast, a CP is able to deploy extra resources ("angels"), on-demand from the cloud, to maintain a desirable stream (bit-rate) quality. Angels need not download the whole stream (they are not "leachers"), nor are they in possession of it (they are not "seeders"). Rather, angels only relay (download once and upload as many times as needed) the minimal possible fraction of the stream that is necessary to achieve the desirable stream quality, while maximally utilizing available client resources. We provide a lower bound on the minimum amount of angel capacity needed to maintain a certain bit-rate to all clients, and develop a fluid model construction that achieves this lower bound. Realizing the limitations of the fluid model construction--namely, susceptibility to potentially arbitrary start-up delays and significant degradation due to churn--we present a practical multi-tree construction that captures the spirit of the optimal construction, while avoiding its limitations. In particular, our AngelCast protocol achieves near optimal performance (compared to the fluid-model construction) while ensuring a low startup delay by maintaining a logarithmic-length path between any client and the provider, and while gracefully dealing with churn by adopting a flexible membership management approach. We present the blueprints of a prototype implementation of AngelCast, along with experimental results confirming the feasibility and performance potential of our AngelCast service when deployed on Emulab and PlanetLab.