EMZETT.
Login

QUIC and HTTP/3

In short: QUIC is a modern transport protocol over UDP with built-in encryption. HTTP/3 runs on it and loads web pages faster and more stably, especially on poor networks.

In more detail: TCP plus TLS needs several round trips to set up, and one lost packet blocks all data streams of the connection (head-of-line blocking). QUIC combines transport and TLS 1.3 in one handshake, has several independent streams and runs in user space, so it can evolve faster.

In Depth

  • Handshake: 1 RTT, 0-RTT on reconnection (with replay risk).
  • Streams: Loss in one stream does not hold up others.
  • Connection ID: The connection survives network changes (Wi-Fi ↔ mobile).
  • Always encrypted: Also parts of the header.
  • Problems: Some firewalls block UDP/443; browsers fall back to HTTP/2.
  • Alt-Svc: The server announces via header that HTTP/3 is available.
  • Congestion control: Like TCP (for example CUBIC/BBR), but inside the protocol.

See also: TCP congestion control, TLS handshake in detail