Skip to content

backport rfc 9149 ticket_request extension to rel-0.23 - #3132

Merged
djc merged 2 commits into
rustls:rel-0.23from
hz2:ft/rfc9149-backport
Jul 10, 2026
Merged

djc merged 2 commits into
rustls:rel-0.23from
hz2:ft/rfc9149-backport

Conversation

@hz2

@hz2 hz2 commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

summary

backport of #3126 (merged to main) adapted for the rel-0.23 API surface.

the main difference from the main implementation: instead of replacing
send_tls13_tickets: usize with Tls13Tickets { default, max } (breaking),
this adds a new max_tls13_tickets: usize field that defaults to 0 (disabled).
when non-zero and a client sends the ticket_request extension, the server
sends min(requested, max_tls13_tickets) tickets.

no breaking changes to the public API.

what's here

  • ExtensionType::TicketRequest (0x003a)
  • ClientTicketRequest / ServerTicketRequestHint wire format types
  • ClientConfig::send_ticket_request: Option<TicketRequest> (client opt-in)
  • ServerConfig::max_tls13_tickets: usize (server opt-in, 0 = disabled)
  • server honors the request when max_tls13_tickets > 0, echoes expected_count in EncryptedExtensions

@codecov

codecov Bot commented Jul 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 95.32%. Comparing base (4cce222) to head (6fc1bc3).

Additional details and impacted files
@@            Coverage Diff            @@
##           rel-0.23    #3132   +/-   ##
=========================================
  Coverage     95.31%   95.32%           
=========================================
  Files            97       97           
  Lines         21942    21979   +37     
=========================================
+ Hits          20914    20951   +37     
  Misses         1028     1028           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@hz2
hz2 force-pushed the ft/rfc9149-backport branch 2 times, most recently from bcea9f6 to 53cc395 Compare July 9, 2026 18:51
@djc

djc commented Jul 10, 2026

Copy link
Copy Markdown
Member

Can you rebase this on top of

?

hz2 added 2 commits July 10, 2026 07:02
Add a `max_tls13_tickets` field to `ServerConfig` that caps the number
of tickets the server will send in response to a client ticket_request
extension. Defaults to 0 (disabled), preserving current behavior.

This is the backwards-compatible equivalent of the `Tls13Tickets`
struct on `main`.
Allow a TLS 1.3 client to request a specific number of session tickets
via the ticket_request extension, and let the server honor that request
up to its configured max_tls13_tickets.

The client sends new_session_count/resumption_count in its ClientHello
(configured via ClientConfig::send_ticket_request); the server replies
with the expected count in EncryptedExtensions and sends
min(requested, max_tls13_tickets) NewSessionTicket messages.

Backport of the feature from main, adapted for the rel-0.23 API surface.
@hz2
hz2 force-pushed the ft/rfc9149-backport branch from 53cc395 to 6fc1bc3 Compare July 10, 2026 14:03
@djc
djc added this pull request to the merge queue Jul 10, 2026
@rustls-benchmarking

Copy link
Copy Markdown

Benchmark results

Instruction counts

Significant differences

There are no significant instruction count differences

