Fundamentals 14 min read

Evolution of HTTP: From 0.9 to HTTP/3

This article traces the development of the HTTP protocol from its simple single‑line origins in HTTP/0.9 through the extensible HTTP/1.0 and standardized HTTP/1.1 versions, to the performance‑focused HTTP/2 and the QUIC‑based HTTP/3, highlighting key features, limitations, and architectural changes.

Cognitive Technology Team
Cognitive Technology Team
Cognitive Technology Team
Evolution of HTTP: From 0.9 to HTTP/3

Web browsers, servers, and web applications communicate via HTTP, the universal language of the modern Internet, providing a standardized way for systems to exchange information.

HTTP/0.9 – Single‑Line Protocol

Released in 1991, HTTP/0.9 was a minimal protocol used mainly for transmitting HTML pages. It supports only the GET method, has no request headers or status codes, and transfers plain‑text content only.

Request example:

GET /index.html

Response example:

<html>Welcome to the example.re homepage!</html>

Key characteristics:

Only GET method is allowed.

No request/response headers or status codes.

Transfers plain‑text HTML only; no images or other media.

Each transaction opens a new TCP connection (no persistent connections).

No chunked transfer encoding.

Limited error handling – no status codes, errors are returned as special HTML pages.

HTTP/1.0 – Building Extensibility

To overcome the limitations of 0.9, HTTP/1.0 (RFC 1945) introduced several important features:

Support for multiple request methods: GET, POST, HEAD.

Headers (request and response) allowing metadata such as Accept and Content‑Type , enabling content negotiation, caching, authentication, etc.

Status codes (e.g., 200, 404, 500) for richer error handling.

Persistent connections are defined but disabled by default; they must be enabled with Connection: keep-alive .

Content negotiation for language and format.

Improved caching mechanisms.

Requests consist of three parts: request line, headers, and body.

Explicit inclusion of the HTTP version in the request line.

HTTP/1.1 – Standardized Protocol

Published in 1997, HTTP/1.1 refined the protocol and added many enhancements:

Default persistent connections, allowing multiple requests over a single TCP connection.

Pipelining (multiple requests sent without waiting for previous responses), though head‑of‑line (HOL) blocking limited its practical use.

Chunked transfer encoding and range requests (206 Partial Content) for efficient large‑file and resumable downloads.

Additional cache‑control directives and more flexible caching.

Full content negotiation (language, encoding, type).

Host header support, enabling virtual hosting on a single IP.

Many new status codes, expanding error handling.

HTTP/2 – Performance‑Oriented Upgrade

HTTP/2 replaces the textual format with a binary framing layer and introduces several performance‑boosting mechanisms:

Binary transmission and explicit data frames.

Multiplexing: multiple independent streams share a single TCP connection, eliminating HOL blocking for most cases.

Stream prioritization and flow control.

Header compression (HPACK) to reduce overhead.

Server push, allowing the server to pre‑emptively send resources.

Full backward compatibility with HTTP/1.1.

Despite these gains, HTTP/2 can suffer performance degradation in high‑loss environments because a single lost packet stalls all streams, and it requires more sophisticated server configuration.

HTTP/3 – QUIC‑Based HTTP

HTTP/3 builds on the QUIC transport protocol (UDP‑based) to address HTTP/2’s shortcomings:

Reduced connection latency by eliminating TCP’s three‑way handshake.

Improved congestion control with QUIC’s own algorithms.

Elimination of HOL blocking because each request runs in an independent QUIC stream.

Forward error correction (FEC) for higher reliability.

Built‑in TLS 1.3 encryption, offering stronger security.

References:

MDN – Evolution of HTTP

HTTP/2 in Action

Various online articles on HTTP history

networkHTTPWeb ProtocolinternetProtocol Evolution
Cognitive Technology Team
Written by

Cognitive Technology Team

Cognitive Technology Team regularly delivers the latest IT news, original content, programming tutorials and experience sharing, with daily perks awaiting you.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.