1 / 30

A Survey of Incentive Mechanisms in Peer-to-Peer Systems

A Survey of Incentive Mechanisms in Peer-to-Peer Systems. Technical Report CS-2009-22, 2009 University of Waterloo Presented by Jehn-Ruey Jiang. Users.

Download Presentation

A Survey of Incentive Mechanisms in Peer-to-Peer Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Surveyof Incentive Mechanismsin Peer-to-PeerSystems Technical Report CS-2009-22, 2009 University of Waterloo Presented by Jehn-Ruey Jiang

  2. Users • Obedient users: abide by protocol rules v.s.Rational users: attempt to maximize their consumption of system resources while minimizing the use of their own

  3. Free Rider • Users who try to benefit from a system without making any contribution to the system • About 75% of users are free-riders free-riders

  4. Common Incentive Mechanisms • Currency:In MojoNation, peers earn currency by making contributions and use the earned currency to purchase service from other peers. • Reputation:In KaZaA, peers increase their reputation by uploading and later use their high reputation scores during downloading.

  5. Free Riding Related Problems • White Washing Attack: a free-rider repeatedly rejoins the network under new identities to avoid the penalty imposed on free-riders. • The whitewashing attack is made feasible by the availability of low cost identities or cheap pseudonyms. • Two ways to counter the attack: • To assign strong free IDs by a centrally trusted authority • To impose penalties on all newcomers

  6. Free Riding Related Problems • Sybil Attack: a single malicious identity can present multiple identities, and thus gain control over part of the network. (An attacker thwarts the reputation and sharing mechanism of a P2P network by creating a large number of identities or pseudonyms, using them to gain a disproportionately large influence.)

  7. BitTyrant Michael Piatek, Tomas Isdal, Thomas Anderson, Arvind Krishnamurthy, and Arun Venkataramani. “Do incentives build robustness in bittorrent?” In NSDI’07, Cambridge, MA, April 2007.

  8. Contribution? • The paper seeks to show ‘a strategic peer can raise download speeds while still contributing the same’ • Already proven by BitThief (‘Free Riding in BiTorrent is Cheap’, Locher et al., HotNets, 2006)– high download rates without uploading any data

  9. Strategic? • Benefit of optimistic unchoking: Might discover faster peers at all points in time • BitTyrant abolishes optimistic unchoking; it is designed not to upload too much if you cannot download so much in return • Instead, look for people with higher upload rates instead so you can do a better deal • Benefits people with higher upload capacities

  10. Building BitTyrant: A strategic client • Un-choking Algorithm • dp:download rate of connection p • up:upload rate of connection p

  11. Building BitTyrant: A strategic client • How to improve performance? • Maximize reciprocation bandwidth per connection • Maximize number of reciprocating peers • Deviate from equal split • From previous result (from equal split to unequal split) • 100 KB/s → 15 KB/s, probability of reciprocation↓1% • 15 KB/s → 10 KB/s, probability of reciprocation↓40%

  12. Building BitTyrant: A strategic client • Un-choking Algorithm • γ= 10% • δ= 20% • r = 3

  13. Karma

  14. Virtual Currency • KARMA [25] proposes a general economic framework of virtual currency for combating free-riders in p2p systems by keeping track of resource contribution and resource consumption of each member of the system. • This is achieved by representing the overall performance of each participant via a single metric called karma.

  15. Banking • The karma values for each node are maintained by a set of other nodes (called the bank-set) who are collectively responsible for continuously increasing and decreasing the karma value for that node as it contributes and consumes resources consumption of each member of the system. • Initially a user is awarded a seed amount of karma when s/he joins the system (this can encourage white washing).

  16. Bank-set Mapping • The KARMA design assumes that there are at least k available nodes in the system at all time instances and that a certain fraction of these nodes are non-malicious. • The bankset information is maintained via a Distributed Hash Table (DHT) where each node is mapped to bank-sets. • The k closest nodes in the identifier space of each node A constitute the bank-set for A.

  17. Selecting peers for downloading • KARMA maintains file information using a fileID for each file. When a node joins, it associates its id with the fileID’s of all files that it possesses. • A node willing to download a file acquires a list of potential up-loaders to select the peer to download from.

  18. Karma Exchange • The karma transfer from A to B is initiated when A sends B a signed message authorizing BankA to transfer a given amount of karma to B, which forwards this message to BankB which in turn contacts BankA. • If A has sufficient karma in its account, the amount is deducted from A’s account and credited to B’s account.

  19. Drawback • Peers are required to act as bankers for other nodes; no peer has any incentive to take this additional responsibility. • Karma may introduce additional free-riding behavior in an attempt to cope with free-riding itself! ==> the new free-riding problem

  20. Credence

  21. Credence • A P2P distributed reputation system, designed to thwart content pollution in P2P file sharing systems. • File Pollution in P2P networks • Wasted resources • Mislabeled content • Mal-content (viruses and Trojans) • A fully functioning Credence is build as an extension to the LimeWire client for the Gnutella file sharing network.

  22. Overview of the approach • Goal: To distinguish between authentic content and polluted content • Users VOTE on objects based on their judgment • Users COLLECT votes to evaluate authenticity of the object they are querying • Users EVALUATE votes from peers to determine credibility of peers from their perspective

  23. Search Results • Each search result can be viewed as a claim about the file's attributes. • For example, <H: gettysburname, mp3=type, 128=bitrate> makes the claim that the file with content hash H has the specified attributes. • The symbol  is used to indicate that gettysburg is one of possibly many valid names for the file.

  24. Votes in Credence • A Vote is a signed tuple: <H: S,T> K • H - File content hash • S – Statement about the file • T – Timestamp • K – Certificate • Votes are cryptographically signed to ensure non-repudiation and to prevent sybil attacks • Statement: <value set operator attribute> For example, <H: mp3type>

  25. Collecting and Storing Votes • Vote-gather query: to use the existing query infrastructure by issuing a vote-gather query, specifying the hash of the file of interest, to the underlying Gnutella network. • Reactive, pull-based • Highest weight votes sent if multiple votes stored by a given peer • Vote-database: <file hash: timestamp, peer’s own vote, list of other votes received>

  26. Computing Correlations • Compare shared voting history for each pair of peers • Correlation coefficient θobtained by comparing conflicting votes and agreeing votes • θ takes a range of [-1,1] • Positive values indicate agreement • Negative values indicate disagreement

  27. Responses to Attacks • Naïve attacker ( votes consistently in opposition to honest clients – will be cut off) • Random attacker ( – will generate no correlations with other peers • Rational attacker (some files with honest votes, dishonest on others – has to leak some correct information in the network) • Whitewasher – attacker first votes honestly on a large set of files before voting dishonestly on a smaller TARGET set. Client’s own perspective at evaluating a peer comes into play here to exclude the attacker.

  28. Q&A

More Related