Répondre à: [Résolu] Network tuning

#11707
rogn...rogn…
Participant

Hooo le mauvais que je suis ! Les ratios que je donne sont en Mega-Bytes par seconde, et non en Méga-Bits par seconde !
Autrement dit je suis à 192 Mbps sur des routeurs 1Gbps, ce qui est une perf acceptable pour une connexion fibre WAN.
Maintenant, j’applique les nouveaux paramètres suivants et augmente le treshold à 512 * 4K par socket.

cat /etc/sysctl.d/99-sysctl.conf 
#-----------------------------------------------------------------------
#TCP and UDP Memory Managment for LAN 1GBps, with Low-Latency
#use sudo sysctl -p /etc/sysctl.d/99-sysctl.conf to store parameters
#-----------------------------------------------------------------------
#TCP core max receive and send Buffer size (*4KB)
net.core.rmem_max = 4194304
net.core.wmem_max = 4194304
net.core.optmem_max = 4194304
#TCP core default receive and send Buffer size (*4KB)
net.core.rmem_default = 2097152
net.core.wmem_default = 2097152
#
#UDP-only ipv4 min receive and send Buffer size (4KB)
net.ipv4.udp_wmem_min = 4096
net.ipv4.udp_rmem_min = 4096
#TCP-only min (*4KB), pressure and max. Pressure is the treshold when TCP reclaim buffer memory to move memory use down toward the minimum. 
net.ipv4.tcp_wmem = 4096 2097152 4194304
net.ipv4.tcp_rmem = 4096 2097152 4194304
# = max(tcp_wmem) * 2 * numbers of clients / 4KB
net.ipv4.udp_mem = 20480 20480 20480
net.ipv4.tcp_mem = 20480 20480 20480
#TCP Selective Acknowledgement (set:0 for Low-Latency)
net.ipv4.tcp_sack = 0
net.ipv4.tcp_dsack = 0
net.ipv4.tcp_fack = 0
#Gradual speed increase (set:0 for Low-Latency)
net.ipv4.tcp_slow_start_after_idle = 0
#
#-----------------------------------------------------------------------
#Swappiness parametes 
#-----------------------------------------------------------------------
vm.swappiness = 5
vm.vfs_cache_pressure = 50

Résultats, même le routeur du FAI comprend que le serveur a faim donc lui donne du Mbps en plus !

Conclusion, même en ce qui concerne les perfs réseau, certaines distros se basent sur de vieux principes comme la swappiness. Quand on est sur un routeur 1Gbps, on peut tuner, mais il faut faire attention si on reste sur du 56k, ça peut polluer. D’où la nécessité de sauvegarder ce que contient /proc/sys/ avant de jouer sur ces paramètres 😉