The goal of the assignment is to examine real protocols in use and understand the communication that takes place in a network by examining the bits that flow across a network segment.
For this assignment you will use the application ethereal. Ethereal lets the user capture packets from the network as well as save the packets for viewing at a later time. When running Ethereal you should see something like Figure 1. Ethereal is available for most platforms, including Windows from http://www.ethereal.com. It is also available in the CSIL lab either in KDE under Internet, or by simply typing ethereal
One problem though: ethereal usually requires root privileges to run.
Of course, this is a good thing because it should be hard to capture packets on
the network! So, the capturing has been done for you, and a capture file has
been created. Take the hw2.ethereal-file.bin
(NOTE: Make sure you download this file, i.e. right click and select
``Save Link As''.)
and use it as the source file for ethereal (HINT: do a
man ethereal and look at how to use the -r option...
you can do this without having root. Or better yet, read the User's Guide).
You will also want to use the GUI in ethereal to more closely
investigate what is happening in this trace.
Some of the things going on in the trace will contain protocols
we have not gone over in class. You'll have to use one of the
class textbooks as a reference to answer them or Google to look them up. I
will also try to provide some in-class time to answer questions so be prepared
to ask questions when the time comes.
Figure 1. Ethereal snapshot
This assignment will be graded based on your ability to communicate that you understand everything about the packet trace. This implies, as usual, a clear, concise write-up! To help get you started, below is a set of sample questions that you will want to answer about the packet trace. However, these questions only serve as examples of the kinds of things that are important. They serve as a starting point and are not exhaustive. They are only provided as a guide to help you find the most interesting aspects of the trace. So, how should you proceed? Start by considering the following questions:
Next, create a description of the session filling in the details where appropriate. What happened? What does the network look like? Who was sent traffic? Who responded? As a starting place, consider re-ordering the questions to flow more logically; reduce redundancy (yes, there are some redundant questions); and add questions that you think are important but that have not included. Another nice idea would be to guess what was typed at the command line to cause the traced packets to occur. While not all the packets are from commands a user might type, most are and that will give a very clear description of what was going on in the network during the capture.
Next, try to understand the results in a way that provides multiple levels of abstraction. For example, first describe the session, then describe the flows, then describe the packets in the flow.
Finally, determine a good, concise way of writing a report that clearly presents all of this information. This will be one of the harder parts of the assignment. Because there is so much information and it is hard to decide what to present first, you will have to make some hard decisions and use some creative solutions to clearly convey to a reader what is happening.
This assignment will be turned in using the CS Department turnin program. From any computer in CSIL type the following command to turnin your write-up for this homework:
Be sure to use exactly hw2@cs290i for this assignment. However the last argument is the name of the file containing your homework answers and can be any name you choose.
This assignment should be turned in a suitable format. Suitable formats include HTML, PostScript, PDF and plain text. Unfortunately, Microsoft Word documents are not suitable, they are too prone to viruses. However, that does not preclude you from using Microsoft Word to type out your answers. Simply save the Word document as an HTML file or a PostScript file if you know how. If you have any questions on a format ask the TA.