Fall 2001 CSCI 363 Homework 2

This assignment is due Tuesday, 25 September.

This is a fill-in-the blank assignment. The following table appear in RFC 793, the TCP protocol specification.


    0                   1                   2                   3   
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |          Source Port          |       Destination Port        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Sequence Number                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    Acknowledgment Number                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  Data |           |U|A|P|R|S|F|                               |
   | Offset| Reserved  |R|C|S|S|Y|I|            Window             |
   |       |           |G|K|H|T|N|N|                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           Checksum            |         Urgent Pointer        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    Options                    |    Padding    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                             data                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            TCP Header Format

The following fourteen lines are the output of tcpdump when it was printing the TCP headers of a client/server interaction running the protocol described in CSCI 363 homework 3.

16:48:26.223288 woodfin.cs.unca.edu.1074 > tryon.cs.unca.edu.3630: S 2037655115:2037655115(0) win 32768 <mss 1460,nop,[|tcp]> [tos 0x10]
ck16:48:26.224266 tryon.cs.unca.edu.3630 > woodfin.cs.unca.edu.1074: S 179544244:179544244(0) ack 2037655116 win 33580 <mss 1460,nop,[|tcp]>
16:48:26.225243 woodfin.cs.unca.edu.1074 > tryon.cs.unca.edu.3630: . ack 1 win 33580 [tos 0x10]
16:48:26.250660 tryon.cs.unca.edu.3630 > woodfin.cs.unca.edu.1074: P 1:7(6) ack 1 win 33580
16:48:26.267278 woodfin.cs.unca.edu.1074 > tryon.cs.unca.edu.3630: . a 7 win 33580 [tos 0x10]
16:48:28.249992 tryon.cs.unca.edu.3630 > woodfin.cs.unca.edu.1074: P 7:8(1) ack 1 win 33580
16:48:28.258781 woodfin.cs.unca.edu.1074 > tryon.cs.unca.edu.3630: . ack 8 win 33580 [tos 0x10]
16:48:33.479603 woodfin.cs.unca.edu.1074 > tryon.cs.unca.edu.3630: P 1:16(15) ack 8 win 33580 [tos 0x10]
16:48:33.484481 tryon.cs.unca.edu.3630 > woodfin.cs.unca.edu.1074: P 8:24(16) ack 16 win 33580
16:48:33.637748 woodfin.cs.unca.edu.1074 > tryon.cs.unca.edu.3630: . ack 24 win 33580 [tos 0x10]
16:48:34.484428 tryon.cs.unca.edu.3630 > woodfin.cs.unca.edu.1074: F 24:24(0) ack 16 win 33580
16:48:34.485404 woodfin.cs.unca.edu.1074 > tryon.cs.unca.edu.3630: . ack 25 win 33580 [tos 0x10]
16:48:34.487357 woodfin.cs.unca.edu.1074 > tryon.cs.unca.edu.3630: F 16:16(0) ack 25 win 33580 [tos 0x10]
16:48:34.487357 tryon.cs.unca.edu.3630 > woodfin.cs.unca.edu.1074: . ack 17 win 33580

Getting started

First, read a bit about the documentation of tcpdump. You can type the command "man tcpdump" on just about any Unix computer, or you can search for information about tcpdump on the Internet. examine the output of tcpdump

Now use your of tcpdump and the TCP/IP protocol to examine the output of tcpdump shown above. Ignore TCP options like tos, mss, and ltcp. Also, keep in mind that the sequence and acknowledgment numbers in all but the first two packets are relative to the beginning sequence and acknowledgment numbers shown in those two packets.

The task

Download the CSCI 363 Homework 2 form. The form will contain six packets taken from the above list of fourteen. Fill in the six TCP headers for those packets and turn in the completed form. Include the real sequence and acknowledgment numbers in your TCP headers.