AQM: Revert back to only use fq_codel by default

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>
This commit is contained in:
Michael Tremer
2024-08-19 19:13:19 +01:00
parent bd4e688e64
commit 58846b68b4

View File

@@ -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