tumblr site counter

TraceNET v1.0



IToM project has been ceased as of August 2012.
Similar tools on top of a brand new software architecture can be found here at NTMaps

Mehmet Engin Tozal and Kamil Sarac, "TraceNET: An Internet Topology Data Collector", ACM IMC, Melbourne, Australia, November 2010

TraceNET is a network layer Internet topology collection tool. Compared to traceroute, tracenet can collect a more complete topology information on an end-to-end path. That is, while traceroute returns a list of IP addresses each representing a router on a path, tracenet attempts to return all the IP addresses assigned to the interfaces on each visited subnetwork on the path. Consequently, the collected information (1) includes more IP addresses belonging to the traced path; (2) represents "being on the same LAN" relationship among the collected IP addresses; and (3) annotates the discovered subnets with their observed subnet masks.

Acknowledgment: TraceNET has entirely been devised, designed, and developed by Mehmet Engin Tozal

System Requirements and Notes:

  • Linux 32 bits OS
  • pthread library
  • Some systems require the user to have root privilidges in order to generate ICMP messages. In such a case, use sudo command
  • Please make sure ICMP messages from/to host are not filtered out

Download: TraceNET (version 1.0)

How to Compile and Run:

  1. > cd download_location_on your_computer
  2. > tar xzf tracenet.tar.gz
  3. > cd tracenet/Release
  4. > make clean
  5. > make all
  6. Just run the executable created in the "Release" folder, e.g., "sudo ./tracenet -d www.google.com"

List of Supported Command-line Arguments:

Short FormLong FormDescription
-d--destinationDestination IP address or host name
-p--protocolProbing Protocol to be used. Default value is "icmp", you can provide "tcp" or "udp"
-o--probetimeoutperiodWaiting time for the response message of a probe. Default value is 1000 milliseconds. Note that, traceNET utilizes double probing for unresponsive IP addresses, hence, a 1000 ms. waiting time is effectively 2000 ms. for an unresponsive IP address
-r--proberegulatingperiodProbe regulating period is the artificial delay put between any two probe packets. Default value is zero. If you ever have to use this option give a value less than 150 milliseconds. The longer the probe regulating period, the higher the probability that routing changes in the middle of a treaceNET session.

Sample Output:


# sudo ./tracenet -d www.yahoo.com

TraceNET session from 97.77.53.113 to 209.191.122.70
    Network Number    :  [ Network IP Address - Hop Distance List ]  [ IP Alias Pair ]
    --------------    :  ------------------------------------------  -----------------
 1  97.77.52.1/32     :  [-- Subnet exploration requires TTL to be at least two --]
 2  24.173.8.24/29    :  [24.173.8.29 - 3, 24.173.8.28 - 3, 24.173.8.26 - 2, 24.173.8.25 - 3]  [ NA ]
 3  24.173.8.24/29    :  [24.173.8.29 - 3, 24.173.8.28 - 3, 24.173.8.26 - 2, 24.173.8.25 - 3]  [ NA ]
 4  24.73.241.202/31  :  [24.73.241.203 - 3, 24.73.241.202 - 4]  [ 24.73.241.203 | 24.173.8.25 ]
 5  24.73.241.174/31  :  [24.73.241.175 - 4, 24.73.241.174 - 5]  [ 24.73.241.175 | 24.73.241.202 ]
 6  24.73.241.138/31  :  [24.73.241.139 - 5, 24.73.241.138 - 6]  [ 24.73.241.139 | 24.73.241.174 ]
 7  24.73.241.198/31  :  [24.73.241.199 - 6, 24.73.241.198 - 7]  [ 24.73.241.199 | 24.73.241.138 ]
 8  24.73.241.194/31  :  [24.73.241.195 - 7, 24.73.241.194 - 8]  [ 24.73.241.195 | 24.73.241.198 ]
 9  24.93.35.56/31    :  [24.93.35.57 - 8, 24.93.35.56 - 9]  [ 24.93.35.57 | 24.73.241.194 ]
10  24.93.35.50/31    :  [24.93.35.51 - 9, 24.93.35.50 - 10]  [ 24.93.35.51 | 24.93.35.54 ]
11  24.93.60.134/31   :  [24.93.60.135 - 10, 24.93.60.134 - 11]  [ 24.93.60.135 | 24.93.35.52 ]
12  24.93.35.12/31    :  [24.93.35.13 - 11, 24.93.35.12 - 12]  [ 24.93.35.13 | 24.93.35.14 ]
13  24.93.60.62/31    :  [24.93.60.63 - 13, 24.93.60.62 - 13]  [ NA ]
14  66.109.6.52/31    :  [66.109.6.53 - 13, 66.109.6.52 - 14]  [ 66.109.6.53 | 24.93.60.62 ]
15  66.109.6.178/31   :  [66.109.6.178 - 14, 66.109.6.179 - 15]  [ 66.109.6.178 | 66.109.6.88 ]
16  66.109.10.168/31  :  [66.109.10.168 - 15, 66.109.10.169 - 16]  [ 66.109.10.168 | 66.109.6.209 ]
17  216.115.104.100/31:  [216.115.104.100 - 17, 216.115.104.101 - 18]  [ 216.115.104.100 | 216.115.102.138 ]
18  209.191.78.144/31 :  [209.191.78.144 - 18, 209.191.78.145 - 19]  [ 209.191.78.144 | 68.142.193.201 ]
19  209.191.78.170/31 :  [209.191.78.170 - 18, 209.191.78.171 - 19]  [ 209.191.78.170 | 209.191.78.145 ]
20  209.191.122.68/30 :  [209.191.122.69 - 20, 209.191.122.70 - 20]  [ NA ]



		

ExploreNET v1.0



IToM project has been ceased as of August 2012.
Similar tools on top of a brand new software architecture can be found here at NTMaps

Mehmet Engin Tozal and Kamil Sarac, "Subnet Level Network Topology Mapping", IEEE International Performance Computing and Communications Conference, Orlando, Florida USA, November 2011

Internet topology at the network layer consists of routers and subnets, i.e., point-to-point or multi-access connections. Most Internet topology discovery studies have only considered router level maps where the nodes represent the routers and the links represent the binary (i.e., existence or lack of) connectivity information between the routers. Considering the fact that subnets are also important building blocks of the Internet topology, this paper introduces the discovery and use of subnet information as an important next step in Internet topology measurement studies. More specifically, the paper introduces the first standalone tool, called exploreNET (xnet), for subnet discovery and presents several potential uses for subnet information in Internet topology measurement studies and other application areas. The paper presents an evaluation of exploreNET (xnet) by using it to discover and analyze various subnet characteristics for six Tier-2 ISPs.

Acknowledgment: ExploreNET has entirely been devised, designed, and developed by Mehmet Engin Tozal

System Requirements and Notes:

  • Linux 32 bits OS
  • pthread library
  • Some systems require the user to have root privilidges in order to generate ICMP messages. In such a case, use sudo command
  • Please make sure ICMP messages from/to host are not filtered out

Download: ExploreNET (version 1.0)

How to Compile and Run:

  1. > cd download_location_on your_computer
  2. > tar xzf xnet.tar.gz
  3. > cd xnet/Release
  4. > make clean
  5. > make all
  6. Just run the executable created in the "Release" folder, e.g., "sudo ./xnet -d www.yahoo.com"

List of Supported Command-line Arguments:

Short FormLong FormDescription
-d--destinationDestination IP address or host name
-p--protocolProbing Protocol to be used. Default value is "icmp", you can provide "tcp" or "udp"
-o--probetimeoutperiodWaiting time for the response message of a probe. Default value is 1000 milliseconds. Note that, traceNET utilizes double probing for unresponsive IP addresses, hence, a 1000 ms. waiting time is effectively 2000 ms. for an unresponsive IP address
-r--proberegulatingperiodProbe regulating period is the artificial delay put between any two probe packets. Default value is zero. If you ever have to use this option give a value less than 150 milliseconds. The longer the probe regulating period, the higher the probability that routing changes in the middle of a xnet session.

Sample Output:

# sudo ./xnet -d 24.173.8.28

xnet session from 97.77.53.113 to 24.173.8.28
Network Number    :  [ Network IP Address - Hop Distance List ]  [ IP Alias Pair ]
--------------    :  ------------------------------------------  -----------------
24.173.8.24/29    :  [24.173.8.26 - 2, 24.173.8.25 - 3, 24.173.8.29 - 3, 24.173.8.28 - 3]  [ 24.173.8.26 | 24.173.8.26 ]

		

PalmTree v1.0



IToM project has been ceased as of August 2012.
Similar tools on top of a brand new software architecture can be found here at NTMaps

Mehmet Engin Tozal and Kamil Sarac, "PalmTree: An IP Alias Resolution Algorithm with Linear Probing Complexity", Computer Communications, Elsevier Volume 34, Issue 5, pp. 658-669, April 2011

Internet topology mapping studies utilize large scale topology maps to analyze various characteristics of the Internet. IP alias resolution, the task of mapping IP addresses to their corresponding routers, is an important task in building such topology maps. We present a new probe-based IP alias resolution tool called palmtree. Palmtree can be used to complement the existing schemes in improving the overall success of alias resolution process during topology map construction. In addition, palmtree incurs a linear probing overhead to identify IP aliases. The experimental results obtained over Internet2 and GEANT networks as well as four major Internet Service Providers (ISPs) present quite promising results on the utility of palmtree in obtaining more accurate network topology maps.

Acknowledgment: PalmTree has entirely been devised, designed, and developed by Mehmet Engin Tozal

System Requirements and Notes:

  • Linux 32 bits OS
  • pthread library
  • Some systems require the user to have root privilidges in order to generate ICMP messages. In such a case, use sudo command
  • Please make sure ICMP messages from/to host are not filtered out

