Port: 15454 | Image: numa:bench
All queries resolve from server cache — measures peak throughput.
| Provider | QPS | Avg (ms) | Lost % | Total Qrys | Base Mem (MB) |
|---|---|---|---|---|---|
| Quad9 | 951.66 | 98.09 | 0.13 | 28679 | 16.50 |
| Cloudflare | 1004.34 | 92.58 | 0.13 | 30262 | 18.65 |
| 958.93 | 95.06 | 0.19 | 28913 | 16.61 | |
| OpenDNS | 996.54 | 93.88 | 0.20 | 30033 | 14.95 |
| Quad9 | 916.65 | 96.96 | 0.26 | 27652 | 15.08 |
| Cloudflare | 977.00 | 95.17 | 0.14 | 29441 | 15.70 |
| 906.56 | 96.36 | 0.31 | 27360 | 15.80 | |
| OpenDNS | 960.24 | 97.17 | 0.14 | 28937 | 15.91 |
Every query requires full upstream resolution — measures worst-case performance. In common-denominator mode some servers report near-zero QPS when plain-DNS upstream forwarding fails.
| Provider | QPS | Avg (ms) | Lost % | Total Qrys | Base Mem (MB) |
|---|---|---|---|---|---|
| Quad9 | 197.47 | 112.45 | 0.26 | 5981 | 17.67 |
| Cloudflare | 199.45 | 102.62 | 0.11 | 6000 | 19.63 |
| 197.85 | 102.91 | 0.23 | 5960 | 17.57 | |
| OpenDNS | 199.38 | 108.17 | 0.13 | 6000 | 16.78 |
| Quad9 | 199.35 | 110.78 | 0.13 | 6000 | 15.15 |
| Cloudflare | 199.55 | 100.57 | 0.03 | 6000 | 16.50 |
| 199.51 | 99.94 | 0.06 | 6000 | 16.63 | |
| OpenDNS | 199.47 | 105.49 | 0.09 | 6000 | 16.86 |
90% cached + 10% unique domains — simulates real-world mixed workload.
| Provider | QPS | Avg (ms) | Lost % | Total Qrys | Base Mem (MB) |
|---|---|---|---|---|---|
| Quad9 | 946.41 | 95.95 | 0.20 | 28533 | 16.97 |
| Cloudflare | 954.24 | 94.05 | 0.22 | 28773 | 18.53 |
| 971.45 | 94.59 | 0.19 | 29289 | 16.66 | |
| OpenDNS | 909.77 | 97.41 | 0.25 | 27444 | 16.92 |
| Quad9 | 951.02 | 98.67 | 0.12 | 28659 | 16.08 |
| Cloudflare | 913.28 | 98.28 | 0.23 | 27547 | 15.58 |
| 953.22 | 96.13 | 0.19 | 28735 | 16.01 | |
| OpenDNS | 993.95 | 94.19 | 0.14 | 29956 | 16.55 |
Domains on the sinkhole blocklist — measures filtering throughput.
| Provider | QPS | Avg (ms) | Lost % | Total Qrys | Base Mem (MB) |
|---|---|---|---|---|---|
| Quad9 | 919.16 | 98.80 | 0.20 | 27718 | 17.01 |
| Cloudflare | 930.97 | 96.00 | 0.23 | 28075 | 18.48 |
| 915.50 | 95.27 | 0.29 | 27624 | 16.49 | |
| OpenDNS | 959.27 | 92.71 | 0.26 | 28937 | 16.72 |
| Quad9 | 932.12 | 97.70 | 0.19 | 28099 | 15.59 |
| Cloudflare | 924.91 | 94.29 | 0.31 | 27915 | 15.88 |
| 934.38 | 93.43 | 0.27 | 28192 | 15.99 | |
| OpenDNS | 938.13 | 97.79 | 0.18 | 28281 | 15.89 |
This server uses DoT for best-of-breed mode. Comparisons against servers using different protocols (DoH, DoT, plain) partly reflect protocol overhead. The common-denominator mode forces all servers to plain UDP 53 to isolate server-side performance.
Before each scenario, a 5-second dnsperf warmup pass is run
to stabilize connections and fill the TCP congestion window. For
cache-hit and mixed scenarios, the server cache is also pre-warmed.
The measurement window (-l 30) begins only after both
warmup phases complete.
dnsperf -l 30 -c 10 -q 100 -Q 5000 -S 1