From b08809027e1b936aed68a7d2395794a606fa63d0 Mon Sep 17 00:00:00 2001 From: jrd Date: Tue, 23 Jun 2026 17:42:44 +0000 Subject: [PATCH 1/2] Improve home server connection guidance Replace specific bandwidth numbers with clearer practical advice: discourages wireless connections and notes fiber works well. Co-Authored-By: Claude Sonnet 4.6 --- wiki/en/Running-a-Server.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index a10b94dde..ebfd71d04 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -33,7 +33,7 @@ Using a public Server might introduce you to strangers. If you want an undisturb Usually, problems are on the _Client_ side and should be fixed there. Have a look at the [Troubleshooting page](/wiki/Client-Troubleshooting) if needed. -However, various problems can also arise when setting up Servers - especially when run on a low-bandwidth home connection. It's usually fine to have less than 5 players on a slower-speed home connection (eg 10 Mbit/s down and 1 Mbit/s up). You can read more about network requirements at [different quality settings here](Server-Bandwidth). +However, various problems can also arise when setting up Servers - especially when run on a low-bandwidth home connection. It can work to have less than 5 players on a slower-speed home connection. A wireless internet connection is discouraged for a server in your home, while a fiber connection should work well. You can read more about network requirements at [different quality settings here](Server-Bandwidth). Consider using a cloud host, not your home internet connection, to get better ping times if you're having problems. From 4fbc66e25727de2455912bf4d9fcc7c62c143086 Mon Sep 17 00:00:00 2001 From: jrd Date: Wed, 24 Jun 2026 23:27:36 +0000 Subject: [PATCH 2/2] Document Linux UDP receive buffer tuning for server operators The Linux default UDP receive buffer (~208 KB) is too small for a Jamulus server under load. The kernel silently drops packets when the buffer fills, causing complete audio interruptions that are indistinguishable from network problems. Measured on production servers: 9,103 drops in 6 days on one host, 14,035 drops in 5 days on another. Increasing to 4 MB resolved the issue. Adds a new section to Running-a-Server.md with the three-command fix and a drop-counter verification step. --- wiki/en/Running-a-Server.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/wiki/en/Running-a-Server.md b/wiki/en/Running-a-Server.md index ebfd71d04..d45d002d0 100644 --- a/wiki/en/Running-a-Server.md +++ b/wiki/en/Running-a-Server.md @@ -365,6 +365,30 @@ When a Server is running in GUI mode, the operating system will show an icon in - Headless Servers do not use `.ini` files. All configuration is given as command line options. If you are running a Server in GUI mode, after reading any command line options on start, it will store its configuration in the `Jamulusserver.ini` file. +## Increasing the UDP receive buffer (Linux) + +The Linux kernel's default UDP receive buffer (~208 KB) can be exhausted on a busy Server, causing the kernel to **silently drop incoming packets**. The result is complete audio interruptions for connected Clients — symptoms that look like a network problem but originate on the Server itself. + +This is especially likely with five or more simultaneous players. Increasing the buffer to 4 MB costs nothing and prevents it: + +~~~ +sudo sysctl -w net.core.rmem_max=4194304 net.core.rmem_default=4194304 +printf 'net.core.rmem_max=4194304\nnet.core.rmem_default=4194304\n' | sudo tee /etc/sysctl.d/99-jamulus.conf +sudo systemctl restart jamulus-headless +~~~ + +Restart the Server after running these commands so that the new socket picks up the larger buffer. The setting in `/etc/sysctl.d/` persists across reboots. + +To verify the buffer is not being overwhelmed during a session, find your Server's port in hexadecimal (e.g. the default port 22124 = `565C`) and check the drop counter: + +~~~ +grep -i ':565C' /proc/net/udp | awk '{print $2, $NF}' +~~~ + +The last number is the drop count. It should be near 0 immediately after restart and remain low during normal use. You can convert your port to hex with `printf '%X\n' `. + +--- + ## Troubleshooting If you are having other problems, [see this guide](Server-Troubleshooting).