1March -05 Jiangchuan Liu with Xinyan Zhang, Bo Li, and T.S.P.Yum Infocom 2005 CoolStreaming/DONet:...

Post on 21-Dec-2015

213 views 0 download

Tags:

Transcript of 1March -05 Jiangchuan Liu with Xinyan Zhang, Bo Li, and T.S.P.Yum Infocom 2005 CoolStreaming/DONet:...

March -05 1

Jiangchuan Liu

with Xinyan Zhang, Bo Li, and T.S.P.Yum

Infocom 2005

CoolStreaming/DONet: A Data-Driven Overlay Network for Peer-to-Peer Live Media St

reaming

March -05 2

Some Facts DONet – Data-driven Overlay Network

CoolStreaming – Cooperative Overlay Streaming

First release (CoolStreaming v0.9) May 2004

Till March 2005 Downloads: >100,000 Average online users: 6,000 Peak-time online users: 14,000 Google entries (CoolStreaming): 5130

March -05 3

Outline Motivation Background and related work Design of DONet/CoolStreaming Implementation and empirical Study Future work

March -05 4

Motivation Enable large-scale live broadcasting in the In

ternet environment Capacity limitation

־ Streaming: 500Kbps, server outbound band: 100Mbps

־ 200 concurrent users only

Network heterogeneity No QoS guarantee

March -05 5

Client/Server: Poor scalability

Client

Client Client

Client

Client

Client

March -05 6

IP multicast: Limited deployment

Client

Client

Client

Client

Client

Client

Client

March -05 7

Collaborative Communications

Client

Client Client

Client

Client

Client

March -05 8

Outline Motivation Background and related work Design of DONet/CoolStreaming Implementation and empirical Study Future work

March -05 9

Related Solutions

Content distribution networks Expensive Not quite scalable for a large number of

audiences Self-organized overlay networks

Application layer multicast Peer-to-peer communications

March -05 10

Related Solutions

Content distribution networks Expensive Live streaming (?)

Self-organized overlay networks Application layer multicast Peer-to-peer communications

March -05 11

Application Layer Multicast

Issue: Structure construction Tree

NICE, CoopNet, SpreadIt, ZIGZAG

Mesh Narada and its extension

Multi-tree SplitStream

C0

B0 B2

B1

B0 B2

B1

A3

A0

A1 A7

C0

A7A2

A3

A0

A1 A2

(a) (b)

A

B C D

E

F G

H

A

B C D

E

F G

H

A

B C D

E

F G

H

I

(a) (b) (c)

I

March -05 12

Application Layer Multicast (cont’d)

Issue: Node dynamics Structure maintenance

Passive/proactive repairing algorithms Advanced coding

PALS (layered coding) CoopNet (multiple description coding)

March -05 13

Gossip-based Dissemination Gossip

Iteration־ Sends a new message to a random set of nodes

־ Each node does similarly in the next round

Pros: Simple, robust Cons: Redundancy, delay Related

Peer-to-peer on-demand streaming

March -05 14

Outline Motivation Background and related work Design of DONet/CoolStreaming Implementation and empirical Study Future work

March -05 15

Data-driven Overlay (DONet) Target

Live media broadcasting No IP multicast support

Core operations Every node periodically exchanges data availability

information with a set of partners Then retrieves unavailable data from one or more

partners, or supplies available data to partners

March -05 16

Features of DONet Easy to implement

no need to construct and maintain a complex global structure

Efficient data forwarding is dynamically

determined according to data availability, not restricted by specific directions

Robust and resilient adaptive and quick switching

among multi-suppliers

March -05 17

Key Modules

Membership manager mCache – partial overlay view Update by gossip

Partnership manager Random selection Partner refinement

Transmission Scheduler

March -05 18

Transmission Scheduling

Problem: From which partner to fetch which data segment ?

Constraints Data availability Playback deadline Heterogeneous partner bandwidth

March -05 19

Scheduling algorithm Variation of Parallel machine scheduling

NP-hard

Heuristic Message exchanged

־ Window-based buffer map (BM): Data availability־ Segment request (piggyback by BM)

Less suppliers first Multi-supplier: Highest bandwidth within deadline first

Simpler algorithm in current implementation Network coding ?

March -05 20

Analysis on DONet Coverage ratio for distance k

E.g. 95% nodes are covered in 6 hops for M=4

Average distance O(logN) DONet vs Tree-based overlay

Much lower outage probability

March -05 21

Outline Motivation Background and related work Design of DONet/CoolStreaming Implementation and empirical Study Future work

March -05 22

PlanetLab Experiments

Command Dispatcher

DONet System

Console

Command Queue

Automaton Report Collector

Distributed experimental system DONet Module Console and automation Command dispatching and report collection

Caveats Scalability Reproducibility Representability

March -05 23

Geographical Node Distribution

May 24, 2004

# of Active Node: 200-300

March -05 24

Planet-Lab Result Data continuity, 200 nodes, 500 kbps streaming

March -05 25

Control overhead

March -05 26

Implementation: CoolStreaming First release: May 30, 2004 Source code: 2000-line Python Programming time:

PlanetLab prototype: 2 weeks Export from prototype: 2 weeks

Support formats: Real Video/Windows Media Platform/media independent

Scale and capacity Total downloads: Peak time: 14000 concurrent users Streaming rate: 450-700kbps

March -05 27

User Distribution (June 2004)

Heterogeneous network environment LAN, DSL, CABLE...

March -05 28

Online Statistics (Jun 21, 2004)

Average Packet Loss around 1% - 5%

March -05 29

Observations Current Internet has enough available band

to support TV-quality streaming (>450Kbps) Bottleneck: server, end-to-end bandwidth

Larger data-driven overlay

better streaming quality Capacity amplification

March -05 30

Outline Motivation Background and related work Design of DONet/CoolStreaming Implementation and empirical Study Future work

March -05 31

Future of DONet/Coolstreaming Content

Solution: DONet/Coolstreaming as a capacity amplifier between content provider and clients

Virtually part of network infrastructure Enhancement

Scheduling algorithm־ Simplified version

־ Network coding

Transport protocol־ TCP (?)

March -05 32

Future of DONet/Coolstreaming Enhancement (cont’d)

User interface Combined with caching Combined with CDN

־ Provide world-wide reliable media streaming service

On-demand streaming

March -05 33

Q & A

Thanks