Commit 93030e9
committed
Add WAN link speed override for Adaptive SQM (#565)
* Add WAN link speed override for Adaptive SQM
Allow users to override the auto-detected WAN link speed, which is used
as the shaping ceiling (with 2% HTB headroom). This is needed when the
physical SFP supports a higher speed than what UniFi/ethtool reports
(e.g., 2.5G SFP in a UXG-Fiber reporting as 1G).
The override is nullable - when unset, behavior is identical to before
(auto-detected speed from the gateway port). The detected value shows
as placeholder text so the user knows what was auto-detected.
* Move Speed Margin to end of Calculated SQM Parameters grid
* Comment out Smart Queue download rate pre-deploy check
UniFi Network never clobbers our TC config once Adaptive SQM takes
over - the qdiscs get fully replaced by our scripts. The rate shown
in the UniFi UI becomes irrelevant after deployment.
* Clear link speed override when switching WAN interfaces
* Fix link speed override not persisting on update
The repository's upsert method copies properties individually for
existing rows. LinkSpeedOverrideMbps was missing from the update path,
so it was always written as null on save.
* Base speedtest probe rate on max shaping rate instead of link speed
The probe rate was 5% above max(AbsoluteMax, LinkSpeed), which could
overshoot the physical line rate and cause packet loss at the NIC level
where there is no AQM. Now it is 3% above MaxDownloadSpeed - the
highest rate the system will ever shape to - which keeps it just above
the shaper ceiling without exceeding what the wire can drain.
* Restore 5 KB burst tuning for HTB classes
5 KB burst eliminates downstream drop_overmemory for bulk flows at gig
speeds. Was reverted to stock 1500b pending per-connection testing but
the 2.5G link speed override makes this viable again.
* Restore original scaled burst function (rate * 5, clamped 1500-5000)1 parent 6b0ec35 commit 93030e9
9 files changed
Lines changed: 2178 additions & 63 deletions
File tree
- src
- NetworkOptimizer.Sqm
- Models
- NetworkOptimizer.Storage
- Migrations
- Models
- Repositories
- NetworkOptimizer.Web/Components/Pages
- tests/NetworkOptimizer.Sqm.Tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
69 | | - | |
70 | | - | |
| 69 | + | |
| 70 | + | |
71 | 71 | | |
72 | 72 | | |
73 | | - | |
| 73 | + | |
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
278 | 278 | | |
279 | 279 | | |
280 | 280 | | |
281 | | - | |
282 | | - | |
| 281 | + | |
| 282 | + | |
283 | 283 | | |
284 | 284 | | |
285 | 285 | | |
| |||
572 | 572 | | |
573 | 573 | | |
574 | 574 | | |
575 | | - | |
576 | | - | |
577 | | - | |
578 | | - | |
579 | | - | |
580 | | - | |
581 | | - | |
582 | | - | |
| 575 | + | |
| 576 | + | |
583 | 577 | | |
584 | | - | |
| 578 | + | |
| 579 | + | |
| 580 | + | |
| 581 | + | |
| 582 | + | |
585 | 583 | | |
586 | 584 | | |
587 | 585 | | |
| |||
0 commit comments