Difference between revisions of "TCP-Tuning"
(→TCP Performance) |
|||
Ligne 4: | Ligne 4: | ||
== Quattor == | == Quattor == | ||
− | |||
− | + | The [http://lcg.in2p3.fr/wiki/images/Quattor_tcp_tuning.pdf Quattor TCP Tuning guide] aims to be a good documentation for helping you tuning your TCP Performance with Quattor. | |
− | The following are important for TCP tuning: | + | |
+ | == Kernel tuning == | ||
+ | |||
+ | The following parameters are important for TCP tuning: | ||
* <code>net.ipv4.tcp_rmem</code> | * <code>net.ipv4.tcp_rmem</code> | ||
* <code>net.ipv4.tcp_wmem</code> | * <code>net.ipv4.tcp_wmem</code> | ||
Ligne 20: | Ligne 22: | ||
* <code>net.core.netdev_max_backlog</code> | * <code>net.core.netdev_max_backlog</code> | ||
− | They can be modified | + | They can be modified: |
− | * | + | * By directly passing the parameter to the '''sysctl''' command. This method is useful for testing a parameter, as the modification will not persist after the next reboot. |
− | * | + | * By adding the parameter to the <code>/etc/sysctl.conf</code> file and loading it with the '''sysctl''' command. This way is interesting when you want to preserve the modification over a reboot. |
− | |||
− | |||
− | |||
− | |||
+ | The following values are recommended: | ||
* <code>net.ipv4.tcp_rmem = 131072 1048576 2097152</code> | * <code>net.ipv4.tcp_rmem = 131072 1048576 2097152</code> | ||
* <code>net.ipv4.tcp_wmem = 131072 1048576 2097152</code> | * <code>net.ipv4.tcp_wmem = 131072 1048576 2097152</code> | ||
Ligne 41: | Ligne 40: | ||
== External links == | == External links == | ||
+ | |||
* http://fasterdata.es.net/ | * http://fasterdata.es.net/ | ||
* http://monalisa.cern.ch/FDT/documentation_syssettings.html | * http://monalisa.cern.ch/FDT/documentation_syssettings.html |
Version du 14:37, 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.
Quattor
The Quattor TCP Tuning guide aims to be a good documentation for helping you tuning your TCP Performance with Quattor.
Kernel tuning
The following parameters 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:
- By directly passing the parameter to the sysctl command. This method is useful for testing a parameter, as the modification will not persist after the next reboot.
- By adding the parameter to the
/etc/sysctl.conf
file and loading it with the sysctl command. This way is interesting when you want to preserve the modification over a reboot.
The following values are recommended:
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