exploring vod in p2p swarming systems by siddhartha annapureddy, saikat guha, christos gkantsidis,...
Post on 27-Dec-2015
214 Views
Preview:
TRANSCRIPT
Exploring VoD in P2P Swarming Systems
By Siddhartha Annapureddy, Saikat Guha, Christos Gkantsidis, Dinan Gunawardena, Pablo Rodriguez
Presented by Svetlana Geldfeld
P2P Networks
Used in many different applications for large scale content distribution
Have recently been accepted by digital media companies as an alternative distribution mechanism
Have recently been proven to be feasible for live media distribution (CoolStreaming and others)
Still challenges arise when attempting to use the system for Video-on-Demand
Paper Focus
Analysis of the issues of providing VoD using P2P
Main focus on mesh-based networks Scheduling techniques and network coding
used to improve efficiency and resources utilization
Feasibility is shown using simulations and a prototype implementation
Main concern is the feasibility of play-as-you-download P2P systems
System Requirements
Large scale of video content distribution Low startup times and sustainable playback rates VoD users can arrive at any point in time
Multicast Paradigm
Cisco IP Multicast Example
Shortcoming: Require multicast-enabled infrastructure
Peer-to-Peer Solution
No infrastructure support required Same scalable distribution solution
Two approaches to building a P2P network: Tree-based (push) Mesh-based (pull)
Tree-Based P2P Network
Trees or forests are constructed for data distribution
A peer is either an interior node or a leaf node All data is forwarded down the structure from
a server (root of a tree) down to a leaf node. Shortcomings: System is not fair and tends to quickly get
unbalanced Interior nodes may not have sufficient network
capacity to handle the application.
Mesh-Based P2P Network
Do not enforce fixed structure Allow peers to exchange random blocks of
data (efficiency) Have lower protocol overhead Much easier to design More resilient to high rates of churn Proved to be effective and efficient for bulk
file distribution
Proposed System Model
A special peer (server) contains a highly demanded video content
Users arrive at random points in time Video content is only provided sequentially
from the beginning (no Fast Forward functionality)
The resources (network bandwidth) are limited Download and upload capacity of each peer is
also limited with download rate being higher that upload)
Network Model – Main Components
System consists of peers and a tracker Tracker is responsible for new peer
accommodation into the system Each peer in the system is connected to a
small subset of active nodes (neighborhood of a peer)
Peers periodically drop and establish connections in an attempt to increase download rate
Network Model – File Structure
File is divided into a number of segments
Segments are further divided into blocks
Each peer has to download all blocks in order to view the video segment.
If a block is missing, video pauses.
Experimental Setup Simulator and a prototype network were
created toa.understand the performance requirements andb.evaluate effectiveness of proposed algorithms.Simulator:a.Models performance factors (access capacities,
block scheduling algorithms, etc);b.Allows to experiment on large networks.Implementation:Allows a more detailed insight into the system
operation.
Simulator Operates in discrete intervals of time
(rounds). Takes as input the size of a video file in blocks
and the number of nodes Nodes arrive/depart during simulation Nodes locate their peers at random during
each round All block transfers happen simultaneously Simulation does not account for network
delays, locality properties, etc.
Implementation Consists of a.Peers – active nodesb.Tracker – enables peer discovery and
matchingc. Logger – keeps network statistics
The implementation is only used to study small scale scenarios.
Main System Description Terms: Setup time – the initial
buffering time Goodput – the sustainable
playback rate. Throughput – total number
of blocks the node has exchanged per round
Goal: Maximise throughput (system efficiency) and Provide high goodput (playback rates).
Evaluated Algorithms Naïve Approaches True P2P (random block exchange) Sequential block exchange Segment-random policy: divides the files into segments and blocks; exchange is done at random on block level, but sequentially on segment level. Rarest client : Client requests a globally rarest block Algorithm requires global information
Network Coding Network coding is a technique where,
instead of simply relaying the packets of information they receive, the nodes of a network will take several packets and combine them together for transmission.
In the simulation the codinga. Is only restricted to segmentsb.Prevents the occurrence of rare blocks and
ensures that each block is useful with high probability.
Algorithm Performance Comparison - Goodput
Algorithm Performance Comparison - Throughput
Network Coding Advantages Provides greater throughput (about 14%
better than global rarest) Results in significantly less variance Provides more predictable download times Provides greater benefits in such cases as:a.Dynamic arrivals and departuresb.Heterogeneous network capacitiesc. Limited peer network visibility
Scheduling Across Segments Considerations: Naïve scheduling reduces throughput Network coding cannot be used
Proposed approach: Worst Seeded First Algorithm
Similar to traditional rarest-first approaches.The algorithm is particularly useful for the
segments that are underrepresented in the network.
Worst Seeded First Algorithm
Worst Seeded First Algorithm
Assumption:
The source node has global knowledge of the segment representation in the network (can be done either centrally or distributively).
Operation and Effects
Policy heavily relies on a good estimate of segment representation in the network.
It increases the diversity of segments in the network
The segment that is least well represented is always picked first.
The segment representation estimate includes partially downloaded segments.
Performance Analysis
Conclusions
Naïve, greedy scheduling algorithms provide bad throughputs
Network coding is only effective when applied over a small segments (few seconds) of a video file.
Network coding reduces number of duplicate uploads and minimizes the performance variance.
Network coding improves efficiency of the system.
Conclusions
Network coding does not solve a problem of scheduling across segments.
Spanning the entire video file requires algorithms that avoid underrepresentation of segments.
The rarest first algorithms are feasible and provide good system throughput.
A combination of network coding and segment scheduling provides significant performance improvement.
Conclusions
Mesh-based P2P systems are simple to engineer and result in high resource utilization.
“Play as you download” experience with P2P systems can be achieved by combining network coding and segment scheduling.
The proposed mesh-based system is capable of playback rate close to peer’s maximum bandwidth (with a small startup delay).
top related