INST 346
Technologies, Infrastructure and Applications
Fall 2017
Assignment H3
This homework will be designed to give you experience with transport
layer concepts, and with the way the transport layer interacts.
Create an annotated list of the sequence of TCP packets (which our
book calls "segments") that your Web browser would need to send and
receive in order to obtain and display this Web page (the Web page
that contains this homework assignment). To do this:
- First, list (without much detail) the HTTP messages that must be
sent and received. This list will not be separately graded, but it
will help you to figure out which TCP packets need to be sent and
received to exchange those messages.
- Then start a new list of TCP packets. Begin your list of TCP
packets with the packets that are required to set up the TCP
connection. Then list the TCP packets that are required to send each
HTTP message, including packets that are sent as acknowledgments. You
can assume that all packets are correctly received (i.e., you do not
need to consider the possibility that some packets might be lost or
corrupted and thus need to be retransmitted). You can also assume
that there is no limit to the length of your TCP packets (i.e., you
can assume that any HTTP message would fit in a single packet.
Finally, list the TCP packets that are required to close the
connection.
- For each TCP packet you have listed, specify both the purpose of
the packet and all details that make its content different from other
TCP packets. You don't need to generate exact sequence numbers --
approximations would be fine (e.g., if you have a TCP packet with
about 100 bytes in the payload, you can just increment the sequence
number by 100 for the next packet; if your TCP packet has about 1000
bytes in the payload you can increment it by 1000. There's no need to
count the bytes exactly, but your sequence numbers should be correct
for the approximations that you use. You don't need to generate the
checksums that are used to check for corruption. You do not need to
provide the exact content of the HTTP messages; a general description
of their content will suffice.
You may find it useful to use Wireshark to help you with this
assignment, but I recommend that you try it first by hand without
Wireshark and then use Wireshark to fill in any gaps in your
understanding.
Submit both of your lists (HTTP messages and TCP packets) on ELMS.
You may find it useful to use excel for this assignment since for each
packet there are several pieces of information you will want to
specify, and Excel's table layout can be hand for that.
Doug Oard
Last modified: Tue Oct 3 18:31:50 2017