320 likes | 423 Views
A Case Study on How Economic Frameworks Can Bail Out Systems Research. Emin Gün Sirer Ryan Peterson, Bernard Wong Department of Computer Science, Cornell University United Networks, LLC September 3, 2009. Problem Domain.
E N D
A Case Study on How Economic Frameworks Can Bail Out Systems Research Emin Gün Sirer Ryan Peterson, Bernard Wong Department of Computer Science, Cornell University United Networks, LLC September 3, 2009
Problem Domain What is the most efficient way to disseminate a large set of files to a large set of clients?
Inefficient High cost of ownership Client-Server server clients
Limited information No control or performance guarantees Peer-to-Peer peer
Traditional Systems Research • Complex problems lead to complex protocols with many parameters • Parameters picked based on a combination of gut feeling and experimentation • Systems tailored to specific workloads • Only intellectual honesty keeps researchers from perfect performance on benchmarks! • Novelty by aggregation • Pick k out of n: CDNs, network coordinates, geolocation, network tomography, …
BitTorrent • Robust, resilient protocol • A combination of randomization and heuristics • Two years until characterized as auctions based on received bandwidth • Lots of incremental research! • Every 10-line tweak => 1 paper • Hacks: Share ratios, manual pruning, … • We lack the tools to tackle difficult problems
Antfarm Goals • High performance • Low cost of deployment • Performance guarantees • Administrator control over swarm performance • Accounting • Enables different resource contribution policies
Antfarm Approach • Key insight: view content distribution as an optimization problem • Hybrid architecture • P2P swarming with a logically centralized coordinator • Clean slate protocol
Antfarm System Model seeder coordinator altruist
Strawman Coordinator • One could schedule every data transfer in the system • All packets for all time • Unscalable, impractical! • Antfarm coordinator makes critical decisions based on observed dynamics
Antfarm Coordinator • Models swarm dynamics • Measures and extracts key parameters • Formulates optimization problem • Calculates optimal bandwidth allocation • Enacts allocation decisions • Maximizes aggregate bandwidth • Minimizes average download time
Antfarm Formalization Maximize system-wide aggregate bandwidth subject to a bandwidth constraint
Response Curves slope = 0 slope = 1
1500 1000 Swarm aggregate bandwidth (KB/s) 500 0 25 50 75 100 0 Seeder bandwidth (KB/s) Response Curves
Swarms exhibit different dynamics based on size, peer resources, network conditions. . . Swarm Dynamics
Antfarm Optimization A σA + σB + σC = B B C σA σB σC
Performance Control • Can provide swarm performance guarantees • Guarantee minimum level of service • Prioritize swarms
Antfarm Allocation A σA′+ σB′+ σC′= B B C σB′ σA′ σC′
Problems • The optimization problem has limitations • Requires knowing total bandwidth constraint • Applies only to full caches under the control of the coordinator • At the wire protocol level, there are many opportunities for malfeasance
Antfarm++ • Use a currency scheme, called karma, to keep track of peers’ resource consumption and contribution • Every exchange costs some karma to the peer receiving a block, brings karma to the peer providing the block and bandwidth
purse purse ledger ledger peer A peer B Wire Protocol • Coordinator mints small, unforgeable tokens • Peers trade each other tokens for blocks • Peers return spent tokens to the coordinator as proof of contribution coordinator
Tokens & Exchange Rates • Every swarm uses a per-swarm currency, every token has source-destinations marked • Token flows reveal the internal network dynamics to the coordinator • The coordinator can provide incentives in the form of exchange rates • Exchange rates encode the differential in the desirability of participating in different swarms => no need to estimate total BW
Benefits of a Virtual Currency • The cost and benefit of a transaction need not be symmetrical • A block always costs 1 token to the buyer • A block can bring γi karma to the seller • Provide an incentive for peers to join and seed swarms in need
Swarm Starvation BitTorrent starves the singleton swarm
BitTorrent: Starves New Swarm self-sufficient new singleton Swarms, ordered largest to smallest
Antfarm: Seeds New Swarm self-sufficient new singleton Swarms, ordered largest to smallest
Conclusions • Hard problems in systems research can benefit immensely from the application of economics • http://flixq.com showcases our current work
Related Work • Content Distribution Networks • Akamai, CoBlitz, CoDeeN, ECHOS, Coral, Slurpie, YouTube, Hulu, GridCast, Tribler, Joost, Huang et al. 2008, ... • P2P Swarming • BitTorrent, BitTyrant, PropShare, BitTornado, BASS, Annapureddy et al. 2007, Guo et al. 2005, ... • Incentives and microcurrencies • Dandelion, BAR Gossip, Samsara, Karma, SHARP, PPay, Kash et al. 2007, ...