Incentives Build Robustness in BitTorrent- Bram Cohen Presented by Venkatesh Samprati.

Slides:



Advertisements
Similar presentations
Optimal Scheduling in Peer-to-Peer Networks Lee Center Workshop 5/19/06 Mortada Mehyar (with Prof. Steven Low, Netlab)
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.
The BitTorrent protocol A peer-to-peer file sharing protocol.
Incentives Build Robustness in BitTorrent Bram Cohen.
Peer-to-Peer (P2P) Networks
Bit Torrent (Nick Feamster) February 25, BitTorrent Steps for publishing – Peer creates.torrent file and uploads to a web server: contains metadata.
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.
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.
CompSci 356: Computer Network Architectures Lecture 21: Content Distribution Chapter 9.4 Xiaowei Yang
Peer to Peer (P2P) Networks and File sharing. By: Ryan Farrell.
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture XV: Real P2P Systems.
Network Coding for Large Scale Content Distribution Christos Gkantsidis Georgia Institute of Technology Pablo Rodriguez Microsoft Research IEEE INFOCOM.
Spotlighting Decentralized P2P File Sharing Archie Kuo and Ethan Le Department of Computer Science San Jose State University.
Modeling and analysis of BitTorrent-like P2P network Fan Bin Oct,1 st,2004.
Modeling and Performance Analysis of Bitorrent-Like Peer-to-Peer Networks Dongyu Qiu and R. Srikant University of Illinois, 2004 Presented by : Ran Zivhon.
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.
CSE 461 University of Washington1 Topic Peer-to-peer content delivery – Runs without dedicated infrastructure – BitTorrent as an example Peer.
The Bittorrent Protocol
1 BiToS: Enhancing BitTorrent for Supporting Streaming Applications Aggelos Vlavianos, Marios Iliofotou and Michalis Faloutsos Department of Computer Science.
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.
Exploring VoD in P2P Swarming Systems By Siddhartha Annapureddy, Saikat Guha, Christos Gkantsidis, Dinan Gunawardena, Pablo Rodriguez Presented by Svetlana.
BitTorrent Presentation by: NANO Surmi Chatterjee Nagakalyani Padakanti Sajitha Iqbal Reetu Sinha Fatemeh Marashi.
University of Bologna, Italy How to cheat BitTorrent and why nobody does Simon Patarin and David Hales University of Bologna ECCS 2006,
BitTorrent.
BitTorrent Internet Technologies and Applications.
BitTorrent How it applies to networking. What is BitTorrent P2P file sharing protocol Allows users to distribute large amounts of data without placing.
1 BitTorrent System Efrat Oune Bar-Ilan What is BitTorrent? BitTorrent is a peer-to-peer file distribution system (built for intensive daily use.
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.
Bit Torrent A good or a bad?. Common methods of transferring files in the internet: Client-Server Model Peer-to-Peer Network.
Content Overlays (continued) Nick Feamster CS 7260 March 26, 2007.
MULTI-TORRENT: A PERFORMANCE STUDY Yan Yang, Alix L.H. Chow, Leana Golubchik Internet Multimedia Lab University of Southern California.
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.
2: Application Layer1 Chapter 2: Application layer r 2.1 Principles of network applications  app architectures  app requirements r 2.2 Web and HTTP r.
Peer-to-Peer File Sharing Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
Content Overlays Nick Feamster CS 7260 March 14, 2007.
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.
Impact of Incentives in BitTorrent By Jenny Liu and Seth Cooper.
Flashback: A Peer-to-Peer Web Server for Flash Crowds Presented by Tom Batkiewicz CS 587x Fall ‘07.
6° of Darkness or Using Webs of Trust to Solve the Problem of Global Indexes.
Bit Torrent Nirav A. Vasa. Topics What is BitTorrent? Related Terms How BitTorrent works Steps involved in the working Advantages and Disadvantages.
Peer to Peer Networking. Network Models => Mainframe Ex: Terminal User needs direct connection to mainframe Secure Account driven  administrator controlled.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
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.
November 19, 2016 Guide:- Mrs. Kale J. S. Presented By:- Hamand Amol Sambhaji. Hamand Amol Sambhaji. Pardeshi Dhananjay Rajendra. Pardeshi Dhananjay Rajendra.
Lecture XV: Real P2P Systems
An example of peer-to-peer application
Introduction to BitTorrent
Designing a new BitTorrent Client
Angelo Sapello University of Delaware
Small Is Not Always Beautiful
The BitTorrent Protocol
Content Distribution Networks + P2P File Sharing
Chapter 2 Application Layer
Content Distribution Networks + P2P File Sharing
Presentation transcript:

Incentives Build Robustness in BitTorrent- Bram Cohen Presented by Venkatesh Samprati

What is the Problem Being Solved Here? Sharing a fairly large file Involves making a replica Problem is somewhat similar to, but not the same as, replication in a distributed file system, a Content Delivery Network or a Distributed Hash Table overlay network

Simple Solution: One Big Server Make the file available on a central server Each client downloads file from this server Problems –Solution does not scale very well –With a large number of clients, the server’s resources get overwhelmed

The Brilliance of Napster: P2P In the original Napster, nodes connected to a central server and gave it a listing of all the files they had. Nodes relay searches to the central server, which performs them locally The actual file transfer occurs peer-to-peer The big weakness of this approach was that the directory server was a single point of failure

Bit Torrent Chop file into many pieces Replicate DIFFERENT pieces on different peers as soon as possible As soon as a peer has a complete piece, it can trade it with other peers Hopefully, we will be able to assemble the entire file at the end

Basic Components Seed –Peer that has the entire file Leacher –Peer that has an incomplete copy of the file A Torrent file –Passive component –Length and Name of file. –Files are typically fragmented into 256KB pieces –The torrent file lists SHA1 hashes of all the pieces to allow peers to verify integrity –Typically hosted on a web server –Contains IP address of tracker.

Tracker - Centralized process, keeps track of peers - Does not distribute actual contents of file. Only holds metadata. - two types of interaction with peers - Returns random list of peers (max 50)

Pieces and Sub-Pieces A piece is broken into sub-pieces... typically 16KB in size Policy: Until a piece is assembled, only download sub-pieces for that piece This policy lets complete pieces assemble quickly

Piece Selection The order in which pieces are selected by different peers is critical for good performance If a bad algorithm is used, we could end up in a situation where every peer has all the pieces that are currently available and none of the missing ones If the original seed is taken down, the file cannot be completely downloaded!

Random First Piece Initially, a peer has nothing to trade Important to get a complete piece ASAP Rare pieces are typically available at fewer peers, so downloading a rare piece initially is not a good idea Policy: Select a random piece of the file and download it

Rarest Piece First Policy: Determine the pieces that are most rare among your peers and download those first This ensures that the most common pieces are left till the end to download Rarest first also ensures that a large variety of pieces are downloaded from the seed

Endgame Mode Policy: When all the sub-pieces that a peer doesn’t have are actively being requested, these are requested from EVERY peer When the sub-piece arrives, the replicated requests are cancelled This ensures that a download doesn’t get prevented from completion due to a single peer with a slow transfer rate Some bandwidth is wasted, but in practice, this is not too much

Pareto Efficiency Vilfredo Pareto – Italian Economist “ Given a set of alternative allocations and a set of individuals, a movement from one alternative allocation to another that can make at least one individual better off, without making any other individual worse off, is called a Pareto optimization. An allocation of resource is Pareto Optimal when no further Pareto optimization can be made” Algorithm, in which pairs of counterparties see if they can improve their lot together, and leads to global optima.

Prisoner’s Dilemma Prisoner B stays SilentPrisoner B Betrays Prisoner A Stays SilentBoth server Six Months Prisoner A serves 10 Yrs and Prisoner B goes free Prisoner A BetraysPrisoner A goes free and Prisoner B serves 10 Yrs Both serve 2 yrs.

Choking One of BitTorrent’s most powerful idea is the choking mechanism It ensures that nodes cooperate and eliminates the free-rider problem Cooperation involves uploaded sub-pieces that you have to your peer Choking is a temporary refusal to upload; downloading occurs as normal Connection is kept open so that setup costs are not borne again and again Based on game-theoretic concepts –Tit-for-tat strategy in Repeated Games

Repeated Games Over time, more complex strategies can evolve For instance, Tit-for-tat –Do onto others as they do onto you –If someone cheats, you must retaliate back –Have a recovery mechanism to ensure eventual cooperation

Choking Algorithm Goal is to have several bidirectional connections running continuously Upload to peers who have uploaded to you recently Unutilized connections are uploaded to on a trial basis to see if better transfer rates could be found using them

Choking Specifics A peer always unchokes a fixed number of its peers (default of 4) Decision to choke/unchoke done based on current download rates, which is evaluated on a rolling 20-second average Evaluation on who to choke/unchoke is performed every 10 seconds –This prevents wastage of resources by rapidly choking/unchoking peers –Supposedly enough for TCP to ramp up transfers to their full capacity Which peer is the optimistic unchoke is rotated every 30 seconds

Anti-Snubbing Policy: When over a minute has gone by without receiving a single sub-piece from a particular peer, do not upload to it except as an optimistic unchoke A peer might find itself being simultaneously choked by all its peers that it was just downloading from Download will lag until optimistic unchoke finds better peers Policy: If choked by everyone, increase the number of simultaneous optimistic unchokes to more than one

Upload-Only mode Once download is complete, a peer has no download rates to use for comparison nor has any need to use them The question is, which nodes to upload to? Policy: Upload to those with the best upload rate. This ensures that pieces get replicated faster Also, peers that have good upload rates are probably not being served by others

Operation

References "BitTorrent Economics Paper", Bram Cohen"BitTorrent Economics Paper" "BitTorrent protocol specification", Bram Cohen"BitTorrent protocol specification" "BitTorrent Resource Availability Analysis", Brian Greinke and James Hsia. (Rice)"BitTorrent Resource Availability Analysis" "Dissecting BitTorrent: Five Months in a Torrent's Lifetime", M. Izal, G. Urvoy-Keller, E.W. Biersack, P.A. Felber, A. Al Hamra, and L. Garc es-Erice. (Institut Eurecom, France)"Dissecting BitTorrent: Five Months in a Torrent's Lifetime"