TCP_time_wait调优

1.  cat /proc/sys/net/ipv4/ip_local_port_range  查看随机端口

2.  open files数量

    ulimit -a

3.  timewait调优参数

    cat /proc/sys/net/ipv4/tcp_tw_recycle   默认为0,关闭;需要修改为1.  快速回收

    cat /proc/sys/net/ipv4/tcp_tw_reuse  默认为0,关闭;需要修改为1.  time_wait重用

    cat /proc/sys/net/ipv4/tcp_timestamps  默认为1,需要打开.

4.   修改上面的参数

     在/etc/sysctl.conf文件中,添加两行内容:

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

然后执行命令:  sysctl -p,使配置生效。

5.  注意:nat环境,需要关闭net.ipv4.tcp_tw_recycle。

      内网都可以打开net.ipv4.tcp_tw_recycle,对外服务器不要打开net.ipv4.tcp_tw_recycle。

vi /etc/sysctl.conf
net.ipv4.tcp_keepalive_time = 1200 
#表示当keepalive起用的时候,TCP发送keepalive消息的频度。缺省是2小时,改为20分钟。
net.ipv4.ip_local_port_range = 1024 65000 
#表示用于向外连接的端口范围。缺省情况下很小:32768到61000,改为1024到65000。
net.ipv4.tcp_max_syn_backlog = 8192 
#表示SYN队列的长度,默认为1024,加大队列长度为8192,可以容纳更多等待连接的网络连接数。
net.ipv4.tcp_max_tw_buckets = 5000 
#表示系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数字,TIME_WAIT套接字将立刻被清除并打印警告信息。
默认为180000,改为5000。对于Apache、Nginx等服务器,上几行的参数可以很好地减少TIME_WAIT套接字数量,但是对于 Squid,效果却不大。此项参数可以控制TIME_WAIT套接字的最大数量,避免Squid服务器被大量的TIME_WAIT套接字拖死。

 

    

posted @ 2018-11-03 11:27  奋斗史  阅读(280)  评论(0)    收藏  举报