📘 Post

Understanding QUIC: The Future of Internet Transport

09/30/2026 By Sanchit Agrawal 15 min read 👁 1,721 views

—
QUIC is a modern transport protocol designed to improve how applications communicate across today’s Internet.
It is most commonly associated with HTTP/3.
Traditional HTTPS commonly uses:
HTTP/2 → TLS → TCP → IP
HTTP/3 changes this architecture to:
HTTP/3 → QUIC → UDP → IP
QUIC runs over UDP, but it is much more than simple UDP communication.
QUIC provides many transport functions traditionally associated with TCP, including:

  • Reliable delivery
  • Loss recovery
  • Congestion control
  • Flow control
  • Connection management
  • Multiple independent streams

It also integrates TLS 1.3 into the connection-establishment process.
This combination allows QUIC to provide faster connection setup, stream independence, connection migration, encryption by default, and improved behavior across changing network conditions.

quick com

—

What Is QUIC?

QUIC is a connection-oriented transport protocol that operates over UDP.
Although UDP itself does not provide reliable delivery, QUIC adds its own transport mechanisms above UDP.
These mechanisms include:

  • Reliable data delivery
  • Packet-loss detection
  • Retransmission
  • Congestion control
  • Connection-level flow control
  • Stream-level flow control
  • Connection migration
  • Cryptographic protection

QUIC is best known as the transport used by HTTP/3, but other protocols can also use QUIC.
Examples include:

  • HTTP/3
  • DNS over QUIC
  • WebTransport
  • CONNECT-UDP-based applications
  • Applications using QUIC DATAGRAM

Where QUIC Fits in the Protocol Stack

quic pos net

Why QUIC Uses UDP

UDP provides a simple datagram transport that allows QUIC logic to operate primarily in user space.
This gives QUIC implementations more flexibility to evolve without depending entirely on operating-system TCP behavior.
QUIC then adds the transport capabilities applications require.

—

How QUIC Establishes a Connection

One of the most important differences between QUIC and traditional TCP-based HTTPS is how the connection is established.
Traditional HTTPS commonly requires separate transport and security establishment.
QUIC integrates transport setup and TLS 1.3 much more closely.

Traditional TCP and TLS Establishment

A traditional secure connection conceptually requires:

  1. TCP connection establishment.
  2. TLS negotiation.
  3. Application data transfer.
quick tcp st

QUIC Connection Establishment

QUIC combines transport and security negotiation.
A new QUIC connection commonly exchanges Initial and Handshake packets before moving to normal protected application traffic.

quic 1st

Understanding 1-RTT

For a new connection, QUIC is designed to establish secure application communication with fewer sequential setup steps than the traditional TCP-plus-TLS model.
This can improve application startup latency, especially on higher-latency networks.

Understanding 0-RTT

A returning client may be able to send early application data using 0-RTT when session information from a previous connection is available.
0-RTT can reduce latency further.
However, early data has security considerations.

Optional Retry

QUIC can also use a Retry process to validate the client address before the server commits significant resources or sends a large response.
This can help reduce certain amplification risks.

quic retry

—

QUIC Packets, Streams and Multiplexing

QUIC communication contains different packet types and multiple logical streams.
Understanding streams is especially important because they are one of the major reasons HTTP/3 behaves differently from HTTP/2 over TCP.

QUIC Packet Types

QUIC uses long-header packets during connection establishment.
Common packet types include:

  • Initial
  • 0-RTT
  • Handshake
  • Retry

After connection establishment, normal protected communication commonly uses short-header 1-RTT packets.

quic life

What Is a QUIC Stream?

A QUIC connection can contain multiple logical streams.
Streams may be:

  • Bidirectional
  • Unidirectional

Each stream can carry its own application data.
HTTP/3 uses QUIC streams to carry requests, responses, control information, and other protocol data.

HTTP/2 Head-of-Line Behavior

HTTP/2 already provides multiplexing.
However, all HTTP/2 streams normally share one TCP byte stream.
If TCP loses required earlier data, later data may need to wait until the missing bytes are recovered.
This can affect multiple application streams using the connection.

How QUIC Improves This

QUIC provides independent transport streams.
Loss affecting one stream does not necessarily prevent available data from another independent stream from progressing.

tcp vs quic

—

Connection IDs and Connection Migration

Traditional TCP communication is closely associated with a network 5-tuple:

  • Source IP address
  • Source port
  • Destination IP address
  • Destination port
  • Protocol

If the client address changes significantly, the original TCP connection normally cannot simply continue unchanged.
QUIC introduces Connection IDs.

What Is a Connection ID?

