查看网络连接timewait问题

时间:2014-08-07 23:07:35   收藏:0   阅读:268

通过ss -s 命令,可以看到服务器的timewait状态特别多。

[root@tvreport231 ~]# ss -s
Total: 103 (kernel 256)
TCP:   48666 (estab 22, closed 48624, orphaned 7, synrecv 0, timewait 48623/0), ports 18

netstat也是可以看到的,但是需要添加 -a参数才能看到time_wait状态。


下面的命令复杂点,但是可以看到更多信息:

[root@tvreport231 ~]# netstat -an|awk ‘/tcp/ {print $6}‘|sort|uniq -c
     11 ESTABLISHED
      1 FIN_WAIT1
     11 LISTEN
  41300 TIME_WAIT


解决方法:

一种解决方法是利用sysctl在运行时修改内核参数

直接在文件/etc/sysctl.conf末尾添加两行设置:

net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_tw_recycle=1

然后调用sysctl -p加载之,果然效果明显

不过据说这样会影响内网用户。

sysctl文档参考:

http://www.cyberciti.biz/faq/linux-kernel-etcsysctl-conf-security-hardening/


还有一种方法是采用Nginx长连接。






查看网络连接timewait问题,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!