On 6/13/2025 11:21 AM, Watson Ladd wrote:
I'm a bit surprised at the OpenSSL 3.0.15 usage. OpenSSL 3.0 performance is pretty atrocious, particularly in multicore applications. They fixed some of it in 3.5
The TLS handshake requires much more CPU than the average message processing -- it is easy to observe milliseconds vs. microseconds, thousands of handshakes per second versus millions of packets. That explains the general shape of the results. On the other hand, these things could be optimized. Use better implementations, as Watson suggests. Make sure that you are using x25519 instead of secp256r1 or (gasp) RSA. Series of local optimizations often yield a factor 10 in performance.
Of course, things would be better if the handshake could amortized over many UDP queries, a mix of keeping the connection up longer and using session resume. That could easily get back another order of magnitude in performance, maybe reach parity. But these gains depend on client behavior -- and that makes me somewhat pessimistic. Statistics show that 90% of queries to the root are wasteful -- queries for non-existing TLDs, repeated queries for which results could have been cached. Do we really believe that clients that don't bother caching results would try to help the root servers and maintain long duration connections?
-- Christian Huitema _______________________________________________ dns-privacy mailing list -- [email protected] To unsubscribe send an email to [email protected]
