学习笔记17——通俗易懂的三次握手四次挥手

提供一种博主本人觉得很好理解的三次握手和四次挥手场景,帮助记忆

  • 在这里插入图片描述
  • 三次握手过程
    • 初始状态:客户端处于closed状态,服务器处于listen监听转台
    • 客户端向服务器发送一个SYN连接请求,并告诉对方自己此时初始化序列号为x,发送之后处于SYN_send状态
    • 服务器收到客户端发来的请求,如果同意建立连接,那么就也发送一个SYN=1的信号,并发送自己的初始化序列号seq = y,同时为了告诉客户端自己下一步想要接收的信息(为了告诉客户端你的消息我收到了),发送确认序列号ack = x+1,并将ACK置为1发送回去,服务器此时为SYN_Receive状态【站在客户端,此时发送信息并得到回应,她会认为这是个靠得住的服务器,但是对于服务器来说,你发送我就全盘接收可太没有保障了,我都不知道你是谁,也不知道你到底有没有发送能力,就白白留一个连接等着你,所以服务器不答应两次握手,他也要试试客户端是真有能力还是假有能力,此时迎来第三次握手】
    • 第三次握手是客户端收到服务端的返回后,客户端发送同步序列号seq = x+1,并对服务器端的序列进行确认响应,将ACK置为1并回复ack=y+1,客户端转为established,服务器收到这个消息之后也转为established。
  • 在这里插入图片描述
  • 四次挥手流程
    • 1、客户端:我要和你离婚,这是离婚协议书,我已经签了你签个字吧【发送FIN=1,并发送此时的序列号seq=u,进入FIN_WAIT1】
    • 2、服务端:啊?你再说一遍?你要和我离婚,我还有好多愿望没和你一起实现呢【发送ACK=1,ack=u+1,seq=v,服务端进入CLOSE_WAIT,客户端听了进入了FIN_WAIT2】你听我说啊巴拉巴拉
    • 3、服务器端见到自己挽回了这么久,客户端也没有说一句话,知道没有希望了:好吧,缘分尽了莫强求。他狠下心来签了离婚协议书【FIN=1,ACK=1,seq=w,ack=u+1,服务端进入LAST_ACK状态】
    • 4、客户端冷静的看到签好的离婚协议书,说:从此一别两宽吧,她顿了一下,想看看服务器还要说什么,毕竟夫妻一场以后再也见不到了,心中还是空落落的,【ACK=1,seq=u,ack=w+1,客户端发送消息完进入TIME_WAIT,服务器收到直接进入CLOSED】,可过了一会儿见还是一阵沉默,她心想:”算了,一切都结束了!“【客户端进入CLOSED】

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

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

相关文章

TYPE-C接口取电芯片介绍和应用场景

随着科技的发展,USB PDTYPE-C已经成为越来越多设备的充电接口。而在这一领域中,LDR6328Q PD取电芯片作为设备端协议IC芯片,扮演着至关重要的角色。本文将详细介绍LDR6328Q PD取电芯片的工作原理、应用场景以及选型要点。 一、工作原理 LDR63…

【昕宝爸爸小模块】HashMap用在并发场景存在的问题

HashMap用在并发场景存在的问题 一、✅典型解析1.1 ✅JDK 1.8中1.2 ✅JDK 1.7中1.3 ✅如何避免这些问题 二、 ✅HashMap并发场景详解2.1 ✅扩容过程2.2 ✅ 并发现象 三、✅拓展知识仓3.1 ✅1.7为什么要将rehash的节点作为新链表的根节点3.2 ✅1.8是如何解决这个问题的3.3 ✅除了…

【SSO】统一授权中心v1.0.0版本正式上线(多租户)

目录 背景 体验 技术栈 菜单 示例 背景 为了方便权限管理、用户登录授权、应用授权等,特地开发了当前的统一授权中心。 体验 邮箱注册即可登录体验 后台系统:https://sso.behappyto.cn/#/switch 技术栈 vue3tsspringbootmybatismysql 菜单 …

SpringBoot用MultipartFile.transferTo传递相对路径的问题

问题描述: 打算给自己的项目添加一个上传文件保存功能,于是我使用MultipartFile.transferTo()来完成这个功能,由于我的项目要部署到服务器,所以我使用了相对路径把上传的文件保存到当前项目的工作目录下,但是报错了&am…

C++上位软件通过Snap7开源库访问西门子S7-200/LOGO PLC/合信M226ES PLC V存储区的方法

前言 在前面例程中谈到了C 通过Snap7开源库S7通信库跟西门子S7-1200PLC/S7-1500PLC以及合信CTMC M226ES PLC/CPU226 PLC通信的方式方法和应用例程。但是遗憾的是Snap7中根据官方资料显示只能访问PLC的 DB区、MB区、C区、T区 、I区、Q区,并没有提到有关如何访问S7-20…

jsx的语法规则?

JSX&#xff08;JavaScript XML&#xff09;是一种在 JavaScript 中编写类似 XML 的语法扩展&#xff0c;常用于 React 应用程序中描述用户界面。下面是 JSX 的一些基本语法规则&#xff1a; 嵌套规则&#xff1a;JSX 元素可以相互嵌套&#xff0c;并且需要使用闭合标签。 <…

Excel4:数据匹配与连接

数据&#xff1a;八月成交数据&八月获客数据 业务1 八月成交数据表格中有三个子表&#xff0c;需要后两个子表连接到第一个表中。 思路 首先需要对业务组名称进行分裂&#xff0c;同时需要用到一款函数可以自动识别并匹配数据&#xff0c;这个函数就是vlookup&#xff0c;也…

