robust incentives via multi-level tit-for-tat qiao lian, zheng zhang (msra) yu peng, mao yang, yafei...

36
Robust Incentives via Multi-level Tit- for-tat Qiao Lian, Zheng Zhang (MSRA) Yu Peng, Mao Yang, Yafei Dai, Xiaoming Li (PKU) IPTPS, Feb. 2006

Post on 21-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Robust Incentives via Multi-level Tit-for-tat

Qiao Lian, Zheng Zhang (MSRA)

Yu Peng, Mao Yang, Yafei Dai, Xiaoming Li (PKU)

IPTPS, Feb. 2006

P2P file-sharing needs incentives to work

genuine incentives: must collaborate/share to benefit E.g. block exchange in BT Problems: only works within a large session

75

80

85

90

95

100

1 10 100 1000 10000Number of User for a fi l e (One Day)

CDF

perc

enta

ge

• Nearly 80% sessions contain 2 peers only, i.e. there is only one downloader• No one else to collaborate with!

A simple breakdown of the spectrum

Artificial incentive: Produce/record evidence of collaboration for future reference

Incentives

Private history Shared history

subjective Non-subjective

genuine incentives Artificial incentives

The sum of contribution from the perspective of other peers, weighted by their

reputation (e.g. EigenTrust)

Absolute contribution(e.g. Maze)

Brittle to collusion and other problems

Talk organization

The Maze p2p file sharing systemExisting collusion behaviorsWhy simple algorithms do not work

EigenTrust and Tit-for-TatMulti-trust algorithmEvaluationSummary and Related workConclusion

Maze:architecture

1. A sends query2. server responses with file / replica info3. A sends download requests4. B and C response with file data5. B and C upload traffic log

A

B

C

centralize maintainedindex / membership

user cloud Our work starts from these logs

Vital statistics

Popular Population: 1.4 million registered accounts; 30,000+

online users More than 200 million files More than 13TB (!) transfer everyday

Completely developed, operated and deployed by an academic team Logs added since the collaboration w/ MSRA in 2004 Enable detailed study at all angles

Maze : Incentive Policies

New users: points == 4096 Point change:

Uploads: +1.5 points per/MB Downloads: at most -1.0 point/MB

Gives user more motivation to contribute

Benefit of high point Climbing ladder social status Service differentiation:

Order download requests by T = Now – 3log(Point) Users with P < 512 have a download bandwidth of 200Kb/s

Available in Maze5.0.3; extensively discussed in Maze forum before implemented

100M

500M

900M

100M Account Change(Point/Mb)

Transfer Bytes(Mb)

1

-1 -0.7 -0.1-04

Upload

Download

Talk organization

The Maze p2p file sharing systemExisting collusion behaviorsWhy simple algorithms do not work

EigenTrust and Tit-for-TatMulti-trust algorithmEvaluationSummary and Related workConclusion

What is collusion

Definition (Webster dictionary): secret agreement or cooperation especially for an

illegal or deceitful purpose

And in the Maze context: Multiple peers collude to defeat the incentive system

What makes the study hard: Even with all the traffic logs, we will never know for sure But we can identify suspicious colluding patterns

See our technical report for more details

the collusion workingset

Repeat traffic detector Hint: colluders are lazy for peer pair link: duplication degree = total traffic / unique data

221,000 pairs whose duplication degree > 1 the top 100 pairs with most redundant traffic

A closer look…

(David, Alice, Quincy)e.g. Alice uploads MSDN DVD

image (~3GB) for 29 times

(Fred, Gary)(Olga, Pam)

(Harry, Cindy)

Pair-wise collusion

Ted: 3.8TB

Ingrid: 78GB

Sam: 47GB

Mary: 73GBStar-shape collusion

(spam account):colluding + whitewashing account

Talk organization

The Maze p2p file sharing systemExisting collusion behaviorsWhy simple algorithms do not work

EigenTrust and Tit-for-TatMulti-trust algorithmEvaluationSummary and Related workConclusion

What about EigenTrust?

EigenTrust: clone of PageRank Basic idea:

Consider recommender’s reputation

Trust matrix M: mi,j: trust of peer i to peer j (e.g

download quantity) normalize each row of M:

EigenTrust vector: The left principal eigenvector T The rank of peer i is Ti

imj

ji ,1,

What about EigenTrust?

EigenTrust: clone of PageRank Basic idea:

Consider recommender’s reputation

Trust matrix M: mi,j: trust of peer i to peer j (e.g

download quantity) normalize each row of M:

EigenTrust vector: The left principal eigenvector T The rank of peer i is Ti

6.02.02.0

1.009.0

1.09.00

M

9GB

9GB

1GB

10GB

1GB 10GB B

C

