mozilla
neqo
BlogDocsChangelog

feat(transport/cc): spurious congestion event recovery

#3298
Comparing
omansfeld:spurious_undo
(
b0b5b43
) with
main
(
e74f986
)
CodSpeed Performance Gauge
-7%
Improvements
1
Regressions
4
Untouched
18

Benchmarks

Failed

coalesce_acked_from_zero 1+1 entries
neqo-transport/benches/range_tracker.rs::benches::benchmark_coalesce
Regression
CodSpeed Performance Gauge
-4%
2.9 µs3 µs
coalesce_acked_from_zero 10+1 entries
neqo-transport/benches/range_tracker.rs::benches::benchmark_coalesce
Regression
CodSpeed Performance Gauge
-4%
3 µs3.1 µs
coalesce_acked_from_zero 1000+1 entries
neqo-transport/benches/range_tracker.rs::benches::benchmark_coalesce
Regression
CodSpeed Performance Gauge
-7%
2.6 µs2.8 µs
coalesce_acked_from_zero 3+1 entries
neqo-transport/benches/range_tracker.rs::benches::benchmark_coalesce
Regression
CodSpeed Performance Gauge
-4%
3 µs3.1 µs

Improved

client
neqo-bin/benches/main.rs::benches::transfer::1-conn/1-100mb-resp (aka. Download)
CodSpeed Performance Gauge
+3%
816.2 ms790.1 ms

Passed

run
neqo-transport/benches/transfer.rs::transfer::benchmark_transfer_fixed::transfer/pacing-true/same-seed/wallclock-time
CodSpeed Performance Gauge
0%
156.8 ms156.7 ms
decode 4096 bytes, mask 7f
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
38.6 µs38.6 µs
decode 4096 bytes, mask 3f
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
46.6 µs46.5 µs
decode 1048576 bytes, mask 7f
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
9.8 ms9.8 ms
decode 1048576 bytes, mask 3f
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
11.8 ms11.8 ms
decode 1048576 bytes, mask ff
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
6.8 ms6.8 ms
decode 4096 bytes, mask ff
neqo-common/benches/decoder.rs::benches::benchmark_decoder
CodSpeed Performance Gauge
0%
27 µs27 µs
take_ranges
neqo-transport/benches/sent_packets.rs::benches::take_ranges::sent::Packets
CodSpeed Performance Gauge
0%
30 µs30 µs
inbound_frame()
neqo-transport/benches/rx_stream_orderer.rs::benches::criterion_benchmark::RxStreamOrderer
CodSpeed Performance Gauge
0%
125.6 ms125.6 ms
client
neqo-bin/benches/main.rs::benches::transfer::1-conn/10_000-parallel-1b-resp (aka. RPS)
CodSpeed Performance Gauge
0%
366.6 ms366.6 ms
wallclock-time
neqo-http3/benches/streams.rs::benches::criterion_benchmark::1000-streams/each-1-bytes
CodSpeed Performance Gauge
0%
32.3 ms32.3 ms
run
neqo-transport/benches/transfer.rs::transfer::benchmark_transfer_variable::transfer/pacing-false/varying-seeds/wallclock-time
CodSpeed Performance Gauge
0%
157.9 ms158.2 ms
run
neqo-transport/benches/transfer.rs::transfer::benchmark_transfer_fixed::transfer/pacing-false/same-seed/wallclock-time
CodSpeed Performance Gauge
0%
156.8 ms157.1 ms
client
neqo-bin/benches/main.rs::benches::transfer::1-conn/1-1b-resp (aka. HPS)
CodSpeed Performance Gauge
-1%
15.1 ms15.2 ms
client
neqo-bin/benches/main.rs::benches::transfer::1-conn/1-100mb-req (aka. Upload)
CodSpeed Performance Gauge
-1%
891.3 ms902.6 ms
run
neqo-transport/benches/transfer.rs::transfer::benchmark_transfer_variable::transfer/pacing-true/varying-seeds/wallclock-time
CodSpeed Performance Gauge
-2%
155.4 ms158.1 ms
wallclock-time
neqo-http3/benches/streams.rs::benches::criterion_benchmark::1000-streams/each-1000-bytes
CodSpeed Performance Gauge
-2%
121.7 ms124.4 ms
wallclock-time
neqo-http3/benches/streams.rs::benches::criterion_benchmark::1-streams/each-1000-bytes
CodSpeed Performance Gauge
-3%
1 ms1.1 ms

Commits

Click on a commit to change the comparison range
Base
main
e74f986
-7.32%
More updates: - renaming `State` to `Phase` - renaming `Parameters` to `State` - adding `State::new()` - using `derive_more::Display` - docs
e2dd590
5 hours ago
by omansfeld
0%
fix clippy
b0b5b43
3 hours ago
by omansfeld
© 2026 CodSpeed Technology
Home Terms Privacy Docs