Game Theory Presented by Hakim Weatherspoon. Game Theory BitTorrent Do Incentives Build Robustness in BitTorrent? BAR Gossip.

Slides:



Advertisements
Similar presentations
Course on Computer Communication and Networks Lecture 10 Chapter 2; peer-to-peer applications (and network overlays) EDA344/DIT 420, CTH/GU.
Advertisements

Unstructured P2P Networks Achieving Robustness and Scalability in Data Dissemination Scenarios Michael Mirold Seminar on Advanced Topics in Distributed.
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.
BitTorrent CS514 Vivek Vishnumurthy, TA. Common Scenario Millions want to download the same popular huge files (for free) –ISO’s –Media (the real example!)
CS5412: Torrents and Tit-for-Tat
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.
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.
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
CompSci 356: Computer Network Architectures Lecture 21: Content Distribution Chapter 9.4 Xiaowei Yang
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture XV: Real P2P Systems.
Game Theory Presented by Hakim Weatherspoon. Game Theory Main Question: Can we cheat (and get away with it)? BitTorrent –P2P file distribution tool designed.
Ken Birman Cornell University. CS5410 Fall
Alex Sherman Jason Nieh Cliff Stein.  Lack of fairness in bandwidth allocation in P2P systems:  Users are not incentivized to contributed bandwidth.
FRIENDS: File Retrieval In a dEcentralized Network Distribution System Steven Huang, Kevin Li Computer Science and Engineering University of California,
Paul Solomine Security of P2P Systems. P2P Systems Used to download copyrighted files illegally. The RIAA is watching you… Spyware! General users become.
Do Incentives Build Robustness in BitTorrent? Piatek, Isdal, Anderson, Krishnamurthy, and Venkataramani Piatek, Isdal, Anderson, Krishnamurthy, and Venkataramani.
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.
Courtesy: Philip Levis/David Mazieres, Stanford More application layer BitTorrent (Quick Overview) Tahir Azim.
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.
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
Client-Server vs P2P or, HTTP vs Bittorrent. Client-Server Architecture SERVER client.
The Bittorrent Protocol
P2P File Sharing Systems
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.
Free-riding and incentives in P2P systems name:Michel Meulpolder date:September 8, 2008 event:Tutorial IEEE P2P 2008.
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.

Michael Sirivianos Xiaowei Yang Stanislaw Jarecki Presented by Vidya Nalan Chakravarthy.
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.
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.
Do incentives build robustness in BitTorrent? Michael Piatek, Tomas Isdal, Thomas Anderson, Arvind Krishnamurthy, Arun Venkataramani Szabolcs Nagy, ELTE.
MULTI-TORRENT: A PERFORMANCE STUDY Yan Yang, Alix L.H. Chow, Leana Golubchik Internet Multimedia Lab University of Southern California.
Peer-to-Peer File Sharing Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
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.
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
FairTorrent: BrinGing Fairness to Peer-to-Peer Systems
Introduction to BitTorrent
BitTorrent Vs Gnutella.
Do incentives build robustness in BitTorrent?
Do incentives build robustness in BitTorrent?
Simplified Explanation of “Do incentives build robustness in BitTorrent?” By James Hoover.
The BitTorrent Protocol
Content Distribution Networks + P2P File Sharing
Content Distribution Networks + P2P File Sharing
Presentation transcript:

Game Theory Presented by Hakim Weatherspoon

Game Theory BitTorrent Do Incentives Build Robustness in BitTorrent? BAR Gossip

BitTorrent Written by Bram Cohen (in Python) in 2001 “Pull-based” “swarming” approach –Each file split into smaller pieces –Nodes request desired pieces from neighbors As opposed to parents pushing data that they receive –Pieces not downloaded in sequential order –Previous multicast schemes aimed to support “streaming”; BitTorrent does not Encourages contribution by all nodes BitTorrent slides from CS 5410, Ken Birman

BitTorrent Swarm Swarm –Set of peers all downloading the same file –Organized as a random mesh Each node knows list of pieces downloaded by neighbors Node requests pieces it does not own from neighbors –Exact method explained later

How a node enters a swarm for file “popeye.mp4” File popeye.mp4.torrent hosted at a (well-known) webserver The.torrent has address of tracker for file The tracker, which runs on a webserver as well, keeps track of all peers downloading file

How a node enters a swarm for file “popeye.mp4” File popeye.mp4.torrent hosted at a (well-known) webserver The.torrent has address of tracker for file The tracker, which runs on a webserver as well, keeps track of all peers downloading file Peer 1 popeye.mp4.torrent

How a node enters a swarm for file “popeye.mp4” File popeye.mp4.torrent hosted at a (well-known) webserver The.torrent has address of tracker for file The tracker, which runs on a webserver as well, keeps track of all peers downloading file Peer Tracker Addresses of peers 2

How a node enters a swarm for file “popeye.mp4” File popeye.mp4.torrent hosted at a (well-known) webserver The.torrent has address of tracker for file The tracker, which runs on a webserver as well, keeps track of all peers downloading file Peer Tracker3 Swarm

Contents of.torrent file URL of tracker Piece length – Usually 256 KB SHA-1 hashes of each piece in file –For reliability “files” – allows download of multiple files

Terminology Seed: peer with the entire file –Original Seed: The first seed Leech: peer that’s downloading the file –Fairer term might have been “downloader” Sub-piece: Further subdivision of a piece –The “unit for requests” is a subpiece –But a peer uploads only after assembling complete piece

