HTTP/2 and HTTP/3 Features

Key features and improvements introduced in HTTP/2 and HTTP/3 over HTTP/1.1.

  • JSON5,742 B
  • YAML4,160 B · −28%
  • TOON3,306 B · −42%

The features that distinguish HTTP/2 and HTTP/3 from HTTP/1.1, each tagged with the version it belongs to and the problem it addresses: multiplexing, header compression, transport changes in QUIC and connection behavior on mobile networks.

Use it when

  • You are explaining why HTTP/2 or HTTP/3 helps a particular workload.
  • You are deciding which protocol version to enable or what to measure after enabling it.

Watch out for

  • Gains depend on the workload and network; a single large download changes little, many small requests on a lossy network gain the most.
  • Server push saw little adoption and was removed from major browsers, so treat it as a historical feature.

The data

FeatureVersionDescriptionBenefit
MultiplexingHTTP/2Multiple requests and responses over a single TCP connection.Eliminates head-of-line blocking.
Header Compression (HPACK)HTTP/2Compressed headers using a static and dynamic table.Reduces overhead on every request.
Server PushHTTP/2Server can push resources before the client requests them.Reduces round trips for related resources.
Stream PrioritizationHTTP/2Requests can be assigned weight and dependency for ordering.Critical resources can be delivered first.
QUIC TransportHTTP/3Built on UDP instead of TCP for connection establishment.Eliminates TCP handshake + TLS round trips.
0-RTT ResumptionHTTP/3Can resume connections with data from the first packet.Faster page loads for returning users.
Connection MigrationHTTP/3Connections survive network changes (e.g., WiFi to LTE).Seamless experience on mobile devices.
Binary Framing LayerHTTP/2Messages are split into binary frames carried on numbered streams instead of text lines.Enables multiplexing and cheaper, less ambiguous parsing.
Flow ControlHTTP/2Per-stream and per-connection windows limit how much data a sender may transmit.Prevents one stream from starving others on a shared connection.
QPACK Header CompressionHTTP/3Header compression redesigned to work with out-of-order streams.Keeps compression gains without HPACK's head-of-line blocking.
No Transport Head-of-Line BlockingHTTP/3Streams are independent in QUIC, so a lost packet delays only its own stream.Fewer stalls on lossy networks.
Built-in TLS 1.3HTTP/3QUIC integrates the TLS 1.3 handshake into connection setup.Fewer round trips before data flows, and encryption is mandatory.
Alt-Svc DiscoveryHTTP/3A server advertises HTTP/3 availability through the Alt-Svc header or an HTTPS DNS record.Lets clients upgrade from TCP-based HTTP without a separate port.

Fields

The shape of this dataset, read from the data itself: every column, its type and a real value. Agents can use this to plan a query without fetching the whole document.

SectionFieldTypeExample
datafeaturestringMultiplexing
dataversionstringHTTP/2
datadescriptionstringMultiple requests and responses over a single T…
databenefitstringEliminates head-of-line blocking.

Fetch the same bytes

The static files contain the same reference rows as the API, with no API rate limit. Live metadata, such as view counts, may differ. Use the API for content negotiation; use the static files for a cacheable snapshot.

curl "https://yjtoon.com/api/dataset/http2-http3-features?format=toon"
const res = await fetch(
  "https://yjtoon.com/static-data/dataset/http2-http3-features.toon"
);
const toon = await res.text();

Rate limit: 120 requests per minute per IP, no key and no signup. API reference →

Topics

  • networking
  • http2
  • http3
  • protocols
  • performance

Search the library

Search by a topic, title, or keyword.

Start with a collection

Browse all 205 datasets