M.I.T. DEPARTMENT OF EECS

6.033 - Computer System Engineering Handout 9 - February 26, 2002

Hands-on 4: Internet Routes (Updated Feb 28)

Today's assignment is your fourth hands-on exercise, instead of a one-pager writing assignment. (For this week, there won't be a one-pager due because you should be concentrating your writing skills on Design Project 1. You'll have two hands-on assignments this week instead.) For this assignment, you need to do the following exercises and hand in your results during recitation.

Understanding Internet routes using traceroute

This assignment is intended to expose you to some of the interesting quirks of Internet routing. In the process, you will also learn to use another very useful diagnostic tool in networks. This tool is called traceroute, and as the name implies, it essentially allows you to trace the entire route from your machine to a remote machine. The remote machine can be specified either as a name or as an IP address.

We include a sample output of an execution of traceroute and explain the salient features. The command:

   % traceroute www1.yahoo.com

tries to determine the path from the source machine (raptor.lcs.mit.edu) to www1.yahoo.com. The machine encountered on the path after the first hop is anacreon.lcs.mit.edu the next is radole.lcs.mit.edu, and so on. In all, it takes 16 hops to reach www1.yahoo.com. The explanation of the remaining fields on each of the lines can be understood by typing:

   % man traceroute

at the command prompt of any Athena workstation running some flavor of Unix. We recommend, but do not require, that you perform this assignment on Athena. Please note that the TAs cannot guarantee tech support if you do not use an Athena workstation.

% traceroute www1.yahoo.com
traceroute to www1.yahoo.com (204.71.200.66), 30 hops max, 38 byte packets
 1  anacreon (18.26.4.1)  0.599 ms  0.454 ms  0.425 ms
 2  radole (18.24.10.3)  0.919 ms  0.896 ms  0.815 ms
 3  B24-RTR-LCS-LINK.MIT.EDU (18.201.1.1)  1.873 ms  1.341 ms  1.717 ms
 4  EXTERNAL-RTR-FDDI.MIT.EDU (18.168.0.12)  1.775 ms  2.629 ms  2.253 ms
 5  f1-0.cambridge2-br2.bbnplanet.net (192.233.33.6)  195.167 ms  6.539 ms  6.898 ms
 6  s11-0-1.cambridge1-br1.bbnplanet.net (4.0.1.201)  4.565 ms  7.125 ms  4.209 ms
 7  p1-0.cambridge1-nbr2.bbnplanet.net (4.0.1.45)  3.589 ms  3.543 ms  5.218 ms
 8  p4-2.bstnma1-ba1.bbnplanet.net (4.0.2.174)  12.561 ms  10.128 ms  10.257 ms
 9  p0-0-0.bstnma1-cr5.bbnplanet.net (4.24.4.202)  7.325 ms  7.361 ms  8.225 ms
10  4.24.89.2 (4.24.89.2)  8.181 ms  10.091 ms  14.714 ms
11  pos2-0-155M.cr1.BOS1.gblx.net (206.132.247.49)  19.779 ms  20.991 ms  18.909 ms
12  pos2-1-155M.cr2.ROC1.gblx.net (206.132.119.189)  23.861 ms  19.161 ms  17.307 ms
13  pos6-0-622M.cr2.SNV.gblx.net (206.132.151.14)  75.357 ms  77.610 ms  76.937 ms
14  pos1-0-2488M.hr8.SNV.gblx.net (206.132.254.41)  74.483 ms  75.584 ms  95.913 ms
15  bas1r-ge3-0-hr8.snv.yahoo.com (208.178.103.62)  83.410 ms  76.266 ms  80.387 ms
16  www1.yahoo.com (204.71.200.66)  81.844 ms  91.313 ms  73.344 ms

Exercises:

Please record your answers to the three exercises below on a sheet of paper and turn it in at recitation. Please also include the amount of time that the assignment took to complete.

1. Warmup:

In at most 50 words, explain how traceroute discovers a path to a remote host. The man page might be useful in answering this question. You also might find some helpful information in chapter 4 of the lecture notes.

2. Routing asymmetries:

For this exercise, you need to use the traceroute server at http://www.getnet.com/cgi-bin/trace. Enter the name or IP address of your machine where it says "Enter search keywords:" and press return. The traceroute server will execute traceroute on the machine running the webserver (trojan.neta.com, in this case) to your machine. Now run

   % traceroute dragon.getnet.net 

on your machine.

a) Show the output of traceroute in each of the above two cases.

b) Draw a picture depicting the route between you and the traceroute server. Include the

Note that these two traceroutes may not provide enough information to identify every router that handled the packet. In your drawing, include as much information as you can with the traceroute data you collected.

Here is an example showing the route between ws14.mit.edu and poserver.mit.edu:

     ----                      ----                         ----
     |  |                      |  |                         |  |
     |  |ws14.mit.edu          |  |b24p4.mit.edu            |  |
     |  |18.26.0.44            |  |18.17.1.1                |  |
     |  |----------------------|  |-------------------------|  |
     |  |         b24p3.mit.edu|  |         poserver.mit.edu|  |
     |  |             18.26.0.1|  |               18.17.0.45|  |
     ----                      ----                         ----

c) Describe anything unusual about the output. Are the same machines traversed in both directions? Give one reason why this could be happening.

3. Blackholes:

At the command prompt, type

   % traceroute 18.31.0.200

a) Show the output of the above command.

b) Describe what is strange about the observed output, and why traceroute gives you such an output. The man page has useful hints to help you understand the output better.


Go to 6.033 Home Page Questions or Comments: 6.033-tas@mit.edu