Latency-driven BitTorrent

Master's thesis

In recent years BitTorrent has become a notorious contributor to Internet traffic. Not only is BitTorrent responsible for over one third of all Internet traffic, but an immoderate amount of it is expensive cross-ISP or even inter-continental traffic. Much of BitTorrent's long-distance traffic is due to its random selection of peers, which can cause connected peers to be at very different locations. This causes inefficient network usage and harms client-perceived performance.

In this paper we present the design and evaluation of latency-driven BitTorrent, our approach to bias BitTorrent communication towards nearby peers. Unlike previous approaches we do this without requiring any additional infrastructure or patches to client software. A small number of cooperating BitTorrent trackers can easily deploy our system. Evaluating our approach through simulation and Planet-Lab deployment we find average and median reductions in download time of up to 25%. We find we can maintain or improve our gains in a rapidly growing network by controlling the peer sample size. We also show we reduce traffic cost with 12% less traffic going over global (transit) networks and more traffic going over short network paths.

Download thesis

Zero-day reconciliation of BitTorrent users with their ISPs

BitTorrent users and consumer ISPs are often pictured as having opposite interests, with end-users aggressively using network resources to improve their download times, and ISPs throttling this traffic to reduce the cost of their transit traffic. However, inefficiencies with respect to both download time and quantity of long-distance traffic originate in BitTorrent randomly selecting peers to interact with. We show that biasing the selection of these links allows one to simultaneously improve median download times by up to 32% and long-distance traffic by up to 16%. In contrast with other similar approaches, this optimization can be deployed by modifying only the BitTorrent trackers. No external infrastructure nor specialized client-side software deployment is necessary, thereby facilitating the adoption of our technique.

Software