BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s...

110
BitTorrent Katrina LaCurts MIT CSAIL [email protected] (much content borrowed from Dave Levin, [email protected])

Transcript of BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s...

Page 1: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent

Katrina LaCurtsMIT CSAIL

[email protected]

(much content borrowed from Dave Levin, [email protected])

Page 2: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent Overview

peer

Page 3: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent Overview

peertracker

Page 4: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent Overview

130.136.254.21130.136.254.22171.66.3.182128.31.1.11

128.83.122.180128.232.103.202

155.98.35.4128.163.142.20

...

peertracker

Page 5: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent Overview

peer

leechers

Page 6: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent Overview

peer

neighbors

Page 7: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent Overview

peer

neighbors

Page 8: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent Overview

peer

neighbors

Page 9: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent Overview

peer

neighbors seeders

Page 10: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Phases of BitTorrent

0%

100%

% D

ownl

oade

d

Bootstrapping: Getting the first pieces

Steady-state: Trading with peers

End-game: Getting the last pieces

Page 11: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Phases of BitTorrent

0%

100%

% D

ownl

oade

d

Bootstrapping: Getting the first pieces

End-game: Getting the last pieces

assumption: peers have pieces to trade with other peers

Steady-state: Trading with peers

Page 12: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Steady-state

in steady-state, a BitTorrent peer uploads to and

downloads from different neighbors

Page 13: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Steady-state

in steady-state, a BitTorrent peer uploads to and

downloads from different neighbors

Page 14: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Steady-state

in steady-state, a BitTorrent peer uploads to and

downloads from different neighbors

how does he decide who to upload to, how much to

upload, etc.?

Page 15: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Steady-stateRound t

divide protocol into rounds. peers that upload the most to us in round t get uploaded to in round t+1

Page 16: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Steady-stateRound t

divide protocol into rounds. peers that upload the most to us in round t get uploaded to in round t+1

Round t+1

Page 17: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

13

10

97

12

4

15

Round t

Page 18: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

13

10

97

12

4

15

Round t

Page 19: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

13

10

97

12

4

15

Round t

10

10

10

10

Round t+1

Page 20: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

20?

15

13

10

12

Page 21: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

20?20

15

13

10

12

Page 22: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

20?20

15

13

10

12

Page 23: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

20?

10

10

10

10

Page 24: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

11?

15

13

10

12

Page 25: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

11

BitTorrent’s Unchoker

11?

15

13

10

12

Page 26: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

11

BitTorrent’s Unchoker

11?

15

13

10

12

Page 27: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

10

10

10

10

BitTorrent’s Unchoker

11?

Page 28: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

10

10

10

10

BitTorrent’s Unchoker

11?

Best strategy: Come in last

peers do not have incentive to give as much as possible

Piatek, et al. “Do Incentives Build Robustness in BitTorrent?”. NSDI 2007

Page 29: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

42?

15

13

10

12

Page 30: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

15

13

10

12

14 14 14

Page 31: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

15

13

10

12

14 14 14141414

Page 32: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

15

13

10

12

14 14 14141414

Page 33: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

14 14 14

10

10

1010

Page 34: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

BitTorrent’s Unchoker

14 14 14

10

10

1010

Sybil Attack: Create additional identities to

subvert the system

Page 35: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

13

10

97

12

4

15

Round t

Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008

Page 36: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

13

10

97

12

4

15

Round t

Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008

Page 37: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

13

10

97

12

4

15

Round t

Total: 70

Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008

Page 38: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

13

10

97

12

4

15

Round t

Total: 70

13/70

10/70

12/70

15/70

Round t+1

4/70

9/70

7/70

Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008

Page 39: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

20?

50

Page 40: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

20?

2050

Page 41: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

20?

2050

Total: 70

Page 42: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

20?Total: 70

50/70 20/70

Page 43: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

11?

50

Page 44: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

11?

1150

Page 45: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

11?

1150

Total: 61

Page 46: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

11?Total: 61

50/61 11/61

Page 47: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

11?Total: 61

50/61 11/61

Upload Less →Receive Less →

Incentive to Upload More

Page 48: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

2050

5 5

55

Page 49: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

2050

Total: 70

5 5

55

Page 50: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

Total: 70

50/70 20/70

5 5

55

Page 51: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

Total: 70

50/70 20/70

5 5

55

+ + + =

5 5 5 520

Page 52: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

PropShare Unchoker

Total: 70

50/70 20/70

5 5

55

+ + + =

5 5 5 520

PropShare is Sybil-proof

