Increasing TCP IP Efficiency

Posted in: General system administration |

Okay, Well… This script is not a security script, nore a load balencing script. But it is a very useful script if you get high traffic or are hosting a Game Server. I’ve Had CounterStrike Server player ping go down as much as 50ms after running this script.

So what you want to do is log into your server’s shell, and create a file (nano filename.sh). Once you create the file, you need to put this code in the file;

#!/bin/bash

# Create backup
if [ ! -e ./speed_backup.sh ] ; then
echo -n “Creating backup (`pwd`/speed_backup.sh)… ”
echo “#!/bin/bash” > ./speed_backup.sh
echo “” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/ipv4/tcp_sack`\” > /proc/sys/net/ipv4/tcp_sack” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/ipv4/tcp_timestamps`\” > /proc/sys/net/ipv4/tcp_timestamps” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/ipv4/tcp_mem`\” > /proc/sys/net/ipv4/tcp_mem” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/ipv4/tcp_rmem`\” > /proc/sys/net/ipv4/tcp_rmem” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/ipv4/tcp_wmem`\” > /proc/sys/net/ipv4/tcp_wmem” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/core/optmem_max`\” > /proc/sys/net/core/optmem_max” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/core/rmem_default`\” > /proc/sys/net/core/rmem_default” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/core/rmem_max`\” > /proc/sys/net/core/rmem_max” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/core/wmem_default`\” > /proc/sys/net/core/wmem_default” >> ./speed_backup.sh
echo “echo \”`cat /proc/sys/net/core/wmem_max`\” > /proc/sys/net/core/wmem_max” >> ./speed_backup.sh
chmod 744 ./speed_backup.sh
echo -e “\tdone!”
else
echo “Backup found (`pwd`/speed_backup.sh). Skipping creation of one.”
fi

# Boost buffer settings
echo -n “Boosting… ”
echo “0″ > /proc/sys/net/ipv4/tcp_sack
echo “0″ > /proc/sys/net/ipv4/tcp_timestamps
echo “3129344 3137536 3145728″ > /proc/sys/net/ipv4/tcp_mem
echo “65536 1398080 2796160″ > /proc/sys/net/ipv4/tcp_rmem
echo “65536 1398080 2796160″ > /proc/sys/net/ipv4/tcp_wmem
echo “163840″ > /proc/sys/net/core/optmem_max
echo “1048560″ > /proc/sys/net/core/rmem_default
echo “2097136″ > /proc/sys/net/core/rmem_max
echo “1048560″ > /proc/sys/net/core/wmem_default
echo “2097136″ > /proc/sys/net/core/wmem_max
echo -e “\tdone!”

Now you need to chmod the file to 777 permissions, and execute it!

Please do not distribute this without giving credit to me or to eth0.us for hosting it!

What this does is increases your IP Buffer settings, making your connection more receptive. Very handy i think.

Leave a Reply