Menu

Tree [r1] /
 History

HTTPS access


File Date Author Commit
 Makefile 2010-05-04 evyncke [r1] First commit
 README 2010-05-04 evyncke [r1] First commit
 Start.sh 2010-05-04 evyncke [r1] First commit
 mysql.hpp 2010-05-04 evyncke [r1] First commit
 retrieve_mtu 2010-05-04 evyncke [r1] First commit
 retrieve_mtu.cpp 2010-05-04 evyncke [r1] First commit
 retrieve_rtt 2010-05-04 evyncke [r1] First commit
 retrieve_rtt.cpp 2010-05-04 evyncke [r1] First commit
 retrieve_stats 2010-05-04 evyncke [r1] First commit
 retrieve_stats.cpp 2010-05-04 evyncke [r1] First commit
 sniffer 2010-05-04 evyncke [r1] First commit
 sniffer.cpp 2010-05-04 evyncke [r1] First commit
 sniffer.hpp 2010-05-04 evyncke [r1] First commit
 stats.txt 2010-05-04 evyncke [r1] First commit
 table.sql 2010-05-04 evyncke [r1] First commit
 ulgtorrent 2010-05-04 evyncke [r1] First commit
 ulgtorrent.cpp 2010-05-04 evyncke [r1] First commit

Read Me

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
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
    
    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.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.