Computer Network and Security Projects for 2000

Streamlined HTTP.

1. Project Description

Web pages usually contain a number of different objects (graphics and text areas, files, audio, video clips, etc.).  To obtain the needed reliability, http is sent over TCP. This means that a new connection is set up to fetch every object on a web page. After the object has been fetched, the connection is broken down again. This creates a communication overhead.

The objective of this project is to try to improve the speed of http connections by either using UDP as the underlying transport protocol, or by setting up a single TCP connection to fetch all the objects on a specific web page.  If UDP is used, some form of error checking widowing may have to be included as part of the new http protocol.

Although both these mechanisms are included in this description, the scope of the implementation may require us to drop one of the approaches half way through the project.

The student will be expected to do Semesters 1 and 2 of the CCNA curriculum during the March and July recess periods, in order to prepare them for this project.

2. What is expected of the student.

The student is expected to:

- Take this description as a vague user requirement and generate a realistic (given all the constraints), formal engineering specification (both hardware and software functional requirements) for the system.
- Design an architecture that can be used to implement the system.
- Understand IP, TCP, UDP, HTTP.
- Design a new HTTP protocol to either run over UDP or which uses a single TCP connection to fetch all objects on a single web page.
- Develop a new server program.
- Develop a new client program.
- Integrate, test, demonstrate and document the system.
- Test and characterize the new system in terms of its speed and reliability. Compare with the existing http, based on TCP.
 

3. Resources.

The student should be able to complete the project with the equipment in the network lab. 1