A

)(

)(

)(

2.0

4.0

4.0

C

B

A

T

imj

ji ,1,

30GB

False negative of EigenTrust

traffic EigenRank

>99%: 29GB collusion traffic 7.4x10-8

<1%: 200MB upload to some reputable peers 7.4x10-8 8.2x10-6

734KB upload to super peer Ted 8.2x10-66.6x10-5

Does the 734KB upload to Ted really matter? No, Ted is an irrational

user It downloads only

124MB, but uploads 3.8TB.

How the leg-hugger has high score:

leg-hugger Larry

False positive of EigenTrust(local distributor Wayne)

Wayne is in a satellite cluster Wayne uploads 290GB.

Its EigenRank equals to a peer in majority community with 10GB upload

Is it fair? At least, Wayne should have

high rank inside the satellite cluster.

We need personalized rank for each peer, e.g. Tit-for-Tat

Local distributor Wayne

5600GB

Talk organization

The Maze p2p file sharing systemExisting collusion behaviorsWhy simple algorithms do not work

EigenTrust and Tit-for-TatMulti-trust algorithmEvaluationSummary and Related workConclusion

Idea: trust peers (friends) who has helped me before Used in eMule and BitTorrent (the 2 popular P2P filesharing system)

Private history: Tit-for-Tat

Idea: trust peers (friends) who has helped me before Used in eMule and BitTorrent (the 2 popular P2P filesharing system)

Problem: extremely small coverage

Private history: Tit-for-Tat

Limited coverage even with longer history

Talk organization

The Maze p2p file sharing systemExisting collusion behaviorsWhy simple algorithms do not work

EigenTrust and Tit-for-TatMulti-trust algorithmEvaluationSummary and Related workConclusion

Multi-trust incentive algorithm

1. get friends’ 1-hop friends2. build friends’ friend list, i.e.,

2-hop friend list3. get friends’ 2-hop friends4. build 3-hop friend list

Idea: we need more than one tier of trust!

Multi-trust incentive algorithm

1. get friends’ 1-hop friends2. build friends’ friend list, i.e.,

2-hop friend list3. get friends’ 2-hop friends4. build 3-hop friend list

Idea: we need more than one tier of trust

Multi-trust incentive algorithm

1. get friends’ 1-hop friends2. build friends’ friend list, i.e.,

2-hop friend list3. get friends’ 2-hop friends4. build 3-hop friend list

Idea: we need more than one tier of trust

Multi-trust incentive algorithm

1. get friends’ 1-hop friends2. build friends’ friend list, i.e.,

2-hop friend list3. get friends’ 2-hop friends4. build 3-hop friend list

Idea: we need more than one tier of trust

Multi-trust incentive algorithm

Idea: needs more than one tier of trust

1. get friends’ 1-hop friends2. build friends’ friend list, i.e.,

2-hop friend list3. get friends’ 2-hop friends4. build 3-hop friend list

……

A

C

D

E

F

B

A C DEF B

1-hop friends2-hop friends3-hop friendsother peers

Multi-trust incentive algorithm

1. get friends’ 1-hop friends2. build friends’ friend list, i.e.,

2-hop friend list3. get friends’ 2-hop friends4. build 3-hop friend list

M

M2

M3

Mathematically answer: use full spectrum { M, M2, … M∞ }

Idea: needs more than one tier of trust

Multi-trust incentive algorithm

Evaluation: Coverage: real trace driven simulation of one month Effectiveness: statically evaluate the next 2 weeks traffic

Metric: colluder’s queue position at the data source peer

multi-trust: the full spectrum incentive algorithm

Tit-for-Tat M∞T: EigenTrust

Coverage

{ M, M2, … M∞ }

Personalization

Talk organization

The Maze p2p file sharing systemExisting collusion behaviorsWhy simple algorithms do not work

EigenTrust and Tit-for-TatMulti-trust algorithmEvaluationSummary and Related workConclusion

Multi-trust incentive algorithm

Coverage experiment

The coverage of {M, M2} is already good enough We can choose using {M, M2, M∞ }

Multi-trust incentive algorithm:

Effectiveness expr. methodologySetup

Generating rank based on one months history Evaluate the next two weeks

Metric: We don’t have a global rank … Queue Position at each source peer:

Source peers: who holds interested resource to me

Multi-trust incentive algorithm:

dealing with colluders

Spam account colluder 5/7 punish Ingrid equally Peer 7 punishes more in multi-trust Peer 4 punishes less in multi-trust

since it downs from Ingrid

Pair-wise colluder 7/9 punish Cindy equally 2/9 punish more in multi-trust

Friends get ahead!

Desirable: as good as EigenTrust

Multi-trust incentive algorithm:

solve problems in EigenTrust

Leg-hugger 78% peers rank Larry lower 22% are still affect by super

peers Ted.

Local distributor Inside:

2/3 peers promote Wayne’s rank 1/3 is too young to know Wayne’s good

Outside: another friend

False-negative False-positive

Talk organization

The Maze p2p file sharing systemExisting collusion behaviorsWhy simple algorithms do not work

EigenTrust and Tit-for-TatMulti-trust algorithmEvaluationSummary and Related workConclusion

Summary and Related Work

Conclusion

EigenTrust and Tit-for-tat each have their own pitfall

Multi-trust as a hybrid achieves better balance

Thank you

Q&A