P2PCAST: A Multi-Cast Scheme for Streaming Data - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

P2PCAST: A Multi-Cast Scheme for Streaming Data

Description:

P2PCAST: A Multi-Cast Scheme for Streaming Data Antonio NICOLOSI Siddhartha ANNAPUREDDY – PowerPoint PPT presentation

Number of Views:78
Avg rating:3.0/5.0
Slides: 19
Provided by: M1002
Category:

less

Transcript and Presenter's Notes

Title: P2PCAST: A Multi-Cast Scheme for Streaming Data


1
P2PCAST A Multi-Cast Scheme for Streaming Data
  • Antonio NICOLOSI
  • Siddhartha ANNAPUREDDY

2
Motivation
  • Want to stream data to lots of users
  • Easy solution
  • Pay for lots of bandwidth
  • Only fat cats can afford it
  • More democratic alternative
  • Users donate bandwidth to help disseminate the
    data

3
The Setting
  • A single content provider (the source)
  • Other participants are peers
  • Each node has limited bandwidth
  • Assume users exhibit fail-stop behavior

4
Goals
  • Scale to thousands of nodes
  • Participants join/leave dynamically
  • Users donate as much bandwidth as they take
  • Fault-tolerance
  • Security

5
Design Guidelines
  • Join by contacting a random node in system
  • No need to give notice while leaving
  • Forest of multicast trees
  • Each node is internal in exactly one tree
  • Trees are repaired locally upon node failures

6
Algorithm
  • Forest of f trees (of arity f)
  • Insertion Joining the system
  • Deletion Survive node loss

7
Insertion
  • Users are leaf in all trees of the forest but one
  • Place new user in the next-to-last level of one
    (random) tree
  • Each node is either complete or incomplete
  • Incomplete nodes only at the next-to-last level
  • Randomness ensures (almost) balanced trees

8
Insertion (contd)
  • Contact a random node in the system
  • The node contacted can be
  • Complete
  • Incomplete
  • Lonely child

9
Insertion (contd)
  • Complete node
  • Join tree where the contact is a leaf
  • Search down the other tree
  • Two Subcases
  • Complete/Incomplete

10
Insertion (contd)
  • Incomplete node
  • Adopt the contact node in one tree
  • Become its child in the other tree
  • Lonely Child
  • Redirect to the parent (back to case above)

11
Deletion
  • Ideally, undo the join process
  • Not easy ? failed node can be high up in the
    tree
  • Get as close as possible
  • Push bubble down the tree
  • Repair the last level easy ?

12
Deletion (contd)
  • Get down to the next-to-last level
  • Just exchange parent with an arbitrary child
  • Finally, bubble can end up being
  • Complete
  • Incomplete

13
Deletion (contd)
  • Complete bubble
  • Drop an arbitrary child
  • Ask failed nodes other parent to adopt it
  • Incomplete bubble
  • Drop child in the other tree
  • Ask failed nodes other parent to adopt it

14
Architecture
stream

P2Pcast Protocol

registry
15
Implementation
  • Random node selection simulated via centralized
    registry can be replaced using any routing
    overlay
  • For fault-tolerance, stream of data is
    forward-error corrected

16
RPC Protocols
  • Control Protocol
  • TAKEON, SUBSTITUTE, SEARCH (Insertion)
  • REPLACE, DIRECT
    (Deletion)
  • INSPECT, UPDATE
    (Misc)
  • Registry Protocol
  • JOIN, DELETE

17
Related Work
  • Scribe/SplitStream
  • Assume some users have spare bandwidth
  • Require users to be willing to relay data for
    groups they do not belong to
  • Properties of the forest of multicast trees bound
    to parameters of Pastry

18
Conclusions and Future Work
  • Scale to thousands of nodes
  • Participants join/leave dynamically
  • Users donate as much bandwidth as they take
  • Fault-tolerance
  • Security
Write a Comment
User Comments (0)
About PowerShow.com