Title: Quality of Service in PeertoPeer Media Streaming
1Quality of Service in Peer-to-Peer Media Streaming
- Darshan Purandare
- University of Central Florida
- Orlando, FL, USA
2Outline
- 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
3Introduction
- 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
4Introduction 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
5P2P 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
6P2P Sharing
- Content Distribution Tool
1
Server
3
2
5
4
1
- File is chopped into pieces
3
7Major 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
8Content Distribution Networks (CDNs)
- CDN nodes deployed in multiple locations, often
over multiple backbones - These nodes cooperate with each other to satisfy
an end users 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
9(No Transcript)
10(No Transcript)
11Application 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
12ALM 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.
13Tree Based ALM
14Mesh Based ALM
15Peer-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
16CoolStreaming
- 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
17P2P Based Streaming Model
18Metrics
- 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
19Quality 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
20Uplink 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
21Robustness 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
22Scalability
- 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
23Fairness
- 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
24Security
- 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
25Current 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
26Our 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
27(No Transcript)
28Alliance 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
29Alliance Formation
30Alliance Formation
31Alliance 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
32Alliance Functionality
33Small 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
34Comparison with Random Graphs
- Total Node 512
- Node Degree 8
- High clustering coefficient signifies node
connectivity in the vicinity
35Simulation 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
36Number of Nodes vs Jitter Factor
37Number of Nodes vs Latency
38Number of Nodes vs uplink utilization
39Bit rate vs Jitter Factor
40Bit rate vs Latency
41Fairness Num of Nodes vs Share Ratio
42Node Failure vs Jitter Factor
43Node Failure vs Average Latency
44Number of Nodes vs Control Overhead
45Results 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
46Conclusion
- 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