ON THE ROLE OF HELPERS IN PEER-TO-PEER FILE DOWNLOAD SYSTEMS: DESIGN, ANALYSIS AND SIMULATION Jiajun Wang, Chuohao Yeo, Vinod Prabhakaran, Kannan Ramchandran {junewang, zuohao, vinodmp, kannanr}@eecs.berkeley.edu Department of EECS, Univ. of California, Berkeley ABSTRACT While BitTorrent has been successfully used in peer- to-peer content distribution, its performance is limited by the fact that typical internet users have much lower upload bandwidths than download bandwidths. This asymmetry in bandwidth results in the overall aver- age download speed of a BitTorrent-like file down- load system to be bottle-necked by the much lower up- load capacity. This motivates our approach in which we utilize idle users’ spare upload capacity to signif- icantly improve the download speed beyond what can be achieved in a conventional BitTorrent network. We show that this is possible even if these idle users (or helpers) download only a tiny fraction of the file. In fact, in terms of uplink utilization, these helpers can be almost as effective as seeders for medium to large swarms. In this work, we design such a system that is fully compatible with the existing clients who conform to the BitTorrent protocol, analyze its steady-state per- formance and present simulation results. 1. INTRODUCTION BitTorrent [1] is a popular Peer-to-Peer (P2P) file shar- ing protocol that is in wide use today. It has been highly sucessful as a method of mass content distribu- tion [2] and makes up a large fraction of P2P traffic [3]. The basic idea in BitTorrent is to divide up a large file into equal-sized pieces (typically 256KB) and have peers (nodes interested in downloading the file) down- load and upload these pieces to each other simultane- ously. Peers contact trackers, which are centralized servers, to find other peers to download a file from. Seeders are peers who have the entire file, but stay around in the system to upload the file to other peers. BitTorrent uses a particular combination of local-rarest- first piece selection as well as a tit-for-tat rate control policy to saturate the system upload capacity. For a BitTorrent-like file sharing system, the sys- tem throughput is capped by the minimum of the total system upload bandwidth and the total system down- load bandwidth [4]. A large population of home Inter- net users today have asymmetric Internet service, such as ADSL and cable, which makes the total available upload capacity of all downloading peers the bottle- neck of a BitTorrent-like file sharing systems. However, there are other users with spare upload capacity who are not interested in any particular file. We will term such nodes helpers. Helpers represent a rich resource of untapped upload bandwidth which can be exploited for increasing the total system upload bandwidth and hence easing the bottleneck. The idea of utilizing helpers free upload capacity was first in- troduced by Wong [5]. “Tribler” [6] is a social-based peer-to-peer system which provides a mechanism for providing incentive for these helpers to help other users. In this work, we do not address the question of incen- tive for helpers. Our focus is on developing a system- atic approach to optimally utilize such helpers. How- ever, incentive mechanisms like the one in [6] could be adopted for the proposed system. We develop an efficient mechanism for utilizing the spare upload capacity of helpers while imposing very little download or storage burden on them. In our system, each helper only downloads a small number of random pieces of the file and actively searches for peers who do not possess these pieces to upload to. This way they attempt to fully utilize their upload ca- pacity. In fact, we show that, in terms of upload band- width utilization, these helpers are almost as effective as seeders. Our proposed design is a BitTorrent-like system that is fully backward compatible with the orig- inal BitTorrent protocol; existing BitTorrent users can