A Connection ID, commonly called a CID, identifies a QUIC connection independently of relying only on the network 5-tuple.
This enables useful behavior when the network path changes.

Mobile Network Example

A common example is a mobile device moving between Wi-Fi and cellular connectivity.

quic conn mig

Why This Helps Mobile Applications

Connection migration can be useful for:

  • Streaming
  • Mobile APIs
  • Long downloads
  • Video communication
  • Network roaming
  • NAT rebinding

—

QUIC Flow Control, Loss Recovery and Datagrams

QUIC includes sophisticated transport-control mechanisms.
These help maintain reliability while allowing independent streams to progress.

Flow Control

QUIC provides both:

  • Connection-level flow control
  • Stream-level flow control

This prevents a sender from overwhelming the receiving endpoint.

quic stream

Loss Recovery

QUIC tracks packet delivery and acknowledgements.
It can detect packet loss and retransmit data as necessary.
QUIC acknowledgements can represent ranges of received packets.
The practical concept is:
Lost reliable QUIC data is recovered without requiring every independent application stream to stop progressing.

Congestion Control

QUIC also performs congestion control.
The exact algorithm can depend on the implementation.
QUIC should therefore not automatically be described as using one specific congestion-control algorithm.

QUIC DATAGRAM

Reliable delivery is important for many applications.
But some real-time applications prefer receiving the newest information instead of waiting for retransmission of old information.
QUIC can support an optional DATAGRAM capability for unreliable delivery.

quic and datagram

—

HTTP/3 Over QUIC

HTTP/3 uses QUIC as its transport.
HTTP concepts remain familiar.
Applications still use:

  • GET
  • POST
  • Headers
  • Requests
  • Responses
  • Status codes

The major difference is how those messages are transported.

HTTP/2 Transport

HTTP/2 Request Transport

1HTTP Request2HTTP/23TLS4TCP5IP6Server

HTTP/2 normally relies on TLS and TCP below the HTTP layer.

HTTP/3 Transport

HTTP/3 Request Transport

1HTTP Request2HTTP/33QUIC4UDP5IP6Server

HTTP/3 uses QUIC instead of TCP for transport.

QPACK

HTTP/2 uses HPACK for HTTP header compression.
HTTP/3 uses QPACK.
QPACK is designed for the independent-stream model provided by QUIC.

ALPN

HTTP/3 is negotiated using application-protocol negotiation during the QUIC TLS process.
A common HTTP/3 ALPN identifier is:
h3

Typical Ports

HTTP/3 commonly uses:
UDP 443
Traditional HTTPS commonly uses:
TCP 443
This is why servers normally keep both available.

HTTP/3 and Traditional HTTPS Deployment

1HTTP/3 Client2QUIC3UDP 4434Web Server5HTTP/2 Client6HTTP/1.1 Client7TLS8TCP 443

Production web services commonly make both UDP 443 and TCP 443 available.

—

Real-World QUIC Use Cases

QUIC is particularly useful where latency, connection changes, or multiple simultaneous data streams matter.

Web Applications and CDNs

HTTP/3 can benefit:

  • Websites
  • APIs
  • Content-delivery networks
  • Mobile websites
  • Global applications
  • Sites with many independent resources

Mobile Applications

QUIC connection migration can help applications operating across:

  • Wi-Fi
  • 4G
  • 5G
  • Changing NAT mappings
  • Roaming network paths

Streaming and Real-Time Applications

Applications may combine reliable streams and unreliable datagrams.
Possible examples include:

  • Real-time communication
  • Gaming
  • Interactive applications
  • Telemetry
  • Low-latency metadata

DNS over QUIC

DNS over QUIC provides encrypted DNS transport using QUIC.

DNS over QUIC

1DNS Client2QUIC3UDP4DNS Resolver5DNS Response

DNS over QUIC uses QUIC as a secure transport for DNS communication.

CONNECT-UDP and MASQUE

HTTP-based proxy mechanisms can also transport UDP communication.
A simplified architecture is:

CONNECT-UDP Proxy Architecture

1Client2HTTP Connection3CONNECT-UDP4Proxy5UDP Traffic6Target UDP Service

CONNECT-UDP can provide UDP proxying through HTTP infrastructure.

—

QUIC Advantages and Limitations

QUIC provides important improvements, but engineers should understand both the benefits and operational challenges.

Major Advantages

Capability Practical Benefit
TLS 1.3 integration Secure communication is built into QUIC
Reduced connection setup Faster application startup in suitable conditions
0-RTT option Early data for suitable resumed connections
Independent streams Reduces cross-stream transport blocking
Connection IDs Supports connection migration
User-space implementation Easier protocol evolution
QUIC DATAGRAM Optional unreliable transport
HTTP/3 Modern HTTP transport over QUIC

Operational Challenges

Area Consideration
UDP Some networks block or limit UDP
Visibility Much transport information is encrypted
Firewall UDP 443 must be allowed
Load Balancer QUIC support must be verified
CPU Encryption and transport processing consume resources
MTU Path-MTU behavior is important
0-RTT Replay risk must be considered
Monitoring TCP-only monitoring is insufficient
Migration Network devices must handle path changes correctly

—

Testing QUIC and HTTP/3

Do not assume that a website is using HTTP/3 simply because it loads successfully.
Verify the protocol.

Check curl Capabilities

Run:

CommandLINUX
curl -V

Look for HTTP/3 capability.

Force HTTP/3

If curl supports HTTP/3:

CommandLINUX
curl --http3-only -I https://example.com/

This test is useful because it should fail if HTTP/3 cannot be established rather than silently using HTTP/2.

Prefer HTTP/3 With Fallback

CommandLINUX
curl --http3 -I https://example.com/

Browser Testing

Open the website in a modern browser.
Then:

  1. Open Developer Tools.
  2. Select Network.
  3. Enable the Protocol column.
  4. Reload the page.
  5. Inspect the request protocol.

Possible values include:
h3
h2
http/1.1

Capture QUIC Traffic

On Linux:

CommandLINUX
sudo tcpdump -i any udp port 443 -w quic-capture.pcap

Open the capture using Wireshark.
Useful display filters include:

CommandWIRESHARK
quic

For HTTP/3 dissection where available:

CommandWIRESHARK
http3
http3 gold val work

—

Practical QUIC Learning Examples

The following exercises make QUIC behavior easier to understand.

Example 1 — HTTP/3 Works Until UDP Is Blocked

Begin with a test site supporting:

  • HTTP/3 over UDP 443
  • HTTP/2 over TCP 443

Force HTTP/3:

CommandLINUX
curl --http3-only -I https://example.com/

In a controlled lab, temporarily block UDP 443.
Run the HTTP/3-only test again.
Then run a normal HTTPS request.

http3 falback

Example 2 — Observe Multiple HTTP/3 Requests

Open a page containing:

  • Images
  • JavaScript
  • CSS
  • API requests

Use the browser Network panel.
Enable the Protocol column.
Observe which requests use h3.

Example 3 — Test Connection Migration

Use a mobile device on Wi-Fi.
Start a long transfer using an application known to support QUIC.
Then disable Wi-Fi and allow the device to switch to cellular connectivity.
Observe whether the transfer continues.

quic mobile

—

Troubleshooting QUIC and HTTP/3

Troubleshoot QUIC systematically.
Do not begin by assuming the web server or application is broken.

HTTP/2 Works but HTTP/3 Does Not

HTTP/2 and HTTP/3 use different transport protocols.
HTTP/2 commonly uses TCP 443.
HTTP/3 commonly uses UDP 443.
Therefore, the complete UDP path must be checked.

http3 tro work

Check:

  • Client HTTP/3 support
  • UDP 443 firewall policy
  • Enterprise firewall
  • Cloud security group
  • Network ACL
  • NAT
  • Load balancer
  • Server firewall
  • QUIC server listener

curl Does Not Support HTTP/3

Check:

CommandLINUX
curl -V

If HTTP/3 capability is unavailable, use:

  • An HTTP/3-capable curl build
  • A compatible browser
  • A dedicated QUIC test client

High CPU Usage

Investigate:

  • Connection rate
  • TLS handshakes
  • Packet rate
  • Encryption workload
  • QUIC implementation
  • Logging
  • NIC offload support
  • GSO/GRO
  • Application processing

Works on Mobile but Not Corporate Network

Compare the traffic path.
A corporate environment may:

  • Block UDP 443
  • Rate-limit UDP
  • Force proxy usage
  • Restrict unknown QUIC traffic

The same server may work correctly from a mobile connection.

Unexpected Disconnects During Network Changes

Investigate:

  • Idle timeout
  • NAT timeout
  • Connection ID handling
  • Path validation
  • Load-balancer behavior
  • Firewall state tracking

Wireshark Shows Limited Application Information

Much of QUIC is encrypted.
This is expected.
For deeper lab analysis, consider:

  • Server logs
  • Application logs
  • qlog
  • TLS key logging where supported
  • Wireshark with appropriate keys

MTU and Datagram Problems

QUIC relies on UDP datagrams.
Path-MTU behavior therefore matters.
Possible symptoms include:

  • Small transfers working
  • Large transfers stalling
  • Intermittent failure
  • Problems only through VPN
  • Problems on specific networks

Investigate:

  • Interface MTU
  • VPN overhead
  • Tunnel overhead
  • IPv4 vs IPv6
  • ICMP handling
  • Firewall behavior
  • Load balancer
  • QUIC path-MTU behavior
QUIC and HTTP/3 Troubleshooting Workflow

1Verify Client2Check UDP 4433Verify Server Listener4Check Firewall5Check Load Balancer or NAT6Capture Traffic7Review QUIC Logs8Check MTU9Check Resources10Verify Application11Retest

QUIC problems should be isolated layer by layer instead of immediately blaming the application.

—

QUIC Deployment Best Practices

QUIC should normally be introduced alongside existing HTTPS rather than replacing it immediately.

Keep TCP and UDP 443 Available

For HTTP/3:
UDP 443
For HTTP/2 and HTTP/1.1:
TCP 443
This provides fallback when UDP is unavailable.

Monitor Protocol Adoption

Track:

Metric Why It Matters
HTTP Version Shows h3 vs h2 vs http/1.1 usage
QUIC Success Shows successful connection establishment
QUIC Failure Identifies UDP or handshake issues
RTT Measures network latency
Packet Loss Shows network quality
CPU Measures QUIC and crypto workload
UDP Drops Detects local or network drops
Fallback Rate Shows how often clients fall back
MTU Issues Identifies path problems
Migration Useful for mobile applications

Roll Out Gradually

For larger environments:

  1. Enable HTTP/3 for a controlled group.
  2. Measure success and failure rates.
  3. Compare latency.
  4. Compare CPU usage.
  5. Check UDP packet loss.
  6. Review fallback behavior.
  7. Expand deployment after validation.

Treat 0-RTT Carefully

Use early data only after reviewing:

  • Application behavior
  • Replay risk
  • Authentication
  • State-changing operations
  • Backend behavior

—

Summary

QUIC is a modern secure transport protocol operating over UDP.
Its most widely known application is HTTP/3.
The basic architectural change is:
HTTP/2 → TLS → TCP
compared with:
HTTP/3 → QUIC → UDP
QUIC provides:

  • Integrated TLS 1.3 security
  • Faster connection-establishment capabilities
  • Reliable data delivery
  • Loss recovery
  • Congestion control
  • Flow control
  • Independent streams
  • Reduced cross-stream head-of-line blocking
  • Connection migration
  • Connection IDs
  • Optional QUIC DATAGRAM support

QUIC is useful for:

  • HTTP/3
  • Web applications
  • CDNs
  • Mobile applications
  • APIs
  • Real-time applications
  • DNS over QUIC
  • Modern proxy and tunneling architectures

However, successful deployment also requires attention to:

  • UDP 443
  • Firewall policy
  • Load balancer support
  • CPU
  • Encryption
  • MTU
  • Monitoring
  • 0-RTT security
  • Network-path behavior

—

Glossary

Term Meaning
QUIC Secure connection-oriented transport protocol implemented over UDP
CID Connection ID used to identify a QUIC connection independently of only the network 5-tuple
HTTP/3 HTTP transported over QUIC
0-RTT Early application data during connection resumption
1-RTT Normal fully protected QUIC application communication
QPACK HTTP/3 header-compression mechanism
QUIC Stream Reliable logical stream inside a QUIC connection
QUIC DATAGRAM Optional unreliable datagram capability
DoQ DNS over QUIC
ALPN Application-Layer Protocol Negotiation
MASQUE HTTP-based proxy and tunneling technologies
CONNECT-UDP Mechanism for proxying UDP traffic through HTTP
qlog Logging format commonly used for QUIC observability

—

SanchitGurukul Static Resources

Related SanchitGurukul Article

Official External References

Disclaimer: This article may contain information that was accurate at the time of writing but could be outdated now. Please verify details with the latest vendor advisories or contact us at admin@sanchitgurukul.com.

Your feedback matters

Was this post helpful?

0 reactions

SanchitGurukul — Technology • Education • Innovation

Discussion

0 approved comments

No approved comments yet. You can start the discussion below.

Leave a Comment

No login is required. Name and email are used for moderation/security. Your email is never displayed publicly. All comments require administrator approval.

This field is not used to determine whether a comment is safe.

Plain text only. File uploads, scripts, executable code, abuse and spam are not accepted.


Discover more from SanchitGurukul

Subscribe to get the latest posts sent to your email.

Share this article

Help others find this guide.

Namaste! I’m SG Saarthi 👋Need help learning or finding something?

Discover more from SanchitGurukul

Subscribe now to keep reading and get access to the full archive.

Continue reading