Download presentation
Presentation is loading. Please wait.
Published byIsaac Nelson Modified over 8 years ago
1
Inside the New Coolstreaming: Principles, Measurements and Performance Implications Bo Li, Susu Xie, Yang Qu, Gabriel Y. Keung, Chuang Lin, Jiangchuan Liu and Xinyan Zhang
2
Paper overview Introduces an improved version the original CoolStreaming protocol: Partitions streams into substreams For load balancing, not fault-tolerance Switches to a push policy for parents Presents extensive data on CoolStreaming's performance
3
Single tree-based multicast Three nodes out of seven do all the work!
4
Single tree-based multicast Bad choice for P2P multicasting Interior nodes do all the work Leaf nodes do nothing Does not tolerate interior node failures Even worse for high bandwidth applications Most peers do not have enough resource to transmit the data to act as leaf nodes
5
Multi-tree approach Media source encodes video stream over multiple sub-streams Each sub-stream is distributed over a separate overlay tree Advantages Better resilience Fairer bandwidth utilization Disadvantage: More complex to manage (cf. SplitStream)
6
CoolStream Basic components Multiple sub-streams Buffer partitioning Push content delivery Parent reselection
7
Key choices Two basic functionalities Locating the node from which a userobtains its video data How the video stream is delivered BitTorrent uses Random peer selection (BitTorrent) Hybrid push and pull (NEW) Decisions based on which node has which data Nodes periodically exchange information
8
Advantages Easy to deploy No need to maintain any global state information Efficient Data forwarding is dictated by data availability Robust and resilient Periodic exchanges of data availability information
9
Basic modules Membership manager: maintains partial view of the overlay Partnership manager: establishes and maintains partnerships exchanges availability of information usin Buffer Maps Stream manager: handles actual data delivery
10
How it works Incoming peer contacts bootstrap node Gets a list of nodes and stores it in its mCache Randomly selects a few nodes to initiate partnerships Exchanges block availability information with partners Results in parent-child relationships Parent sends video data to child
11
Multiple sub-streams Partition video stream into fixed size blocks Assign these blocks to K substreams Block 1 to stream 1 … Block K+1 to stream 1 … Block nK+i to stream i
12
Buffer partitioning Buffer map comprises two elements Sequence number of latest received block in each sub-stream List of requested sub-streams New need for substream synchronization
13
Contribution index Ratio of Aggregate upload bandwidth over Aggregate download bandwidth Measure contribution of each user Four levels Level 0: contribution index > 1 Level 1: 0.5 < contribution index < 1 Level 2: 1/6 < contribution index < 0.5 Level 3: contribution index < 1/6 65.1 percent of peers!
14
Push and pull scheme Specific to the new CoolStreaming When a peer subscribes to a substream, It connects to a potential parent via a single request (pull ) When potential parent receives the request, It starts pushing blocks from the specified substream to its new child
15
Selecting a potential parent Assume a potential parent has blocks n to m Which blocks should the peer request? Not blocks in vicinity of block m Continuity issues if parent does not receive successive blocks in time Not blocks in vicinity of block n Blocks will be the first ones to be dumped by the parent
16
Parent reselection When a parent peer lags too much behind in the blocks and a better alternative exists
17
Log and data collection Not discussed
18
Conclusions Critical performance issue in P2P streaming is "excessive start-up time and high join failure rates during flash crowds "There is a highly unbalanced distribution in terms of uploading contributions from nodes."
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.