Universita' degli Studi di Napoli ''Federico II'' (Italy) |
|
TP-Traceroute tool is an enhanced traceroute version which applies the Third-Party address detection technique. TP-Traceroute is able to identify third-party addresses on traceroute trace. TP-traceroute traces the IP path toward a destination and labels each discovered hop as third-party or on-path address. TP-Traceroute is based on Paris-Traceroute. The source code of Paris-Traceroute is released under GPLv2 Licence can be downloaded here. Download TP-Traceroute is licensed under the GNU GPLv3 license. Citing When refering to our active probing technique or/and its implementation please cite the following Reference:
Dependencies TP-Traceroute depends on IPPO library. Usage Usage: tp-traceroute [Options] [Destination] Options: -h, --help print this help -V, --version print version -v, --verbose print debug messages -Q, --quiet print only results -f, --first_ttl=TTL set the initial ttl to TTL (default: 1) -m, --max_ttl=TTL set the maximum ttl to TTL (default: 30) -s, --source_port=PORT set PORT as source port (default: 33456) pid: use PID -d, --dest_port=PORT set PORT as destination port (default: 33457) -t, --tos=TOS set TOS as type of service (default: 0) -w MS wait MS ms between each probe (default: 50ms) -T, --timeout=MS set a timeout of MS ms on each probe. The default is 5000ms -q, --query=NBR send NBR probes to each host (default: 3) -M, --missing_hop=HOP stop traceroute after HOP consecutive down hops. The default is 3 -a, --algo=ALGO algorithm to use (--algo=help for more help). The default is 'hopbyhop' -L, --length=LEN set the packet length to be used in outgoing packets. The default is 0 -i --ipid print the IP Identifier of the reply -l --print_ttl print the TTL of the reply -F targets file for the MT algo -B set the bandwidth in packets/s -E probe multiplier -r set the return flow identifier How it works Once a UDP-traceroute trace is collected, TP-traceoute first sends an UDP probe to the destination IP address D, prespecifying four times the same IP address D. Three possibilities may occur:
In the third case, the algorithm continues by sending an ICMP Echo Request packet equipped with the TS option toward each IP discovered along the path. This step is necessary because there are other less common router behaviours that may lead the technique to misleading results. For each IP, we can have one of the following cases:
Hence, each IP address collected toward the destination is labelled as:
Non-classifiable hop labels:
Example $ sudo ./tp-traceroute 206.108.100.133 Start tracing process 206.108.100.133 ... Start third party process 206.108.100.133 ... traceroute [(xxx.xxx.xxx.xxx:33456) -> (206.108.100.133:33457)], protocol udp, algo hopbyhop, duration 440 s 1 xxx.xxx.xxx.xxx 0.451 ms 0.457 ms 0.320 ms 2 143.225.190.82 THIRD-PATH 0.434 ms 0.531 ms 0.600 ms 3 193.206.130.5 J 0.425 ms 0.419 ms 31.097 ms 4 90.147.80.165 J 4.435 ms 4.449 ms 4.566 ms MPLS Label 302640 TTL=1 5 90.147.80.53 J 4.281 ms 4.300 ms 4.411 ms 6 149.6.22.73 THIRD-PATH 4.405 ms 4.393 ms 4.404 ms 7 130.117.2.9 THIRD-PATH 11.311 ms 11.253 ms 11.266 ms 8 130.117.48.2 THIRD-PATH 14.214 ms 14.196 ms 14.171 ms 9 130.117.3.157 NO-TS 16.831 ms 16.829 ms 16.887 ms 10 154.54.59.233 NO-TS 28.226 ms 27.883 ms 27.842 ms 11 154.54.43.149 NO-TS 99.396 ms 99.400 ms * 12 154.54.24.30 NO-TS 126.733 ms * * 13 154.54.45.206 NO-TS 127.734 ms * * 14 154.54.29.194 NO-TS 126.049 ms * * 15 154.54.11.30 NO-TS 128.640 ms * * 16 64.230.186.197 NO-TS 126.558 ms * * 17 64.230.186.121 NO-TS 139.124 ms * * 18 64.230.48.20 NO-TS 143.390 ms * * 19 * * * 20 * * * 21 206.108.99.146 THIRD-PATH 127.074 ms * * 22 206.108.100.133 ON-PATH 130.187 ms * * Authors TP-Traceroute is maintained and continueously improved by the Traffic group of the University of Napoli (UoN), headed by Antonio Pescapè. Contributors: Francesco Cesareo,Pietro Marchetta, Antonio PescapèPublications
If you are interested in collaborating with us or in opportunities in Traffic, please send an e-mail to Antonio Pescapè |