280 likes | 416 Views
BiToS: Enhancing BitTorrent for Supporting Streaming Applications. Aggelos Vlavianos, Marios Iliofotou and Michalis Faloutsos Department of Computer Science and Engineering University of California Riverside Riverside, CA
E N D
BiToS: Enhancing BitTorrent for SupportingStreaming Applications Aggelos Vlavianos, Marios Iliofotou and Michalis Faloutsos Department of Computer Science and Engineering University of California Riverside Riverside, CA IEEE 9th Global Internet Workshop (in Conjunction with IEEE INFOCOM 2006)
Outlines • Introductions • BT (BitTorrent) • BiToS (BitTorrent Streaming) • Simulation results • Conclusions
Introductions • Characteristics of streaming systems • Large scale • More than thousands of simultaneous participating clients. • Bandwidth demand • Time sensitive • Real-time constraints, requiring timely and continuously streaming delivery. • Content delivery with time constrains.
Taxonomy of architectures for streaming Streaming System Centralized Decentralized Client-server IP-Layer Scheme Application-Layer Scheme Peer-to-Peer IP Multicast Infrastructure-Centric End-to-end system (with infrastructure) End-to-end system (without infrastructure) CDNs P2Cast, P2VoD, AnySee CoolStreaming, BiToS
Introductions • Different Types of Overlay • Tree-based approaches • Organizing peers to deliver content • Peers have well-defined “parent-child” relationships • Single-tree • P2VoD • P2Cast • Multiple-trees • AnySee • Data-driven approaches • Peers do not construct and maintain an explicit structure • Mesh • CoolStreaming • BiToS
Motivation of CoolStreaming • Provide peer-to-peerlive streaming broadcasting • Network heterogeneity • No QoS guarantee • Data-driven design • Don’t use any tree, mesh, or any other structures • Data flows are guided by the availability of data • http://vc.cs.nthu.edu.tw/ezLMS/show.php?id=317&1206370804 by hhchen
Core operations of DONet / CoolStreaming • DONet: Data-driven Overlay Network • CoolStream: Cooperative Overlay Streaming • A practical DONet implementation • Every node periodically exchanges data availability information with a set of partners • Retrieve unavailable data from one or more partners, or supply available data to partners • The more people watching the streaming data, the better the watching quality will be • The idea is similar to BitTorrent (BT)
BT (Basic idea) • Chop file into many pieces. • piece : typically 256KB in size. • Replicate different pieces on different peers as soon as possible. • As soon as a peer has a complete piece, it can trade it with other peers. • Hopefully, we will be able to assemble the entire file at the end.
BT (Basic components) • Seed • Peer that has the entire file. • Leacher • Peer that has an incomplete copy of the file. • ATorrent file • Passive component. • Files are typically fragmented into 256KB pieces. • The torrent file lists the hashes of all the pieces to allow peers to verify integrity. • Typically hosted on a web server. • ATracker • Active component. • The tracker is responsible to help the peers find each other and to keep the download/upload statistics of each peer. • Returns a random list of peers.
BT • Free-Riders phenomenon • The selfish peers choose only to download the file without uploading. • Tit-for-Tat policy • Each peer chooses to upload to its peer as long as it takes something in return. • The Piece Selection mechanism • Peers always select to download the rarest pieces within their peer set. • Rare pieces that are currently available, might not be available in the future. • Peers that have these pieces might leave the network or fail. • By acquiring these rare pieces before they become extinct we can increase the QoS. • The Incentive mechanism • This mechanism in case of time sensitive data distribution is even more beneficial for the welfare of the swarm. • Use the Tit-for-Tat policy to resist the Free-Riders problem. • Time constrained data distribution provides stronger incentives to peers to avoid being Free-Riders.
Rarest Piece First • Policy : Determine the pieces that are most rare among your peers and download those first. • This ensures that the most common pieces are left till the end to download. • Rarest first also ensures that a large variety of pieces are downloaded from the seed.
Choking • One of BitTorrent’s most powerful idea is the choking mechanism • It ensures that nodes cooperate and eliminatesthe free-rider problem. • Cooperation involves uploaded sub-pieces that you have to your peer. • Choking is a temporary refusal to upload; downloading occurs as normal. • Based on Tit-for-tat policy.
BiToS • BiToS (BitTorrent Streaming) • A protocol with the ability to support streaming based on BT. • Apply time sensitive function into BitTorrent(BT), which can distribution of time insensitive content. • Minimize the change of BT mechanism to achieve this • To reduce start-up time • To evaluate the video quality • To view the downloading video first (in highly polluted network) • view-as-you-download service • The rarest first order (enabling the use of parallel downloading of pieces) V.S. playing order(enabling playback smooth) • Tunable between pure streaming and original BT • Three different piece selection mechanisms • Only need to change this part in BT.
BiToS • BASS: BitTorrent Assisted Streaming System for Video-on-Demand • Client will not download any data prior to the current playback time • Time constrained data stronger incentive with Tit-for-Tat policy peers will avoid to be Free-Riders • Use BT to handle live streaming, change the tracker entity and some parts of peer communication protocol.
BiToS • 3 components: • Received Pieces Set • Contains all the downloaded pieces of the video stream, that the peer has ever downloaded. • The state of a piece can be Downloaded,Not-Downloaded or Missed. • A piece has state Missed, if it didn’t meet its deadline to be reproduced by the player. • High Priority Set • Contains the pieces of the Video Stream that have not been Downloaded yet, are not Missed and are close to be reproduced by the player. Thus, these pieces have higher priority to be requested over the rest of the pieces. • A piece in this set can be in the following states: Not-Requested or Currently-Downloading. • Remaining Pieces • Contains the pieces that have not been Downloaded, are not Missed and are not in the High Priority Set. • A piece can be in the Not-Requested orCurrently-Downloading state.
BiToS Approach Remaining Windows Small Windows • a Storing buffer
BiToS • Probability p to download a piece in the High Priority set(p can be adjust to adapt different condition). • Probability (1-p) to download a piece in the Remaining Pieces set. • One more function to determine if the piece can be downloaded on time or not. • Compare the expected playback time and minimum time. • A minor change of the Rarest First mechanism is that if two or more pieces have the same rareness, the piece which is closer to meet its deadline will be chosen. • The Received Pieces Set contains the downloaded pieces that can be shared with other peers.
BiToS • Adaptation of probability p can be triggered by playback deadline missing. • Large values of p • The pieces that will be reproduced soon, will be requested for downloading earlier than the rest of the pieces of the video stream. • The peer chooses to download pieces that most of the peers have. • The peer wouldn’t have any rare pieces to exchange and consequently would be choked by most of the peers. • The decrease of the value of the probability pcan be helpful in order to acquire some rare pieces. • The original BT behavior corresponds approximately to p = 1 and High Priority Set Size equals to 100% of the file.
Simulation setting(I) • 4 seeders and 400 leechers. • Flash crowds at the beginning. • 10 minutes length, video quality 500Kbps. • Download/Upload rate 500/500Kbps. • Other use BT default settings (256Kb per piece). • No dynamic adaptation of probability p. • No peer dynamic. • Only one performance metrics continuity index (CI) from Coolstreaming. • The Continuity Index is defined as the number of pieces that arrived before the playback deadline over the total number of pieces.
Simulation setting(II) • 3 different mechanisms in selecting pieces • Sequential (p = 1) • The pieces are requested in order within the High Priority Set, without taking into account their rareness. • Rarest First (p = 1) • The pieces are requested only within the High Priority Set, using the Rarest First mechanism. • Rarest First (p = 0.8) • The pieces are requested with probability 80% within the High Priority Set and with 20% probability within the Remaining Pieces Set, using the Rarest First mechanism.
Simulation result (I) The optimal size of the High Priority Set (≈8%) must capture the pieces that will be needed soon for the playback. Missing playback deadline Why not decrease further? Since the flash crowd of peer at beginning of simulation
Simulation result (II) With the rarest first algorithmeach peer choosestodownload rare pieces whichmight not be available in thefuture. Use 5 min length video-file Time for seeder stay in the network
Existing BT application for streaming • Current BT application for streaming: • FoxTorrent • Streaming Fast Delivery: Watch video and listen to audio as it downloads. • Open source FoxTorrent, Firefox extension that lets users stream torrents as they download, from their web browser. • http://www.foxtorrent.com/
Conclusions • We shown that Streaming in BT is possible under our proposed approach. • We have shown through simulations that our approach is feasible and can be easily (with minor modifications) incorporated into the original BT protocol.
References • [1] Bram Cohen. Incentives build robustness in bittorrent. In 1st Workshop on the Economics of Peer-2-Peer Systems, Berkley, CA, June 5-6 2003. • [3] C. Dana, D. Li, D. Harrison, and C. Chuah. Bass: Bittorrent assisted streaming system for video-on-demand. In International Workshop on Multimedia Signal Processing(MMsP) IEEE Press, 2005. • [11] X. Zhang, J. Liu, B. Li, and T.P. Yum. Coolstreaming/donet: A data-driven overlay network for peer-to-peer live media streaming. In Proceedings of IEEE/INFOCOM, Miami, March 2005. • http://vc.cs.nthu.edu.tw/ezLMS/show.php?id=317&1206370804 • http://www.coolstreaming.us/ • Xiaofei Liao, Hai Jin, Yunhao Liu, Lionel M. Ni and Dafu Deng, “AnySee: Peer-to-Peer Live Streaming,” in INFOCOM 2006.