Download: PalmTree (version 1.0)

How to Compile and Run:

  1. > cd download_location_on your_computer
  2. > tar xzf ptree.tar.gz
  3. > cd ptree/Release
  4. > make clean
  5. > make all
  6. Just run the executable created in the "Release" folder, e.g., "sudo ./ptree -d 216.115.104.100"

List of Supported Command-line Arguments:

Short FormLong FormDescription
-d--destinationDestination IP address or host name"
-i--inputfilePath to an input file containing a list of IP addresses such that each address appears at a line.
-o--probetimeoutperiodWaiting time for the response message of a probe. Default value is 1000 milliseconds. Note that, traceNET utilizes double probing for unresponsive IP addresses, hence, a 1000 ms. waiting time is effectively 2000 ms. for an unresponsive IP address
-a--aliasregulatingperiodWaiting time between two alias queries. In case a file of IP addresses is given it puts artificial delay before processing the next IP address in the file. Default value is 500 ms.
-q--distancequeryThe protocol employed in estimating the hop distance. Two alternatives are "icmp" and "udp". ICMP sends a set of probes by systematically changing TTL field of the packets to locate the distance to an IP address. UDP sends a single probe and utilizes the TTL field of piggybacked message. ICMP is superior to UDP in terms of success rate. Default value is "icmp".
-r--proberegulatingperiodProbe regulating period is the artificial delay put between any two probe packets. Default value is zero. If you ever have to use this option give a value less than 150 milliseconds. The longer the probe regulating period, the higher the probability that routing changes in the middle of a palmtree session.

Palmtree output consists of five columns: (i) "PT RESULT" shows a string representing the result, possible values are "PT_ALIAS_SUCCESS" for successful pairing of the target IP address (second column) with an alias IP address (fourth column), "PT_UNDISCOVERED_DISTANCE_FAIL" for failure in finding the distance to the target IP address, "PT_FRONTIER_INTERFACE" for frontier interfaces requiring another vantage point and "PT_UNDISCOVERED_ALIAS_FAIL" for failing in finding an alias pair; (ii) "TARGET IP" column shows the IP address for which palmtree tries to discover an alias; (iii) "HOP DISTANCE" column shows hop distance to the target IP address; (iv) "PT ALIAS IP" shows the alias IP address paired with target IP address; and (v) "SRC ALIAS IP" another alias IP address found with Mercator's method.

Note: We suggest a file consisting of shuffled IP addresses of a target network given as input to the program e.g., ptree -i file-path. Shuffling the IP addresses minimizes the risk of being considered as an attack by the target network.

Sample Output:

# sudo ./ptree -d 74.125.48.66
PT RESULT                       TARGET IP         HOP DISTANCE   PT ALIAS IP       SRC ALIAS IP      
PT_ALIAS_SUCCESS                74.125.48.66      15             66.109.6.179      NA    

# sudo ./ptree -i /home/engin/Desktop/ip.list 
PT RESULT                       TARGET IP         HOP DISTANCE   PT ALIAS IP       SRC ALIAS IP      
PT_UNDISCOVERED_DISTANCE_FAIL   24.173.8.24       NA             NA                NA                
PT_FRONTIER_INTERFACE           24.173.8.25       3              NA                NA                
PT_ALIAS_SUCCESS                24.173.8.26       2              24.173.8.26       NA                
PT_UNDISCOVERED_DISTANCE_FAIL   24.173.8.27       NA             NA                NA                
PT_FRONTIER_INTERFACE           24.173.8.28       3              NA                NA                
PT_FRONTIER_INTERFACE           24.173.8.29       3              NA                NA                
PT_UNDISCOVERED_DISTANCE_FAIL   24.173.8.30       NA             NA                NA                
PT_UNDISCOVERED_DISTANCE_FAIL   24.173.8.31       NA             NA                NA                
PT_FRONTIER_INTERFACE           24.93.60.134      11             NA                NA                
PT_ALIAS_SUCCESS                66.109.6.53       13             24.93.60.62       NA                
PT_ALIAS_SUCCESS                209.191.78.144    17             216.115.104.105   NA                
PT_FRONTIER_INTERFACE           209.191.78.145    18             NA                NA  

		

ComNetS

A framework on top of JGraphT library. ComNetS is implemented to analyze and estimate structural characteristics of large scale graphs. It consists of three modules: (i) components for generating graphs based on various models such as Erdos-Renyi (Random), Watts-Strogatz (Small World), and Barabasi-Albert (Scale Free); (ii) components for sampling graphs using different approaches such as random walk sampling, random path sampling, k-m path sampling, and Metropolis-Hastings sampling; and (iii) components for calculating/estimating structural characteristics of graphs such as clustering coefficient distribution, degree distribution, path length distribution, and density.

Acknowledgment: ComNetS has been developed by Mehmet Engin Tozal

Download: ComNetS