RFC 9000 Quiz

QUIC transport fundamentals

0 / 0

References (URLs)

Goal: understand QUIC building blocks before reading HTTP/3 details.

Q1: What is QUIC at a high level

Multiple Choice
**Explanation:** **Terms:** transport, multiplexed, secure, UDP. QUIC provides streams and reliability features with integrated security. **Correct (B):** QUIC is a transport protocol that uses UDP as its substrate, supports multiplexed streams, and integrates TLS 1.3 style security. **Options:** - A (incorrect): HTTP/1.1 is defined separately and does not require QUIC. - B (correct): This matches the RFC 9000 description. - C (incorrect): DNS is unrelated to QUIC. **Related:** HTTP/3 uses QUIC as its transport.

Q2: What is a primary purpose of a QUIC connection ID

Multiple Choice
A QUIC connection ID lets the connection survive path changes because the transport is not identified only by the old IP:port tuple.
Old path IP:port A New path IP:port B Same QUIC connection ID not tied to one path continue connection Server keeps same connection
**Explanation:** **Terms:** connection ID, migration. A connection ID helps identify a connection independently of the IP and port tuple. **Correct (A):** Connection IDs help keep a connection stable even when the network path changes and can also support load balancing. **Options:** - A (correct): This enables mobility and smoother handoffs. - B (incorrect): Certificates and authentication are part of TLS, not connection ID. - C (incorrect): URIs belong to application protocols like HTTP, not to transport identifiers. **Related:** Some deployments use connection IDs to route packets through load balancers without exposing client addresses.

Q3: Which QUIC feature helps prevent one request from blocking another due to transport ordering

Multiple Choice
**Explanation:** **Terms:** streams, multiplexing. QUIC carries multiple streams that can progress independently. **Correct (C):** Stream multiplexing is a fundamental transport building block for protocols like HTTP/3. **Options:** - A (incorrect): Status codes are HTTP semantics. - B (incorrect): DNS caching is unrelated. - C (correct): Streams allow independent application flows. **Related:** This is one reason QUIC is attractive for web traffic with many concurrent resources.

Q4: Which statements about QUIC flow control are true (select all)

Multi-Select
**Explanation:** **Terms:** flow control, backpressure. Flow control is about limiting how much data the sender may transmit before the receiver grants more credit. **Correct (A,B,C):** QUIC uses flow control at multiple levels and it protects receivers. **Options:** - A (correct): Per-stream flow control prevents one stream from consuming all receiver memory. - B (correct): Connection-level flow control caps overall buffered data. - C (correct): This is the purpose: controlled resource usage. - D (incorrect): Authentication is handled by TLS and application logic, not flow control. **Related:** Flow control is different from congestion control. Congestion control is about network capacity, not receiver capacity.

Q5: What types of streams does QUIC support

Multiple Choice
**Explanation:** **Terms:** bidirectional stream, unidirectional stream. QUIC supports different stream directions depending on protocol needs. **Correct (A):** Both stream types exist. **Options:** - A (correct): Many application protocols map different message flows onto different stream types. - B (incorrect): That describes TCP, not QUIC. - C (incorrect): QUIC is reliable for its streams. Datagram support is an extension, not the baseline stream model. **Related:** HTTP/3 uses multiple unidirectional control streams plus bidirectional request streams.

Q6: QUIC is designed to run over which IP transport protocol

Short Text
**Explanation:** **Terms:** UDP. QUIC uses UDP packets as its substrate to enable user-space evolution and avoid TCP ossification. **Correct:** UDP. **Why others are wrong:** QUIC is not TCP-based. SCTP is also not the base here. **Related:** Running over UDP does not mean QUIC is unreliable. QUIC implements reliability and congestion control at the protocol layer.