在学习爬虫前的准备

1. 写一个爬虫程序需要分几步 获取网页内容。 我们会通过代码给一个网站服务器发送请求&#xff0c;它会返回给我们网页上的内容。 在我们平时使用浏览器访问服务器内容是&#xff0c;本质上也是向服务器发送一个请求&#xff0c;然后服务器返回网页上的内容。只不过浏览器还会…

K8s Pod详解

1.Pod结构 每个Pod中都可以包含一个或者多个容器&#xff0c;这些容器可以分为两类&#xff1a; 用户程序所在的容器&#xff0c;数量可多可少 Pause容器&#xff0c;这是每个Pod都会有的一个根容器&#xff0c;它的作用有两个&#xff1a; 可以以它为依据&#xff0c;评估整个…

恒创科技:解决Windows服务器磁盘空间不足的问题

​  服务器硬盘的大小是决定空间是否充足的主要因素。但在日常使用中&#xff0c;服务器和网站备份会消耗大量存储空间&#xff0c;如果维护不当&#xff0c;最终将耗尽您的容量。同样&#xff0c;日志文件、临时文件和数据库可以在硬盘驱动器上或回收站中无休止地建立。当您…

手把手教你升级GPT-4,内附详细步骤

目录 1、先介绍一下 GPT 升级 2、第一种: 免费升级 支付宝购买礼品卡给美区 apple id 充值 3、第二种&#xff1a;5分钟快速升级 方法 平时我会在朋友圈分享一些利用 GPT-4 画的图片&#xff0c;比如下面这个扑克牌风格的"黑红小狗武士"。 用 GPT-4 做绘画仅仅是…

如何使用宝塔面板部署Inis博客并实现无公网ip环境远程访问

文章目录 前言1. Inis博客网站搭建1.1. Inis博客网站下载和安装1.2 Inis博客网站测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar临时数据隧道2.2 Cpolar稳定隧道&#xff08;云端设置&#xff09;2.3.Cpolar稳定隧道&#xff08;本地设置&#xff09; 3. 公网访问测试总…

大创项目推荐 深度学习机器视觉车道线识别与检测 -自动驾驶

文章目录 1 前言2 先上成果3 车道线4 问题抽象(建立模型)5 帧掩码(Frame Mask)6 车道检测的图像预处理7 图像阈值化8 霍夫线变换9 实现车道检测9.1 帧掩码创建9.2 图像预处理9.2.1 图像阈值化9.2.2 霍夫线变换 最后 1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分…

ElasticSearch _update_by_query

根据查询条件进行数据更新 UPDATE job_call SET admin_id 0 WHERE admin_id 283; kibana.png 1.其中红色框的位置为query的内容&#xff0c;对应为SQL语句中的WHERE admin_id 283 2.划红色线的位置为修改内容&#xff0c;对应SQL中的SET admin_id 0。如果是更新多个字段s…

GBASE南大通用ExecuteReader 方法 (CommandBehavior)

使GBASE南大通用Connection 执行 CommandText 属性指定的 SQL 语句&#xff0c;并使用CommandBehavior 的一个值构建 GBaseDataReader。  语法 [Visual Basic] Public Function ExecuteReader ( _ behavior As CommandBehavior _ ) As GBaseDataReader [C#] public GB…

手轮脉冲平滑处理笔记

这是一个求手脉倍率((Hw_Control.mult_ratio)与手脉脉冲计数延迟次数即累计过去n次的平均值(Hw_Control.lag_num)之间关系算法的计算过程笔记文档 1、已知 mult_ratio=1时 lag_num=10; mult_ratio=10时 lag_num=20; .mult_ratio==100时 lag_num=30; 以此类推 2、设lag_num…

开关电源PFC电路原理详解及matlab仿真

PFC全称“Power Factor Correction”&#xff0c;意为“功率因数校正”。PFC电路即能对功率因数进行校正&#xff0c;或者说能提高功率因数的电路。是开关电源中很常见的电路。 在电学中&#xff0c;功率因数PF指有功功率P&#xff08;单位w&#xff09;与视在功率S&#xff08…

springboot 多数据源怎么配置在控制台的sql打印日志

程序员的公众号&#xff1a;源1024&#xff0c;获取更多资料&#xff0c;无加密无套路&#xff01; 最近整理了一波电子书籍资料&#xff0c;包含《Effective Java中文版 第2版》《深入JAVA虚拟机》&#xff0c;《重构改善既有代码设计》&#xff0c;《MySQL高性能-第3版》&…

每日学习更新(LQR+iLQR)

一直想更新一下根据cost to go来推导LQR&#xff0c;之前的话可能会直接套问题&#xff0c;但是对于理论有些困惑&#xff0c;正好最近在学习ilqr轨迹生成/优化&#xff0c;因此来推一下公式&#xff0c;以下参考B站Dr_CAN&#xff0c;链接如下&#xff1a; 【最优控制】5_线性…

Maven在java中的实现(对java的项目进行打包)

前言: 在前面的文章中我们了解了Maven的作用,并在自己的电脑上安装配置好了Maven,也成功的在IDEA中添加了Maven,但是具体的实现还是有一些些小问题,那么接下来,我将带着大家对Java项目进行一次打包,系统的完成一次,并在途中解决一下会出现的问题. 我以图片中选中的这个包为例,…