|
|
|
|
Homework 4
Textbook problems:
5.22, 5.25, 5.32, 6.16, 6.20, 6.22, 6.28
tcpdump puzzler (hard):
I have gathered a tcpdump trace gathered between my home machine (on
a wireless network in my house, connected to the Internet via a
cable modem connection) the NYU CS department web server.
Your job is to:
- Use the /usr/sbin/tcpdump tool on attu.cs.washington.edu to
extract from the tcpdump trace file the sequence of packets
that were exchanged.
- Using this, generate a time-sequence plot for the data flowing
from the Web server to my home machine. A time-sequence plot
has time on the x-axis, and sequence numbers on the y-axis.
Your graph should contain two lines:
- sequence numbers of data packets flowing from the
server to the client. In other words, each dot plotted
corresponds to a tcp data segment sent by the server. The
dot's x-axis value is the time the data segment was seen,
and its y-axis value is the sequence number of the last byte
in that data segment.
- sequence numbers of acknowledgement packets flowing
from the client to the server
- Using this plot, your job is to deduce as much information as
you can about this tcp transfer. For example, you might be able
to deduce things such as the approximate round-trip time between
the machines, the number of bytes transferred to my home
machine, whether packets were dropped or reordered, the MSS
mandated by my home machine, and perhaps much more.
Here's what you have to work with:
/usr/sbin/tcpdump -w smalltransfer.dump -s 0 -n -i en1 \
port 80 and host www.cs.nyu.edu
You can play back this tcpdump file using the tcpdump program itself, e.g.:
/usr/sbin/tcpdump -r smalltransfer.dump -s 0 -XX
(Note that you can read the man page for tcpdump on attu, if you want
to find out more about tcpdump.)
Here's what you should turn in for this problem:
- your time-sequence plot
- a list of facts you deduced, and for each, a description of
your supporting evidence and the steps you used to deduce that fact.
|