General Streaming & P2PStreaming over BitTorrent
Conclusion
P2P Streaming Algorithms & BitTorrent
Tadhg Pearson
May 14th 2007
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
Who am I?
Tadhg Pearson
Originally studied Physics and Computer Science at QueensUniversity, Belfast
On other days also willing to discuss
Software Performance Analysis
Atomic Physics
Music, Violins and Windsurfing
But today,Peer to Peer Streaming Algorithms and the Potential for MediaStreaming over BitTorrent
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
MotivationPeer to Peer NetworksGreed
Why P2P streaming?
Use of improved “last-mile” connectivity to deliver highquality media streams
Cost of delivering low quality streams is very high
Even last year, YouTube’s bandwidth bill ran into the millions1
Catering for “flashcrowds”
Only truly scalable solution
Available total bandwidth for streams increases as more users join
1Your Tube, Whose Dime?, D. Frommer, 2006, Available from Forbes.com
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
MotivationPeer to Peer NetworksGreed
Wishlist for a Peer-to-Peer network
Robust / Resilient
Good Quality of Service
Low Overhead
Scalable and allows bandwidth heterogeneity
Resistant to Freeriders
Low latency from source (if streaming)
Formally...
An ideal peer-to-peer network should be able to achieve high andconsistent service quality for all contributing peers, with minimisedlatencies, in a dynamic network fabric, while requiring minimaldedicated infrastructure.
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
MotivationPeer to Peer NetworksGreed
Achieving these ideals
Topology defines many of the important traits of such a networkand is usually defined by the overlay to the network
More “shapely” topology usually means more overhead
Ideally this overhead will have payback in other desirableproperties
More links → More robust
...but may affect scalability to low bandwidth clients
Centralised components reduce both robustness and overhead
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
MotivationPeer to Peer NetworksGreed
What’s a network overlay?
The network overlay establishes communication between peers andlocates content in the network
Usually functionality provided is a Distributed Hash Table
Data exchange via overlay costly
Potential for subterfuge by malicious clients
Overlays we’ll consider
Kademlia, used in BitTorrent
Viceroy, Mesh/Butterfly topology
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
MotivationPeer to Peer NetworksGreed
Trees and Forests
Tree Networks
Good in controlled environments
Potential to utilise hardware multicast facilities if available
Lacking robustness
Push-to-Peer 2
Forests (Multi-trees) Splitstream 3
Divides content into descriptions, sends each description downits own tree
Scribe (modified Pastry) overlay
Others: ChunkySpread2Suh, Diot et al., Push-to-Peer Video-on-Demand...3Castro, Druschel et al. SplitStream: High-Bandwidth Multicast...
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
MotivationPeer to Peer NetworksGreed
Source
Node
Fully connected forest topology
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
MotivationPeer to Peer NetworksGreed
Swarms
A graph topology where clients connect in a shapeless order
Most common network format: Napster, Gnutella, Fasttraketc.
Highly robust, reasonable overhead, poor latency
Data and peer location major issues
Ideals
A balance must be struck between purely swarming networks andsome shaped topology.
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
MotivationPeer to Peer NetworksGreed
Greed and Freeloading
Freeloading
Perpetual consumption of resources in excess of contributions
Download bandwidth for clients restricted by total availableupload bandwidth
Controllable on a private network, uncontrollable in publicdomain
Freeloading has crippled Gnutella 4
Solutions?Simple tit-for-tat mechanismTrusted nodes system: Tribler, 2FastCredit system: Scrivener
Permanent IDs allow huge potential gains
Ideally optimal performance at Nash equilibrium4Hughes et al., Freeriding on Gnutella Revisited...
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
How BitTorrent worksPrevious Streaming AttemptsImprovements
BitTorrent
Designed by Bram Cohen, 2001
Semi-swarmed topology
Centralised elementsKademlia-based overlay
Focuses on content distribution, location provided externally
Widely successful, accounts for large proportion of internettraffic 5
5Passik, A., File Sharing Network Thrives beneath the radar, Reuters UKTadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
How BitTorrent worksPrevious Streaming AttemptsImprovements
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
How BitTorrent worksPrevious Streaming AttemptsImprovements
Reconciling Streaming with the BitTorrent Architecture
BitTorrent designed with full files in mind. Issues for consideration
Randomised Chunk Retrieval
Removal of this would not be crippling 6
Chunk size
Time sensitivity
Implications for freeloaders
Streaming can be either playback or live
6Arthur & Panigraphy, Analysing the Efficiency of BitTorrentTadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
How BitTorrent worksPrevious Streaming AttemptsImprovements
BiToS & Liveswarms
BiToS 7
Playback model
Received, remaining and high-priority pieces
High Priority Streaming Window
Acquisition of future content as currency
Liveswarms 8
Live streaming model
Only recent data preserved, no window model required
Found to be highly freeloader-resilient in testing
Tight admission constraints, high latency from source
Both models can be improved upon7Vlavianos et al., BiToS: Enhancing BitTorrent...8Piatek et. al, LiveSwarms: Adapting BitTorrent...
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
How BitTorrent worksPrevious Streaming AttemptsImprovements
My vision of a BitTorrent-based streaming network
Split content into descriptions using MDC : Splitstream
Use BiToS style windowing system on each description
Decentralised, Tolerant of Bandwidth Heterogeneity, Robust
Substantial MDC overhead, worth it in saved bandwidth?
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
Wish listWrap Up
Things I would have liked to have done
Didn’t get a chance to actually try ideas (time!)
Application of chaos theory to the behaviour of peers inswarm networks.
It seems to me that the behaviour of a real-life P2P networkbears traits of a system on the edge of chaos
Easy intro: John Gribbin, Deep Simplicity
Randomly connected vertices, each having a small number ofconnections
Game theory applied to greed-related P2P systems
Reason for BitTorrent’s success? Public domain networksideally thrive at Nash equilibriumThe Price of Anarchy: Fabrikant, Papadimitriu et al., On aNetwork Creation Game
Uses of MDC
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
General Streaming & P2PStreaming over BitTorrent
Conclusion
Wish listWrap Up
Any questions?
?http://www.doc.ic.ac.uk/~tp206/tp206ISOReportTerm2.pdf
Tadhg Pearson P2P Streaming Algorithms & BitTorrent
Top Related