Project 1 - A Multi-Threaded Web Server

Due - Thursday, October 9, 2003

This project is Programming Assignment 1 from Chapter 2 of the textbook. You are going to build a multi-threaded web server in Java. The full specification for this assignment can be found at: http://media.pearsoncmg.com/aw/aw_kurose_network_2/labs/lab1.html.

For this assignment, you are to work individually so that everyone has some experience with programming in Java. However, I encourage you to discuss the high level details of your solution with your classmates. For example, you might discuss the methods and/or variables you will need for your solution.

You must turn in parts A and B of the assignment separately. I encourage you to turn in part A before proceeding to part B since you will be modifying what you have already completed. I would also encourage you to finish part A by October 2 to allow you enough time to complete part B. But, the requirement is that both parts will be turned in by the start of class on the due date.

Turn in both parts of the assignment via email. Send an email to me and make sure to attach all files necessary to compile and run your solution.

To get you started, I have taken the code fragments provided on the assignment web page and put them into two skeleton files. For part A of the assignment, download the skeleton files and complete the code by replacing the "? - YOUR CODE HERE" statements with the appropriate code. Download the files here: WebServer.java HTTPRequest.java


Sami Rollins