Client, Server, HTTP, IP Address, Domain Name
Client-Server Model Client Bob Yahoo Server yahoo.com/finance.html A text file named finance.html Internet
HTTP: Hypertext Transport Protocol HTTP is a form of communication protocol which specifies how web clients and servers should communicate. The basic structure of HTTP follows a request-response model. A client always initiates a request message to the server; the server generates a response message.
HTTP Request Message Every HTTP request message has the same basic structure: Start Line (request method, URI, HTTP version) Header field(s) (one or more) Blank line Message body (optional) GET /tian/public_html/teaching.html HTTP/1.1 host: ww2.cs.fsu.edu
HTTP Request Method GET: request server to return the resource specified by the Request-URI as the body of a response message POST: pass the body of this request message on as data to be processed by the resource specified by the Request-URL
HTTP Header Fields The Host header field is required in every HTTP/1.1 request message. Three major header fileds: Host: User-agent: Mozilla/5.0 (Windows) Accept: text/html, application/xml (MIME types) Content types that are acceptable for the response
HTTP Response Message Every HTTP response message has the same basic structure: Status Line (HTTP version, status code, Reason Phrase) Header field(s) (one or more) Blank line Message body (optional) HTTP/ OK HTTP/ NOT FOUND
Example of HTTP Request Message Try to retrieve the file at nt.html nt.html GET /~tian/public_html/webDevelopment.html HTTP/1.1 Host: ww2.cs.fsu.edu User-Agent: Molliza9.0 (Windows) Accept: text/html
Example of HTTP Response Message HTTP/1.1 Date: Fri, 31 Dec :20:00 GMT Content-Type: text/html Content-Length: 1354 Welcome to CGS 3066
IP address and Domain Name Every computer on the Internet has an IP address such as Humans find it easier to refer to computers by names, such as yahoo.com. This is called host/domain name. DNS (Domain Name Service) provides a mechanism for mapping back and forth between IP addresses and host names.
Client-Server Communication Client Bob DNS What is the IP address of “ yahoo.com ” yahoo.com’s IP address is Yahoo Server HTTP Request HTTP Response
Web Client Web client is a software that accesses a web server by sending an HTTP request message and processing the resulting HTTP response. Web Browser is a typical web client. IE, Firefox, Safari, etc Browser-Wars En.wikipedia.org/wiki/Browser_wars Each company trying to add features and performance to its browser in order to increase its market share.
Browser War What are the advantages? What are the disadvantages? Despite this diversity, all of the major modern browsers support a common set of basic user features and provide similar support for HTTP communication.
Server The primary feature of every web server is to accept HTTP request from web client and return an appropriate resource (if available) in the HTTP response. 1. Wait for connection requests from a client. 2. Receive an HTTP request. 3. Finding the requested file and creates an HTTP response that contains the file in the body of the response message.
Next Class History of HTML Basic elements of HTML5 Write your first web page in HTML5