P2P Streaming Algorithms & BitTorrent

17
General Streaming & P2P Streaming over BitTorrent Conclusion P2P Streaming Algorithms & BitTorrent Tadhg Pearson May 14th 2007 Tadhg Pearson P2P Streaming Algorithms & BitTorrent

Transcript of P2P Streaming Algorithms & BitTorrent

Page 1: P2P Streaming Algorithms & BitTorrent

General Streaming & P2PStreaming over BitTorrent

Conclusion

P2P Streaming Algorithms & BitTorrent

Tadhg Pearson

May 14th 2007

Tadhg Pearson P2P Streaming Algorithms & BitTorrent

Page 2: 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

Page 3: 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

Page 4: 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

Page 5: 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

Page 6: 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

Page 7: 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

Page 8: 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

Page 9: 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

Page 10: 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

Page 11: 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

Page 12: P2P Streaming Algorithms & BitTorrent

General Streaming & P2PStreaming over BitTorrent

Conclusion

How BitTorrent worksPrevious Streaming AttemptsImprovements

Tadhg Pearson P2P Streaming Algorithms & BitTorrent

Page 13: 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

Page 14: 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

Page 15: 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

Page 16: 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

Page 17: 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