A Linux kernel finomhangolása a jobb hálózati teljesítményért

Címkék

A Linux kernel és a disztribúciók amelyek csomagolják tipikusan nagyon konzervatív beállításokkal kínálnak bizonyos hálózati paramétereket, amelyek kihathatnak a hálózati teljesítményre. Ezeket a paramétereket állíthatjuk a /proc filerendszeren keresztül, vagy "sysctl" programmal. Az utóbbi abból a szempontból jobb, hogy a beállítások a /etc/sysctl.conf file-ból olvasódnak be, így a módosított beállítások visszaállítódnak a reboot után is. A cikk itt.

Hozzászólások

nekem ezt mondta par eve egy warez-szerver uzemelteto:

/sbin/sysctl -w net.core.netdev_max_backlog=2500
echo "8388608" > /proc/sys/net/core/rmem_max
echo "2097152" > /proc/sys/net/core/rmem_default
echo "8388608" > /proc/sys/net/core/wmem_max
echo "2097152" > /proc/sys/net/core/wmem_default
echo "65536 2097152 8388608" > /proc/sys/net/ipv4/tcp_rmem
echo "65536 2097152 8388608" > /proc/sys/net/ipv4/tcp_wmem
echo "8388608 8388608 8388608" > /proc/sys/net/ipv4/tcp_mem
echo "65536" > /proc/sys/net/ipv4/tcp_max_orphans
echo "8388608" > /proc/sys/net/core/optmem_max
echo 0 > /proc/sys/net/ipv4/tcp_sack
echo 0 > /proc/sys/net/ipv4/tcp_timestamps

allitolag ez allitja be a leggyorsabbra a szervert :)))

A'rpi

Nagyjából én is ezeket szoktam feljebbnyomni; mondjuk nem egészen ilyen számokra, meg warez-szervert se láttam még közelről.
Lehet még a kernel.shmmax-ot is növelni, ha pl. "komolyabb" Postgresql van, na meg fstab-ba noatime, nodiratime opciókat a sokat rángatott partíciókra.

Ihletet a régebbi specweb (Red Hat) Linux webszerver tesztdokumentációkból vettem, amikor még apache-ot használtak, és nem kernel httpd-t.

A doksiban leirt alabbi beallitasok nekem is sokat segitettek egy nagyon terhelt apache szerver eseten, nagyban csokkentettek a load-ot:

# Fast port recycling (TIME_WAIT)
echo 1 >/proc/sys/net/ipv4/tcp_tw_recycle
echo 1 >/proc/sys/net/ipv4/tcp_tw_reuse
# TIME_WAIT buckets increased
echo 65536 > /proc/sys/net/ipv4/tcp_max_tw_buckets
# FIN timeout decreased
echo 15 > /proc/sys/net/ipv4/tcp_fin_timeout

Hat, ha mashogy nem tudom megjegyeztetni a topicot...