HTTP Protocols
HTTP (Hypertext Transfer Protocol) is the underlying communication protocol of World Wide Web. HTTP functions as a request–response protocol in the client–server computing model.
HTTP has four versions — HTTP/0.9, HTTP/1.0, HTTP/1.1, and HTTP/2.0. The common version in use is HTTP/1.1 and the future will be HTTP/2.0.
HTTP/0.9 — The One-line Protocol
- It is initial version of HTTP, a simple client-server, request-response, telenet-friendly protocol
- Request nature is single-line (method + path for requested document)
- Methods supported by this version is GET only
- Response type is hypertext only
- Connection is terminated immediately after the response
- No HTTP headers (cannot transfer other content type files), No status/error codes, No URLs, No versioning
HTTP/1.0 — Building extensibility
- Browser-friendly protocol
- Provided header fields including rich metadata about both request and response (HTTP version number, status code, content type)
- Response is not limited to hypertext (Content-Type header provided ability to transmit files other than plain HTML files — e.g. scripts, stylesheets, media)
- Methods supported are GET , HEAD , POST
- Connection is terminated immediately after the response
HTTP/1.1 — The standardized protocol
- This is the HTTP version currently in common use.
- Introduced critical performance optimizations and feature enhancements — persistentand pipelined connections, chunked transfers, compression/decompression, content negotiations, virtual hosting (a server with a single IP Address hosting multiple domains), faster response and great bandwidth savings by adding cache support.
- Methods supported are GET , HEAD , POST , PUT , DELETE , TRACE , OPTIONS
- Connection is long-lived
HTTP/2.0
HTTPS
Hyper Text Transfer Protocol Secure (HTTPS) is the secure version of HTTP. It uses SSL/TLS for secure encrypted communications.
An HTTPS connection can protect the data transfer from the man-in-the-middle attacks and common security threats by providing bidirectional encryption for communications between a client and server.
0 comments:
Post a Comment