Difference between revisions of "TCP-Tuning"
Ligne 1: | Ligne 1: | ||
− | = Performance | + | = TCP Performance = |
− | + | This page describes how to enhance the performance of data transfers. It mainly focus on the optimization of the Linux kernel parameters. | |
− | == | + | == Kernel parameters == |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | The following are important for TCP tuning: | |
− | * | + | * <code>net.ipv4.tcp_rmem</code> |
− | * | + | * <code>net.ipv4.tcp_wmem</code> |
− | * | + | * <code>net.core.rmem_default</code> |
+ | * <code>net.core.wmem_default</code> | ||
+ | * <code>net.core.rmem_max</code> | ||
+ | * <code>net.core.wmem_max</code> | ||
+ | * <code>net.ipv4.tcp_dsack</code> | ||
+ | * <code>net.ipv4.tcp_sack</code> | ||
+ | * <code>net.ipv4.tcp_timestamps</code> | ||
+ | * <code>net.core.netdev_max_backlog</code> | ||
+ | They can be modified with: | ||
+ | * Quattor ; | ||
+ | * YAIM ; | ||
+ | * Manually by modifying the <code>/etc/sysctl.conf</code> file. | ||
− | |||
− | + | == Recommended values == | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | * <code>net.ipv4.tcp_rmem = 131072 1048576 2097152</code> | ||
+ | * <code>net.ipv4.tcp_wmem = 131072 1048576 2097152</code> | ||
+ | * <code>net.core.rmem_default = 1048576</code> | ||
+ | * <code>net.core.wmem_default = 1048576</code> | ||
+ | * <code>net.core.rmem_max = 2097152</code> | ||
+ | * <code>net.core.wmem_max = 2097152</code> | ||
+ | * <code>net.ipv4.tcp_dsack = 0</code> | ||
+ | * <code>net.ipv4.tcp_sack = 0</code> | ||
+ | * <code>net.ipv4.tcp_timestamps = 0</code> | ||
+ | * <code>net.core.netdev_max_backlog = 10000</code> | ||
− | == | + | |
+ | == External links == | ||
+ | * http://fasterdata.es.net/ | ||
+ | * http://monalisa.cern.ch/FDT/documentation_syssettings.html | ||
+ | * http://indico.cern.ch/contributionDisplay.py?sessionId=31&contribId=55&confId=61917 | ||
+ | * http://www.psc.edu/networking/projects/tcptune/ | ||
+ | * http://onlamp.com/pub/a/onlamp/2005/11/17/tcp_tuning.html | ||
+ | * http://en.wikipedia.org/wiki/TCP_tuning |
Version du 14:20, 8 avril 2010
TCP Performance
This page describes how to enhance the performance of data transfers. It mainly focus on the optimization of the Linux kernel parameters.
Kernel parameters
The following are important for TCP tuning:
net.ipv4.tcp_rmem
net.ipv4.tcp_wmem
net.core.rmem_default
net.core.wmem_default
net.core.rmem_max
net.core.wmem_max
net.ipv4.tcp_dsack
net.ipv4.tcp_sack
net.ipv4.tcp_timestamps
net.core.netdev_max_backlog
They can be modified with:
- Quattor ;
- YAIM ;
- Manually by modifying the
/etc/sysctl.conf
file.
Recommended values
net.ipv4.tcp_rmem = 131072 1048576 2097152
net.ipv4.tcp_wmem = 131072 1048576 2097152
net.core.rmem_default = 1048576
net.core.wmem_default = 1048576
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
net.ipv4.tcp_dsack = 0
net.ipv4.tcp_sack = 0
net.ipv4.tcp_timestamps = 0
net.core.netdev_max_backlog = 10000
External links
- http://fasterdata.es.net/
- http://monalisa.cern.ch/FDT/documentation_syssettings.html
- http://indico.cern.ch/contributionDisplay.py?sessionId=31&contribId=55&confId=61917
- http://www.psc.edu/networking/projects/tcptune/
- http://onlamp.com/pub/a/onlamp/2005/11/17/tcp_tuning.html
- http://en.wikipedia.org/wiki/TCP_tuning