The prime performance criteria of a P2P client is the
speed at which files are downloaded. This area of Tribler
research specifically examines the source code to
Several other research topics are linked to this
activity. All the research topics below relate to
the Tribler download core. It is imperative that
these efforts are not hindered.
"Currently Tribler 4.0 is a Bittorrent client with a
secure foundation and pretty interface. However, the
download speed leaves something to be desired
and needs to be improved. "
Objective: Speed testing confirms that Tribler
is now the fastest or a fast Bittorrent client :-)
With the noted exception of
clients whom are parasitic.
Project 2 ideas
The aim of this project is to create an extensive testing suite for Bittorrent clients. At this point we have created a scripted environment that measures the performance of several bittorrent clients within the same swarm.
The Bittorrent clients that we've been testing are:
- Bittorent Mainline Client
The environment setup is:
- 6 PCs each running a different client
- all clients run in the same swarm but with little interraction
- a huge swarm
- a large file (a DVD or HD movie)
- the evolution of the download speed for each particular client
- download time
- other aspects based on logging information for each client
In order to achieve important results it is important to test a plethora of situations. Based on the above results we can draw conclusions and find out which facilities end up as the most important ones from a performace evaluator's point of view.
Key performance indicators?
- peer discovery efficiency
- piece request management
- unchoke strategy
- connection management
Stay tuned for more information.
Project 1 results
- 2007-05-04 Initial Project Planning
- 2007-05-04 Measurement Plan
- 2007-05-11 Added logging abilities to BT clients.
- 2007-05-27 Performance Measuring of Azureus, Tribler and Mainline.
- 2007-05-27 Analysis Download Algorithms
Phase 1 in progress:
- Designing Measurement Tool (10%) (mentioned in Design Phase in Revised Project Planning)
- Implementing Measurement Tool (0%)
Plot using the collected log files
the following properties in time.
- Peer discovery (tracker, DHT, PEX)
- Tryout of peers (cumulative optimistic unchoke)
- Usefullness of peers (total download bandwidth)
This provides insight in the:
- peer discovery aggressiveness (tracker interval)
- optimistic unchoke strategy
- relative total P2P performance
Direction of conclusions :
- Smartness of each client
- Unchoke: random, round robin, etc.
- Piece picking
- Neighborhood health / peer discovery (DHT, PEX)
- Azureus extra control messages, comments, DHT, and added value
- Record and ban client with protocol violations or bad hashes
- Others ? ?
- Efficiency ranking of clients
- Best generic algorithms
x-axis in seconds