Skip to content

Quic should support OpenSSL 3.x #81801

@wfurt

Description

@wfurt

Depends on microsoft/msquic#2039

MsQuic work:

Perf/Stress/Load tests known issues:

Functional tests known issues:

Publishing of the changes:

  • We need packages posted to appropriate feeds
  • Make sure that the published package is usable and works with .NET runtime
    • consume it in some of our docker images
      • Manually verified on Ubuntu 22.04 Helix & Docker images
      • Ubuntu 22.04 x64 (Helix) & Arm64 (Docker) successfully running in CI on the official 2.2.1 msquic package with OpenSSL 3 support

PRs:

Runtime

Functional

  • get some docker images with libmsquic from main that contains OpenSSL 3 -- @wfurt
  • find the intersection between distributions with OpenSSL 3 (from list bellow) and what we use in our infrastructure, list them, and use them for the item above -- @wfurt
    • the end goal is to use libmsquic for OpenSSL 3 on all platforms / distributions in our CI that ship with OpenSSL 3 as default
    • We only test Ubuntu 22.04 (x64 & arm64). In general, runtime seems to be lacking coverage for new OS versions.

Currently there are following Linux distributions we support that use OpenSSL 3 by default:

  • Alpine 3.17+
  • (to be released) Debian 12+
  • Fedora 36+
  • RHEL 9+ (CentOS Stream 9+ etc)
  • Ubuntu 22.04+

With exception of Ubuntu (and unreleased Debian) the distributions offer a compatibility OpenSSL 1.1 package.
We should strategically decide what combinations to test. (perhaps also use extra-platforms pipeline for occasional spot-check)

Stress

We should perhaps have at least one test runs with OpenSSL 3 since that is significantly different variant.

Perf

  • run perf baseline locally, confirm it's somewhat stable and run it with libmsquic main with OpenSSL 3 -- @CarnaViire

Since the perf issues mentioned above, we should perhaps have separate benchmark for Linux with OpenSSL 3.

Metadata

Metadata

Labels

area-System.Net.Quicos-linuxLinux OS (any supported distro)os-mac-os-xmacOS aka OSXtracking-external-issueThe issue is caused by external problem (e.g. OS) - nothing we can do to fix it directly

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions