Visual RFC.
ALL RFCs / RFC 9114
Read the RFC ↗

RFC 9114 / START HERE

HTTP/3, before the details

HTTP/3

HTTP/3 carries HTTP requests and responses over QUIC, a secure transport protocol built over UDP. HTTP means Hypertext Transfer Protocol.

The idea in one picture

  1. A browser makes HTTP requests

  2. HTTP/3 uses QUIC streams

  3. The server sends HTTP responses

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

QUIC provides independent reliable streams, allowing HTTP exchanges to share a connection without TCP's connection-wide delivery blocking.

A familiar example

A browser and website use HTTP/3 to exchange a page and its resources over a QUIC connection.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. HTTP over QUICHTTP/3 delegates transport reliability and multiplexing to QUIC.
  2. Request frame orderEach request or response uses HEADERS, optional DATA, and optional trailing HEADERS.
  3. Critical control streamsEach endpoint has one unidirectional control stream, beginning with SETTINGS.
  4. QPACK and blocked fieldsA compressed field section can refer to dynamic-table state delivered on a separate stream.
  5. Push and connection shutdownPush promises and shutdown have explicit identifiers and limits.
Start with chapter one →
EXPLORE THIS PROTOCOL

HTTP versions

HTTP semantics apply across versions. HTTP/2 and HTTP/3 change how messages travel; all three guides remain relevant.

This introduction explains RFC 9114 (2022). Read the original RFC ↗