Upload
ronny72
View
1.154
Download
4
Embed Size (px)
DESCRIPTION
Citation preview
Quality of Service in Peer-to-Peer Media Streaming
Darshan PurandareUniversity of Central FloridaOrlando, FL, USA
Outline Peer-to-Peer (P2P) Media Streaming Related Work Current Issues Our Proposed Methodology Alliance Theory Important P2P Media Streaming Metrics Improving Locality of Traffic Security Issues Future Trends
Introduction Advent of multimedia technology and broadband surge
lead to: Excessive usage of P2P application that includes:
Sharing of Large Videos over the internet Video-on-Demand (VoD) applications P2P media streaming applications
BitTorrent like P2P models suitable for bulk file transfer P2P file sharing has no issues like QoS:
No need to playback the media in real time
Downloading takes long time, many users do it overnight
Introduction Contd.
P2P media streaming is non trivial: Need to playback the media in real time
Quality of Service Procure future media stream packets
Needs reliable neighbors and effective management High “churn” rate – Users join and leave in between
Needs robust network topology to overcome churn Internet dynamics and congestion in the interior of the network
Degrades QoS Fairness policies extremely difficult to apply like tit-for-tat
High bandwidth users have no incentive to contribute
P2P Media Streaming Media streaming extremely expensive
1 hour of video encoded at 300Kbps = 128.7 MB Serving 1000 users would require 125.68 GB
Media Server cannot serve everybody in swarm In P2P Streaming:
Peers form an overlay of nodes on top of www internet Nodes in the overlay connected by direct paths (virtual or logical links), in
reality, connected by many physical links in the underlying network Nodes offer their uplink bandwidth while downloading and viewing the
media content Takes load off the server Scalable
P2P Sharing
Server
1
2
5
3
4
…
…
…
…
…
…
…
…
1
3
Content Distribution ToolContent Distribution Tool
File is chopped into File is chopped into piecespieces
Major Approaches
Major approaches Content Distribution Networks like Akamai
Expensive Only large infrastructure can afford Client Server Model
Not scalable Application Layer Multicast
Alternate to IP Multicast Peer-to-Peer Based
Most viable and simple to use and deploy No setup cost Scalable
Content Distribution Networks (CDNs)
CDN nodes deployed in multiple locations, often over multiple backbones
These nodes cooperate with each other to satisfy an end user’s request
User request is sent to nearest CDN node, which has a cached copy
QoS improves as end user receives best possible connection
Yahoo mail uses Akamai
Media Streaming
Tree Based
Application Layer Multicast
Peer-to-Peer
Mesh Based
[CoolStreaming, PPLive, SOPCast,TV Ants, Feidian]
[NICE, ZigZag, SpreadIT] [ESM, Narada]
Application Layer Multicast (ALM) Very sparse deployment of IP Multicast due to technical
and administrative reasons In ALM:
Multicasting implemented at end hosts instead of network routers Nodes form unicast channels or tunnels between them Overlay Construction algorithms at end hosts can be more easily
applied End hosts needs lot of bandwidth
Most ALM approaches form Tree based topology: Simple to use Ineffective in case of churn and node failures as incurs high
recovery time
ALM Methodologies Tree Based
Content flows from server to nodes in a tree like fashion, every node forwards the content to its children, which in turn forward to their children
One point of failure for a complete subtree High recovery time Notes Tree Base Approaches: NICE, SpreadIT, Zigzag
Mesh Based Overcomes tree based flaws Nodes maintain state information of many nodes High control overhead Notes Mesh Based approaches include Narada and ESM from CMU.
Tree Based ALM
Mesh Based ALM
Peer-to-Peer Streaming Models Design flaws in ALM lead to current day P2P Streaming models based
on chunk driven technology Media content is broken down in small pieces and disseminated in the
swarm Neighboring nodes use Gossip protocol to exchange buffer
information Nodes trade unavailable pieces Robust and Scalable Most noted approach in recent years: CoolStreaming
PPLive, SOPCast, Fiedian, TV Ants are derivates of CoolStreaming Proprietary and working philosophy not published Reverse Engineered and measurement studies released
CoolStreaming
Files is chopped by server and disseminated in the swarm Node upon arrival obtain a peerlist of 40 nodes from the
server Nodes contact these nodes for media content In steady state, every node has typically 4-8 neighbors, it
periodically shares it buffer content map with neighbors Nodes exchange the unavailable content Real world deployed and highly successful system
Server
1
2
5
3
4
…
…
…
…
…
…
…
…
1
3
P2P Based Streaming Model
Metrics Quality of Service
Jitter less transmission Low end to end latency
Uplink utilization High uplink throughput leads to scalable P2P systems
Robustness and Reliability Churn, Node failure or departure should not affect QoS
Scalability Fairness
Determined in terms of content served (Share Ratio) No user should be forced to upload much more than what it has
downloaded Security
Implicitly affects above metrics
Quality of Service Most important metric Jitter: Unavailability of stream content at play time causes
jitter Jitter less transmission ensures good media playback Continuous supply of stream content ensures no jitters Latency: Difference in time between playback at server
and user Lower latency keeps users interested
A live event viz. Soccer match would lose importance in crucial moments if the transmission is delayed
Reducing hop count reduces latency
Uplink Utilization
Uplink is the most sparse and important resource in swarm
Summation of uplinks of all nodes is the load taken off the server
Utilization = Uplink used / Uplink Available Needs effective node organization and topology to
maximize uplink utilization High uplink throughput means more bandwidth in the
swarm and hence it leads to scalable P2P systems
Robustness and Reliability
A Robust and Reliable P2P system should be able to support with an acceptable levels of QoS under following conditions: High churn Node failure Congestion in the interior of the network
Affects QoS Efficient peering techniques and node topology ensures
robust and reliable P2P networks
Scalability
Serve as many users as possible with an acceptable level of QoS
Increasing number of nodes should not degrade QoS An effective overlay node topology and high uplink
throughput ensures scalable systems
Fairness
Measured in terms of content served to the swarm Share Ratio = Uploaded Volume / Downloaded Volume
Randomness in swarm causes severe disparity Many nodes upload huge volume of content Many nodes get a free ride with no or very less contribution
Must have an incentive for an end user to contribute P2P file sharing system like BitTorrent use tit-for-tat policy to stop
free riding Not easy to use it in Streaming as nodes procure pieces in real time
and applying tit-for-tat can cause delays
Security
Implicitly affects other P2P Streaming metrics Mainly 4 types of attacks:
Malicious garbled Payload insertion Free rider – Selfish used only downloads with no uploads Whitewasher – After being kicked out, comes again with new
identity. Such nodes use IP spoofing DDoS attack – One or more nodes collectively launch a DoS
attack on media server to crack the system down Lot of attack on P2P file sharing system but very few on
Streaming Possibility cannot be denied
Current Issues High buffering time
Half a minute for popular streaming channels and around 2 minutes for less popular
Some nodes lag with their peers by more than 2 minutes in playback time. Better Peering Strategy needed
Uneven distribution of uplink bandwidths (Unfairness) Huge volumes of cross ISP traffic
ISPs use bandwidth throttling to limit bandwidth usage Degrade QoS perceived at used end
Sub Optimal uplink utilization
Our Proposed Methodology BEAM: Bit stEAMing Swarm based P2P model
Uses Alliance theory for peering Nodes cluster in small groups of 4-6 to form an alliance High contributing nodes (Power Nodes) have high ranking based
on their share ratios Such nodes may be served directly by server Serves as an incentive mechanism for nodes to contribute Network topology in our model is a small world network In small world networks, every node is connected to every other
node in the swarm by a small number of path length
POWER
Server
Alliance 1
Alliance 2Alliance 3Alliance 4
POWER
POWER
POWER
Alliance Theory
Nodes cluster in groups of 4-6 to form an alliance Alliance members have common trust and treaty
As a node receives new content, it forwards among its alliance members first
Alliance members are mutually trusted All members of an alliance have an active connection with other
members
Applying security policies in alliance is much easier
Alliance Formation
Alliance Formation
Alliance Functionality
A node can be a member of multiple alliances H = Maximum number of nodes in an Alliance K = Maximum number of alliances a node can join As a node procures a new stream packet from other source:
It spreads it in its alliances Forwards different pieces to different nodes Nodes in turn exchange pieces Makes it mandatory for a node to upload the content As new nodes procure content, they forward it in their other alliances H and K impose restrictions on alliance and stop them from growing too
large
Alliance Functionality
Small World Network
Small World Network is characterized by: High coefficient of clustering Mean path lengths comparable to mean path lengths in random
graphs Every node can be reached from any other node in a small
number of hop counters (nearly logN path length) BEAM generate node topology like a small world network
Alliance mandates a high clustering coefficient A node has multiple alliances, i.e. it creates links with far located
nodes Mean path length is near Random graphs
Graph Type Server Distance Clustering Coefficient
Random 3.16 0.013
BEAM 3.19 0.42
Comparison with Random Graphs
•Total Node = 512
•Node Degree = 8
•High clustering coefficient signifies node connectivity in the vicinity
Simulation Details Custom time event based simulator Created in Python on Linux (Ubuntu) platform Comparison with CoolStreaming
Chunk Driven Most popular
Ideal for testing extreme scenarios: Difficulty in obtaining thousands of nodes in real world implementation Planet Lab like testbed overlay are better suites but their numbers are
limited. As of Oct 2006, there are 704 machines hosted on 339 sites Some details abstracted without loss:
Propagation Delay TCP dynamics Shared Bottlenecks
Number of Nodes vs Jitter Factor
Number of Nodes vs Latency
Number of Nodes vs % uplink utilization
Bit rate vs Jitter Factor
Bit rate vs Latency
Fairness: Num of Nodes vs Share Ratio
Node Failure vs Jitter Factor
Node Failure vs Average Latency
Number of Nodes vs Control Overhead
Results and Discussion
BEAM has scaled well and outperformed CoolStreaming in almost all the metrics
Forming alliance has proved to be an effective way to organize the peers
Control overhead is minimal for most combinations of H,K values
QoS is near optimal even in such random swarm environment
BEAM is robust and reliable and delivers excellent performance even under severe churn and node failures
Conclusion
P2P Streaming is an effective way to broadcast with little or no infrastructure
BEAM has proven to be an effective model for P2P media streaming
Alliance theory is a sound peering technique and provides robustness to the system
Security issues needs to be dealt with for DoS attacks