Cope with selfish and malicious nodes

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

When a Good Reputation isn’t Good Enough Jonathan Traupman Robert Wilensky U.C. Berkeley.
Oligopoly.
Infinitely Repeated Games
Secure Multiparty Computations on Bitcoin
Crime, Punishment, and Forgiveness
Agreement: Byzantine Generals UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau Paper: “The.
BASICS OF GAME THEORY. Recap Decision Theory vs. Game Theory Rationality Completeness Transitivity What’s in a game? Players Actions Outcomes Preferences.
A Robust and Efficient Reputation System for Active Peer-to-Peer Systems Dominik Grolimund, Luzius Meisser, Stefan Schmid, Roger Wattenhofer Computer Engineering.
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.
Infinitely Repeated Games. In an infinitely repeated game, the application of subgame perfection is different - after any possible history, the continuation.
EC941 - Game Theory Lecture 7 Prof. Francesco Squintani
Game Theory. “If you don’t think the math matters, then you don’t know the right math.” Chris Ferguson 2002 World Series of Poker Champion.
On the Economics of P2P Systems Speaker Coby Fernandess.
Improving Peer-to-Peer Networks “Limited Reputation Sharing in P2P Systems” “Robust Incentive Techniques for P2P Networks”
Communication Networks A Second Course Jean Walrand Department of EECS University of California at Berkeley.
EC – Tutorial / Case study Iterated Prisoner's Dilemma Ata Kaban University of Birmingham.
Experience with an Object Reputation System for Peer-to-Peer File Sharing NSDI’06(3th USENIX Symposium on Networked Systems Design & Implementation) Kevin.
CompSci 356: Computer Network Architectures Lecture 21: Content Distribution Chapter 9.4 Xiaowei Yang
Haifeng Yu National University of Singapore
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture XV: Real P2P Systems.
A Memetic Framework for Describing and Simulating Spatial Prisoner’s Dilemma with Coalition Formation Sneak Review by Udara Weerakoon.
Game Theory: Key Concepts Zero Sum Games Zero Sum Games Non – Zero Sum Games Non – Zero Sum Games Strategic Form Games  Lay out strategies Strategic Form.
FRIENDS: File Retrieval In a dEcentralized Network Distribution System Steven Huang, Kevin Li Computer Science and Engineering University of California,
Service Differentiated Peer Selection An Incentive Mechanism for Peer-to-Peer Media Streaming Ahsan Habib, Member, IEEE, and John Chuang, Member, IEEE.
CS522: Algorithmic and Economic Aspects of the Internet Instructors: Nicole Immorlica Mohammad Mahdian
TOPIC 6 REPEATED GAMES The same players play the same game G period after period. Before playing in one period they perfectly observe the actions chosen.
On Bounded Rationality and Computational Complexity Christos Papadimitriou and Mihallis Yannakakis.
Content Overlays (Nick Feamster) February 25, 2008.
A Game Theoretic Framework for Incentives in P2P Systems --- CS. Uni. California Jun Cai Advisor: Jens Graupmann.
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,
Yitzchak Rosenthal P2P Mechanism Design: Incentives in Peer-to-Peer Systems Paper By: Moshe Babaioff, John Chuang and Michal Feldman.
Intermediate Microeconomics
The EigenTrust Algorithm for Reputation Management in P2P Networks
Ivan Osipkov Fighting Freeloaders in Decentralized P2P File Sharing Systems.
Role of incentives in networks CS 653, Fall 2010.
Rational Cryptography Some Recent Results Jonathan Katz University of Maryland.
Chapter 10: Games and Strategic Behavior
Incentives for Sharing in Peer-to-Peer Networks By Philippe Golle, Kevin Leyton-Brown, Ilya Mironov, Mark Lillibridge.
Lecture 12. Game theory So far we discussed: roulette and blackjack Roulette: – Outcomes completely independent and random – Very little strategy (even.
UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department
Game Theory by James Crissey Luis Mendez James Reid.
Chapter 14 Oligopoly.
Chapters 29 and 30 Game Theory and Applications. Game Theory 0 Game theory applied to economics by John Von Neuman and Oskar Morgenstern 0 Game theory.
1 Reforming Software Delivery Using P2P Technology Purvi Shah Advisor: Jehan-François Pâris Department of Computer Science University of Houston Jeffrey.
Heuristic Strategy and Incentives in Distribution Networks of Competitive Agents STIET Fall Workshop, 2003 Presenter: Thede Loder.
The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar Mario T.Schlosser Hector Garcia-Molina.
McGraw-Hill/Irwin Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 8: Games and Strategic Behavior 1.Describe the basic.
Punishment, Detection, and Forgiveness in Repeated Games.
Proposal Pollution prevention in the P2P file sharing system Presenter: Elaine.
Evolution of Cooperation in Mobile Ad Hoc Networks Jeff Hudack (working with some Italian guy)
CSE 486/586 Distributed Systems Byzantine Fault Tolerance
Lecture XV: Real P2P Systems
Contents of the Talk Preliminary Materials Motivation and Contribution
Introduction to BitTorrent
tit-for-tat algorithm
CSE 486/586 Distributed Systems Byzantine Fault Tolerance
Economics and Computation Week 7: The economics of P2P file sharing
Designing Bidding Strategies
Computer-Mediated Communication
Managing Inter-domain Traffic in the Presence of BitTorrent File-Sharing Srinivasan Seetharaman and Mostafa Ammar School of Computer Science Objective:
Do incentives build robustness in BitTorrent?
The BitTorrent Protocol
Evolution for Cooperation
Phase transitions to cooperation in the prisoner‘s dilemma
Presentation transcript:

Cope with selfish and malicious nodes Jinyang Li

P2P requires cooperation Cooperation means nodes obey design However, P2P users control the nodes Modify the given software Shut down application Delete app files Rate limit application etc. P2P users are mostly selfish Avoid contributing resources as much as possible P2P nodes could be malicious Adversary can enroll (arbitrarily) many nodes P2P nodes speak the “right” protocol, but might not do the “right” things.

What if anyone can run Coral?

Design space for combating misbehaving nodes Enforce nodes to run desired software Obfuscate protocol/software Rely on hardware support to authenticate a running piece of software (Trusted computing)

Design space for combating misbehaving nodes 2. Encourage nodes not to be selfish Design protocols so it is in a node’s best interest to contribute 3. Choose trustworthy nodes for interaction If only a few trusted nodes turn out to be bad, it is okay since data/service is replicated

#2 Encourage non-selfish behavior What do selfish users do in file-sharing? Download from others, but refuse to upload Why is it bad? If everybody behaves like this, system is useless

A layman’s view of game theory C Global optimal: Requires both to cooperate D 3,3 0,5 5,0 1,1 C Nash equilibrium both defect, worst global outcome D Prisoner’s dilemma (PD)

Tit-for-tat What if boy and dog play the game over many iterations? Cooperate in the 1st round, mirror what your opponent did in the last round Tit-for-tat with forgiveness: Occasionally cooperate to end a streak of retaliation and counter-retaliation

Tit-for-tat for file sharing Exchanging data between peers is like an iterated PD game Break data exchange in multiple rounds. If remote peer does not upload fast enough (defect), choke his download (play defect).

Bittorrent Group all peers interested in the same file into a swarm Each node has sth. the other wants A big file is broken into pieces Each node downloads pieces in random order Every 10 seconds, calculate a remote peer’s upload rate, if no good, choke it Tit-for-tat Periodically chooses one random peer to unchoke …with forgiveness

How tit-for-tat helps BT Tit-for-tat in BT ensures fair exchange(?) Tit-for-tat prevents selfish behavior(?) All selfish behaviors are non-profitable(?)

Cautions in applying tit-for-tat in other scenarios The game must be played over many rounds Each peer must have “goods” valued equally by the other What’s at stake?

# Combating malicious nodes Malicious (Byzantine) nodes Their goal is to bring max harm to you May also behave randomly and unpredictably Basic strategy replicate data/functionalities Obtain data or votes of results from multiple replicas The impossibility results: No availability when all nodes are Byzantine. No correct agreement when >1/3 nodes are Byzantine.

What’s at stake? What does the system vote on? launch a nuclear missile Buyer or seller’s reputation (eBay) Importance of a webpage (Google) Interesting news (digg) Authenticity of a shared file (Credence)

Who can vote? eBay, digg: any registered users Can an adversary register millions of users? Must ensure votes come from independent parties Restrict voters to humans Restrict one identity per human Credence: Central authority issues public key to nodes Limit how fast keys are issued to each node

What to vote on? Votes could be on subjective or objective matters (Digg) Interesting vs. boring news Credence insight: Make votes objective, honest users  similar votes Example votes: <abf3: britney  name, mp3 = type>K <ba9f: britney  name, mp3  type>K <35e4: name = >K Binds a vote to its file Binds a vote to a user

How to cast votes? U1 downloads files abf3,ba9f,35e4 with search term “britney mp3” <abf3: britney  name, mp3 = type>K <ba9f: britney  name, mp3  type>K <35e4: name = >K

How to use votes? U2 obtains hash abf3,ba9f,35e4 from search “britney mp3” Goal: Rank hashes according to votes Collect a list of votes for each hash from peers Weight peers using voting history correlation Compute weighted aggregate votes on each hash Sort

Weight peers based on vote correlation My votes U1’s votes abcd britney  name, b234 spears  name, 4567 madonna  name ff45 nina  name 1234 britney  name abf3 britney  name b234 britney  name 4567 madonna  name ff45 nina  name 1234 britney  name 4 votes on same files; 2 positive agreements P=.5 2 positive votes from me, 3 positive votes from U1 a=.5, b=.75 Correlation (p-ab)/sqrt(a(1-a)b(1-b)) = 1.36

Weight peers based on vote correlation My votes U2’s votes abcd britney  name, b234 spears  name, 4567 madonna  name ff45 nina  name 1234 britney  name abf3 britney  name b234 britney  name 4567 madonna  name ff45 nina  name 1234 britney  name 4 votes on same files; 1 positive agreements P=0.25 2 positive votes from me, 3 positive votes from U1 a=.5, b=.75 Correlation (p-ab)/sqrt(a(1-a)b(1-b)) = -0.57

What if there are no overlapping files? Use transitive correlation If A has high correlation with B, B has high correlation with C, then A has high correlation with C

Summary on DHT and P2P What did you learn?