LightAtom

What Is QUIC?

QUIC is a modern transport protocol that runs over UDP, builds in TLS 1.3 encryption, and powers HTTP/3. It makes connections faster and more resilient.

QUIC is a transport protocol built on UDP that combines the connection setup, reliability and TLS 1.3 encryption that previously took TCP plus TLS. It is the foundation of HTTP/3, used by Google, Apple, Cloudflare and others, and typically runs on UDP port 443.

How it works

TCP plus TLS 1.3 takes two round trips before data. QUIC with built-in TLS needs one round trip over UDP.

Why a new protocol?

TCP is built into every operating system kernel and every middlebox, so it's almost impossible to change. QUIC implements a new transport in user space on top of UDP, so browsers and apps can improve it quickly.

What it improves

  • Faster setup: transport and TLS handshakes happen together in one round trip; resumed connections can send data immediately (0-RTT).
  • No head-of-line blocking: HTTP/2 over TCP stalls every stream when one packet is lost. QUIC streams are independent, so a loss delays only its own stream.
  • Connection migration: connections are identified by an ID, not by IP and port, so moving from Wi-Fi to cellular doesn't break them.
  • Always encrypted: even most transport headers are encrypted, which stops middleboxes from interfering.

Trade-offs

Some networks block or throttle UDP, so browsers fall back to TCP. Encrypted headers make it harder for network operators to troubleshoot. QUIC can also use more CPU than kernel TCP.

Side by side

TCP + TLS (HTTP/2)QUIC (HTTP/3)
TransportTCPUDP
EncryptionTLS on topTLS 1.3 built in
Handshake2 round trips (1 with TCP Fast Open)1 round trip, 0 when resuming
Packet lossBlocks all streamsBlocks one stream
Network changeConnection breaksConnection migrates
Implemented inOS kernelApps and browsers

Examples

  • In Safari or Chrome developer tools, the Network panel's Protocol column shows h3 for requests made over HTTP/3.
  • ERR_QUIC_PROTOCOL_ERROR in Chrome usually means something on the network is interfering with UDP 443.

On a Mac

macOS supports QUIC system-wide through Apple's Network framework, and Safari uses HTTP/3 by default. lsof -i UDP:443 shows apps with QUIC connections open.

See it in the app

LightAtom's connections view shows QUIC connections as UDP to port 443, alongside each app's TCP traffic.

Frequently asked questions

What is QUIC used for?

Mainly HTTP/3 for web traffic, but also DNS over QUIC and other protocols that need fast, encrypted connections.

Is QUIC TCP or UDP?

It runs on UDP, adding its own reliability, congestion control and encryption on top.

Is HTTP/3 the same as QUIC?

HTTP/3 is HTTP running over QUIC. QUIC is the transport; HTTP/3 is the web protocol on top.

Should I block QUIC?

Only if your network security tools can't inspect it. Browsers fall back to TCP, but you lose QUIC's speed benefits.

LightAtom team

The people who build LightAtom, a network monitor for macOS.