tcp状态-TIME_WAIT与CLOSE_WAIT带来的坑

tcp状态:

http://www.cnblogs.com/DengGao/p/tcp_state.html

 

1. tcp连接会占用系统资源(文件描述符), 有时候甚至会导致系统假死(不能发起或者处理tcp请求)。

2. TIME_WAIT状态tcp过多的原因:

      TIME_WAIT等待状态,这个状态又叫做2MSL状态,主动关闭方会出现TIME_WAIT。状态说的是在TIME_WAIT2发送了最后一个ACK数据报以后,要进入TIME_WAIT状态,这个状态是防止最后一次握手的数据报没有传送到对方那里而准备的(注意这不是四次握手,这是第四次握手的保险状态)。这个状态在很大程度上保证了双方都可以正常结束。

      tcp系统参数设置,可以更改tcp回收策略,以及TIME_WAIT的时间。

      参考: http://www.cnblogs.com/DengGao/p/tcp_parameter.html

3. CLOSE_WAIT状态tcp过多的原因:

      被动关闭方,回复主动关闭方关闭操作后,进入CLOSE_WAIT(等待自己关闭)。

      程序代码错误经常导致连接不能释放,tcp处于CLOSE_WAIT状态,不能释放。(但是,当超过net.ipv4.tcp_keepalive_time时间,对端如果已经释放,那么本端的tcp也会释放)

 

转载于:https://www.cnblogs.com/DengGao/p/TIME_WAIT-CLONE_WAIT.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值