Commit 07b04cb
committed
Implement PMTU_RAISE_TIMER for PMTUD re-probing
After PMTUD settles on a PLPMTU it never probes again, so a path that
later supports a larger MTU is never rediscovered. Arm a raise timer
(default 600s) once a PMTU is found and re-enter the Search Phase when
it expires, per RFC 8899 Section 5.1.1, reusing the existing optimistic
binary search.
The interval is configurable through Config, the C FFI, and tokio-quiche
settings; a zero duration disables re-probing and preserves the previous
settle-and-stop behavior.1 parent 60ed92e commit 07b04cb
9 files changed
Lines changed: 389 additions & 87 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
177 | 177 | | |
178 | 178 | | |
179 | 179 | | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
180 | 188 | | |
181 | 189 | | |
182 | 190 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
222 | 222 | | |
223 | 223 | | |
224 | 224 | | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
225 | 232 | | |
226 | 233 | | |
227 | 234 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
579 | 579 | | |
580 | 580 | | |
581 | 581 | | |
| 582 | + | |
582 | 583 | | |
583 | 584 | | |
584 | 585 | | |
| |||
660 | 661 | | |
661 | 662 | | |
662 | 663 | | |
| 664 | + | |
663 | 665 | | |
664 | 666 | | |
665 | 667 | | |
| |||
786 | 788 | | |
787 | 789 | | |
788 | 790 | | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
789 | 801 | | |
790 | 802 | | |
791 | 803 | | |
| |||
1356 | 1368 | | |
1357 | 1369 | | |
1358 | 1370 | | |
| 1371 | + | |
| 1372 | + | |
| 1373 | + | |
| 1374 | + | |
| 1375 | + | |
1359 | 1376 | | |
1360 | 1377 | | |
1361 | 1378 | | |
| |||
2080 | 2097 | | |
2081 | 2098 | | |
2082 | 2099 | | |
| 2100 | + | |
| 2101 | + | |
2083 | 2102 | | |
2084 | 2103 | | |
2085 | 2104 | | |
| |||
2683 | 2702 | | |
2684 | 2703 | | |
2685 | 2704 | | |
2686 | | - | |
| 2705 | + | |
| 2706 | + | |
| 2707 | + | |
| 2708 | + | |
2687 | 2709 | | |
2688 | 2710 | | |
2689 | 2711 | | |
| |||
3538 | 3560 | | |
3539 | 3561 | | |
3540 | 3562 | | |
3541 | | - | |
| 3563 | + | |
3542 | 3564 | | |
3543 | 3565 | | |
3544 | 3566 | | |
| |||
4295 | 4317 | | |
4296 | 4318 | | |
4297 | 4319 | | |
4298 | | - | |
| 4320 | + | |
4299 | 4321 | | |
4300 | 4322 | | |
4301 | 4323 | | |
| |||
7009 | 7031 | | |
7010 | 7032 | | |
7011 | 7033 | | |
| 7034 | + | |
| 7035 | + | |
| 7036 | + | |
| 7037 | + | |
| 7038 | + | |
| 7039 | + | |
7012 | 7040 | | |
7013 | 7041 | | |
7014 | 7042 | | |
7015 | 7043 | | |
7016 | 7044 | | |
7017 | | - | |
| 7045 | + | |
| 7046 | + | |
| 7047 | + | |
| 7048 | + | |
| 7049 | + | |
| 7050 | + | |
7018 | 7051 | | |
7019 | 7052 | | |
7020 | 7053 | | |
| |||
7105 | 7138 | | |
7106 | 7139 | | |
7107 | 7140 | | |
| 7141 | + | |
| 7142 | + | |
| 7143 | + | |
| 7144 | + | |
7108 | 7145 | | |
7109 | 7146 | | |
7110 | 7147 | | |
| |||
8034 | 8071 | | |
8035 | 8072 | | |
8036 | 8073 | | |
8037 | | - | |
| 8074 | + | |
8038 | 8075 | | |
8039 | | - | |
| 8076 | + | |
| 8077 | + | |
8040 | 8078 | | |
8041 | | - | |
8042 | 8079 | | |
8043 | 8080 | | |
8044 | 8081 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
251 | 251 | | |
252 | 252 | | |
253 | 253 | | |
254 | | - | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
255 | 259 | | |
256 | 260 | | |
257 | 261 | | |
| |||
907 | 911 | | |
908 | 912 | | |
909 | 913 | | |
910 | | - | |
911 | | - | |
| 914 | + | |
| 915 | + | |
912 | 916 | | |
913 | 917 | | |
914 | | - | |
| 918 | + | |
915 | 919 | | |
916 | 920 | | |
917 | | - | |
| 921 | + | |
| 922 | + | |
918 | 923 | | |
919 | 924 | | |
920 | 925 | | |
| |||
0 commit comments