对TCP状态的新理解
来源:互联网 发布:怎么防盯盯软件 编辑:程序博客网 时间:2024/05/20 06:08
以前一直不明白TCP的四次断连接的意义在哪,通过一段时间实践的领悟大约明白了
1. 首先发起断连接的一方,发送一个FIN信号给被断连接的从方,在C++的代码里表示为close(fd),那么这个连接就进入FIN_WAIT1状态。
2. 被动的一方,在收到断连接之后发送ack给主动断连接的一方,这时候被动方就进入CLOSE_WAIT状态,主动方就进入FIN_WAIT2状态。值得注意的是,这个是协议自动完成的,当被动方不调用自己的close(fd) 操作则会一直保持这状态,通过netstat去观察一直会有这个CLOSE_WAIT状态,这样如果被动方不调用close(fd)操作的话,会一直导致fd泄漏。
3. 被动一方调用close(fd) 方法关闭连接之后,发送一个FIN给主动端,则主动方就进入time_wait状态,被动方进入LAST_ACK状态
4. 主动一方发送最后的ack给被动方,被动方接收到之后关闭连接,主动方则经过2 MSL时间也关闭连接
最后盗个图
阅读全文
0 0
- 对TCP状态的新理解
- 对TCP状态转换的理解
- TCP状态转换的理解
- 对TCP/IP的理解
- 对测试的新理解
- 对 DAPM 的新理解
- 对ListView新的理解
- 对NSNotificationCenter的新理解
- tcp状态机中time_wait状态的理解
- 对协议有无状态的理解
- 对状态模式的一点理解
- 对HTTP协议无状态的理解
- 对TCP上的SIP实现理解
- 我对tcp的初步理解
- 对TCP和UDP的理解
- 对TCP/IP的浅显理解
- 对TCP/IP协议的理解
- 对TCP/IP,socket,HTTP的理解
- LeetCode 532. K-diff Pairs in an Array
- spring和dubbo整合时可能会出现spring包冲突问题
- Firefox 此链接不安全去除
- FP-growth算法发现频繁项集(二)——发现频繁项集
- 利用ViewPager实现的Android轮播|定时器的使用
- 对TCP状态的新理解
- Android发版中存在的一些坑
- 零碎知识点
- Android LoadManager无法回调onLoadFinish问题
- 算法导论(一)——渐近分析,递归解法
- sass文件的中的@mixin 和%
- php源码安装扩展
- MSC Patran 2017.0.1 Win64 1DVD
- (滚动加载图片)懒加载实现原理