镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Quic should support OpenSSL 3.x #81801

Closed
Closed

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.

Activity

  1. added
    os-linuxLinux OS (any supported distro)
    tracking-external-issueThe issue is caused by external problem (e.g. OS) - nothing we can do to fix it directly
    on Feb 8, 2023
  2. added this to the 8.0.0 milestone on Feb 8, 2023
  3. ManickaP commented on Mar 10, 2023

    @ManickaP
    Member

    OpenSSL 3 stress test run results:

    HttpStress Run Final Report
    
    [3/10/2023 12:46:33PM] Total: 1,326,928 Runtime: 00:32:41
             0: GET                       Success: 82,594   Canceled: 5,864 Fail: 0
             1: GET Partial               Success: 82,556   Canceled: 5,903 Fail: 0
             2: GET Headers               Success: 82,396   Canceled: 6,064 Fail: 0
             3: GET Parameters            Success: 82,534   Canceled: 5,927 Fail: 0
             4: GET Aborted               Success: 82,525   Canceled: 5,937 Fail: 0
             5: POST                      Success: 82,528   Canceled: 5,935 Fail: 0
             6: POST Multipart Data       Success: 82,566   Canceled: 5,898 Fail: 0
             7: POST Duplex               Success: 82,556   Canceled: 5,909 Fail: 0
             8: POST Duplex Slow          Success: 82,621   Canceled: 5,844 Fail: 0
             9: POST Duplex Dispose       Success: 82,693   Canceled: 5,768 Fail: 0
            10: POST ExpectContinue       Success: 82,527   Canceled: 5,935 Fail: 0
            11: HEAD                      Success: 82,504   Canceled: 5,959 Fail: 0
            12: PUT                       Success: 82,684   Canceled: 5,780 Fail: 0
            13: PUT Slow                  Success: 79,764   Canceled: 8,701 Fail: 0
            14: GET Slow                  Success: 82,509   Canceled: 5,947 Fail: 0
                TOTAL                     Success: 1,235,557        Canceled: 91,371        Fail: 0
    
    Latency(ms) : n=1326928, p50=1.83, p75=2.53, p99=329.39, p999=365.57, max=1005.92
    
  4. CarnaViire commented on May 19, 2023

    @CarnaViire
    Member

    All points are done and verified, beside perf which will be measured separately (as it's a separate part from "support") -- filed #86516.

    Closing this as completed.

  5. ghost locked as resolved and limited conversation to collaborators on Jun 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

area-System.Net.Quicos-linuxLinux OS (any supported distro)os-macosmacOS 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