diff --git a/README.md b/README.md index f2a0eb7..ce363df 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,20 @@ # opnsense-bufferbloat -A custom solution for fixing external Bufferbloat by dynamically adjusting QoS Pipes. \ No newline at end of file +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 \ No newline at end of file