Hypertext Transfer Protocol

Overview
HTTP (Hypertext Transfer Protocol) is an application layer networking protocol, and the foundation for data communication on the World Wide Web. HTTP is part of the Internet Protocol Suite, and often sent via the Transmission Control Protocol (TCP).

HTTP is governed by the Internet Engineering Task Force (IETF) and the World Wide Web Consortium spanning a series of Requests for Comments (RFCs), such as [RFC 2616] defining HTTP/1.1.

Technical Detail s
HTTP is an application layer protocol utilizing a request-response method through the client-server computing model. For instance, a web browser offers the client connection, also referred to as a User Agent (UA), while a web server hosting the web site acts as the server connection.

HTTP/1.0 initiates a separate connection for every data request, while HTTP/1.1 can reuse a connection, experiencing less latency.

HTTP protocols
HTTP functions through a "session", which is a series of request-response network transactions. The client initiates a request, typically via TCP and defaults to port 80. The server will send back a status message (commonly HTTP/1.1 200 OK) followed by a message such as an error or the requested data.

A request message can consist of four parts:

 Request; GET image.jpg HTTP/1.1 Header; Accept-Language: enr empty line message body (optional) 

The request line, header, and empty line must end with  (carriage return, line feed)

HTTP also defined nine methods ("verbs") that define potential actions.

 HEAD - asks for a response (GET response with no body). Used for retrieving meta-data. GET - asks for the retrieval of a resource</li> POST - submits data for processing</li> PUT - uploads information for a resource</li> DELETE - deletes a resource</li> TRACE - echos the previous request</li> OPTIONS - returns the methods supported by the server</li> CONNECT - converts the connection to a transparent TCP/IP tunnel, usually for using HTTPS</li> PATCH - modifies a resource</li> </ol>

Links
RFC2616 - HTTP/1.1