Home
Knowledge Base
Credits
Site Map
 


An Overview of HTTP

The HyperText Transfer Protocol (HTTP) , the Web's application-layer protocol, is at the heart of the Web. It is implemented in two programs: a client program and a server program. These programs, executing on different end systems, talk to each other by exchanging HTTP messages. HTTP defines the structure of these messages and how the client and server exchange the messages.

A Web page or document consists of objects. An object is simply a file such as an HTML files, a JPEG image, a GIF image, a Java applet, or an audio clip that is addressable by a single URL. Most Web pages consist of a base HTML file and server referenced objects. The base HTML file references the other objects in the page with the objects' URLs. Each URL has two components: the host name of the server that houses the objects and the object's path name.

A browser is a user agent for the Web; it displays the requested Web page to the user and provides numerous navigational and configuration features. A Web server houses Web objects, each addressable by a URL, and also implement the server side of HTTP. HTTP defines how Web clients request Web pages from Web servers and how servers transfer Web pages to clients. HTTP uses TCP as its underlying transport protocol, rather than running on
top of UDP.

 

 

The client sends HTTP request messages
into its socket interface and receives
HTTP response messages from its socket
interface. The HTTP server receives
request messages from its socket
interface and sends response messages
into its socket interface. Once the client
sends a message into its socket interface,
the message is out of its hands and in the
hands of the TCP. The server sends
requested files to clients without storing
any state information about the client. If
a client asks for the same object twice in
a period of a few seconds, the server
does not respond by stating it just
served the object to the client, instead,
the server resends the object for it has
forgotten what it did earlier. Because
an HTTP server maintains no
information about clients, HTTP is
said to be a stateless protocol.