Download - The HyperText Transfer Protocol: HTTP
![Page 1: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/1.jpg)
1
The HyperText Transfer Protocol:
HTTP
Nick Smith
Stuart Alley
Tara Tjaden
![Page 2: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/2.jpg)
2
Agenda - HTTP
I. Definition
II. Inventor
III. Fundamental Dimensions
IV. Request Methods
V. Response Example
VI. Properties
![Page 3: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/3.jpg)
3
HTTP Defined
Hypertext Transfer Protocol is a network protocol used to deliver virtually all files and other data (collectively called resources) on the World Wide Web. This is a request and retrieve function of the server.
This includes: Text files, graphic images, sound, video, and other multi-media files.
![Page 4: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/4.jpg)
4
Tim Berners-Lee
Inspiration Trying to retrieve information from a Net-connected computer was
frustrating (incompatible computer systems) Innovation
Combine the Internet with hypertext (global access). Developed URI later became known as URL (Universe Resource
Locator) Take the name of the document and put it behind a link in a hypertext
document (machine does the work) Impact
1990 he developed HTTP, HTML, and the first web browser WWW (W3C ~ Creator of nonprofit firm that oversees the web development)
He put his programs on the Internet. Grad students first to use it!
![Page 5: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/5.jpg)
5
Berners-Lee’s Vision
Semantic Web – allow machines to quickly analyze lots of data, recognize connections betweens ideas and providing links to more information
![Page 6: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/6.jpg)
6
HTTP Versions: Past and Present
HTTP/0.9 Was never widely used. This only supports one command, GET.
HTTP/1.0 Still widely used, especially by proxy servers. Allows persistent connections when explicitly negotiated; however this only works well when not using proxy servers.
HTTP/1.1 Current version; persistent connections enabled by default and works well with proxies.
![Page 7: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/7.jpg)
7
Difference Between FTP and HTTP
File Transfer Protocol (FTP) is used to upload files from a workstation to a FTP server or download files from a FTP server to a workstation.
HTTP is used to transfer files from a Web server onto a browser in order to view a Web page that is on the Internet.
FTP is two-way system and HTTP is a one-way system
![Page 8: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/8.jpg)
8
Two fundamental dimensions of HTTP: connectivity and interface
A way to exchange hypermedia documents between computers Very easy for computers on the Internet to safely
share data. Retrieving a file's data is almost useless unless
you know what kind of data it is. The Web understands "data types" and passes
that information along.
![Page 9: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/9.jpg)
9
HTTP Request Methods
There are 3 open-ended methods that are frequently used to request information:
GET – used to ask for specific document and is the simplest form of requesting information (URL access will not change the state of database)
HEAD – used to ask for information about a document (very fast because less data is required)
POST – used when the service associated with the processing of the form has side effects (URL access will cause change in database). Example: Ebay, Amazon
![Page 10: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/10.jpg)
10
HTTP Response (Server – Client)
HTTP/1.0 200 OK
Date: Wednesday, 02-Feb-95 23:04:12 GMT
Server: NCSA/1.3
MIME-version: 1.0
Last-modified: Monday, 15-Nov-93 23:33:16 GMT
Content-type: text/html Content-length: 2345
* a blank line *
<HTML><HEAD><TITLE> . . .
The server agrees to use HTTP version 1.0 for communication and sends the status 200 indicating it has successfully processed the client's request.
It sends the date and identifies itself as an NCSA HTTP server.
It indicates it is using MIME version 1.0 to describe the information it is sending, and includes the MIME-type of the information about to be sent in the "Content-type:" header.
It sends the number of characters it is going to send, followed by a blank line and the data itself.
http://www.wdvl.com/Internet/Protocols/HTTP/Response.html
![Page 11: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/11.jpg)
11
HTTP Properties
A comprehensive addressing scheme Client-Server Architecture Connectionless Stateless Extensible and open representation for data
types Head fields
![Page 12: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/12.jpg)
12
Properties continued… comprehensive addressing scheme
To indicate the resource for methods to be
applied, HTTP protocol uses the concept of
reference provided by either the: Universal Resource location (URL), or As a identifier (URI), or As a name (URN)
![Page 13: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/13.jpg)
13
URL Example:
The following is an outline of the most common form of a URL:
http://www.address.edu:1234/path/subdir/file.ext
service
host
portFiles and resource details
![Page 14: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/14.jpg)
14
Properties continued… Client-Server Architecture
Like most network protocols, HTTP uses the client-server model
An HTTP protocol is based on a request-response paradigm where a request program (a client) establishes a connection with a receiving program (a server) and sends a request to the server. The server responds with appropriate data.
![Page 15: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/15.jpg)
15
Properties continued… Connectionless and Stateless
Once a single request is satisfied, the connection is completed and is no longer there. There is no memory between client and server. Each request after this is brand-new start. This has a significant impact on simplifying the server
construction
![Page 16: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/16.jpg)
16
![Page 17: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/17.jpg)
17
Properties continued… Extensible and open representation for data types
Internet Media Types are used by HTTP to provide extensible and open representation for data typing. Given that client and server direct communication, applications are allowed more freedom when using non-registered types.
![Page 18: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/18.jpg)
18
Properties continued… Head Fields
Also known as meta information, headers are blocks of data preceding actual data. Essentially, it is information about information, and generally specifies things such as actions required of the server, the type of data being returned, or a status code
![Page 19: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/19.jpg)
19
HTTP in the Future
HTTP-NG (Next Generation) Higher performance
Security and authentication The client will be able to send a new request
before waiting for a previous request response
The server will be able to respond to request in any order
![Page 20: The HyperText Transfer Protocol: HTTP](https://reader035.vdocuments.us/reader035/viewer/2022062500/56814f73550346895dbd2678/html5/thumbnails/20.jpg)
20
Resources:
• http://www.wdvl.com/Internet/Protocols/HTTP/• http://en.wikipedia.org/wiki/HTTP• http://www.jmarshall.com/easy/http/#whatis• http://perlfect.com/articles/http.shtml• http://www.freesoft.org/CIE/Topics/102.htm• Pictures: www.bus.orst.edu, www.ebay.com,
www.acsu.buffalo.edu