CPE 400/600 Computer Communication Networks
Programming Assignment 1
Due on Wednesday, Oct 12 at 1:00 pm
Carry out the programming assignment 1 "Multi-Threaded Web Server" from the Kurose & Ross textbook. You will be developing a simple multi-threaded web server, which should be reachable through a conventional web browser. Details of the assignment are on page 190 of the textbook.
- This is an individual assignment and you are expected to turn in your own work. Discussion with other students is allowed, but sharing your work is strictly not allowed.
- You can develop your code either in C/C++ or in Java.
- Sample templates/snippets are available at textbook website.
- You are supposed to do this assignment in UNIX environment. You should use the CSE Department's UNIX servers: computeX.cse.unr.edu for developing as well as testing your code.
- Your source code will be tested on computeX.cse.unr.edu machines and if your source code does not work on these machines, you will lose points.
- Your source code will be assessed and marked. Commenting is definitely required in your source code.
- A makefile is required. All files in your submission will be copied to the same directory, therefore do not include any paths in your makefile. The makefile should include all dependencies that build your executable(s). If a library is necessary, your makefile should also build the library.
- Do not hand in any binary or object code files. All that is required is your source code, a makefile, and other necessary files as stated in the assignment description.
- Test your code by copying the source code only into an empty directory and then compile it by entering the command make. Your code must compile without any errors or warnings and run properly under computeX.cse.unr.edu machines. You may develop and test your programs on your own UNIX machine, but it is your responsibility to ensure that they also work properly on the computeX.cse.unr.edu, under the default UNIX shell on those machines. There will be a heavy penalty if they don't.
What to turn in:
A tar file of source code for the server and a makefile to compile your code to be uploaded to WebCampus.