2021-03-22 19:43:11 +00:00
|
|
|
# opnsense-bufferbloat
|
|
|
|
|
2021-03-22 19:52:29 +00:00
|
|
|
A custom solution for fixing external Bufferbloat by dynamically adjusting QoS Pipes.
|
|
|
|
|
|
|
|
This script makes several assumptions:
|
|
|
|
- Maximum Download Bandwidth: 80Mbit/s
|
|
|
|
- Maximum Upload Bandwidth: 20Mbit/s
|
|
|
|
- Minimum Download Bandwidth: 5Mbit/s
|
|
|
|
- Minimum Upload Bandwidth: 2Mbit/s
|
|
|
|
- Optimal Ping: <= 50ms
|
|
|
|
- Critical Ping: >= 200ms
|
|
|
|
- downloadPipe=10000 & uploadPipe=10001 (see output of: ipfw pipe show)
|
|
|
|
|
|
|
|
You may change the corresponding variables, but be aware of unit convertion loss!
|
|
|
|
|
|
|
|
## How this script works
|
|
|
|
The initial trivial idea:
|
|
|
|
- If average ping is >200ms, reduce current download bandwidth by 10%
|
|
|
|
- repeat until ping is OK or lower limit reached
|
|
|
|
- If average Ping <50ms -> Increase Bandwidth by 10% until upper limit reached
|