From e374560ecc74075d9d577936c57e265ae235307a Mon Sep 17 00:00:00 2001 From: Thomas Eizinger Date: Mon, 27 Oct 2025 15:40:45 +1100 Subject: [PATCH] ci: increase txqueuelen in containers (#10713) By default, Docker creates network interfaces with a txqueuelen of 1000. This is pretty small and causes unnecessary packet drops when running perf tests in that setup. --- docker-compose.yml | 10 ++++++++-- scripts/router/router.sh | 3 +++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 9e8356a62..b61c302c5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -188,9 +188,11 @@ services: ip -6 route add 203:0:113::/64 via 172:30:0::254 # Disable checksum offloading so that checksums are correct when they reach the relay - apk add --no-cache ethtool + apk add --no-cache ethtool iproute2 ethtool -K eth0 tx off + ip link set dev eth0 txqueuelen 100000 + exec firezone-headless-client init: true build: @@ -257,11 +259,15 @@ services: ip -6 route add 203:0:113::/64 via 172:31:0::254 # Disable checksum offloading so that checksums are correct when they reach the relay - apk add --no-cache ethtool + apk add --no-cache ethtool iproute2 ethtool -K eth0 tx off ethtool -K eth1 tx off ethtool -K eth2 tx off + ip link set dev eth0 txqueuelen 100000 + ip link set dev eth1 txqueuelen 100000 + ip link set dev eth2 txqueuelen 100000 + exec firezone-gateway init: true build: diff --git a/scripts/router/router.sh b/scripts/router/router.sh index 8731e85bb..e75dfd5e0 100644 --- a/scripts/router/router.sh +++ b/scripts/router/router.sh @@ -72,6 +72,9 @@ if [ -n "${NETWORK_LATENCY_MS:-}" ]; then tc qdisc add dev internal root netem delay "${LATENCY}ms" fi +ip link set dev internal txqueuelen 100000 +ip link set dev internet txqueuelen 100000 + echo "-----------------------------------------------------------------------------------------------" cat "$CONFIG_FILE" echo "-----------------------------------------------------------------------------------------------"