250 likes | 533 Views
Incentives Build Robustness in BitTorrent. Author: Bram Cohen Presenter: Brian Liao. About Bram Cohen. Live in Berkeley Only publish one paper: Noise Strategies for Local Search Interest : Complexity theory Multi-agent systems Usability . What is BitTorrent?.
E N D
Incentives Build Robustness in BitTorrent Author: Bram Cohen Presenter: Brian Liao
About Bram Cohen • Live in Berkeley • Only publish one paper: Noise Strategies for Local Search • Interest : • Complexity theory • Multi-agent systems • Usability
What is BitTorrent? New file-sharing strategy: • Minimize the file hosting cost • Increase scalability
Technical Framework • Publishing Content • Peer Distribution • Pipelining • Piece Selection
Technical Framework • Publishing Content • Peer Distribution • Pipelining • Piece Selection
Publishing Content • Distribute .torrent file over the web. • Contains file info, name, hash info, url for a tracker
Technical Framework • Publishing Content • Peer Distribution • Pipelining • Piece Selection
Peer Distribution • Standard tracker algorithm will return a random list of peers. • cut files into pieces of fixed size for easy bookkeeping
Technical Framework • Publishing Content • Peer Distribution • Pipelining • Piece Selection
Pipelining • Avoid delay between pieces so a pipeline is required. • Further breaking pieces into sub-pieces (usually 16 kilobytes) to put in the pipeline. • Usually 5 sub-pieces pipelined at once.
Technical Framework • Publishing Content • Peer Distribution • Pipelining • Piece Selection
Piece Selection • Strict Priority • Rarest First • Random First Piece • Endgame Mode
Strict Priority • Finish complete piece as quickly as possible
Rarest First • Download pieces which all others want • Better performance • Prevent rarest piece missing
Randnom First Piece & Endgame Mode • Random First Piece • For the initial stage of download • Endgame Mode • Multiple requests for sub-pieces to prevent delay.
Choking Algorithms • Punishment to selfish users • Utilize available resources & provide consistent service
Pareto Efficiency • Def: no two parties can exchange resource and make both happier. • Local optimization –> global optima
Choke & Unchoke • Purely based on download rate • Every 10 seconds calculate who to choke • Unchoke limit is 4
Optimistic Unchoking • Discover unused connection • Rotate every 30 seconds
Upload only • After finish download, only upload to high upload rate users.
My thought on implementing a price scheme for BT • DC: download charge • Static price base on content or fixed per download fee • SC: service charge • Negatively proportion to the contribution to the network. • Goal: encourage more seeds
Price Paid = DC + SC Price paid DC Finish download
Price Measurement • Local measurement • Periodically report to host