Other differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_server 10943222 10977732 34510 (0.32%) 1.12%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_client 8777676 8800922 23246 (0.26%) 1.07%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes_client 42080259 42163497 83238 (0.20%) 0.30%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes_server 10938401 10955068 16667 (0.15%) 1.10%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes_client 8820021 8809578 -10443 (-0.12%) 0.72%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes_server 38230244 38270743 40499 (0.11%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha_client 41793669 41834990 41321 (0.10%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha_client 42080968 42043099 -37869 (-0.09%) 0.29%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes_client 41913641 41876823 -36818 (-0.09%) 0.26%
handshake_tickets_1.3_no_crypto_server 1784423 1785923 1500 (0.08%) 0.20%
handshake_session_id_1.3_no_crypto_server 1814540 1816040 1500 (0.08%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes_client 41905461 41871954 -33507 (-0.08%) 0.27%
handshake_session_id_1.3_no_crypto_client 1931889 1933365 1476 (0.08%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha_client 42044782 42075840 31058 (0.07%) 0.39%
handshake_tickets_1.3_no_crypto_client 1950439 1951849 1410 (0.07%) 0.20%
handshake_session_id_1.2_no_crypto_server 875211 875841 630 (0.07%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_aes_client 3289292 3291632 2340 (0.07%) 0.25%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha_client 41790426 41818550 28124 (0.07%) 0.27%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha_client 42045660 42073692 28032 (0.07%) 0.41%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha_client 41819641 41847420 27779 (0.07%) 0.26%
handshake_tickets_1.2_no_crypto_server 1010681 1011311 630 (0.06%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha_server 36779959 36801002 21043 (0.06%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_client 3579232 3581168 1936 (0.05%) 0.29%
handshake_no_resume_1.3_no_crypto_server 86990 87037 47 (0.05%) 0.20%
handshake_tickets_1.2_no_crypto_client 1074946 1075501 555 (0.05%) 0.20%
handshake_session_id_1.2_no_crypto_client 1002300 1002814 514 (0.05%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes_client 42107239 42086747 -20492 (-0.05%) 0.22%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha_server 38190539 38172449 -18090 (-0.05%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes_server 36902448 36885055 -17393 (-0.05%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha_server 36787371 36802425 15054 (0.04%) 0.20%
handshake_no_resume_1.3_no_crypto_client 99558 99598 40 (0.04%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha_server 36800362 36815092 14730 (0.04%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha_server 38178004 38192823 14819 (0.04%) 0.22%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha_server 38178277 38193014 14737 (0.04%) 0.23%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes_server 36896898 36884009 -12889 (-0.03%) 0.20%
handshake_no_resume_1.2_no_crypto_server 65012 65033 21 (0.03%) 0.20%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes_server 10483190 10486179 2989 (0.03%) 1.52%
handshake_session_id_aws_lc_rs_1.3_rsa_aes_client 41914095 41902269 -11826 (-0.03%) 0.33%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes_server 38243028 38233640 -9388 (-0.02%) 0.20%
handshake_no_resume_1.2_no_crypto_client 86191 86212 21 (0.02%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_server 1390895 1391204 309 (0.02%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_aes_client 42093278 42083929 -9349 (-0.02%) 0.20%
handshake_session_id_aws_lc_rs_1.2_rsa_aes_server 3654115 3654745 630 (0.02%) 0.37%
handshake_session_id_ring_1.2_rsa_aes_server 3987860 3988490 630 (0.02%) 0.20%
handshake_session_id_aws_lc_rs_1.2_rsa_aes_client 3752064 3752640 576 (0.02%) 0.20%
handshake_tickets_ring_1.2_rsa_aes_server 4414022 4414652 630 (0.01%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_aes_server 36894722 36889627 -5095 (-0.01%) 0.20%
handshake_tickets_aws_lc_rs_1.2_rsa_aes_server 4788800 4789430 630 (0.01%) 0.23%
handshake_session_id_ring_1.2_rsa_aes_client 4085018 4085524 506 (0.01%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes_server 2297529 2297807 278 (0.01%) 0.20%
handshake_tickets_aws_lc_rs_1.2_rsa_aes_client 4069267 4069730 463 (0.01%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes_client 2409476 2409750 274 (0.01%) 0.20%
handshake_tickets_ring_1.2_rsa_aes_client 4324619 4325082 463 (0.01%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_aes_server 38230518 38227138 -3380 (-0.01%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_client 2416216 2416026 -190 (-0.01%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes_client 3579058 3579288 230 (0.01%) 0.50%
handshake_no_resume_ring_1.3_ecdsap256_chacha_client 3292992 3292785 -207 (-0.01%) 0.27%
handshake_tickets_ring_1.3_ecdsap256_chacha_client 30315842 30317318 1476 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_aes_client 30385133 30386609 1476 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_chacha_server 31256015 31257515 1500 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_chacha_server 31258840 31260340 1500 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_chacha_server 31258872 31260372 1500 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_aes_server 31375985 31377485 1500 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_aes_server 31378810 31380310 1500 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_aes_server 31378842 31380342 1500 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_chacha_server 31714654 31716154 1500 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_chacha_server 31716887 31718387 1500 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_chacha_server 31716934 31718434 1500 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_aes_server 31815034 31816534 1500 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_aes_server 31817267 31818767 1500 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_aes_server 31817404 31818904 1500 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_chacha_client 30067854 30069264 1410 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_aes_client 30157164 30158574 1410 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_chacha_client 30061012 30062414 1402 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_chacha_client 30312564 30313974 1410 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_chacha_client 30319923 30321333 1410 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_aes_client 30150322 30151724 1402 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_aes_client 30381834 30383244 1410 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_aes_client 30389214 30390624 1410 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_chacha_server 1275877 1275936 59 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_chacha_client 30063709 30065010 1301 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_aes_client 30153019 30154320 1301 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_aes_server 1274651 1274704 53 (0.00%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_server 2300679 2300772 93 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_aes_client 2319062 2319106 44 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_chacha_client 2324768 2324812 44 (0.00%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes_server 1389270 1389244 -26 (-0.00%) 0.20%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes_client 1714110 1714139 29 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes_server 46113169 46113808 639 (0.00%) 0.20%
handshake_no_resume_ring_1.2_rsa_aes_client 2228194 2228219 25 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_aes_server 7201564 7201616 52 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_chacha_server 7203577 7203615 38 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_aes_server 11077301 11077348 47 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_chacha_server 11083112 11083159 47 (0.00%) 0.20%
handshake_no_resume_ring_1.2_rsa_aes_server 10956843 10956864 21 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_aes_client 34724948 34724997 49 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_chacha_client 34726718 34726750 32 (0.00%) 0.20%
transfer_no_resume_ring_1.2_rsa_aes_client 57667904 57667895 -9 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes_client 57928852 57928859 7 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes_client 57940150 57940143 -7 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_chacha_client 92314661 92314671 10 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes_server 46163075 46163080 5 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_server 80327395 80327402 7 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_aes_server 45969275 45969279 4 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_aes_client 57770666 57770671 5 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_client 92390364 92390371 7 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes_server 46147565 46147562 -3 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes_server 46150198 46150195 -3 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha_client 92399669 92399663 -6 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_chacha_client 92324134 92324129 -5 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes_client 57864891 57864888 -3 (-0.00%) 0.20%
transfer_no_resume_1.3_no_crypto_client 117044713 117044719 6 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_chacha_server 80215030 80215034 4 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha_server 80330037 80330033 -4 (-0.00%) 0.20%
transfer_no_resume_1.2_no_crypto_server 104909927 104909932 5 (0.00%) 0.20%
transfer_no_resume_1.3_no_crypto_server 104926129 104926125 -4 (-0.00%) 0.20%
transfer_no_resume_ring_1.2_rsa_aes_server 45865007 45865006 -1 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_aes_server 45976177 45976178 1 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes_client 57930855 57930856 1 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_chacha_server 80220024 80220023 -1 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_server 80340994 80340993 -1 (-0.00%) 0.20%
transfer_no_resume_1.2_no_crypto_client 117009580 117009581 1 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_chacha_server 80211832 80211832 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_client 92388371 92388371 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_chacha_client 92312672 92312672 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_aes_client 57780128 57780128 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_aes_server 45967983 45967983 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_aes_client 57768665 57768665 0 (0.00%) 0.20%

Wall-time

Significant differences

There are no significant wall-time differences

Other differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_session_id_1.2_no_crypto 285.70 µs 278.07 µs -7.64 µs (-2.67%) 4.57%
handshake_tickets_1.2_no_crypto 308.56 µs 300.75 µs -7.81 µs (-2.53%) 4.70%
handshake_no_resume_1.3_no_crypto 54.18 µs 52.94 µs -1.24 µs (-2.29%) 10.51%
handshake_no_resume_1.2_no_crypto 48.03 µs 47.08 µs -0.95 µs (-1.97%) 10.47%
handshake_session_id_1.3_no_crypto 536.65 µs 528.39 µs -8.25 µs (-1.54%) 5.52%
handshake_tickets_1.3_no_crypto 526.56 µs 520.84 µs -5.72 µs (-1.09%) 5.74%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes 1.15 ms 1.16 ms 0.01 ms (0.93%) 1.46%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes 5.15 ms 5.11 ms -0.04 ms (-0.71%) 5.36%
transfer_no_resume_1.2_no_crypto 11.84 ms 11.76 ms -0.08 ms (-0.71%) 2.11%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes 4.46 ms 4.43 ms -0.03 ms (-0.69%) 6.56%
transfer_no_resume_ring_1.3_ecdsap256_aes 5.31 ms 5.28 ms -0.03 ms (-0.65%) 4.20%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes 1.05 ms 1.05 ms 0.01 ms (0.63%) 1.50%
transfer_no_resume_ring_1.3_rsa_aes 5.79 ms 5.76 ms -0.03 ms (-0.52%) 4.12%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes 6.19 ms 6.16 ms -0.03 ms (-0.52%) 1.35%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes 4.99 ms 4.97 ms -0.03 ms (-0.51%) 4.78%
transfer_no_resume_ring_1.2_rsa_aes 5.72 ms 5.70 ms -0.03 ms (-0.46%) 4.46%
handshake_tickets_ring_1.2_rsa_aes 1.46 ms 1.46 ms -0.01 ms (-0.45%) 2.23%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha 1.14 ms 1.15 ms 0.01 ms (0.44%) 1.28%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes 7.05 ms 7.02 ms -0.03 ms (-0.44%) 1.22%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes 6.87 ms 6.84 ms -0.03 ms (-0.44%) 1.41%
handshake_session_id_ring_1.3_ecdsap256_chacha 5.23 ms 5.21 ms -0.02 ms (-0.44%) 1.31%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes 6.36 ms 6.33 ms -0.03 ms (-0.43%) 1.64%
handshake_tickets_ring_1.3_ecdsap256_aes 5.31 ms 5.29 ms -0.02 ms (-0.41%) 1.32%
handshake_tickets_ring_1.3_ecdsap256_chacha 5.29 ms 5.27 ms -0.02 ms (-0.41%) 1.54%
handshake_session_id_ring_1.3_ecdsap256_aes 5.25 ms 5.23 ms -0.02 ms (-0.40%) 1.42%
handshake_session_id_ring_1.3_rsa_chacha 5.72 ms 5.69 ms -0.02 ms (-0.40%) 1.32%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha 7.04 ms 7.01 ms -0.03 ms (-0.38%) 1.21%
transfer_no_resume_ring_1.3_ecdsap384_aes 8.41 ms 8.37 ms -0.03 ms (-0.38%) 2.72%
handshake_tickets_ring_1.3_rsa_aes 5.80 ms 5.78 ms -0.02 ms (-0.35%) 1.22%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes 5.12 ms 5.10 ms -0.02 ms (-0.35%) 5.26%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha 13.63 ms 13.58 ms -0.05 ms (-0.35%) 2.16%
handshake_tickets_ring_1.3_rsa_chacha 5.78 ms 5.76 ms -0.02 ms (-0.35%) 1.57%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes 481.59 µs 480.00 µs -1.60 µs (-0.33%) 2.84%
handshake_no_resume_ring_1.3_rsa_aes 913.67 µs 916.68 µs 3.01 µs (0.33%) 1.55%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha 6.34 ms 6.32 ms -0.02 ms (-0.33%) 1.27%
transfer_no_resume_ring_1.3_ecdsap256_chacha 12.86 ms 12.82 ms -0.04 ms (-0.32%) 2.20%
handshake_session_id_ring_1.3_rsa_aes 5.74 ms 5.73 ms -0.02 ms (-0.32%) 1.46%
transfer_no_resume_ring_1.3_rsa_chacha 13.34 ms 13.30 ms -0.04 ms (-0.32%) 2.25%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha 6.16 ms 6.14 ms -0.02 ms (-0.31%) 1.56%
handshake_session_id_ring_1.3_ecdsap384_chacha 8.32 ms 8.30 ms -0.02 ms (-0.28%) 1.00%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha 12.93 ms 12.89 ms -0.04 ms (-0.28%) 2.22%
handshake_no_resume_ring_1.3_rsa_chacha 914.94 µs 917.36 µs 2.42 µs (0.26%) 1.49%
handshake_tickets_ring_1.3_ecdsap384_aes 8.40 ms 8.38 ms -0.02 ms (-0.25%) 1.14%
handshake_no_resume_ring_1.2_rsa_aes 910.73 µs 912.99 µs 2.26 µs (0.25%) 1.22%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha 6.84 ms 6.83 ms -0.02 ms (-0.24%) 1.24%
handshake_tickets_ring_1.3_ecdsap384_chacha 8.38 ms 8.36 ms -0.02 ms (-0.24%) 1.11%
transfer_no_resume_ring_1.3_ecdsap384_chacha 15.95 ms 15.92 ms -0.04 ms (-0.23%) 1.53%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes 1.17 ms 1.17 ms -0.00 ms (-0.23%) 1.16%
handshake_tickets_aws_lc_rs_1.3_rsa_aes 7.04 ms 7.02 ms -0.02 ms (-0.23%) 1.28%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha 13.60 ms 13.57 ms -0.03 ms (-0.21%) 2.05%
handshake_session_id_ring_1.3_ecdsap384_aes 8.34 ms 8.32 ms -0.02 ms (-0.21%) 1.00%
transfer_no_resume_1.3_no_crypto 11.68 ms 11.66 ms -0.02 ms (-0.21%) 2.64%
handshake_session_id_aws_lc_rs_1.2_rsa_aes 1.55 ms 1.55 ms 0.00 ms (0.20%) 1.53%
handshake_session_id_aws_lc_rs_1.3_rsa_aes 6.87 ms 6.86 ms -0.01 ms (-0.20%) 1.31%
handshake_session_id_ring_1.2_rsa_aes 1.39 ms 1.40 ms 0.00 ms (0.12%) 1.87%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha 7.02 ms 7.01 ms -0.01 ms (-0.11%) 1.19%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha 6.84 ms 6.83 ms -0.01 ms (-0.10%) 1.34%
handshake_no_resume_ring_1.3_ecdsap256_aes 428.15 µs 427.74 µs -0.41 µs (-0.10%) 2.33%
handshake_no_resume_ring_1.3_ecdsap384_chacha 3.52 ms 3.52 ms -0.00 ms (-0.05%) 1.00%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha 475.87 µs 476.11 µs 0.24 µs (0.05%) 2.86%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha 1.17 ms 1.17 ms 0.00 ms (0.03%) 1.35%
handshake_no_resume_ring_1.3_ecdsap256_chacha 423.34 µs 423.40 µs 0.06 µs (0.02%) 2.09%
handshake_no_resume_ring_1.3_ecdsap384_aes 3.52 ms 3.52 ms 0.00 ms (0.01%) 1.00%
handshake_tickets_aws_lc_rs_1.2_rsa_aes 1.69 ms 1.69 ms -0.00 ms (-0.00%) 2.59%

Memory usage

Key:

  • ∑: sum usage for entire benchmark run
  • 🔝: peak usage
  • B: bytes
  • a: allocations

Significant differences

There are no significant memory usage differences

Additional information

Historical results

Checkout details:

Merged via the queue into rustls:rel-0.23 with commit aff9845 Jul 10, 2026
32 checks passed
@djc djc mentioned this pull request Jul 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants