一 查看方法
    http://blog.csdn.net/qq_37023538/article/details/63008901

二 介绍time wait和close wait

  

客户端TCP状态:        
   CLOSED->SYN_SENT->ESTABLISHED->FIN_WAIT_1->FIN_WAIT_2->TIME_WAIT->CLOSED
   服务器TCP状态:      
   CLOSED->LISTEN->SYN收到->ESTABLISHED->CLOSE_WAIT->LAST_ACK->CLOSED
   TIME_WAIT 
   是主动关闭链接时形成的,等待2MSL时间,约4分钟。主要是防止最后一个ACK丢失。  
   由于TIME_WAIT 的时间会非常长,因此server端应尽量减少主动关闭连接
   CLOSE_WAIT
   是被动关闭连接是形成的。根据TCP状态机,服务器端收到客户端发送的FIN,则按照TCP实现发送ACK,因此进入CLOSE_WAIT状态。
   但如果服务器端不执行close(),就不能由CLOSE_WAIT迁移到LAST_ACK,则系统中会存在很多CLOSE_WAIT状态的连接。
   此时,可能是系统忙于处理读、写操作,而未将已收到FIN的连接,进行close。此时,recv/read已收到FIN的连接socket,会返回0。
三 解决方法:
   TIME_WAIT:表示主动关闭,通过优化系统内核参数解决。
   CLOSE_WAIT:表示被动关闭,需要从程序本身出发。
   TIME_WAIT
   修改/etc/sysctl.conf文件:

   #表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭  net.ipv4.tcp_syncookies = 1  #表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭  net.ipv4.tcp_tw_reuse = 1  #表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭  net.ipv4.tcp_tw_recycle = 1#表示如果套接字由本端要求关闭,这个参数决定了它保持在FIN-WAIT-2状态的时间  net.ipv4.tcp_fin_timeout=30

生效,如下命令        
    /sbin/sysctl -p
    CLOSE_WAIT
   出现大量close_wait的现象,主要原因是某种情况下对方关闭了socket链接,但是我方忙与读或者写,没有关闭连接。
   代码需要判断socket,一旦读到0,断开连接,read返回负,检查一下errno,如果不是AGAIN,就断开连接。

最新文章

  1. 【Python】SyntaxError: unexpected EOF while parsing
  2. A Neural Algorithm of Artistic Style
  3. boost::spirit模块实现一个以逗号分隔的数字列表的生成器的测试程序
  4. Microsoft Visual Studio 文件识别及其用途简述
  5. Go+Vue打印店远程打印小程序源码
  6. 公众号管理模块-DouPHP模块化企业网站管理系统v1.6
  7. 发布Drools Workbench到Tomcat on Linux
  8. 攻击者巧妙滥用谷歌 DoH 下载恶意软件
  9. python学生管理系统连接数据库版,很详细,这个是用函数版的增删改查,拿去用,不谢。...
  10. CentOS安装JDK 17
  11. Tomcat的下载与安装
  12. 7、微信小程序-wxs脚本
  13. 前淘宝工程师谈12306:做它比做淘宝难
  14. Debian7系统安装python3
  15. 又猎一“狐”:一名外逃越南嫌疑人落网中
  16. Python小黄人绘制
  17. ubuntu 14.04 32位设置1920x1080分辨率
  18. 求解旅行商(货郎担)问题的五种方法
  19. 登录网页无法连接服务器,"无法连接到服务器,用户xxx登陆失败" 解决办法
  20. s5pv210_gpio驱动及其在android2.3.1下jni调用

热门文章

  1. 使用PayPal收款要注意哪些细节?
  2. NTP(网络时间协议)学习
  3. 模糊算法增强图片对比度
  4. 通过虚拟磁盘技术给电脑安装双系统或多系统
  5. SpringCloud 实战笔记
  6. Altium Designer--如何制作过孔(Via)库
  7. 关于文章撰写的要求和规范
  8. 孤狼电商店群全套教程:店群基础+2.0精细化蓝海+深度蓝海+裂变课程2.0
  9. VB编写DirectX简明教程
  10. leetCode第199场周赛学习