Distributed Algorithms for Improving BitTorrent Performance

Among the peer-to-peer systems, BitTorrent has attracted significant attention in research community because of its efficiency, scalability and robustness. BitTorrent utilizes peer contribution to distribute content by splitting the content into many pieces which can be transferred among peers. Unfortunately BitTorrent depends on trackers in order to let peers interested in same content discover each other. Trackers can be considered as a single point of failure and a bottleneck in terms of system scalability. The scalability and availability of the tracker can be improved by introducing multiple trackers, an extension that allows the co-existence of multiple swarms sharing the same content. Existence of multiple swarms that are not aware of each other may cause efficiency to degrade due to piece and bandwidth unavailability in small swarms. Swarm management algorithms therefore aim to increase the swarm sizes virtually at a low cost, consequently increasing piece availability and peer contribution for performance improvement. In this thesis we developed a framework for measuring the performance of swarm management algorithms in an experimental testbed. The testbed offers the opportunity to perform controlled experiments in different scenarios. An improved PEX protocol was also developed that takes swarm membership information of peers into account to utilize mixing among swarms. We modified an existing BitTorrent client to implement two swarm management algorithms, Random Peer Migration (RPM) and Random Multi Tracking (RMT) that introduce peers in different swarms to each other by leveraging the Peer Exchange (PEX) protocol. RPM achieves mixing through peers migrating between swarms. RMT allows some fraction of peers to associate with more than one tracker and mix peer information between swarms. We evaluated the performance of the two swarm management algorithms in torrents in which all swarms are in the steady state and have a publisher always available. The algorithms are estimated to improve the protocol performance around 5% in most scenarios whereas gain around 40% can be observed for small torrents. The algorithms are shown to improve BitTorrent performance without sacrificing the robustness and load balancing properties of the multi-tracker extension.

[1]  Keith W. Ross,et al.  Understanding Peer Exchange in BitTorrent Systems , 2010, 2010 IEEE Tenth International Conference on Peer-to-Peer Computing (P2P).

[2]  Gustavo de Veciana,et al.  Performance of peer-to-peer networks: Service capacity and role of resource sharing policies , 2006, Perform. Evaluation.

[3]  B. Cohen,et al.  Incentives Build Robustness in Bit-Torrent , 2003 .

[4]  Maximino Aldana-Gonzalez,et al.  Linked: The New Science of Networks , 2003 .

[5]  David Mazières,et al.  Kademlia: A Peer-to-Peer Information System Based on the XOR Metric , 2002, IPTPS.

[6]  N. Smirnov Table for Estimating the Goodness of Fit of Empirical Distributions , 1948 .

[7]  Johan A. Pouwelse,et al.  The Bittorrent P2P File-Sharing System: Measurements and Analysis , 2005, IPTPS.

[8]  Walid Dabbous,et al.  BitTorrent Experiments on Testbeds: A Study of the Impact of Network Latencies , 2010, ArXiv.

[9]  Daniel Stutzbach,et al.  Improving Lookup Performance Over a Widely-Deployed DHT , 2006, Proceedings IEEE INFOCOM 2006. 25TH IEEE International Conference on Computer Communications.

[10]  Venkata N. Padmanabhan,et al.  Analyzing and Improving a BitTorrent Networks Performance Mechanisms , 2006, Proceedings IEEE INFOCOM 2006. 25TH IEEE International Conference on Computer Communications.

[11]  Emin Gün Sirer,et al.  AntFarm: Efficient Content Distribution with Managed Swarms , 2009, NSDI.

[12]  Arun Venkataramani,et al.  Availability in BitTorrent Systems , 2007, IEEE INFOCOM 2007 - 26th IEEE International Conference on Computer Communications.