AIX 作为Web Server 使用时,tcp相关的几个参数调整
一,参数
1,TCP_TIMEWAIT
描述:确定 TCP/IP 在释放已关闭的连接并再次使用其资源前必须经过的时间。关闭与释放之间的这段时间称为 TIME_WAIT 状态或者两倍最大段生存期(2MSL)状态。此时间期间,重新打开到客户机和服务器的连接的成本少于建立新连接。通过减少此条目的值,TCP/IP 可以更快地释放关闭的连接,并为新连接提供更多资源。如果运行中的应用程序要求快速释放连接或创建新连接,或者由于许多连接处于 TIME_WAIT 状态而导致吞吐量较低,请调整此参数。
如何查看或设置:
发出以下命令,将TCP_TIMEWAIT状态设置为15秒:请将 no 命令添加到/etc/tunables/nextboot(AIX5.2版本是/etc/rc.net)文件中
no –o tcp_timewait =1
2,TCP_KEEPIDLE
描述:“保持活动”包确保连接保持活动/已建立状态。
如何查看或设置:使用 no 命令来确定当前值或设置该值。此更改将在您下次重新启动机器后失效。要永久地更改此值,请将 no 命令添加到/etc/tunables/nextboot(AIX5.2版本是/etc/rc.net)文件中。例如:
no -o tcp_keepidle=600
缺省值:14400 个半秒(2 小时)。
建议值:600 个半秒(5 分钟)。
3,TCP_KEEPINTVL
描述:指定为了验证连接而发送的各个包之间的时间间隔。
如何查看或设置:使用以下命令来将此值设置为 5 秒:要永久地更改此值,请将 no 命令添加到/etc/tunables/nextboot(AIX5.2版本是/etc/rc.net)文件中。
no -o tcp_keepintvl=10
缺省值:150(1/2 秒)
建议值:10(1/2 秒)
4,TCP_KEEPINIT
描述:指定 TCP 连接的初始超时值。
如何查看或设置:使用以下命令来将此值设置为 20 秒:要永久地更改此值,请将 no 命令添加到/etc/tunables/nextboot(AIX5.2版本是/etc/rc.net)文件中。
no -o tcp_keepinit=40
缺省值:150(1/2 秒)
建议值:40(1/2 秒)
5,TCP_KEEPCNT
描述:代表在终止连接前,可以发送的保持活动的探测数。 缺省值: 8
如何查看或设置:使用以下命令来将此值设置为 4次:要永久地更改此值,请将 no 命令添加到/etc/tunables/nextboot(AIX5.2版本是/etc/rc.net)文件中。
no –o tcp_keepcnt = 4
二、参数应用说明:
对于没有建立的TCP连接,tcp_keepinit定义了TCP连接的初始超时值,即一个还没有建立的连接,如果它的空闲时间超过了tcp_keepinit(默认75秒),那么这个连接将会被丢弃。
对于已经建立(ESTABLISHED)的TCP连接,如果连接空闲的时间超过了tcp_keepidle(默认2小时),那么系统开始往对方发送keepalive包,来探测对方是否仍然alive。
(1) 如果对方有回应,那么此连接可以继续保持空闲2小时,之后再发送一次keepalive探测包,如此循环。
(2) 如果对方没有回应,那么系统将会等待tcp_keepintvl(默认75秒),再次发送keepalive探测包,如此发送 tcp_keepcnt次(默认8次,即间隔75秒发一次,一共发8次)。如果这8次探测包都没有回应,那么系统将发送FIN来结束此连接
我个人觉得 这些参数的调整要根据应用的不同来进行调整
添加新评论1 条评论
2011-11-22 13:40