Skip to content

[QUIC] Implement MsQuicConfiguration cache #98354

@rzikm

Description

@rzikm

On linux, creating the MsQuicConfiguration object is expensive because we need to export the X509Certificate in PKCS12 format. Doing this for each connection separately is a waste of resources. MsQuicConfiguration objects are designed to be shared between connections. We should look into implementing a configuration cache similar to what we have for SslStream on Windows.

Preliminary benchmarks suggest this should significantly reduce handshake time and thus time-to-first-byte and related metrics in HTTP/3.

Implementing a cache for the MsQuicConfiguration objects will allow us to also later implement TLS Session resumption, allowing even faster handshake.

Metadata

Metadata

Assignees

Labels

area-System.Net.Quicin-prThere is an active PR which will close this issue when it is mergedtenet-performancePerformance related issue

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions