Master QUIC's UDP foundation, connection migration, 0-RTT resumption, loss recovery, and why HTTP/3 requires QUIC.
0 / 5 completed
1 / 5
What is the fundamental difference between QUIC and TCP at the transport layer?
QUIC over UDP: TCP's stream is a single ordered byte sequence — a lost packet blocks all subsequent data. QUIC multiplexes independent streams so a lost packet only blocks the stream it belongs to. Combined with built-in TLS 1.3, QUIC reduces connection setup to 1-RTT or even 0-RTT for returning clients.
2 / 5
What is QUIC connection migration?
Connection migration: a TCP connection breaks when your IP changes (e.g. switching from wifi to mobile data). QUIC uses opaque Connection IDs in packet headers. The server recognises the same Connection ID from the new address and the connection continues, which is critical for mobile users.
3 / 5
What does 0-RTT connection resumption in QUIC mean?
0-RTT: if a client has previously connected to a server, it caches a session ticket with pre-shared keys. On reconnection it can include encrypted HTTP data in the very first packet. This comes with a trade-off: 0-RTT data is vulnerable to replay attacks, so it should only carry idempotent requests.
4 / 5
How does QUIC handle packet loss recovery differently from TCP?
QUIC packet numbers: TCP's retransmitted segments have the same sequence number as the original, making it impossible to distinguish an ACK for the original from an ACK for the retransmit (Karn's algorithm problem). QUIC's monotonically increasing packet numbers always give unambiguous RTT samples, improving congestion control accuracy.
5 / 5
Why does HTTP/3 require QUIC rather than working over TCP like HTTP/2?
HTTP/3 on QUIC only: HTTP/2 over TCP suffers from transport-level head-of-line blocking even though HTTP/2 logically multiplexes streams. Moving multiplexing into QUIC means each HTTP/3 stream's flow control and retransmission is independent at the transport layer, fully eliminating blocking between concurrent requests.