Thursday, April 6, 2023

HTTP Protocols

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 — persistent
    and 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

With Upgrade header introduced in HTTP/1.1, it is possible to start a connection using a commonly-used protocol, such as HTTP/1.1, then request that the connection switch to an enhanced protocol type
like HTTP/2.0 or WebSockets.

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.

Although HTTPS is secure by its design, the SSL/TLS handshake process consumes a significant time before establishing an HTTPS connection. It normally costs 1–2 seconds and drastically slows down the
startup performance of a website.



 



 

0 comments:

Post a Comment

Data Structures with C++



NET/SET/CS PG



Operating Systems



Computer Networks



JAVA



Design and Analysis of Algorithms



Programming in C++

Top