Some P2P Based Multicast Systems
Download
Report
Transcript Some P2P Based Multicast Systems
Cooperative Overlay
Networking for Streaming
Media Content
Feng Wang1, Jiangchuan Liu1, Kui Wu2
1School
of Computing Science, Simon Fraser University
{fwa1, jcliu}@cs.sfu.ca
2Department
Chapter 6
of Computer Science, University of Victoria
[email protected]
Cooperative Networking (Wiley)
Editors: M. S. Obaidat and S. Misra
Outline
Background and Motivation
A Cooperative Overlay Design:
mTreebone
Treebone Construction and Optimization
Collaborative Push/Pull Data Delivery
Performance Evaluation
Conclusion and Future Work
2
Background
Architectural Choices for Media Streaming
IP Multicast
Implement multicast at the IP (network) layer
Multicast routing is the most efficient
Limited in reach and scope due to concerns
regarding scalability, deployment, and support for
higher level functionality
Proxy Caching
Exploits the temporal locality of client requests for
streaming media content
3
Background (cont’d)
Deploy a group of proxies to cooperatively utilize
caching space, balance loads and improve the overall
performance
Peer-to-Peer
Functionality is pushed to users actually participating
in the multicast group
Administration, maintenance, responsibility for
operations of a system are distributed among users
Research focuses on simultaneous media broadcast
using the application end-point architecture
4
Motivation
Previous proposals for Peer-to-Peer Media
Streaming can be broadly classified into
two categories
Tree-based approaches
Peers are organized into structures (typically trees)
for delivering data
Each data packet is pushed using the same structure
Nodes on the structure have well-defined
relationships, e.g., “parent-child” relationships in
trees
5
Motivation (cont’d)
Mesh-based approaches
Do not construct or maintain an explicit structure for
delivering data
Use the availability of data to guide the data flow
Based on data availability information periodically
exchanged among partner nodes, a node may then
retrieve unavailable data from other partners, or
supply available data to other partners
6
Motivation (cont’d)
Different category of approaches have
different advantages
Mesh-based approaches have good robustness,
but suffer from the efficiency-latency tradeoff
Tree-based approaches use efficient push
delivery, but have to face data outage during
internal node dynamics.
Can we combine their advantages together to offer high
efficiency and resilience with moderate maintenance cost?
7
Our Idea - mTreebone
Hybrid Cooperative Tree/Mesh Overlay
Organize stable nodes as a tree backbone
(Treebone) to efficiently deliver data
Mesh overlay assists
Treebone and handles
dynamics
8
Questions
How to identify stable nodes?
How to better organize these nodes?
How to reconcile Treebone and mesh overlay?
9
Questions
How to identify stable nodes?
How to better organize these nodes?
How to reconcile Treebone and mesh overlay?
10
Stable Node Identification
Previous studies: nodes with higher ages tend
to stay longer
Select an Age Threshold T and consider
nodes staying longer than T as stable
Objective: maximize the Expected Service Time of
a Treebone node
For Pareto Dist. (with k as shape parameter)
11
Treebone Evolution
Each new node attaches to a node with
available bandwidth
Non-Treebone nodes check periodically until
promoted into Treebone
0
5
5
0
7
17
10
6
11
6
12
8
17
12
Questions
How to identify stable nodes?
How to better organize these nodes?
How to reconcile Treebone and mesh overlay?
13
Treebone Optimization
Reduce average depth of Treebone node
High-Degree-Preemption
Low-Delay-Jump
Theorem The average depth of Treebone is minimized
when high-degree-preemption and low-delay-jump
terminate at all Treebone nodes.
14
Questions
How to identify stable nodes?
How to better organize these nodes?
How to reconcile Treebone and mesh overlay?
15
Seamless Push/Pull Switching
Tree-push pointer
Playback Direction
receives data pushed
Playback Pointer Tree-push Pointer
from Treebone
Mesh-pull window
detects loss and pull data Mesh-pull Window
from mesh neighbors
To avoid duplicate data, mesh-pull window
always keeps behind Tree-push pointer
16
Outline
Introduction
mTreebone Design
Treebone Construction and Optimization
Collaborative Push/Pull Data Delivery
Performance Evaluation
Conclusion and Future Work
17
Performance Evaluation
Scenario
Simulations
Arrival: Poisson dist.
Duration: Pareto dist.
5000 nodes
Prototype Experiments on PlanetLab
200 nodes
18
Simulation Results
Data Loss Rate
Startup Latency
Playback Delay
19
Experiment Results
Data Loss Rate
Startup Latency
Playback Delay
20
Experiment Results (cont’d)
Control Overhead
Different Age Threshold
Different Churn Rate
21
Outline
Introduction
mTreebone Design
Treebone Construction and Optimization
Collaborative Push/Pull Data Delivery
Performance Evaluation
Conclusion and Future Work
22
Conclusion
mTreebone: a hybrid cooperative overlay
taking advantages of both tree and mesh
Treebone by stable nodes to offer high efficiency;
mesh structure to improve the robustness
Threshold based Treebone nodes selection
Treebone construction and optimization
Seamless push/pull switching buffer
23
Future Work
Other tree organization and optimization
methods to further improve Treebone’s
efficiency and interactions with mesh
Multi-tree-based backbone, which may lead
to more balanced load and finer-grained
bandwidth control
Conduct large scale experiments as well as
real deployment over global Internet
24