Client's access WWW servers using the Hypertext Transfer Protocol over TCP/IP. It would be very straightforward to define a mapping for HTTP over other transport protocols. For example, to reuse the OSI Transport Service instead would be trivial.
HTTP is a very simple protocol. The client simply opens a connection to the server, and then typically specifies a page to ``GET'' by sending the ascii text [a lot of Internet Standard Applications use ASCII encoded protocols, for example SMTP] command over a TCP connection to port 80. Here we illustrate this to an actual server together with the response:
open www.cs.ucl.ac.ukGET /index.html HTTP/1.0
HTTP/1.0 200 OK
MIME-Version: 1.0
Server: MacHTTP
Content-type: text/html
<title>Mark's Powerbook on the Web</title>
<h1>Welcome to Mark's WWW server</h1>
This temporary server is running on an Apple Macintosh
Powerbook 180 using MacHTTP 1.3.
There's not much here right now, except for the
<a href=Default.html>HTTP documentation</a>.
The response is the HTML straight from the server's disk, but wrapped up in a few lines of envelope to enable the client to deal with returned types that can include more than just text.
Note also that the HTTP and the MIME versions are explicit here to allow for backward compatible extensions to be introduced in the Web incrementally. MIME is the Multi-purpose Internet Mail Extensions, that were developed for carrying multibody, multimedia mail over the Internet SMTP mail standard, which originally only supported ASCII text. The technology has found a good home in the Web.