CS 372 Introduction to Computer Networks
Lab #3
Name: ________________________________
Due Sunday, 11:59pm, end of Week 6.
Submit to Canvas before midnight.

Wireshark Lab: TCP v6.0

Supplement to Computer Networking: A Top-Down Approach, 6 ed., J.F. Kurose and K.W. Ross
© 2005-2012, J.F Kurose and K.W. Ross, All Rights Reserved
“Tell me and I forget. Show me and I remember. Involve me and I understand.” Chinese proverb

In this lab, we’ll investigate the behavior of the celebrated TCP protocol in detail. We’ll do so by analyzing a
trace of the TCP segments sent and received in transferring a 150KB file (containing the text of Lewis Carrol’s
Alice’s Adventures in Wonderland) from your computer to a remote server. We’ll study TCP’s use of sequence
and acknowledgement numbers for providing reliable data transfer; we’ll see TCP’s congestion control algorithm
– slow start and congestion avoidance – in action; and we’ll look at TCP’s receiver-advertised flow control
mechanism. We’ll also briefly consider TCP connection setup and we’ll investigate the performance (throughput
and round-trip time) of the TCP connection between your computer and the server.

Before beginning this lab, you’ll probably want to review sections 3.5 and 3.7 in the text .

1. Capturing a bulk TCP transfer from your computer to a remote server
Before beginning our exploration of TCP, we’ll need to use Wireshark to obtain a packet trace of the TCP transfer
of a file from your computer to a remote server. You’ll do so by accessing a Web page that will allow you to enter
the name of a file stored on your computer (which contains the ASCII text of Alice in Wonderland), and then
transfer the file to a Web server using the HTTP POST method (see section 2.2.3 in the text). We’re using the
POST method rather than the GET method as we’d like to transfer a large amount of data from your computer to
another computer. Of course, we’ll be running Wireshark during this time...