What is the QUIC Protocol?
Learn what QUIC is, how it runs over UDP, fixes head-of-line blocking, speeds up handshakes, and powers HTTP/3.
Expected Interview Answer
QUIC is a transport-layer protocol built on top of UDP that provides TCP-like reliability and congestion control plus built-in TLS 1.3 encryption, multiplexed streams without head-of-line blocking, and fast connection setup, and it forms the transport for HTTP/3.
QUIC runs over UDP instead of directly over IP so it can be deployed in user space and evolve faster than kernel-level TCP stacks, while still implementing its own reliability: sequence numbers, acknowledgements, and retransmission live inside QUIC itself. Its biggest structural win over TCP+TLS is multiplexed streams โ multiple independent request/response streams share one QUIC connection, and a lost packet only blocks the stream it belongs to instead of stalling every stream, which solves TCP's head-of-line blocking problem for multiplexed HTTP/2-style traffic. QUIC also folds the transport and TLS 1.3 handshakes into a single round trip (and supports 0-RTT resumption for repeat connections), cutting connection setup latency compared to TCP + separate TLS negotiation. Because QUIC identifies connections by a connection ID rather than the IP/port 4-tuple, it survives network changes gracefully, letting a mobile device switch from Wi-Fi to cellular without dropping the connection โ something TCP cannot do.
- Eliminates cross-stream head-of-line blocking via independent multiplexed streams
- Combines transport and TLS 1.3 handshakes for faster connection setup
- Built-in encryption by default, unlike plain TCP
- Connection migration across network changes using a connection ID
AI Mentor Explanation
QUIC is like a stadium running several independent scoring lines at once โ one for boundaries, one for wickets, one for overs โ so a delay in reporting one wicket never holds up reporting a boundary on another line, unlike a single shared runner who must relay events strictly in order. It also lets a broadcast van switch from one relay tower to another mid-match without the feed cutting out, because the van is tracked by its own ID rather than which tower it is currently near. This is exactly how QUIC keeps multiple streams independent and survives a device switching networks mid-connection.
Step-by-Step Explanation
Step 1
Runs over UDP
QUIC builds its own reliability and congestion control atop UDP rather than raw IP, enabling faster iteration in user space.
Step 2
Combined handshake
Transport setup and TLS 1.3 negotiation happen together in one round trip, with 0-RTT possible on resumption.
Step 3
Independent streams
Multiple streams multiplex over one connection; a lost packet only stalls its own stream, not the others.
Step 4
Connection migration
A connection ID (not the IP/port tuple) identifies the session, so it survives network changes like Wi-Fi to cellular.
What Interviewer Expects
- Explains QUIC runs over UDP with its own built-in reliability
- Understands it eliminates cross-stream head-of-line blocking (unlike TCP+HTTP/2)
- Knows it merges transport and TLS handshakes for faster setup, including 0-RTT
- Connects QUIC to HTTP/3 and mentions connection migration
Common Mistakes
- Saying QUIC replaces UDP rather than being built on top of it
- Confusing QUIC's stream-level head-of-line blocking fix with eliminating all loss handling
- Forgetting QUIC has encryption built in by default, unlike plain TCP
- Not knowing QUIC underlies HTTP/3
Best Answer (HR Friendly)
โQUIC is a newer way of sending data over the internet that Google originally built for what became HTTP/3. Instead of using traditional TCP, it runs over UDP but adds back reliability and security in a smarter way, so multiple pieces of a webpage can load independently without one slow piece blocking the rest, and it also sets up connections faster and handles switching networks, like going from Wi-Fi to mobile data, more smoothly.โ
Code Example
# Request a page and inspect which protocol was negotiated
curl -Is --http3 https://www.google.com | head -n 1
# HTTP/3 200
# Check for the Alt-Svc header advertising QUIC/HTTP3 support
curl -sI https://www.cloudflare.com | grep -i alt-svc
# alt-svc: h3=":443"; ma=86400Follow-up Questions
- How does QUIC achieve 0-RTT connection resumption?
- How does HTTP/3 relate to QUIC?
- What is a QUIC connection ID and why does it enable connection migration?
- How does QUIC handle congestion control compared to TCP?
MCQ Practice
1. What transport protocol does QUIC run on top of?
QUIC is built on top of UDP and implements its own reliability and encryption in user space.
2. What problem does QUIC's stream multiplexing primarily solve?
Independent QUIC streams mean a lost packet only stalls its own stream, unlike TCP where it blocks everything behind it.
3. Which web protocol is built on top of QUIC?
HTTP/3 uses QUIC as its transport layer instead of TCP.
Flash Cards
What is QUIC built on? โ UDP, with its own reliability, congestion control, and TLS 1.3 encryption layered on top.
Key QUIC advantage over TCP+HTTP/2? โ No cross-stream head-of-line blocking โ a lost packet only stalls its own stream.
What handshake benefit does QUIC offer? โ Combines transport and TLS 1.3 setup into one round trip, with 0-RTT resumption possible.
What is QUIC connection migration? โ Sessions are tracked by connection ID, letting them survive network changes like Wi-Fi to cellular.