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