| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> “三次握手,四次挥手,linux操作系统实用教程第二版 -> 正文阅读 |
|
[网络协议]“三次握手,四次挥手,linux操作系统实用教程第二版 |
这个过程可理解为: 还有一种情况是已经失效的客户端发出的请求信息,由于某种原因传输到了服务器端,服务器端以为是客户端发出的有效请求,接收后产生错误。 所以我们需要“第三次握手”来确认这个过程: 通过第三次握手的数据告诉服务端,客户端有没有收到服务器“第二次握手”时传过去的数据,以及这个连接的序号是不是有效的。若发送的这个数据是“ ======================================================================= 还是先上图: 聚散终有时,TCP 断开连接是通过四次挥手方式。
上图是客户端主动关闭连接 : 一次挥手
二次挥手
ACK 三次挥手
四次挥手
你可以看到,每个方向都需要一个 FIN 和一个 ACK,因此通常被称为四次挥手。
再来回顾下四次挥手双方发
从上面过程可知,服务端通常需要等待完成数据的发送和处理,所以服务端的
为的是确认服务器端是否收到客户端发出的 ACK 确认报文,当客户端发出最后的 ACK 确认报文时,并不能确定服务器端能够收到该段报文。 所以客户端在发送完 ACK 确认报文之后,会设置一个时长为 2MSL 的计时器。 MSL 指的是 Maximum Segment Lifetime:一段 TCP 报文在传输过程中的最大生命周期。 2MSL 即是服务器端发出为 FIN 报文和客户端发出的 ACK 确认报文所能保持有效的最大时长。 服务器端在 1MSL 内没有收到客户端发出的 ACK 确认报文,就会再次向客户端发出 FIN 报文:
客户端再次向服务器端发出 ACK 确认报文,计时器重置,重新开始 2MSL 的计时。
所以,客户端要经历时长为 2SML 的 TIME-WAIT 阶段;这也是为什么客户端比服务器端晚进入 CLOSED 阶段的原因。 这里同样有个动态过程的图示: 好了,我们的文章到这就…… 唉,不对,就这么完了,这会我好像知道了,但过会儿那就说不定了。 没关系,我苦思冥想,找了两个大白话的例子,保准你忘不了。 =========================================================================== 在二十年前的农村,电话没有普及,手机就更不用说了,所以,通信基本靠吼。 老张和老王是邻居,这天老张下地了,结果家里有事,热心的邻居老王赶紧跑到村口,开始叫唤老王。
“你老婆要生了,赶紧回家吧!” 老张风风火火地赶回家,老婆顺利地生了个带把的大胖小子。 握手的故事充满了幸福和美满。 =========================================================================== 假如博主有一个女朋友——只是“假如”,该死的,这不争气的眼泪,怎么止不住地滴在键盘上。 由于博主上班九九六,下班肝博客,导致没有时间陪女朋友,女朋友忍无可忍。
沙雕博主小心翼翼地装起了自己的青轴机械键盘。
|
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 10:24:15- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |