Stop your network throughput from hitting a wall with buffer tuning

Performance Tuning & Kernel Parameters (Sysctl)

Stop your network throughput from hitting a wall with buffer tuning

🧩 The Challenge

Dealing with a high-bandwidth server that just refuses to saturate its 10Gbps link even when the CPU is bored is enough to drive anyone crazy. It’s always some default buffer size from the nineties holding back your throughput.

💡 The Fix

Crank up your TCP receive and send window sizes to allow the kernel to buffer more data in flight. This is the first thing you should touch when your app performance plateaus despite low hardware load.

sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
sysctl -w net.ipv4.tcp_rmem='4096 87380 16777216'
sysctl -w net.ipv4.tcp_wmem='4096 65536 16777216'

⚙️ Why It Works

Expanding these limits lets the TCP stack keep more packets in the pipe before waiting for acknowledgments. You are essentially telling the kernel it has permission to use more RAM to avoid stalling the connection.

🚀 Pro-Tip: Always update these in /etc/sysctl.conf so you don’t lose your gains when the server reboots.

Linux Tips & Tricks | © ngelinux.com | 8/16/2026

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Newest
Oldest Most Voted