La Trobe University, Bendigo

Department of Information Technology

INT21CN: Computer Networks

Assignment 2, 2005

Your task in this assignment is to investigate and report on one only of the following topics in relation to Internet application-level protocols. The assignment requires you to demonstrate the operation of some of the more important commands/responses of your chosen application protocol by connecting to the appropriate port number of a suitable server using a utility such as telnet.

Note also that additional topics might appear on this page as they are suggested to me. It could be worth checking back regularly if you don't like any of those given below.

POP3
Your task is to investigate the POP3 protocol. What commands are available? Demonstrate the operation of the main command set. What authentication methods are provided by the server, and how can you tell? Note: to attempt this question, you must have access to a POP3 server. La Trobe students in Australia can use a secure command line client to connect to students.latrobe.edu.au on port 995. If you have private Internet access you may be able to connect to to your ISP's POP3 server using telnet, at the conventional port number.

Note: (5-May-2005) I have received an email from ITS stating that POP access to student email is no longer provided, but giving no reasons for its discontinuation. I am following this up. Watch the subject homepage for more news.

IMAP4
The IMAP4 protocol is considerably more complex than POP3, so for this question you are not expected to demonstrate more than a few of the basic protocol operations. As for the previous question, you need access to an IMAP4 server. The IMAP4 service on the students.latrobe.edu.au machine is accessible via a secure command line client at port 993, otherwise use telnet to connect to an external server at the usual port number.

FTP
See what FTP control protocol messages you can send (and receive) using telnet. Explain why you can't fully debug an "active-mode" FTP session using telnet alone. For maximum possible marks, demonstrate a "passive-mode" FTP file transfer (or directory listing) using passive mode and telnet. Note that the department's redgum server is usable for this question.

Attachments in Web-based Email Systems
This research-based question asks you to discover how Web-based email services (eg La Trobe Student Email, Hotmail, Yahoo Mail, Google Mail, etc, etc) handle attachments. You should explain how the contents of a data file are transferred from your desktop machine to the Web-based email server when you're sending an attachment, and how they are downloaded to your desktop machine when you receive an attachment. It's obvious that these transfers are implemented using HTTP, but in the lectures we didn't explain exactly how -- which request methods are used, and which MIMEtypes are involved. Your task is to explain the mechanisms. It's difficult (impossible?) to demonstrate the "file upload" function using a commandline utility, however it may be possible to use telnet or the Unix libwww GET command to demonstrate the "file download" operation -- although not from a mail server. To do this, you will need to discover an Internet file download site which uses the same download technology as the Web-based email servers -- this may not be easy! Then you should be able to isolate the URL of a downloadable file, and fetch it using one of the aforementioned utilities. The interesting aspect of this is, of course, to document the relevant response headers present in the download.

HTTP/1.1 Cache Control features
In lecture 7, the HTTP/1.1 cache-management features were discussed. Your "theory" task for this question is to consult the appropriate RFC (and/or other references) and discover more about these features than was presented in the the lecture. Use a utility such as telnet, or the Unix libwww GET command to obtain a selection of Internet Web pages along with their HTTP response headers -- you may, in fact, prefer to use the HTTP "HEAD" method, since the protocol response headers will (usually) be the same, and they're what you're mostly interested in. If you're within La Trobe, you will have to obtain external pages via the university's proxy server (proxy.latrobe.edu.au) at port 8080. Document the HTTP/1.1 cache-control headers which are present in the responses for each of the pages that you fetch, and explain their purpose and effect. Be sure to obtain pages from a variety of sites to ensure that you observe a range of cache-control header types and values. Note: for this question you may choose to use a command-line "Web page fetcher" such as wget or the lib-www commands "GET" and/or "HEAD" (note significant use of UPPERCASE for Unix environment) with the "Response Headers" option,

IRC
This topic has become available due to requests from a number of students. If you shoose this, you should demonstrate some of the basic IRC client protocol operations, explaining how they fit into the IRC architecture, and why they're used. The whole topic of IRC is very complex, and would take considerably more work to describe (let alone demonstrate) than this asssignment is worth.

Other
Another application protocol-related topic (in the same vein as the above) with the explicit prior approval of the lecturer.

Notes

  1. Students wishing to use MS-Windows systems might find these telnet hints useful.

  2. The ITS-provided La Trobe email servers no longer permit un-encrypted plain text transmission as discussed in the lectures. Instead, communications takes place over a secure SSL-encrypted connection (see later). The application protocol messages are unchanged, but you can no longer use telnet to connect to the server. Instead, a command-line SSL client must be used, to a new "secure" port number. On our department's Unix systems, you can use the openssl utility for this purpose. The syntax looks like:
    openssl s_client -crlf -connect host:port
    
    Similar utilities may be available for other systems (eg Windows), and as we become aware of them we will mention them here.

  3. You should expect to write a maximum of about 1500 words on the topic of your choice. Your submission must include (at least) sufficient pasted-in headers, screenshots and/or other text to indicate "liveness": that it, to show that it was actually you who performed these operations. Typical important headers might include, for example, dates, times and client IP address information.

  4. You can submit your assignment in either traditional paper form (preferred), or as an email attachment of MIME type text/html sent to cnsubmit@ironbark.bendigo.latrobe.edu.au. Your choice of submission format will not affect the mark gained for your assignment. Submissions must, as usual, adhere to the requirements of the La Trobe University, Bendigo Assignment Guide.

Students are reminded of the University's policy on plagiarism. This will be applied in this and all other assignments in Computer Networks.

This assignment carries 15% of your mark for Computer Networks.

Due Date:13th May, 2005 (end of week 10)

Lecturer: Phil Scott, 5444 7277, p.scott@latrobe.edu.au.


[Computer Networks Home] [Lectures] [Assignments] [News] La Trobe Uni Logo
Copyright © 2005 by Phil Scott, La Trobe University.
Valid HTML 3.2!