Auction-based Model of BitTorrent Seminar in Distributed Computing 2010 ETH Zurich Yu Li
What is BitTorrent
How to download using BitTorrent STEP 1: Select Torrent File STEP 1: Select STEP 1: Select STEP 1: Select Torrent File Torrent File Torrent File STEP 2: Download Torrent STEP 2: Download Torrent STEP 2: Download Torrent STEP 2: Download Torrent
How to download using BitTorrent STEP 3: Configuration STEP 3: Configuration STEP 3: Configuration STEP 3: Configuration STEP 4: Download File STEP 4: Download File STEP 4: Download File STEP 4: Download File
Downloading procedure • Individuals View – Seed – Leecher
Downloading procedure • System View – I upload and download at the same time … … Me
Auction-based Model [D. Levin, K. LaCurts, 2008] "BitTorrent is an Auction: Analyzing and Improving BitTorrent’s Incentives" (Q1) Do I upload to everyone? … … … … Me Me
Auction-based Model (Q2) Do I treat every peer equally? … … … … 4 6 2 2 1 4 2 6 3 2 2 2 Me (6Mbps) Me (6Mbps)
Auction-based Model (Q3) Do I ignore others? … … … … 1.5 6 1.5 4 0.1 0.2 2 2 4 2 6 2 2 0.1 0.2 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 Me (6Mbps) Me (6Mbps)
Auction-based Model • Bids are uploads of round n-1 • Auction clearing 1 random peer Highest S-1 3 3 2 2 1 1 3 3 2 2 1 1 18 18 18 18 12 12 12 12 18 12 3 2 1 W/S W/S W/S W/S Me (Bandwidth W) Me (Bandwidth W) Round n Round n-1 Select S peers (S=4)
Sybil Attack • Normal Bidder “Red” bidder gets 18Mbps n-1 round 3 3 3 3 2 2 2 2 1 1 1 1 18 18 18 18 12 12 12 12 n round 18Mbps 18Mbps 18Mbps 18Mbps Auctioneer (Me) provides 72Mbps bandwidth in total
Sybil Attack • Selfish Bidder “Red” bidder sybil gets 2 × 18Mbps 12 12 12 12 n-1 round 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 2 2 2 2 1 1 1 1 18 18 18 18 n round 18Mbps 18Mbps 18Mbps 18Mbps Auctioneer (Me) provides 72Mbps bandwidth in total
Review of Question 2 • (Q2) Do I treat every peer equally? … … … … 4 6 2 2 1 4 2 6 3 2 2 2 Me (6Mbps) Me (6Mbps)
Countermeasure: Proportional share auction • Proportional share “Red” bidder gets 24Mbps n-1 round 3 2 1 18 12 3 3 3 2 2 2 1 1 1 18 18 18 12 12 12 n round 36Mbps 24Mbps 4 2 6
Countermeasure: Proportional share auction • Sybil attack resilient “Red” bidder sybil gets 3 × 8=24Mbps 12 12 12 12 n-1 round 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 2 2 2 2 1 1 1 1 18 18 18 18 n round 36Mbps 4 2 6 8Mbps 8Mbps 8Mbps 8Mbps 8Mbps 8Mbps 8Mbps 8Mbps 8Mbps 8Mbps 8Mbps 8Mbps
Comparison of Auction-based &Propshare • Propshare is Sybil proof Normal Selfish client client (using sybil) Standard 18 Mbps 2 × 18 Mbps Bittorrent Propshare 24 Mbps 24 Mbps
Under-reporting • Which one is better for me? X Y X Y X Y X Y A B A B Under- reporting X Y X Y X Y X Y A B Me Me X Y X Y X Y X Y X Y Me A B A B X X X X X X X X X Y X Y Me Me
Under-reporting • Under-reporting algorithm – Run algr. when peer is about to lose interest. – Determine the most common piece among available X Y Z X Y Z X Y Z X Y Z X Y Z Alice Tom Peer 1 Peer 3 Peer 2 X Y Z X Y Z X Y Z X Y Z X Y Z Alice Peer 1 Peer 3 Tom Peer 2
Under-reporting
Countermeasure: Gossiping Me A X X X X Y Y Y Y Z Z Z Z Z Z Z Z X X Y Y Y Y Z Z Z Z X X Costs overhead B
Countermeasure: TrInc [D.Levin, J.R. Douceur 2009] "TrInc: Small Trusted Hardware for Large Distributed Systems" • TrInc (Trusted Incrementer) – Prevents lying – Decreases overhead • TPM (Trusted Platform Module) by Intel
Countermeasure: TrInc • System equipped with TrInc
Countermeasure: TrInc • Individual equipped with TrInc
Countermeasure: TrInc • How does TrInc work? BitField BitField BitField BitField New Counter Value New Counter Value New Counter Value New Counter Value New New New New Counter Counter Counter Counter Encryption Encryption Encryption Encryption Value Value Value Value Old Old Old Old Counter Counter Counter Counter Value Value Value Value BitField BitField + New Counter Value + Old Counter Value + New Counter Value + Old Counter Value BitField BitField + New Counter Value + Old Counter Value + New Counter Value + Old Counter Value
Countermeasure: TrInc • Input B ′ – New Counter Value – BitField A B C D Y Z … … … … • Output B ′ A B C D Y Z – Attestation B � … … … … • Sample Output A B C D E F G 3 � 4
Countermeasure Me A X X X X Y Y Y Y Z Z Z Z Z Z Z Z X Y Y Y Y Z Z Z Z X X X B
Countermeasure: TrInc D Bitfield Nonce Request 3 � 3 Nonce 3 � 3 Nonce C Piece Z X Y Z T X X Y Y Z Z T T Providing 2 � 3 2 � 3 2 � 3 Me X X Y Y Z Z T T 1 � 2 1 � 2 B Piece Y X X Y Y Z Z T T Providing 0 � 1 0 � 1 A Piece X Providing
Countermeasure: TrInc • Individual equipped with TrInc
• Auction-based Model • TrInc • Q & A
Recommend
More recommend