Monday, February 10, 2020

Tune TCP network for data transfer in 10GbE or higher network

Some background information: https://community.rti.com/static/documentation/perftest/3.0/tuning_os.html

10GbE, Centos 7: /etc/sysctl.d/99-sysctl.conf

net.core.rmem_default = 524287
net.core.rmem_max = 16777216
net.core.wmem_default = 524287
net.core.wmem_max = 16777216

https://community.rti.com/kb/how-can-i-improve-my-throughput-performance-linux

echo "8388608" > /proc/sys/net/ipv4/ipfrag_high_threshold

Some more background: https://mapr.com/docs/51/AdministratorGuide/Configure-NFS-Write-Perfo-Thekerneltunablevalu-d3e72.html

echo "options sunrpc tcp_slot_table_entries=128" >> /etc/modprobe.d/sunrpc.conf
echo 128 > /proc/sys/sunrpc/tcp_slot_table_entries

Some tuning ideas for Windows: https://www.drastic.tv/support-59/supporttipstechnical/320-optimizing-windows-networking

https://www.cyberciti.biz/faq/linux-tcp-tuning/

https://www.ibm.com/support/knowledgecenter/linuxonibm/liaag/wkvm/wkvm_c_tune_tcpip.htm


/etc/sysctl.d/10-network.conf

#https://www.cyberciti.biz/faq/linux-tcp-tuning/
net.core.wmem_max=33554432
net.core.rmem_max=33554432

net.ipv4.tcp_rmem=2097152 16777216 33554432
net.ipv4.tcp_wmem=2097152 16777216 33554432

net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_sack=1
net.ipv4.tcp_no_metrics_save=1
net.core.netdev_max_backlog=5000
net.ipv4.tcp_slow_start_after_idle=0
net.ipv4.tcp_low_latency=1

No comments:

Post a Comment