Designing a new BitTorrent Client

Slides:



Advertisements
Similar presentations
P2P Streaming Protocol Pro- incentive Parameters draft-zeng-ppsp-protocol-pro-incentive-para-01 IETF79 Meeting Wenjun (Kevin) Zeng & Yingjie Gu Huawei.
Advertisements

Rarest First and Choke Algorithms Are Enough
Rarest First and Choke Algorithms are Enough Arnaud LEGOUT INRIA, Sophia Antipolis France G. Urvoy-Keller and P. Michiardi Institut Eurecom France.
The BitTorrent Protocol
The BitTorrent Protocol. What is BitTorrent?  Efficient content distribution system using file swarming. Does not perform all the functions of a typical.
Incentives Build Robustness in BitTorrent Author: Bram Cohen Presenter: Brian Liao.
Incentives Build Robustness in BitTorrent- Bram Cohen Presented by Venkatesh Samprati.
The BitTorrent protocol A peer-to-peer file sharing protocol.
Incentives Build Robustness in BitTorrent Bram Cohen.
Bit Torrent (Nick Feamster) February 25, BitTorrent Steps for publishing – Peer creates.torrent file and uploads to a web server: contains metadata.
Presented by: Su Yingbin. Outline Introduction SocialSwam Design Notations Algorithms Evaluation Conclusion.
Presentation by Manasee Conjeepuram Krishnamoorthy.
1 Communication Networks Kolja Eger, Prof. Dr. U. Killat 1 From Packet-level to Flow-level Simulations of P2P Networks Kolja Eger, Ulrich Killat Hamburg.
Stochastic Analysis of File Swarming Systems The Chinese University of Hong Kong John C.S. Lui Collaborators: D.M. Chiu, M.H. Lin, B. Fan.
Seed Scheduling for Peer-to-Peer Networks Flavio Esposito Ibrahim Matta Pietro Michiardi Nobuyuki Mitsutake Damiano Carra.
The BitTorrent content distribution system CS217 Advanced Topics in Internet Research Guest Lecture Nikitas Liogkas, 5/11/2006.
Clustering and Sharing Incentives in BitTorrent Systems Arnaud Legout 1, Nikitas Liogkas 2, Eddie Kohler 2, Lixia Zhang 2 1 INRIA, Projet Planète, Sophia.
Modelling and Performance Analysis of BitTorrent-Like Peer-to-Peer Networks.
Analyzing and Improving BitTorrent Ashwin R. Bharambe ( Carnegie Mellon University ) Cormac Herley ( Microsoft Research, Redmond ) Venkat Padmanabhan (
Exploiting BitTorrent For Fun (But Not Profit) Nikitas Liogkas, Robert Nelson, Eddie Kohler, Lixia Zhang University of California, Los Angeles.
Free-riding in BitTorrent Networks with the Large View Exploit Michael Sirivianos, Jong Han Park, Rex Chen and Xiaowei Yang University of California, Irvine.
CS 554. Peer-to-Peer Systems Faithfulness in Internet Algorithms Haridimos Kondylakis
Improving ISP Locality in BitTorrent Traffic via Biased Neighbor Selection Ruchir Bindal, Pei Cao, William Chan Stanford University Jan Medved, George.
Peer-Assisted Content Distribution Networks: Techniques and Challenges Pei Cao Stanford University.
BitTorrent Framework. Background BT is a very popular peer to peer protocol with many implementations: –
Bounds on the Performance of P2P Networks Using Tit-for-Tat Strategies Dimitri DeFigueiredo Balaji Venkatachalam S. Felix Wu.
Peer-to-Peer (or P2P) From user to user. Peer-to-peer implies that either side can initiate a session and has equal responsibility. Corey Chan Andrew Merfeld.
1 Incentives Build Robustness in BitTorrent? Analysis on Bit Torrent Client performance By Jimmy Wong.
A P2P file distribution system ——BitTorrent Fan Bin Sep,25,2004.
Incentives Build Robustness in BitTorrent 1st Workshop on Economics of Peer-to-Peer Systems 2003 Bram Cohen
BitTorrent Background. Common Scenario Millions want to download the same popular huge files (for free) –ISO’s –Media (the real example!) Client-server.
Locality-Aware Content Distribution Danny Bickson, Dahlia Malkhi, David Rabinowitz.
The Bittorrent Protocol
Content Overlays (Nick Feamster) February 25, 2008.
Bit Torrent (Nick Feamster) February 25, BitTorrent Steps for publishing – Peer creates.torrent file and uploads to a web server: contains metadata.
Dynamic and Decentralized Approaches for Optimal Allocation of Multiple Resources in Virtualized Data Centers Wei Chen, Samuel Hargrove, Heh Miao, Liang.
University of Bologna, Italy How to cheat BitTorrent and why nobody does Simon Patarin and David Hales University of Bologna ECCS 2006,
BitTorrent Internet Technologies and Applications.
GPS: A General Peer-to-Peer Simulator and its Use for Modeling BitTorrent Weishuai Yang Nael Abu-Ghazaleh
BitTorrent Dr. Yingwu Zhu. Bittorrent A popular P2P application for file exchange!
A P2P file distribution system ——BitTorrent Pegasus Team CMPE 208.
1 BitHoc: BitTorrent for wireless ad hoc networks Jointly with: Chadi Barakat Jayeoung Choi Anwar Al Hamra Thierry Turletti EPI PLANETE 28/02/2008 MAESTRO/PLANETE.
2: Application Layer1 Chapter 2: Application layer r 2.1 Principles of network applications r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail  SMTP,
Do incentives build robustness in BitTorrent? Michael Piatek, Tomas Isdal, Thomas Anderson, Arvind Krishnamurthy, Arun Venkataramani.
David A. Bryan, PPSP Workshop, Beijing, China, June 17th and 18th 2010 PPSP Protocol Considerations.
MULTI-TORRENT: A PERFORMANCE STUDY Yan Yang, Alix L.H. Chow, Leana Golubchik Internet Multimedia Lab University of Southern California.
1 Slides from Richard Yang with minor modification Peer-to-Peer Systems: DHT and Swarming.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
B IT T ORRENT T ECHNOLOGY Anthony Pervetich. H ISTORY Bram Cohen Designed the BitTorrent protocol in April 2001 Released July 2, 2001 Concept Late 90’s.
Analyzing and Improving BitTorrent Ashwin R. Bharambe ( Carnegie Mellon University ) Cormac Herley ( Microsoft Research, Redmond ) Venkat Padmanabhan (
Bit Torrent Nirav A. Vasa. Topics What is BitTorrent? Related Terms How BitTorrent works Steps involved in the working Advantages and Disadvantages.
PEAR TO PEAR PROTOCOL. Pure P2P architecture no always-on server arbitrary end systems directly communicate peers are intermittently connected and change.
Peer-to-Peer Networks 10 Fast Download Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg.
Traffic Localization with Information Guidance of Pseudo Peer Agent on BT-P2P Network 學生 : 楊宏昌 指導教授 : 曾黎明教授 在 BT 同儕通訊上利用參與者訊息引導對外流量之區域化節約.
THE BITTORRENT PROTOCOL OVERVIEW BY ANATOLY RABINOVICH AND VLADIMIR OSTROVSKY Peer-to-Peer File Sharing.
Lecture XV: Real P2P Systems
An example of peer-to-peer application
Introduction to BitTorrent
Economics and Computation Week 7: The economics of P2P file sharing
Angelo Sapello University of Delaware
Do incentives build robustness in BitTorrent?
Managing Inter-domain Traffic in the Presence of BitTorrent File-Sharing Srinivasan Seetharaman and Mostafa Ammar School of Computer Science Objective:
Small Is Not Always Beautiful
Swarming Overlay Construction Strategies
Simplified Explanation of “Do incentives build robustness in BitTorrent?” By James Hoover.
The BitTorrent Protocol
Y. Richard Yang 10/23/2018 Network Applications: Multi-Server Request Routing; Distributed Content Distribution.
Pure P2P architecture no always-on server
Chapter 2 Application Layer
Presentation transcript:

Designing a new BitTorrent Client Improving BitTorrent Designing a new BitTorrent Client 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Overview How BitTorrent Works Experimental Analyses Modeling: Gittins’ Indices Our New Algorithms Proposed Evaluation HELP! 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science File Organization File 1 2 3 4 Piece 256KB Block 16KB Incomplete Piece 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Initialization HTTP GET MYFILE.torrent http://mytracker.com:6969/ S3F5YHG6FEB FG5467HGF367 F456JI9N5FF4E … MYFILE.torrent webserver “register” ID1 169.237.234.1:6881 ID2 190.50.34.6:5692 ID3 34.275.89.143:4545 … ID50 231.456.31.95:6882 list of peers user tracker Peer 40 … Peer 1 Peer 2 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science “On the Wire” Protocol (Over TCP) Non-keepalive messages: 0 – choke 1 – unchoke 2 – interested 3 – not interested 4 – have 5 – bitfield 6 – request 7 – piece 8 – cancel 1 ID/Infohash Handshake BitField BitField Remote Peer Local Peer Interested = 0 choked = 1 Interested = 0 choked = 1 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Piece Selection Pipelining (5 requests) Strict Priority 3 stages: Random first piece Rarest First Endgame mode 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Peer Selection Focus on Rate Upload to at most 4 peers Random Unchoke Global rate cap only 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Analyses N. Liogkas et al., “Exploiting BitTorrent For Fun (But Not Profit)”, IPTPS 2006. A. Legout et al., “Rarest First and Choke Algorithms Are Enough”, June 2006 A. R. Bharambe et al. “Analyzing and Improving BitTorrent Performance”, Feb 2005. 11/16/2018 Dimitri DeFigueiredo – Computer Science

Exploitation – Liogkas et al. PlanetLab & Real Torrent Exploits: Download only from seeds Median improvement of 7-20% Download only from fastest peers Contradictory results: good in PlanetLab (+22%) bad in the wild(-1 to -30%) Advertise false pieces 22% better download rates 11/16/2018 Dimitri DeFigueiredo – Computer Science

Piece Selection – Legout et al. 11/16/2018 Dimitri DeFigueiredo – Computer Science

Piece Selection – Legout et al. a = local peer interested in remote peer b = time peers are connected c = remote peer interested in local peer 11/16/2018 Dimitri DeFigueiredo – Computer Science

Piece Selection – Legout et al. Limitations: In 25% of the torrents the local peer is not interested. Who is interested in me? 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Gittins Indices The Two-armed bandit problem Same prize Unknown winning probabilities Known discount factor Limitation: Infinitely discounted or fixed horizon Projects remain dormant One project at a time P. Whittle 1988 Restless bandits m projects “on average” Asymptotically optimal for large m and n 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Piece Selection Key ideas: We don’t care about piece selection Keep download pipes full Peer Queues Assume: We receive pieces at a rate of 1 per second 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Piece Selection 5 6 7 1 2 3 4 – 1 2 3 4 5 6 7 Remote Peer Local Peer 1 2 3 4 5 6 7 1 3 6 5 6 7 1 2 3 4 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Piece Selection 3 1 Q1 Peer 1 1 3 6 Q2 Remote Peer Peer 2 Local Peer 4 Q3 Peer 3 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Piece Selection Cost of empty queue = Ci per unit time Discount factor d <1 Piece consumption rate li (Poison Process) Queue has length li(t) 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Piece Selection Minimize: where We can Solve this with Gittins’ Indices! 11/16/2018 Dimitri DeFigueiredo – Computer Science

Piece Selection Algorithm (alpha version) Calculate Gittins’ Index for each queue: Feed the queue with the highest index. Two Problems: 1 piece goes into many queues it takes a while to get the pieces 11/16/2018 Dimitri DeFigueiredo – Computer Science

Piece Selection Algorithm (beta version) Calculate Gittins’ Index for each queue: Calculate Gittins’ index for each piece. n(piece) = SA Get piece with highest index possible. 11/16/2018 Dimitri DeFigueiredo – Computer Science

Piece Selection Algorithm highest index 7 Peer 1 7 5 2 Peer 2 2 lowest index 5 Peer 3 time 11/16/2018 Dimitri DeFigueiredo – Computer Science

Piece Selection Algorithm (Final Release) Calculate Gittins’ Index for each queue. Calculate “Gittins’ index” for each piece. Extrapolate piece download finishing time. Order finishing times (earliest first). Order pieces (highest index first). Match best piece with earliest finishing time. 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Peer Selection Key Ideas: upload rate is a perishable good Throttle each connection individually Do not limit number of downloaders to 4 11/16/2018 Dimitri DeFigueiredo – Computer Science

Peer Selection – Our Model Series of rounds E[download rate] = f(upload rate) Estimate download rates with “have”. 11/16/2018 Dimitri DeFigueiredo – Computer Science

Peer Selection Algorithm Keep clients with best ratios. Throttle to estimated safe bound. Solve Knapsack problem: Total upload bandwidth = max weight Item value = download rate we are getting Item weight = estimated upload bound If download/upload rate ratio is < 1 Random unchoke 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Evaluation Simultaneously Identical machines and network. Repeat experiment and swap clients. Different torrents vs. 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science HELP! What we need: An awesome python programmer ;0) What’s in it for you: We are cool! ;0) Publications Open Source Real Estate… 11/16/2018 Dimitri DeFigueiredo – Computer Science

Dimitri DeFigueiredo – Computer Science Thank you! defigued@cs.ucdavis.edu 11/16/2018 Dimitri DeFigueiredo – Computer Science