We have defaulted to CAKE for all devices that quality. That has however resulted in worse network quality as some devices could not provide the compute power necessary for CAKE. There are however only very few benefits to run an unconfigured CAKE.
This patch changes this back to fq_codel which is computationally cheaper and should deliver 99% of the throughput that CAKE does. This is presumably the better trade-off.
We don't use fq_codel on wireless devices since the kernel is running this for each client. It would have been nice to only apply this to wireless interfaces in AP mode, but I cannot find a way to tell the difference with asking NETLINK.
Signed-off-by: Michael Tremer michael.tremer@ipfire.org --- config/udev/network-aqm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/config/udev/network-aqm b/config/udev/network-aqm index a11fc5c50..36355cfc6 100644 --- a/config/udev/network-aqm +++ b/config/udev/network-aqm @@ -39,6 +39,10 @@ case "${ACTION}" in # Detect bridges if [ -d "/sys/class/net/${INTERFACE}/bridge" ]; then TYPE="bridge" + + # Detect wireless interfaces + elif [ -d "/sys/class/net/${INTERFACE}/phy80211" ]; then + TYPE="wireless" fi
args=() @@ -65,6 +69,11 @@ case "${ACTION}" in exit 0 ;;
+ # Ignore wireless interfaces + *,wireless) + exit 0 + ;; + # Ignore IMQ/IFB imq*,*|ifb*,*) exit 0 @@ -75,14 +84,9 @@ case "${ACTION}" in args+=( "cake" "internet" "conservative" "ack-filter" ) ;;
- # Treat any other interfaces as "Ethernet" - red*,*) - args+=( "cake" "internet" "ethernet" ) - ;; - # All other interfaces are locally connected *) - args+=( "cake" "ethernet" "metro" ) + args+=( "fq_codel" ) ;; esac