This class will focus on the complete understanding of the hypertext
transfer protocol (http) and the implementation of a web server. The
class will be programming intensive: prerequisites include the
understanding of network (socket) programming. The student will
implement an http server, with 5 well defined demonstrations of
protocol conformance (assignments) during the class. The assignments
will build on the previous assignments, and at the end of the class
the student should have a fully functioning web server that implements
most of the common http functionality.
The students will decide their own implementation language /
environment; the lectures will be strictly about http and not about any
particular programming language. There will be no class textbook; class
lectures and RFCs will be the primary guide for students. Grades will
be determine solely on the design and performance of the http servers.