BitTorrent is a popular peer-to-peer file sharing protocol. From a user’s perspective, it is important that a BitTorrent client downloads the files as fast as possible. The socially enhanced BitTorrent client called Tribler – from the Delft University of Technology and the Vrije
...
BitTorrent is a popular peer-to-peer file sharing protocol. From a user’s perspective, it is important that a BitTorrent client downloads the files as fast as possible. The socially enhanced BitTorrent client called Tribler – from the Delft University of Technology and the Vrije Universiteit – was presumed to be lacking in speed. This presumption started this thesis’ research project. The research focused on two questions. How poor is Tribler’s download performance and what determines the performance of a BitTorrent client in general? To understand the problem, we need to be aware that the limited available upload capacity of the peers in the swarm is a speed bottleneck and that one own’s upload capacity is a valuable, but limited currency that can be exchanged for speed from others. However, it is not known which behaviour is best. In order to solve this mystery, we have to compare different behaviours through measurement. Important aspects to measure include: Peer discovery and try out, measured by connection attempts and optimistic unchokes. Implementation of the tit-for-tat algorihtm, measured by chokes and unchokes. To measure and analyse these aspects, two approaches were taken. Our first de- sign involved modifying existing BitTorrent clients to log internal events, but its applicability was limited to open source clients. As a result, we came with a design that analysed network traffic and was therefore applicable to all clients. However, a wrongly taken design decision limited its analysis power. The knowledge gained from our analysis is that the initial phase and the end phase of a download are important. For the initial phase, a good discovery of peers required. For the end phase, a different piece selection algorithm is required. There are also some questions left that need to be answered and work to be done. Questions left are: Do different peer discovery algorithms benefit in different situations? Does the Mainline BitTorrent client benefit from its new DNA service or is it malware? Future work involves improving our measuring tool and answering these questions.