4.23、TCP状态转换(为什么四次挥手)

news2025/1/13 16:51:59

4.23、TCP状态转换

  • 1.TCP状态转换图
  • 2.为什么需要四次挥手,状态转换

1.TCP状态转换图


在这里插入图片描述

2.为什么需要四次挥手,状态转换

  • 2MSL(Maximum Segment Lifetime)
    主动断开连接的一方, 最后进入一个 TIME_WAIT状态, 这个状态会持续: 2msl
    • msl: 官方建议: 2分钟, 实际是30s

    TCP 连接主动关闭方接收到被动关闭方发送的 FIN 和最终的 ACK 后,连接的主动关闭方必须处于 TIME_WAIT 状态并持续 2MSL 时间。

    这样就能够让 TCP 连接的主动关闭方在它发送的 ACK 丢失的情况下重新发送最终的 ACK

    主动关闭方重新发送的最终 ACK 并不是因为被动关闭方重传了 ACK(它们并不消耗序列号,被动关闭方也不会重传),而是因为被动关闭方重传了它的 FIN。事实上,被动关闭方总是重传 FIN 直到它收到一个最终的 ACK

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/444096.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

实例化构造方法static统统都学会

文章目录 前言一、实例化是什么?二、构造方法1.概念2.特性3.. 如果用户没有显式定义,编译器会生成一份默认的构造方法,生成的默认构造方法一定是无参的 四.static1.static修饰成员变量2.static修饰成员方法3.static成员变量初始化 总结 前言 …

AR实战-基于Krpano的多场景融合及热点自定义

背景 在之前的博客中,曾经介绍了关于Krpano的相关知识,原文:全景自动切片技术-krpano初识。简单讲解了基于krpano1.19-pr13下单张全景照片的处理与展示。随着实景中国在各地的落地生根,三维园区、三维景区、三维乡村等等需求的集中…

ERP系统给企业管理带来哪些改变?

企业资源计划(ERP)系统是一种综合性的管理工具,它可以集成和管理企业内部所有的业务流程和信息。自上世纪90年代以来,ERP系统已成为许多企业的重要工具,为企业管理带来了巨大的变革。 第一,ERP系统可以将企…

ArrayList与顺序表

目录 ​编辑 一、线性表 二、顺序表 1、接口的实现 (1)打印顺序表 (2)新增元素 (3)判定是否包含某个元素 (4)查找某个元素对应的位置下标 (5)获取 …

基于QTableView中的MVD代理添加总结

目录 1、Qt中MVD说明 1.1 View 1.2 Delegate 1.3 Model/View的基本原理 2、代码是现实示例 2.1 设置样式文件 2.2 set base attribute 2.3 设置model 2.4 设置表头 2.5 设置数据 2.6 添加代理控件 2.6.1 添加 QSpinBox 代理 2.6.2 添加 QComboBox 代理 2.6.…

【JS】vis.js使用之vis-timeline使用攻略,vis-timeline在vue3中实现时间轴、甘特图

vis.js使用之vis-timeline使用攻略,vis-timeline实现时间轴、甘特图 1、vis-timeline简介2、安装插件及依赖3、简单示例4、疑难问题集合1. 中文zh-cn本地化2. 关于自定义class样式无法被渲染3. 关于双向数据绑定 vis.js是一个基于浏览器的可视化库,它提供…

深度探索vector

vector是什么 ? vector就是一个可以自动扩充的array。 源码解析 vector主要是通过三个指针来维护的,分别是起点,当前终点,以及当前最大空间 sizeof(vector对象) 3 * 指针大小 vector每当遇到空间不同的情况,都会…

Windows逆向安全(一)之基础知识(十三)

Switch语句 先前讲了分支结构的if else形式,除此之外还有一种分支结构:switch 此次就来以反汇编的角度研究switch语句,并与if else进行比较 Switch语句的使用 有关Switch语句在vc6.0中生成的反汇编可分为4种情况,这4种情况的区…

不用科学上网,免费的GPT-4 IDE工具Cursor保姆级使用教程

1、Cursor 编辑器 可以直接官方网站下载:https://www.cursor.so/ (这里以Mac为例) 这是一款与OpenAI合作并且基于GPT4的新一代辅助编程神器,它支持多种文件类型,支持格式化文本、多种主题、多语言语法高亮、快捷键设…

react-7 组件库 Ant Design Mobile(移动端)

1.安装组件库 npm install --save antd-mobile 常用组件 tabbar 底部导航 Swiper 轮播图(走马灯) NavBar(顶部返回累) 配合 Dialog,Toast InfiniteScroll 无限滚动(实现下拉刷新) Skeleto…

ROS学习第九节——服务通信

1.基本介绍 服务通信较之于话题通信更简单些,理论模型如下图所示,该模型中涉及到三个角色: ROS master(管理者)Server(服务端)Client(客户端) ROS Master 负责保管 Server 和 Client 注册的信息,并匹配话题相同的 Server 与 Client &#…

远程控制电脑的软件哪个比较好用

有多种软件选项可用于远程控制计算机,最适合您的软件选项取决于您的具体需要和要求。 以下是一些最流行的远程控制软件选项及其功能和优势: TeamViewer TeamViewer 是使用最广泛的远程控制软件选项之一。 它具有用户友好的界面,并提供文件传…

Vue核心 Vue简介 初识

Vue核心 Vue简介 初识 1.1.Vue核心 Vue简介 初识 1.1.1.Vue核心 Vue简介 初识 英文官网 中文官网 1.1.2.介绍与描述 Vue 是一套用来动态构建用户界面的渐进式JavaScript框架 构建用户界面:把数据通过某种办法变成用户界面渐进式:Vue可以自底向上逐层…

YOLO V8实战入门篇 | Anaconda3 | ultralytics

目录 一、虚拟环境1.1 Anaconda3 安装1.2 创建适用YOLO V8的虚拟环境 二、YOLO v82.1 YOLO v8简介2.2 下载YOLO v8源码2.3 安装依赖 三、运行目标检测模型 一、虚拟环境 1.1 Anaconda3 安装 https://blog.csdn.net/weixin_42855758/article/details/122795125 参考这个链接&a…

NDK OpenCV 身份证信息离线识别

NDK系列之OpenCV 身份证信息离线识别技术实战,本节主要是通过OpenCV C库,实现身份证信息识别,如身份证号码识别,本节使用到的技术点同样适用于车牌号识别、银行卡号码识别等。 实现效果: 本节主要内容: 1…

数据库底层运行原理之——事务管理器

一般所有关系型数据库内部都有自己的事务机制,进程是如何保证每个查询在自己的事务内执行的,通过这篇文章来简单介绍一下。 我们可以理解为数据库是由多种相互交互的组件构成的,数据库一般可以用如下图形来理解: 事务管理器就是今…

两种方法,计算带地形起伏的地表面积

很多同学会经常计算占地面积, 就会用到投影面积计算和椭球体面积计算; 还有一些,需要去计算表面积, 也就是带地形起伏的地表面积, 这......咋办呢? 我们来介绍两种方法, 计算下面这个区域的地表面积—— 两种方法各有优势, 大家各取所需 方法一:表面体积工具 这…

【hello Linux】进程优先级

目录 1. 基本概念 2. 查看系统进程:(包括优先级) 2.1 使用命令查看系统进程 2.2 各字段分析 2.3 优先级的修正解释 2.4 使用 top 命令修改优先级 其他概念 Linux🌷 1. 基本概念 进程的优先权( priority)&…

Java版企业电子招投标系统源代码之电子招投标系统建设的重点和未来趋势

项目说明 随着公司的快速发展,企业人员和经营规模不断壮大,公司对内部招采管理的提升提出了更高的要求。在企业里建立一个公平、公开、公正的采购环境,最大限度控制采购成本至关重要。符合国家电子招投标法律法规及相关规范,以及…

网工神器:PNETLab模拟器踩坑过程(一)

0、前言 由于工作需要,想测试一下SD-WAN,手边既没有测试环境又没有测试设备。突然想到为什么不用模拟器测试。经过我一番操作好像发现了新大陆,没想到模拟器的世界发生了翻天覆地的变化。真是“一日学习一日功,一日不学十日空”。…