460 likes | 736 Views
Quality of Service in Peer-to-Peer Media Streaming. Darshan Purandare University of Central Florida Orlando, FL, USA. Outline. Peer-to-Peer (P2P) Media Streaming Related Work Current Issues Our Proposed Methodology Alliance Theory Important P2P Media Streaming Metrics
E N D
Quality of Service in Peer-to-Peer Media Streaming Darshan Purandare University of Central Florida Orlando, 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 • Content Distribution Tool … 1 … Server 3 2 … … … 5 4 … … 1 … • File is chopped into pieces 3
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 Application Layer Multicast Peer-to-Peer [CoolStreaming, PPLive, SOPCast,TV Ants, Feidian] Tree Based Mesh Based [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.
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
… 1 … Server 3 2 … … … 5 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 POWER Server POWER POWER Alliance 1 Alliance 2 Alliance 3 Alliance 4
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 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
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
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
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