TCP has reached its architectural limit. HTTP/3 abandons it entirely, utilizing QUIC over UDP to eliminate Head-of-Line Blocking and optimize mobile handshakes.
The Problem: Head-of-Line (HoL) Blocking
HTTP/2 solved application-layer blocking by multiplexing multiple HTTP requests over a single TCP connection. However, TCP is a rigid, ordered protocol. If a single packet is lost in transit, the entire TCP stream halts. The OS kernel will not deliver subsequent packets to the application (browser) until the missing packet is retransmitted and received.
This means one dropped packet on an image request blocks the critical CSS file traveling on the same TCP connection.
The Solution: QUIC over UDP
QUIC (Quick UDP Internet Connections) operates over UDP, which has no inherent concept of connection state or ordering. QUIC implements its own stream control, packet retransmission, and congestion control in user space.
Because QUIC understands multiplexed streams natively (unlike TCP), a dropped packet for Stream A only blocks Stream A. Streams B and C continue uninterrupted.
Connection Migration
TCP identifies connections via a 4-tuple: Source IP, Source Port, Dest IP, Dest Port. If a mobile user walks out of Wi-Fi range and switches to LTE, their IP changes. The TCP connection dies, and a new 3-way handshake must occur.
QUIC identifies connections via a unique 64-bit Connection ID. A client can switch IP addresses seamlessly while maintaining the same QUIC connection, downloading files without interruption.