Hypertext Transfer Protocol (HTTP
) is a stateless request
that operates by exchanging messages
across a reliable transport Application Layer
for transmitting hypermedia
documents, such as HTML
Hypertext Transfer Protocol Standards are generally defined within the HTML Living Standard Specification
Hypertext Transfer Protocol, though often based on a TCP/IP Protocol Stack, it can be used on any Reliable protocol transport layer.
Hypertext Transfer Protocol follows a classical Client-server model, with a client initiating a connection to make a request, then waiting until it receives a response.
Hypertext Transfer Protocol is a stateless protocol, meaning that the server does not keep any data (state) between two requests.
A Hypertext Transfer Protocol "client" (user-agent or Browser) is a application that establishes a connection to a server for the purpose of sending one or more HTTP/HTTPS requests.
An Hypertext Transfer Protocol "server" is a application that accepts connections in order to service HTTP Request by sending HTTP Response.
The terms "client" and "server" refer only to the roles that these programs perform for a particular connection. The same program might act as a client on some connections and a server on others.
The term "user-agent" refers to any of the various client application that initiate a request, including (but not limited to) browsers, spiders (web-based robots), command-line tools, custom applications, and mobile Device apps.
The term "origin server" refers to the program that can originate authoritative responses for a given target resource.
The terms "sender" and "recipient" refer to any implementation that sends or receives a given message, respectively.
Hypertext Transfer Protocol relies upon the Uniform Resource Identifier (URI) standard RFC 3986 to indicate the target resource and relationships between resources.
Messages are passed in a format similar to that used by Internet Mail RFC 5322 and the Multipurpose Internet Mail Extensions (MIME) RFC 2045 (see Appendix A of RFC 7231 for the differences between HTTP and MIME messages).
There might be more information for this subject on one of the following: