-
Notifications
You must be signed in to change notification settings - Fork 124
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
revert: remove ttl information from datagram #1940
Conversation
mozilla#1568 introduced TTL information to datagrams. On the input path it would take the ttl information, but not act on it. On the output path it would set only "the default TTL on many OSes". https://github.com/mozilla/neqo/blob/66504908e5fa070a8a5fa67d8b5a201d2c9a5cc5/neqo-transport/src/path.rs#L576 This commit removes the ttl information from `Datagram`, thus reverting a subset of mozilla#1568. This is partially motivated by mozilla#1920, introducing `quinn-udp` as the IO library of choice, which does not support reading and writing TTL. See also discussion in mozilla#1920 (comment).
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1940 +/- ##
==========================================
- Coverage 94.82% 94.81% -0.01%
==========================================
Files 110 110
Lines 35792 35773 -19
==========================================
- Hits 33938 33918 -20
- Misses 1854 1855 +1 ☔ View full report in Codecov by Sentry. |
Benchmark resultsPerformance differences relative to 6650490. coalesce_acked_from_zero 1+1 entries: No change in performance detected.time: [198.33 ns 198.75 ns 199.20 ns] change: [-0.0247% +0.3423% +0.7452%] (p = 0.08 > 0.05) Found 22 outliers among 100 measurements (22.00%) 1 (1.00%) low mild 8 (8.00%) high mild 13 (13.00%) high severe coalesce_acked_from_zero 3+1 entries: No change in performance detected.time: [240.42 ns 241.09 ns 241.75 ns] change: [-0.8169% -0.2711% +0.1807%] (p = 0.32 > 0.05) Found 19 outliers among 100 measurements (19.00%) 19 (19.00%) high severe coalesce_acked_from_zero 10+1 entries: No change in performance detected.time: [239.63 ns 240.44 ns 241.40 ns] change: [-0.2489% +0.2375% +0.7500%] (p = 0.35 > 0.05) Found 12 outliers among 100 measurements (12.00%) 3 (3.00%) low mild 1 (1.00%) high mild 8 (8.00%) high severe coalesce_acked_from_zero 1000+1 entries: No change in performance detected.time: [222.17 ns 222.42 ns 222.71 ns] change: [-7.8148% -2.4951% +0.6130%] (p = 0.56 > 0.05) Found 13 outliers among 100 measurements (13.00%) 5 (5.00%) high mild 8 (8.00%) high severe RxStreamOrderer::inbound_frame(): Change within noise threshold.time: [117.92 ms 117.99 ms 118.05 ms] change: [+0.0494% +0.1219% +0.1984%] (p = 0.00 < 0.05) transfer/Run multiple transfers with the same seed: No change in performance detected.time: [120.27 ms 120.43 ms 120.59 ms] thrpt: [33.170 MiB/s 33.215 MiB/s 33.259 MiB/s] change: time: [-0.2415% -0.0447% +0.1509%] (p = 0.65 > 0.05) thrpt: [-0.1507% +0.0447% +0.2421%] Found 2 outliers among 100 measurements (2.00%) 2 (2.00%) high mild 1-conn/1-100mb-resp (aka. Download)/client: 💔 Performance has regressed.time: [1.0994 s 1.1267 s 1.1536 s] thrpt: [86.685 MiB/s 88.755 MiB/s 90.962 MiB/s] change: time: [+1.1742% +4.5030% +7.6273%] (p = 0.02 < 0.05) thrpt: [-7.0868% -4.3089% -1.1606%] 1-conn/1-1b-resp (aka. HPS)/client: No change in performance detected.time: [41.839 ms 41.955 ms 42.095 ms] thrpt: [23.756 elem/s 23.835 elem/s 23.901 elem/s] change: time: [-0.0689% +0.3329% +0.7387%] (p = 0.11 > 0.05) thrpt: [-0.7333% -0.3318% +0.0690%] Found 25 outliers among 100 measurements (25.00%) 15 (15.00%) low severe 2 (2.00%) low mild 1 (1.00%) high mild 7 (7.00%) high severe Client/server transfer resultsTransfer of 33554432 bytes over loopback.
|
#1568 introduced TTL information to datagrams. On the input path it would take the ttl information, but not act on it. On the output path it would set only "the default TTL on many OSes".
neqo/neqo-transport/src/path.rs
Line 576 in 6650490
This commit removes the ttl information from
Datagram
, thus reverting a subset of #1568.This is partially motivated by #1920, introducing
quinn-udp
as the IO library of choice, which does not support reading and writing TTL.See also discussion in #1920 (comment).