Skip to content

Rework accesses to SideData::Data types - #3227

Open
ctz wants to merge 5 commits into
jbp-quic-genericfrom
jbp-hs-sidedata
Open

ctz wants to merge 5 commits into
jbp-quic-genericfrom
jbp-hs-sidedata

Conversation

@ctz

@ctz ctz commented Aug 26, 2026

Copy link
Copy Markdown
Member

This PR moves towards exposing ClientConnectionData and ServerConnectionData and unifying accessors for them. As a final step, it exposes them in SplitConnection.

@rustls-benchmarking

rustls-benchmarking Bot commented Aug 26, 2026

Copy link
Copy Markdown

Benchmark results

Instruction counts

Significant differences

⚠️ There are significant instruction count differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_server 1355764 1349235 -6529 (-0.48%) 0.20%

Other differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_client 3568188 3556452 -11736 (-0.33%) 0.37%
handshake_tickets_aws_lc_rs_1.2_rsa_aes_server 4582980 4571293 -11687 (-0.26%) 1.02%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_client 8773586 8795752 22166 (0.25%) 0.82%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_server 10946202 10924332 -21870 (-0.20%) 1.19%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes_client 42165431 42126669 -38762 (-0.09%) 0.21%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha_client 42085321 42123623 38302 (0.09%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha_client 42483828 42446536 -37292 (-0.09%) 0.28%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha_client 42519240 42482660 -36580 (-0.09%) 0.31%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes_server 10419724 10428514 8790 (0.08%) 0.74%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha_client 42104975 42137028 32053 (0.08%) 0.23%
handshake_tickets_aws_lc_rs_1.3_rsa_aes_client 42492034 42466883 -25151 (-0.06%) 0.22%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes_server 37009158 36989753 -19405 (-0.05%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha_server 36974382 36993485 19103 (0.05%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha_server 38480964 38461557 -19407 (-0.05%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha_server 38478738 38460230 -18508 (-0.05%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes_client 3550141 3551722 1581 (0.04%) 0.49%
handshake_session_id_aws_lc_rs_1.3_rsa_aes_client 42120371 42138906 18535 (0.04%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes_client 8775146 8778251 3105 (0.04%) 0.82%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha_server 36977793 36990796 13003 (0.04%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_aes_server 37003446 37016023 12577 (0.03%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha_client 42109307 42095378 -13929 (-0.03%) 0.26%
handshake_tickets_aws_lc_rs_1.3_rsa_aes_server 38459289 38447057 -12232 (-0.03%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes_client 42472256 42484833 12577 (0.03%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha_server 36993116 36986497 -6619 (-0.02%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes_server 38434891 38441500 6609 (0.02%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes_client 2377296 2377664 368 (0.02%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha_server 38446198 38452076 5878 (0.02%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes_server 1346242 1346062 -180 (-0.01%) 0.63%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha_client 42469083 42465564 -3519 (-0.01%) 0.22%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes_client 42144516 42147082 2566 (0.01%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_chacha_client 3265098 3265288 190 (0.01%) 0.20%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes_client 1679629 1679558 -71 (-0.00%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes_server 10927323 10926909 -414 (-0.00%) 1.09%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_server 2273828 2273912 84 (0.00%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes_server 2269968 2270037 69 (0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes_client 42477224 42476035 -1189 (-0.00%) 0.28%
handshake_no_resume_ring_1.3_ecdsap256_aes_client 3263813 3263889 76 (0.00%) 0.24%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_client 2385090 2385132 42 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes_server 37005158 37004712 -446 (-0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes_server 38444131 38443721 -410 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_chacha_client 81688023 81687581 -442 (-0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_chacha_server 7180893 7180877 -16 (-0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_chacha_client 34706309 34706290 -19 (-0.00%) 0.20%
handshake_session_id_ring_1.2_rsa_aes_client 3191200 3191200 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes_server 35286242 35286242 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_client 81776447 81776447 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_aes_server 45418185 45418185 0 (0.00%) 0.20%
handshake_no_resume_ring_1.2_rsa_aes_client 2165809 2165809 0 (0.00%) 0.20%
handshake_no_resume_1.3_no_crypto_client 63478 63478 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_chacha_server 31265928 31265928 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_chacha_server 79781556 79781556 0 (0.00%) 0.20%
handshake_tickets_ring_1.2_rsa_aes_client 3570296 3570296 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_aes_client 47042541 47042541 0 (0.00%) 0.20%
handshake_no_resume_1.2_no_crypto_client 53780 53780 0 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_aes_server 1230417 1230417 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_chacha_client 30184649 30184649 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_chacha_server 31546450 31546450 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_aes_client 47056795 47056795 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_aes_client 30371472 30371472 0 (0.00%) 0.20%
transfer_no_resume_1.2_no_crypto_server 104438008 104438008 0 (0.00%) 0.20%
transfer_no_resume_ring_1.2_rsa_aes_client 47094818 47094818 0 (0.00%) 0.20%
handshake_session_id_1.2_no_crypto_server 770859 770859 0 (0.00%) 0.20%
transfer_no_resume_1.3_no_crypto_client 106259840 106259840 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes_client 47230179 47230179 0 (0.00%) 0.20%
handshake_session_id_ring_1.2_rsa_aes_server 3059637 3059637 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_chacha_server 31555432 31555432 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_chacha_server 31551216 31551216 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_aes_server 31385349 31385349 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes_client 47256487 47256487 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_aes_client 30275669 30275669 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_chacha_server 31260324 31260324 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_aes_server 45418156 45418156 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_chacha_server 79781585 79781585 0 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.2_rsa_aes_server 3499770 3499770 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_aes_client 47056795 47056795 0 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_chacha_client 2299481 2299481 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_aes_client 30284624 30284624 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes_client 47299265 47299265 0 (0.00%) 0.20%
handshake_session_id_1.2_no_crypto_client 890896 890896 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_aes_server 31388208 31388208 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_chacha_client 30193634 30193634 0 (0.00%) 0.20%
handshake_no_resume_1.2_no_crypto_server 35758 35758 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_aes_server 31653752 31653752 0 (0.00%) 0.20%
transfer_no_resume_1.3_no_crypto_server 104447396 104447396 0 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_chacha_server 1231585 1231585 0 (0.00%) 0.20%
handshake_tickets_1.3_no_crypto_client 1917467 1917467 0 (0.00%) 0.20%
handshake_no_resume_1.3_no_crypto_server 55081 55081 0 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_chacha_server 11064336 11064336 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes_server 35286484 35286484 0 (0.00%) 0.20%
handshake_session_id_1.3_no_crypto_client 1909942 1909942 0 (0.00%) 0.20%
handshake_tickets_1.2_no_crypto_client 959136 959136 0 (0.00%) 0.20%
handshake_no_resume_ring_1.2_rsa_aes_server 10899290 10899290 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_aes_client 30360827 30360827 0 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_aes_server 7178948 7178948 0 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_aes_client 34704594 34704594 0 (0.00%) 0.20%
handshake_session_id_1.3_no_crypto_server 1726840 1726840 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_aes_client 30274656 30274656 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_chacha_client 81703195 81703195 0 (0.00%) 0.20%
handshake_tickets_ring_1.2_rsa_aes_server 3619097 3619097 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_aes_server 31654559 31654559 0 (0.00%) 0.20%
handshake_tickets_1.2_no_crypto_server 908185 908185 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_chacha_client 30299922 30299922 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_server 70365684 70365684 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha_client 81778679 81778679 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_server 70365684 70365684 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_chacha_server 79781644 79781644 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_chacha_client 30288158 30288158 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_aes_server 31649650 31649650 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes_server 35204658 35204658 0 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_aes_server 11058586 11058586 0 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.2_rsa_aes_client 3620429 3620429 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_chacha_client 30289225 30289225 0 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_aes_client 2293831 2293831 0 (0.00%) 0.20%
handshake_tickets_1.3_no_crypto_server 1694495 1694495 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes_client 47255727 47255727 0 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_aes_client 30361744 30361744 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes_server 35286484 35286484 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_aes_server 45418244 45418244 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha_server 70365273 70365273 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_aes_server 31382604 31382604 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_chacha_client 81703195 81703195 0 (0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.2_rsa_aes_client 3998878 3998878 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_chacha_server 31263069 31263069 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_client 81776527 81776527 0 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_chacha_client 30183636 30183636 0 (0.00%) 0.20%
transfer_no_resume_1.2_no_crypto_client 106227619 106227619 0 (0.00%) 0.20%
transfer_no_resume_ring_1.2_rsa_aes_server 45526240 45526240 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_no_resume_1.2_no_crypto 46.51 µs 46.79 µs 0.28 µs (0.60%) 9.14%
handshake_session_id_1.2_no_crypto 267.44 µs 268.79 µs 1.35 µs (0.51%) 5.14%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha 7.09 ms 7.06 ms -0.03 ms (-0.44%) 1.53%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes 6.45 ms 6.42 ms -0.03 ms (-0.43%) 1.88%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha 7.10 ms 7.07 ms -0.03 ms (-0.42%) 1.65%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha 6.42 ms 6.39 ms -0.03 ms (-0.42%) 1.55%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha 6.88 ms 6.85 ms -0.03 ms (-0.42%) 1.79%
handshake_session_id_aws_lc_rs_1.3_rsa_aes 6.89 ms 6.86 ms -0.03 ms (-0.42%) 1.35%
handshake_tickets_aws_lc_rs_1.3_rsa_aes 7.09 ms 7.06 ms -0.03 ms (-0.41%) 1.59%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes 6.25 ms 6.22 ms -0.02 ms (-0.39%) 2.14%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes 7.11 ms 7.08 ms -0.03 ms (-0.39%) 1.73%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes 1.03 ms 1.03 ms -0.00 ms (-0.39%) 3.29%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha 6.89 ms 6.87 ms -0.03 ms (-0.38%) 1.18%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha 6.21 ms 6.18 ms -0.02 ms (-0.37%) 1.70%
transfer_no_resume_ring_1.3_ecdsap256_aes 4.92 ms 4.94 ms 0.02 ms (0.35%) 4.73%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes 6.90 ms 6.88 ms -0.02 ms (-0.35%) 1.84%
handshake_no_resume_1.3_no_crypto 43.86 µs 43.98 µs 0.13 µs (0.29%) 9.29%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes 3.91 ms 3.90 ms -0.01 ms (-0.24%) 4.67%
transfer_no_resume_ring_1.3_ecdsap384_aes 8.01 ms 8.03 ms 0.02 ms (0.24%) 2.95%
transfer_no_resume_ring_1.3_rsa_aes 5.40 ms 5.41 ms 0.01 ms (0.22%) 4.35%
handshake_no_resume_ring_1.3_ecdsap256_aes 422.68 µs 423.51 µs 0.84 µs (0.20%) 1.81%
handshake_session_id_aws_lc_rs_1.2_rsa_aes 1.52 ms 1.52 ms -0.00 ms (-0.19%) 2.42%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes 1.11 ms 1.11 ms -0.00 ms (-0.19%) 3.36%
handshake_tickets_1.3_no_crypto 502.14 µs 501.21 µs -0.93 µs (-0.19%) 3.97%
transfer_no_resume_ring_1.3_ecdsap256_chacha 12.48 ms 12.51 ms 0.02 ms (0.18%) 2.00%
handshake_session_id_1.3_no_crypto 514.98 µs 515.77 µs 0.80 µs (0.16%) 3.91%
handshake_tickets_ring_1.3_ecdsap256_chacha 5.28 ms 5.27 ms -0.01 ms (-0.14%) 1.03%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha 1.14 ms 1.14 ms 0.00 ms (0.14%) 1.18%
handshake_session_id_ring_1.3_rsa_chacha 5.72 ms 5.71 ms -0.01 ms (-0.12%) 1.07%
handshake_tickets_ring_1.3_ecdsap384_chacha 8.38 ms 8.37 ms -0.01 ms (-0.12%) 1.00%
handshake_tickets_ring_1.3_rsa_chacha 5.77 ms 5.76 ms -0.01 ms (-0.12%) 1.00%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes 1.16 ms 1.16 ms 0.00 ms (0.11%) 1.00%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes 477.79 µs 477.27 µs -0.51 µs (-0.11%) 2.41%
handshake_tickets_aws_lc_rs_1.2_rsa_aes 1.66 ms 1.65 ms -0.00 ms (-0.10%) 1.94%
handshake_no_resume_ring_1.3_rsa_chacha 898.39 µs 899.30 µs 0.91 µs (0.10%) 1.00%
transfer_no_resume_ring_1.2_rsa_aes 5.38 ms 5.38 ms 0.01 ms (0.09%) 3.01%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha 1.13 ms 1.13 ms -0.00 ms (-0.09%) 1.77%
handshake_session_id_ring_1.3_ecdsap256_chacha 5.22 ms 5.22 ms -0.00 ms (-0.09%) 1.03%
handshake_no_resume_ring_1.3_ecdsap256_chacha 413.53 µs 413.87 µs 0.34 µs (0.08%) 1.78%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes 4.58 ms 4.58 ms -0.00 ms (-0.08%) 3.94%
transfer_no_resume_ring_1.3_rsa_chacha 12.97 ms 12.98 ms 0.01 ms (0.07%) 1.78%
transfer_no_resume_1.3_no_crypto 11.43 ms 11.44 ms 0.01 ms (0.07%) 2.41%
handshake_tickets_ring_1.3_ecdsap384_aes 8.40 ms 8.40 ms -0.00 ms (-0.06%) 1.00%
handshake_session_id_ring_1.3_ecdsap384_chacha 8.32 ms 8.32 ms -0.00 ms (-0.06%) 1.00%
transfer_no_resume_ring_1.3_ecdsap384_chacha 15.59 ms 15.59 ms 0.01 ms (0.05%) 1.57%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes 4.54 ms 4.54 ms -0.00 ms (-0.05%) 3.77%
handshake_session_id_ring_1.3_ecdsap384_aes 8.35 ms 8.35 ms -0.00 ms (-0.05%) 1.00%
transfer_no_resume_1.2_no_crypto 11.26 ms 11.26 ms -0.01 ms (-0.05%) 2.10%
handshake_session_id_ring_1.3_rsa_aes 5.74 ms 5.74 ms -0.00 ms (-0.05%) 1.15%
handshake_session_id_ring_1.2_rsa_aes 1.33 ms 1.33 ms 0.00 ms (0.03%) 1.28%
handshake_session_id_ring_1.3_ecdsap256_aes 5.26 ms 5.26 ms 0.00 ms (0.03%) 1.03%
handshake_tickets_ring_1.3_ecdsap256_aes 5.32 ms 5.32 ms -0.00 ms (-0.03%) 1.11%
handshake_no_resume_ring_1.2_rsa_aes 903.63 µs 903.86 µs 0.23 µs (0.03%) 1.00%
handshake_no_resume_ring_1.3_rsa_aes 904.35 µs 904.13 µs -0.22 µs (-0.02%) 1.00%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha 12.53 ms 12.53 ms -0.00 ms (-0.02%) 1.60%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha 13.20 ms 13.19 ms -0.00 ms (-0.02%) 1.52%
handshake_no_resume_ring_1.3_ecdsap384_aes 3.52 ms 3.52 ms -0.00 ms (-0.02%) 1.00%
handshake_no_resume_ring_1.3_ecdsap384_chacha 3.51 ms 3.51 ms 0.00 ms (0.02%) 1.00%
handshake_tickets_1.2_no_crypto 293.93 µs 293.89 µs -0.04 µs (-0.01%) 4.72%
handshake_tickets_ring_1.3_rsa_aes 5.80 ms 5.80 ms 0.00 ms (0.01%) 1.15%
handshake_tickets_ring_1.2_rsa_aes 1.41 ms 1.41 ms 0.00 ms (0.01%) 1.10%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes 4.40 ms 4.40 ms 0.00 ms (0.01%) 3.31%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha 13.18 ms 13.17 ms -0.00 ms (-0.00%) 1.83%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha 461.81 µs 461.81 µs 0.00 µs (0.00%) 2.25%

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:

@codecov

codecov Bot commented Aug 26, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 90.62500% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 95.45%. Comparing base (e2d44ba) to head (92a1f79).

Files with missing lines Patch % Lines
rustls/src/server/connection.rs 75.00% 3 Missing ⚠️
Additional details and impacted files
@@                 Coverage Diff                  @@
##           jbp-quic-generic    #3227      +/-   ##
====================================================
- Coverage             95.45%   95.45%   -0.01%     
====================================================
  Files                   100      100              
  Lines                 23765    23760       -5     
  Branches                683      683              
====================================================
- Hits                  22685    22680       -5     
  Misses                  924      924              
  Partials                156      156              

☔ 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.

@djc

djc commented Aug 26, 2026

Copy link
Copy Markdown
Member

Have not reviewed in detail, but why would we want this?

@ctz

ctz commented Aug 27, 2026

Copy link
Copy Markdown
Member Author

Have not reviewed in detail, but why would we want this?

Otherwise SplitConnection discards the side-specific data. It means that, for example, someone using that API cannot determine if early data was accepted, or what happened with ECH, etc.

@djc

djc commented Aug 28, 2026

Copy link
Copy Markdown
Member

Have not reviewed in detail, but why would we want this?

Otherwise SplitConnection discards the side-specific data. It means that, for example, someone using that API cannot determine if early data was accepted, or what happened with ECH, etc.

IIRC SplitConnection can only be created after the handshake anyway, right? So someone can inspect those things before calling split()? And dropping handshake outputs could substantially be construed as a feature reducing memory usage for longer-lived connection objects?

@ctz

ctz commented Aug 29, 2026

Copy link
Copy Markdown
Member Author

Have not reviewed in detail, but why would we want this?

Otherwise SplitConnection discards the side-specific data. It means that, for example, someone using that API cannot determine if early data was accepted, or what happened with ECH, etc.

IIRC SplitConnection can only be created after the handshake anyway, right?

That is one way. The other way is ServerHandshake -- that route has no way to access any of this data without this PR.

So someone can inspect those things before calling split()? And dropping handshake outputs could substantially be construed as a feature reducing memory usage for longer-lived connection objects?

This should be at the control of the caller.

@ctz
ctz force-pushed the jbp-quic-generic branch 3 times, most recently from 2285d27 to ebd5d38 Compare September 7, 2026 15:57
@ctz
ctz removed this pull request from stack #3226 September 15, 2026 15:12
@ctz
ctz force-pushed the jbp-quic-generic branch 3 times, most recently from 1aa5755 to e2d44ba Compare September 16, 2026 12:21
ctz added 5 commits September 16, 2026 15:28
This is also an associated type of `SideData`.  However, this is not
used in the `Connection` trait (even though this commit makes that
possible!) because ultimately there is no shared public behaviour
in these data types.
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