我是靠谱客的博主 秀丽耳机,最近开发中收集的这篇文章主要介绍11-TCP 协议(状态机)1. TCP 状态机2. 连接建立和断开时序图3. 状态机解读4. 总结,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
1. TCP 状态机
TCP 协议太复杂了,连接的建立与终止在前面都已经有所介绍,所有的规则都可以用一张 TCP 状态变迁图来表示。
图1 TCP 状态机
这张图非常经典,网络上都可以找得到,但是这里我用彩色线条重新画了一遍。接下来就是关于图 1 的几点说明:
- 绿色粗实线和蓝色粗虚线表示正常的状态变迁。
- 红色细实线表示异常变迁。
- 顶层的 CLOSED 状态是一个假想的起点和终点,并不是一个真正的状态。
2. 连接建立和断开时序图
这里再次将三次握手和四次挥手的时序图画出来,同时标记上变迁的状态。如图 2 所示。
图2 TCP 正常连接建立和终止对应的状态
3. 状态机解读
图 1 中,可以看到有很多异常的状态变迁,其中有同时打开(两个服务器之间互相请求建立连接);还有同时关闭(进入 CLOSING 状态)。
并不是所有系统都能够实现同时打开的功能,比如早期的内核版本并不支持 LISTEN 到 SYN_SENT 的变迁。
SYN_RCVD 变迁到 LISTEN 状态是有条件的:只有正常的进入到 SYN_RCVD 状态时(即蓝色粗虚线,从 LISTEN 进入 SYN_RCVD),然后收到 RST 段,就又可以回到 LISTEN 状态。
4. 总结
- 掌握 TCP 的 11 种状态
最后
以上就是秀丽耳机为你收集整理的11-TCP 协议(状态机)1. TCP 状态机2. 连接建立和断开时序图3. 状态机解读4. 总结的全部内容,希望文章能够帮你解决11-TCP 协议(状态机)1. TCP 状态机2. 连接建立和断开时序图3. 状态机解读4. 总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复