Implementation Guidelines
Production
Tuned
Engine
Must use the framework native QUIC/HTTP3 support with default configuration.
May tune QUIC parameters, congestion control, and UDP buffer sizes.
No specific rules. Ranked separately from frameworks.
The HTTP/3 Baseline profile tests raw throughput over QUIC, the UDP-based transport protocol that powers HTTP/3.
Connections: 64
How it works
- The load generator (h2load-h3) connects to the server over HTTP/3 (QUIC) on port 8443
- Sends
GET /baseline2?a=1&b=1over 64 connections, each multiplexing 64 streams, across 64 worker threads - The server parses query parameters and returns the sum
What it measures
- QUIC transport performance - UDP-based connection handling
- HTTP/3 framing overhead - compared to HTTP/1.1 and HTTP/2
- TLS 1.3 integration - QUIC mandates encryption
- Framework QUIC implementation quality - varies significantly across frameworks
Expected request/response
GET /baseline2?a=1&b=1 HTTP/3HTTP/3 200 OK
Content-Type: text/plain
2Parameters
| Parameter | Value |
|---|---|
| Endpoint | GET /baseline2?a=1&b=1 |
| Connections | 64 |
| Streams per connection | 64 (-m 64) |
| Threads | 64 (H3THREADS) |
| Duration | 5s |
| Runs | 3 (best taken) |
| Load generator | h2load-h3 (--alpn-list=h3) |
| Port | 8443 (TLS + QUIC) |
Notes
- HTTP/3 support is not universal — only frameworks with native QUIC support participate
- HTTP/3 throughput is typically 4–6× lower than HTTP/2 on the same framework. This reflects the inherent CPU cost of QUIC (per-packet AEAD, no kernel TLS offload, userspace packet processing) — see the h2load-h3 load generator docs for details