1 / 37

Peer-to-Peer Streaming: An Hierarchical Approach

Peer-to-Peer Streaming: An Hierarchical Approach. Duc A. Tran (with Kien A. Hua and Tai T. Do) Data Systems Group (UCF). Roadmap. What is P2P? Why P2P Streaming? Problem Statement Solution: ZIGZAG Performance Study Future Work. What is P2P?.

jersey
Download Presentation

Peer-to-Peer Streaming: An Hierarchical Approach

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Peer-to-Peer Streaming: An Hierarchical Approach Duc A. Tran (with Kien A. Hua and Tai T. Do) Data Systems Group (UCF)

  2. Roadmap • What is P2P? • Why P2P Streaming? • Problem Statement • Solution: ZIGZAG • Performance Study • Future Work

  3. What is P2P? • The sharing of computer resources and services by direct exchange between systems: • exchange of information, processing cycles, cache storage, and disk storage for files. • P2P uses existing desktop computing power and networking connectivity, • allowing economical clients to leverage their collective power to benefit the entire enterprise

  4. P2P Streaming • Sharing of network bandwidth • Streaming: The user plays the data as as it arrives. • Consider a new user A: • If A is the first user, A gets the stream from the central site • Else, A can get the stream from the central site or a set of users who have already been receiving the stream

  5. Why P2P Streaming? source Oh, I am exhausted! Client/server approach P2P approach

  6. High Liveness Scalability Low Overhead Robustness Problem Statement Live media streaming

  7. Don’t make me a bottleneck! new Is it too far? I want to join fast Goal 1: High Liveness source

  8. Goal 2: Robustness The server is already busy source Too many reconnections!

  9. Goal 3: Low Control Overhead • A peer may have to periodically exchange information with others to maintain its position and connections. • The overhead of this task should be small and independent of the system size

  10. Goal 4: Scalability • When more peers join the system: • Control overhead may be increased • A peer may have to serve more others • The P2P tree may be deeper • A failure may result in many reconnections Our goal: Minimizing the above effects

  11. Proposed Solution: ZIGZAG • The 4 goals are achieved, especially: • Peer degree: bounded by a constant • Tree height: logarithmic with the system size • Control overhead: bounded by a constant (on average) • Failure recovery: done regionally, • affecting at most a constant number of peers • mostly no effect on the server • Administrative Organization (AO): A clustering of peers • Multicast tree: Built atop the AO based on C-rules

  12. others S: server vice-head head Administrative Organization S L 4 2 5 S L 4 7 1 3 1 2 6 8 11 S 7 4 29 14 L 3 17 1 2 23 5 6 20 26 0 12 13 30 9 10 15 16 18 19 21 22 24 25 27 28 31 Cluster size: [k, 3k], Highest-layer cluster: [2, 3k] (k  4)

  13. Foreign head Foreign inferior Super peer Foreign cluster inferior Terms 1 2 4 1 2 3

  14. Connectivity Rules(C-rules) (In this example, k = 4)

  15. C-rules Rule 1: A peer, when not at its highest layer, neither has a link out nor a link in Rule 2: Non-head members of a cluster must receive the stream from their vice-head Rule 3: The vice-head of a cluster, except for the server, must receive the stream from a foreign head

  16. P2P Tree The tree height is at most 2logkN+1 The node degree is at most 6k-3

  17. Control Overhead • A peer exchanges soft-state information with • Its parent • Its children • Its clustermates The worst-case control overhead is O(klogkN) The average control overhead is O(k)

  18. Join • The new user sends a request to the server • The request is forwarded down the tree until reaching a vice-head of a layer-0 cluster of size [k, 3k-1] • Goal: to be as close to the server as possible • Among children to forward the request, choose Y: Addable(Y) and D(Y)+d(Y,new) is min Max number of contacts: O(klogkN)

  19. Failure Recovery • A node X at layer j is down: • The parent of X removes its link to X • X is vice-head: the layer-j cluster of X needs to a new vice-head • The children of X need a new parent to get the stream • i < j: Each layer-i cluster of X needs a new head since X no longer exists

  20. others S: server vice-head head Peer 3 fails S L 4 2 5 S L 4 7 1 3 1 2 6 8 11 S 7 4 29 14 L 3 17 1 2 23 5 6 20 26 0 12 13 30 9 10 15 16 18 19 21 22 24 25 27 28 31

  21. others S: server vice-head head Failure Recovery(peer 3 fails) Max number of reconnections: 6k-2

  22. Cluster Maintenance • As new peers are added to the administrative organization (AO): • A cluster may become oversize => split this cluster into two smaller clusters • As peers are removed from the AO: • A cluster may become undersize => merge this cluster with another to make a larger cluster Goal: The conditions of C-rules must be met

  23. Cluster Split Split algorithm: run by the head Xhead Max number of reconnections: old cluster size + 6k - 1

  24. Cluster Merge Merge algorithm: run by the head Xhead Max number of reconnections: old cluster size + 6k - 1

  25. Performance Study • Underlying network: • 10,000 nodes • Generated by GT-ITM Generator • P2P network: • 5000 peers • Up to 2500 failures • k = 5

  26. Peer Degree

  27. Control Overhead

  28. Failure Overhead

  29. Split Overhead

  30. Merge Overhead

  31. Join Overhead

  32. ZIGZAG versus NICE • NICE: (Banerjee et. al., Sigcomm 2002) • Administrative organization: there is no “vice-head” • P2P tree: head is always the parent of its clustermates • ZIGZAG: • Administrative organization: “head” and “vice-head” • P2P tree: “vice-head” is the parent of its non-head clustermates

  33. Peer Degree

  34. Control Overhead

  35. Failure Overhead

  36. Link Stress

  37. Conclusions • A clustering method for the administrative organization • C-rules: A multicast tree construction method • Future Work: Multi-send multi-receiver, client heterogeneity, Zigzag in MANETs?

More Related