Title: Jiangchuan Liu with Xinyan Zhang, Bo Li, and T.S.P.Yum
1CoolStreaming/DONet A Data-Driven Overlay
Network for Peer-to-Peer Live Media Streaming
- Jiangchuan Liu with Xinyan Zhang, Bo Li, and
T.S.P.Yum - Hong Kong University of Science and Technology,
Clear Water Bay, Hong Kong - Infocom 2005
-
- Lyu-Han Chen
-
2008/04/21
2Some Facts
- DONet Data-driven Overlay Network
- CoolStreaming Cooperative Overlay Streaming
- Till March 2005
- Average online users 6,000
- Peak-time online users 14,000
3Outline
- Motivation
- Background and related work
- Design of DONet/CoolStreaming
- Performance evaluation and implementation
- Conclusion
4Motivation
- Enable large-scale live broadcasting in the
Internet environment - Capacity limitation
- Streaming 500Kbps, server outbound band 100Mbps
- Network heterogeneity
- No QoS guarantee
5Client/Server Poor scalability
6IP multicast Limited deployment
7Collaborative Communications
8Data-driven Overlay
- Data-centric design
- No prescribed roles like parent/child,
upstreaming/downstreaming. - The availability of data that guides the flow
directions.
9Data-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
10Features 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
11Outline
- Motivation
- Background and related work
- Design of DONet/CoolStreaming
- Implementation and empirical Study
- Conclusion
12Related 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
13Application Layer Multicast
- Issue Node dynamics
- Structure maintenance
- Passive/proactive repairing algorithms
- Advanced coding
14Tree-based protocols
- Centralized algorithm relies on a powerful root
node. - Experience frequent breaks in the highly dynamic
Internet environment.
15Gossip-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
16Outline
- Motivation
- Background and related work
- Design of DONet/CoolStreaming
- Implementation and empirical Study
- Conclusion
17Key Modules
- Membership manager
- mCache partial overlay view
- Update by gossip
- Partnership manager
- Random selection
- Partner refinement
- Transmission Scheduler
18Node Join / Membership Management
- mCache (membership information)
- Each node periodically generates a membership
message to announce it existence. - lt seq_num, id, num_partner, time_to_live,
(last_update_time) gt
partners
19Buffer Map
- The availability of the segments of the buffer of
a node can be represented by a Buffer Map. - Sliding window 1, 1, 0, 0, 0, 1, 1, , 0
- Each node continuously exchange its BM with the
partners. - Schedules which segment is to be fetched from
which partner accordingly.
20Transmission Scheduling
- Problem From which partner to fetch which data
segment ? - Constraints
- Data availability
- Playback deadline
- Heterogeneous partner bandwidth
21Scheduling algorithm
- Variation of Parallel machine scheduling
- NP-hard
- Heuristic
- Message exchanged
- Window-based buffer map (BM) Data availability
- Segment request (BM-like bit sequence) (piggyback
by the data packets) - Less suppliers first
- Multi-supplier Highest bandwidth within deadline
first
22Failure Recovery
- Graceful departure
- Node failure
- Choose better score partner
- More available segments
- Higher bandwidth
23Analysis of Overlay Radius
- Reflect the end-to-end delivering latency.
- Modeled by a Breath-First Search tree.
24Analysis of Overlay Radius
25Analysis of Overlay Radius
26Outline
- Motivation
- Background and related work
- Design of DONet/CoolStreaming
- Performance evaluation and implementation
- Conclusion
27PlanetLab Experiments
28Control overhead
29Continuity index
30Control overhead
31Continuity index
32Comparison with Tree-based Overlay
33Continuity index
34Online Statistics (Jun 21, 2004)
35Outline
- Motivation
- Background and related work
- Design of DONet/CoolStreaming
- Implementation and empirical Study
- Conclusion
36Conclusion