Lab Exercises


Lab 1

This lab consists of analyzing several TCP packet traces. These traces were collected using tcpdump and demonstrate various TCP behaviors.

First, get a feel for packet traces and TCP.

Use tcpdump -r trace -x -n | more to print out the contents of a trace file. Identify the 3-way SYN handshake. Look at the use of sequence numbers for data and ACKs. Note that the SYN and FIN each take a byte of sequence space. Note the use of delayed ACKs by the receiver.

(Add an example tcpdump packet format here).

For each trace perform the following analysis:

  1. Process the trace with tcptrace. This will produce a set of output files for use with xplot.
  2. View the output files with xplot.
  3. Find the minimum and typical RTT for each connection. This does not have to be precise.
  4. Find the average bandwidth utilization of the connection.
  5. Attempt to estimate the bandwidth available to the connection.
  6. Identify TCP performance problems with this connection, and think about possible improvements to fix these problems.

In order to do this exercise, you will need to log in to one of the NetBSD lab workstations. Use ssh to connect from your NT orkstation to the NetBSD machine. You will have an account on each of the 12 workstations; choose one at random. (Try to spread out). The traces for this exercise are located in /usr/local/traces. The tools are located in /usr/local/bin, which should be in your path.

For help on tcptrace, try tcptrace -h.

will produce a full set of plots for a given trace.

will plot the output. You will need to set your X DISPLAY environment variable to point to your NT workstation in order to view the plots.

In order to set your display, use the command:

The NT workstations should already be running the Exceed X-server

You can zoom xplot by using the left mouse button to select a region. Clicking the left button unzooms one level. Middle button drags/scrolls the plot. Right button exits. Shift-Left-button produces a .PS file which you might be able to print.