chore(appliance): sysctl drop-in for larger UDP buffers (4K/5K host send headroom)
ci / rust (push) Has been cancelled

The host warns when its UDP socket-buffer grant is small (Linux caps SO_SNDBUF at
net.core.wmem_max, ~208 KB by default). Validated zero-loss at 5K even at that cap,
but raising it gives send-side headroom for higher bitrates / concurrent sessions.
Referenced from the headless-Steam appliance setup. macOS clients need no tuning.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-11 13:28:55 +00:00
parent 0f333460ec
commit d86896da16
2 changed files with 12 additions and 0 deletions
+11
View File
@@ -0,0 +1,11 @@
# Larger UDP socket buffers for clean 4K/5K streaming.
#
# A single high-resolution frame is a burst (a 5120×1440 keyframe is ~130 packets sent at once),
# which overflows the Linux default (~208 KB) — dropping packets and, under infinite-GOP, freezing
# the client decode on one frame. punktfunk requests 8 MB SO_SNDBUF/SO_RCVBUF, but the kernel
# clamps to these caps; raise them on the HOST for send-side headroom (the host logs a warning
# when the grant is small). macOS clients need no tuning (their default cap is already multi-MB).
#
# Install: sudo cp scripts/99-punktfunk-net.conf /etc/sysctl.d/ && sudo sysctl --system
net.core.wmem_max = 8388608
net.core.rmem_max = 8388608
+1
View File
@@ -10,6 +10,7 @@
# sudo loginctl enable-linger $USER # user services run without a graphical login
# sudo systemctl set-default multi-user.target # don't auto-start the local gaming session
# sudo systemctl isolate multi-user.target # stop it now (or reboot)
# sudo cp scripts/99-punktfunk-net.conf /etc/sysctl.d/ && sudo sysctl --system # big UDP buffers (4K/5K)
#
# Install:
# mkdir -p ~/.config/systemd/user && cp scripts/punktfunk-steam-session.service ~/.config/systemd/user/