Utilizing Helpers in Peer-to-Peer Content Distribution
Kannan Ramchandran, Jiajun Wang and Chuohao Yeo
While BitTorrent has been successfully used in peer-to-peer content distribution, its performance is oftentimes limited by the fact that typical home Internet users have much lower upload bandwidths than download bandwidths, e.g., ADSL and cable modem. This asymmetry in bandwidth results in the overall average download speed of a BitTorrent-like file download system to be bottle-necked by the much lower upload capacity. This motivates our approach in which we utilize idle users' spare upload capacity to significantly improve the download speed beyond what can be achieved in a conventional BitTorrent network. In this project, we study how to efficiently utilize the idle users' (or helpers') spare upload capacity in order to reduce average peer download time because increased system throughput will not necessarily result in shorter average download time. We show that helpers' upload bandwidth can be fully utilized even if they download only a tiny fraction of the file. In fact, helpers downloading too much will actually hurt the system performance. We design a protocol that is fully compatible with the existing BitTorrent clients, analyze its steady-state performance using a fluid model, and study the simulation results . Currently, we are investigating the role of network coding and erasure coding in such a system and the use of helpers in multi-torrent systems.
Figure 1: CDF of peer download time in 3 systems: (1) upper-bounding case in which helpers come into the system preloaded with 8 (out of 400) pieces, (2) system with regular helpers (about 25% of regular peers), and (3) a regular BitTorrent system. Using helpers improves average download time while taking away very little system resources (hence the tiny gap between system 1 and 2).
- J. Wang, C. Yeo, V. Prabhakaran, and K. Ramchandran, "On the Role of Helpers in Peer-to-Peer File Download Systems: Design, Analysis and Simulation," International Workshop on Peer-to-Peer Systems (IPTPS), February 2007.