Peer-peer transactions: Choosing pieces to request Rarest-first: Look at all pieces at all peers, and request piece that’s owned by fewest peers –Increases diversity in the pieces downloaded avoids case where a node and each of its peers have exactly the same pieces; increases throughput –Increases likelihood all pieces still available even if original seed leaves before any one node has downloaded entire file

Choosing pieces to request Random First Piece: –When peer starts to download, request random piece. So as to assemble first complete piece quickly Then participate in uploads –When first complete piece assembled, switch to rarest-first

Choosing pieces to request End-game mode: –When requests sent for all sub-pieces, (re)send requests to all peers. –To speed up completion of download –Cancel request for downloaded sub-pieces

Tit-for-tat as incentive to upload Want to encourage all peers to contribute Peer A said to choke peer B if it (A) decides not to upload to B Each peer (say A) unchokes at most 4 interested peers at any time –The three with the largest upload rates to A Where the tit-for-tat comes in –Another randomly chosen (Optimistic Unchoke) To periodically look for better choices

Anti-snubbing A peer is said to be snubbed if each of its peers chokes it To handle this, snubbed peer stops uploading to its peers  Optimistic unchoking done more often –Hope is that will discover a new peer that will upload to us

Why BitTorrent took off Better performance through “pull-based” transfer –Slow nodes don’t bog down other nodes Allows uploading from hosts that have downloaded parts of a file –In common with other end-host based multicast schemes

Why BitTorrent took off Practical Reasons (perhaps more important!) –Working implementation (Bram Cohen) with simple well-defined interfaces for plugging in new content –Many recent competitors got sued / shut down Napster, Kazaa –Doesn’t do “search” per se. Users use well-known, trusted sources to locate content Avoids the pollution problem, where garbage is passed off as authentic content

Pros and cons of BitTorrent Pros –Proficient in utilizing partially downloaded files –Discourages “freeloading” By rewarding fastest uploaders –Encourages diversity through “rarest-first” Extends lifetime of swarm Works well for “hot content”

Pros and cons of BitTorrent Cons –Assumes all interested peers active at same time; performance deteriorates if swarm “cools off” –Even worse: no trackers for obscure content Recent studies by team at U. Washington found that many swarms “fail” because there are few changes for repeated interaction with the same peer –They suggest fixes, such as “one hop reputation” idea presented at NSDI 2008

Pros and cons of BitTorrent Dependence on centralized tracker: pro/con? –  Single point of failure: New nodes can’t enter swarm if tracker goes down –Lack of a search feature Prevents pollution attacks  Users need to resort to out-of-band search: well known torrent-hosting sites / plain old web-search

Do Incentives Build Robustness in BitTorrent? Michael Piatek, Tomas Isdal, Thomas Anderson, Arvind Krishnamurthy, and Arun Venkataramani U. Of Washington and U. of Massachusetts, Amherst

BitTorrent BitTorrent is a protocol for bulk data transfer The more you give, the more you get Tit-for-tat –Not really

Altruism Not really TFT –80% of users get more than they give –70% of capacity comes from high capacity users –Not really a fair protocol Operates based on altruism of high capacity users

Exploiting Altruism Selfish users –Rational –Want to cheat (as long as they won’t get caught!) –Can download with many low-speed connections rather than 1 high-speed

BitTyrant Maximize reciprocation bandwidth per connection –Find peers that give the most for the least Maximize number of reciprocating peers –Get as many peers as possible –Until benefit of new peer is outweighed by cost of reduced reciprocation from other peers Deviate from equal –Decrease uploading on each connection –Until peer stops reciprocating

Results BitTyrant improves average download performance by 70% Regardless of capacity, using BitTyrant is in the selfish interest of every peer individually When all peers behave selfishly, average performance degrades for all peers, even those with high capacity

Take-away BitTorrent works because people use the default client –No cheating BitTyrant is now available in the wild –This is a test – Do incentives build robustness? –Maybe users will continue to donate excess bandwidth –Maybe users will be selfish Proven to reduce overall capacity

BAR Gossip Henry Li, Allen Clement, Edmund Wong, Jeff Napper, Indrajit Roy, Lorenzo Alvisi, and Michael Dahlin

BAR Model Byzantine (Arbitrary) Nodes Altruistic (Generous) Nodes Rational (Selfish) Nodes

BAR Gossip Vision In presence of: –Selfish nodes –Byzantine nodes We want: –Predictable throughput –Low latency

BAR Gossip Differences Data exchange in short periods No long-term reputation Exchanges small blocks of data Robust to both Selfish and Byzantine behavior

BAR Gossip Assumptions One data broadcaster Static Membership Reliable Cryptographic primitives (SHA1,RSA) Unique keys and signatures for nodes

Overview

Core Idea Balanced Exchange –When a peer gives some data in exchange of some data. “Trade data for data.“ Optimistic Push –Every peer will willingly help others by giving them data for free. Be a good person and give data for free. What about when I don’t have anything to trade off with, am I out of the game then ?

Take-away Current gossip protocols are ill-suited for selfish environments. Bar Gossip –Verifiable pseudo-randomness –Signatures –Balanced Exchange, achieves 98% reliability. –With Optimistic Push, increases to almost 99.9%

Next Time Final Presentations –Room 5130 –8am – 3:30pm, Thursday, December 3 rd –15 minute presentations, 5 minute questions –Signup for presentation slot Final paper –Due next Thursday, December 10 th –Complete paper and comprehensive evaluation Thank you!