Page 53: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Steady-state Results

• BitTyrant and PropShare are both faster than BitTorrent

• For different reasons

• PropShare performs comparably to BitTyrant

• PropShare does not suffer from a tragedy of the commons

• BitTyrant does

Page 54: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Phases of BitTorrent

0%

100%

% D

ownl

oade

d

Bootstrapping: Getting the first pieces

Steady-state: Trading with peers

End-game: Getting the last pieces

Page 55: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Phases of BitTorrent

0%

100%

% D

ownl

oade

d

Steady-state: Trading with peers

End-game: Getting the last pieces

assumption: peers have nothing to give to other peers

Bootstrapping: Getting the first pieces

Page 56: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 57: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 58: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 59: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 60: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 61: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 62: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 63: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 64: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

Page 65: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

exploit: always asked to be optimistically unchoked (i.e., never upload)

Page 66: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Optimistic Unchokingreserve a portion of bandwidth to give freely to other peers

(presumably new peers)

exploit: always asked to be optimistically unchoked (i.e., never upload)

tragedy of the commons: system will collapse if everyone does this

Locher, et al. “Free Riding in BitTorrent is Cheap”. HotNets, 2006

Page 67: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 68: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 69: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 70: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 71: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 72: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 73: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 74: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 75: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

Li, et al. “BAR Gossip”. OSDI 2006

Page 76: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

no incentive to repeatedly ask for unchoking, but wastes system resources

Li, et al. “BAR Gossip”. OSDI 2006

Page 77: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Junk Updatesforce peers to upload useless data

no incentive to repeatedly ask for unchoking, but wastes system resources

Li, et al. “BAR Gossip”. OSDI 2006

can we put new peers to work doing something useful?

Page 78: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 79: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 80: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 81: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBS

both and

get pieces from

Levin, et al.

Page 82: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 83: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 84: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 85: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBS

can send junk

problem:

Levin, et al.

Page 86: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBS

or nothing at allcan send junk

problem:

Levin, et al.

Page 87: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBS

Solution: Encryption

or nothing at allcan send junk

problem:

Levin, et al.

Page 88: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 89: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 90: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBScorrect?correct? Levin, et al.

Page 91: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

TBSLevin, et al.

Page 92: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Bootstrapping Summary

• Bootstrapping is not a very large part of the download. Even so, it can be exploited

• A better bootstrapping mechanism has potential to yield better performance throughout the download

• Moreover, it can be used whenever a peer becomes uninteresting, not just in the bootstrapping phase

Page 93: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Phases of BitTorrent

0%

100%

% D

ownl

oade

d

Bootstrapping: Getting the first pieces

Steady-state: Trading with peers

End-game: Getting the last pieces

Page 94: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Phases of BitTorrent

0%

100%

% D

ownl

oade

d

Bootstrapping: Getting the first pieces

Steady-state: Trading with peers

assumption: not many peers are mutually interesting

End-game: Getting the last pieces

Page 95: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t

Goal: Be as interesting as possible to lots of peers

Page 96: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t

Goal: Be as interesting as possible to lots of peers

Page 97: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t

Goal: Be as interesting as possible to lots of peers

Page 98: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t+1

Goal: Be as interesting as possible to lots of peers

Page 99: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t+1

Goal: Be as interesting as possible to lots of peers

Page 100: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t

Page 101: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t

Page 102: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t

Page 103: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t

Page 104: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t+1

Page 105: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t+1

Page 106: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Round t+1

Page 107: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Strategic Piece Revelation

Strategically reveal pieces → Peers are interested in me

longer

Round t+1

Page 108: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Peer Selection

• Before our download even starts, a BitTorrent client gets a set of peers from the tracker.

• During the download, the peer figures out the “best” of this set

• What if we could decide which peers would be best without trading with them first?

Page 109: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Peer Selection

• Measuring link characteristics is sometimes seen as a threat, and doesn’t scale

• Many measurement systems require a “map” of the Internet, which is hard to obtain

• Network coordinate systems don’t require a map, but are complicated and don’t always work

• Could try simple things (use peers in our ISP, e.g.), but it’s not clear that these work either

Page 110: BitTorrent · Levin, et al. “BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives”. SIGCOMM 2008. PropShare Unchoker 13 10 9 7 12 4 15 Round t Total: 70

Summary

• BitTorrent is a large system; lots of things to tweak

• Bootstrapping, steady-state, end-game phases

• Peer selection

• Not all strategies are fair

• A combination of techniques (from various phases) would probably result in an extremely fast client