p2pc ast : a peer-to-peer multi-cast scheme for streaming data antonio nicolosi...
Post on 20-Dec-2015
217 views
TRANSCRIPT
P2PCAST: A Peer-to-Peer Multi-Cast
Scheme for Streaming Data
Antonio NICOLOSI
{nicolosi,siddhart}@cs.nyu.edu
New York University
Siddhartha ANNAPUREDDY
August 10th, 2003 Cambridge, MA, USA
1st IRIS Student Workshop
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
2
Motivation: Streaming media
unfair!
• Multicast with homogeneously limited bandwidth– Stream 256-kbps audio to 1000’s of users– Typical DSL/cable out-bandwidth: 384 kbps
Need a forest of multicast trees
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
3
Striping the Data
2
3
4
6
1
5
7
3
1
2
7
4
5
6
• Each stripe carries a fraction of the stream
• Peers occur once in each tree• Maintenance doesn’t disrupt
data delivery (fault-tolerance)– Path independence
1
3
4
5
2
6
7
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
4
(Most) Related Work
SplitStream:• Stripes content over multiple trees• Exploits heterogeneous bandwidth scenarios• Limitations
– Trade-off: link stress vs. path independence
– Can achieve both only with “[…] sufficient excess forwarding capacity” (unsuitable for our DSL scenario)
– Number of stripes in the multicast forest bound to Pastry/Scribe’s parameters
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
5
Design Guidelines, or: the P2PCAST cookbook
• Stripe the content over a forest of multicast trees
• Build a multicast forest with a regular structure– Upstream link stress should never exceed 1– Path independence (fault tolerance)
• Join by contacting an arbitrary peer
• Correlate peer reliability with its position(s) in the forest
• Trees are repaired locally upon node failures
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
6
The P2PCAST ProtocolThe Multicast Forest
• Goal: build forest with a regular structure
– Use f complete trees
of arity f (every node has either f children or none)
1
3
4
5
2
6
7
2
3
4
6
1
5
7
3
1
2
7
4
5
6
• But … that’s too rigid!
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
7
The P2PCAST ProtocolThe Multicast Forest (cont’d)
SplitStream: uses arbitrary (irregular) trees P2PCAST: confines “anomalies” to bottom of
trees
6 1 2
3
1 2 7
4
1
3 4 5
6 7
2
3 4 6
5 7 5
Gains flexibility while preserving a regular structure
2
2
8
1
1
8
6
6
8
8
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
8
• proper vs. improper peers
• Proper peers are leaves in all trees but one (e.g., 1) – In each stripe, a proper peer
can occur as complete node, regular leaf or lonely leaf
• Improper peers have a single leaf-child in each tree (e.g., 5)
The P2PCAST ProtocolTerminology 1
3
4
5 2
2
1
4
5 3
3
2
4
5 1
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
9
• New users join as improper peers, in the next-to-last level of each tree
• If a (distinct) regular leaf is given in each tree, then can join as shown before
The P2PCAST ProtocolInsertion — joining the system
6 1 2
3
1 2 7
4
1
3 4 5
6 7
2
3 4 6
5 7 5
1
1
8
6
6
8
2
2
8
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
10
7 1
1 7
1 7
The P2PCAST ProtocolConsolidation — lazy fix-up of the multicast trees
6
3
1 2 7
10 9 8
5 4
1
10 4 5
9 7 8 3
6 2
2
9 4 6
5 3 8
3
3
10
What if there are not enough regular leaves?
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
11
2
8
The P2PCAST ProtocolDeleting an improper peer
3
1 2 7
4
1
3 4 5
7
2
3 4 6
5 7 5
8
2 6
Deleting node 8
8
2
1
8
8
1
8
1
6
8
8
6
8
6
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
12
The P2PCAST ProtocolDeleting a proper peer
3
1 2 7
4
1
3 4 5
6 7
2
3 6
5 7
2
8
1
8 5
6
8
6
2
6
2
8
2
8
2 2
8
2
8
2
8 8
2
Deleting node 2
4 Back to the previous case
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
13
• Details left uncovered in this talk– How joining peer finds out f regular leaves
– How improper peers find each other before running consolidation
– How deletion completes if no children of failed node is improper peer (“expansion”)
• See the paper for full algorithms
The P2PCAST ProtocolThe devil is in details
August 10, 2003 ISW '03 — Antonio Nicolosi — NYU
14
Conclusions
Participants join/leave dynamically
Users donate as much bandwidth as they take
Fault Tolerance
Regular structure
Scale to 1000’s of peers—work in progress
Security—future work