IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> TCP协议——三次握手,四次挥手 -> 正文阅读

[网络协议]TCP协议——三次握手,四次挥手

TCP协议——连接管理机制


正常情况,TCP要经历三次握手建立连接,四次挥手断开连接

三次握手

在这里插入图片描述

第一次握手:主机A向主机B发起连接(SYN),主机B在收到SYN后,确认自己的接收能力没有问题
第二次握手:主机B返回一个ACK(应答消息)+SYN给主机A,主机A在收到主机B的SYN和ACK后,知道自己的发送能力和接收能力没有问题
第三次握手:主机A向主机B发送ACK,主机B收到ACK之后确认自己的发送能力没有问题,连接成功

问题:
三次握手必须是三次吗,能四次吗?两次呢?

不一定是三次,可以四次握手,但没必要,将主机B的ACK和SYN分开发送,但是这样会使网络开销增大。两次不行,三次握手的一部分目的是为了彼此双方的发送能力和接收能力都正常,两次的话就无法知道主机B的发送能力,所以不行。

四次挥手

在这里插入图片描述

第一次挥手:主机A向主机B发送结束报文段FIN,请求断开连接
第二次挥手:主机B在接收到FIN后,操作系统内核会返回一个ACK给主机A,表示收到请求
第三次挥手:主机B向主机A发送一个FIN,也请求断开连接
第四次挥手:主机A收到主机B的FIN后,回复一个ACK,表示收到请求,主机B收到ACK后彻底断开连接

问题:
四次挥手能不能三次挥手?为什么?

不一定
不能:ACK是由操作系统内核控制的,在收到FIN时,就会回复ACK,FIN是由应用程序控制的,在程序中执行close()时触发FIN发送,二者不在同一时机发送,所以不行。
能:当程序中调用close()时间和操作系统内核发送ACK时间错差不大时,就会触发TCP的”延时应答+捎带应答“机制。

TCP协议状态

1.ESTABLISHED连接成功,可以进行后续通信。
2.LISTEN服务器端进入的状态,服务器准备就绪,允许客户端随时来建立连接
3.CLOSE_WAIT断开连接的中间状态,一般出现在收到FIN,返回ACK到发送FIN这个时间里
4.TIME_WAIT断开连接的状态(谁先断开连接,谁进入TIME_WAIT),防止最后一个ACK丢包,当ACK发送完之后,并不会立刻就销毁连接,而是以TIME_WAIT状态,等待一定时间

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-14 14:29:09  更:2021-08-14 14:31:51 
 
开发: 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/25 19:16:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码