26
1 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 IEEE 9th Global Internet Workshop (in Conjunction with IEEE INFOCOM 2006)

1 BiToS: Enhancing BitTorrent for Supporting Streaming Applications Aggelos Vlavianos, Marios Iliofotou and Michalis Faloutsos Department of Computer Science

Embed Size (px)

Citation preview

1

BiToS: Enhancing BitTorrent for Supporting

Streaming Applications

Aggelos Vlavianos, Marios Iliofotou and Michalis Faloutsos

Department of Computer Science and EngineeringUniversity of California Riverside

Riverside, CA

IEEE 9th Global Internet Workshop (in Conjunction with IEEE INFOCOM 2006)

2

Outlines

Introductions BT (BitTorrent) BiToS (BitTorrent Streaming) Simulation results Conclusions

3

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.

4

Taxonomy of architectures for streaming

Centralized Decentralized

IP-Layer Scheme

Application-Layer Scheme

IP Multicast

Infrastructure-Centric End-to-end system (with infrastructure)

End-to-end system (without infrastructure)

Client-server

Peer-to-Peer

Streaming System

CDNs P2Cast,P2VoD,AnySee

CoolStreaming,BiToS

5

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

6

Motivation of CoolStreaming

Provide peer-to-peer live 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

7

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)

8

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.

9

BT (Basic components) Seed

Peer that has the entire file. Leacher

Peer that has an incomplete copy of the file. A Torrent 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.

A Tracker 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.

10

BT (Operation)

11

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.

12

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.

13

Choking One of BitTorrent’s most powerful idea is the

choking mechanism It ensures that nodes cooperate and eliminates

the 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.

14

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.

15

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.

16

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 or Currently-Downloading state.

17

BiToS Approach

a

Small Windows

Storing buffer

Remaining Windows

18

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.

19

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 p can 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.

20

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.

21

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.

22

Simulation result (I)

Missing playback deadlineWhy not decrease further?Since the flash crowd of peer at beginning of simulation

The optimal size of the High Priority Set (≈8%) must capture the pieces that will be needed soon for the playback.

23

Simulation result (II)

Time for seeder stay in the network

Use 5 min length video-file

With the rarest first algorithm each peer chooses to download rare pieces which might not be available in the future.

24

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/

25

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.

26

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.