| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| stats.php | 2012-04-10 | 4.4 kB | |
| prepare_stats.php | 2012-04-10 | 2.0 kB | |
| add_country.php | 2012-04-10 | 3.9 kB | |
| Start.sh | 2012-04-10 | 878 Bytes | |
| ExtractMagnets | 2012-04-10 | 888 Bytes | |
| Makefile | 2012-04-10 | 1.5 kB | |
| README | 2012-04-10 | 3.9 kB | |
| ulgtorrent.cpp | 2012-04-10 | 28.2 kB | |
| table.sql | 2010-05-06 | 3.6 kB | |
| sniffer.cpp | 2010-05-06 | 22.4 kB | |
| retrieve_stats.cpp | 2010-05-06 | 29.6 kB | |
| retrieve_rtt.cpp | 2010-05-06 | 23.8 kB | |
| retrieve_mtu.cpp | 2010-05-06 | 7.3 kB | |
| mysql.hpp | 2010-05-06 | 189 Bytes | |
| Totals: 14 Items | 132.5 kB | 0 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Master Thesis: Measure and Analysis of the IPv6 Traffic in Peer-to-Peer Networks
Defêche Martin
10/08/2009
5 programs that form 4010 lines.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
File descriptions:
Makefile : permits the compilation of all programs
README : instructions about how to compile and run the programs.
ulgtorrent.cpp : the BitTorrent client which is the main program. It deals with
the discovery of peers and all BitTorrent information.
sniffer.cpp, sniffer.hpp : the sniffer which permits the retrieval of MSS and
TTL information of peers we get connected to.
retrieve_mtu.cpp : gets the MTU and the TTL of peers via tracepath/tracepath6
retrieve_stats.cpp : retrieves the country and ISP information and analyzes
IPv6 addresses.
retrieve_rtt.cpp : calculates the RTT information.
table.sql : contains MySQL table information
data.sql : contains the data already retrieved and the table information
________________________________________________________________________________
Librairies Required:
- pcap for the sniffer (development library)
- libtorrent rasterbar for the BitTorrent client. All information about how to
build the library is present at http://www.rasterbar.com/products/libtorrent.
The configuration must a least include:
./configure --with-logging=verbose CPPFLAGS='-DBOOST_FILESYSTEM_VERSION=2'
The 0.14.2 version of libttorrent is advised. The 0.14.5 has bugs which
prevent the functioning of our client.
- MySQL++ for every program. The configuration must at least contain the
following option: --enable-thread-check
- MySQL server
- MySQL client supporting threads (libmysqlclient_r)
- Boost which is required for the libtorrent library
________________________________________________________________________________
How to insert SQL files
1. Create the ulgtorrent database in MySQL with: CREATE DATABASE ulgtorrent;
2. To import:
Table: mysql -u root -p -h localhost ulgtorrent < table.sql
Table + data : mysql -u root -p -h localhost ulgtorrent < data.sql
The root password must be typed.
Explanations about the different fields are present in the report.
________________________________________________________________________________
Compilation :
Specify in the Makefile the name of the following Boost libraries depending
on the Boost version you installed:
- system
- filesystem
- program_options
- regex
- thread
Other libraries are normally automatically linked. If you install the different
libraries in non default location, please make the necessary change in the
Makefile.
Compile with 'make' command.
________________________________________________________________________________
How to run programs (retrive_rtt, sniffer must be started in root mode):
- ulgtorrent: ./ulgtorrent <IPv4_address> <IPv6_address>
- retrieve_rtt: ./retrieve_rtt <IPv4_address> <IPv6_address>
- sniffer: ./sniffer <IPv4_interface> <IPv4_address> <IPv6_interface> <IPv6_address>
- retrieve_stats: ./retrieve_stats
- retrieve_mtu: ./retrieve_mtu
________________________________________________________________________________
Folder and files that are created by the programs:
- /home/UserName/torrent: the .torrent files are dowloaded there
- /home/UserName/save: where the files downloaded are located
(in fact, nothing is downloaded. It is just to save the directories
of the torrents that contain more than one file).
- /home/UserName/networks: contains the networks4.txt and networks6.txt
that list all the different IP range found via whois queries.