当前位置: 首页 > news >正文

【计算机网络】三次握手、四次挥手

问:三次握手 四次挥手

TCP 连接过程是 3 次握手,终止过程是 4 次挥手

3次握手

第一步:客户端向服务器发送一个带有 SYN(同步)标志的包,指示客户端要建立连接。
第二步:服务器收到客户端的请求后,回复一个带有 SYN(同步)和 ACK(确认)标志的包。 SYN 标志表示服务器也愿意建立连接,ACK 标志确认收到客户端的请求。
第三步:客户端收到服务器的回复后。再发送一个带有 ACK 标志的包,确认收到服务器的回复。
在这里插入图片描述

上图中的这个例子有点勉强哈,而我们还需要记住seq为初始序号,ack为确认号,保证了传输层的可靠性,当然课本里面也是这么说的。

TCP3次握手其实就是TCP应用在发送数据前通过TCP协议跟通信对方协商好连接信息,建立起TCP的连接关系,三次握手的主要作用就是为了确认双方的接收和发送能力是否正常,首先第一次握手:客户端发送syn报文,并进入syn_send同步已发送状态,等待服务器的确认;第二次握手:服务器收到syn报文,需要给客户端发送ACK确认报文,同时服务器也要向客户端发送一个syn报文,此时服务器进入syn_rcvd同步收到的状态;第三次握手:客户端收到syn加ACK报文,向服务器发送确认包,客户端进入确认连接状态,待服务器收到ack确认包也会进入确认连接状态。

4次挥手

第一步:当客户端想关闭连接时,发送一个带有 FIN(结束)标志的包给服务器。
第二步:服务器收到客户端的关闭请求时,发送一个带有 ACK 标志的包给客户端,确认收到关闭请求。
第三步:服务器进入 CLOSE_WAIT 状态,继续向客户端发送数据,直到服务器准备关闭连接。 在服务器准备关闭连接时,服务器发送一个带有 FIN 标志的包给客户端。
第四步:客户端收到服务器的关闭请求后,发送一个 ACK 标志的包给服务器,确认收到服 务器的关闭请求

在这里插入图片描述
为什么要四次挥手,因为可能存在未发送完成的数据。(参考课本,第一次挥手没有发送ACK标志)

相关文章:

【计算机网络】三次握手、四次挥手

问:三次握手 四次挥手 TCP 连接过程是 3 次握手,终止过程是 4 次挥手 3次握手 第一步:客户端向服务器发送一个带有 SYN(同步)标志的包,指示客户端要建立连接。 第二步:服务器收到客户端的请求…...

Spring Boot中的全局异常处理:@RestControllerAdvice的应用

在现代Web开发中,异常处理是一个不可或缺的部分。良好的异常处理不仅能提高系统的健壮性,还能提升用户体验。在Spring Boot中,全局异常处理的实现可以通过使用RestControllerAdvice注解来完成。本文将详细介绍如何使用RestControllerAdvice和…...

指令数据的构建

文章目录 基于现有的 NLP 任务数据集构建基于日常对话数据构建基于合成数据构建指令微调(Instruction Tuning)是指使用自然语言形式的数据对预训练后的大语言模型进行参数微调,这一术语由谷歌研究员在 2022 年的一篇 ICLR 论文中正式提出。在另外一些参考文献中,指令微调也…...

论文解读(14)-GeoCLIP

加油,加油! 原文: GeoCLIP: Clip-Inspired Alignment between Locations and Images for Effective Worldwide Geo-localization (2309.16020 (arxiv.org)) 这一篇的重点在于范围放宽到全球了 摘要 首先指出了目前…...

MySQL基础练习题16-电影评分

题目 准备数据 分析数据 总结 题目 查找评论电影数量最多的用户名。如果出现平局,返回字典序较小的用户名。 查找在 February 2020 平均评分最高 的电影名称。如果出现平局,返回字典序较小的电影名称。 准备数据 ## 创建库 create database db; u…...

CRMEB-众邦科技 使用笔记

1.启动项目报错 Unable to load authentication plugin ‘caching_sha2_password’. 参考&#xff1a;http://t.csdnimg.cn/5EqaE 解决办法&#xff1a;升级mysql驱动 <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</ar…...

npm与webpack的学习笔记

npm 定义&#xff1a;npm是Node.js标准的软件包管理器。它起初是作为下载和管理Node.js包依赖的方式&#xff0c;但其现在也已成为前端JavaScript中使用的工具。 包 包&#xff1a;将模块、代码、其他资料聚合成一个文件夹 包的分类&#xff1a; 项目包&#xff1a;主要用…...

Vue 生命周期选项:2.x 与 3.x 的全面解析及案例分享二

目录 Vue3.X生命周期 介绍 流程图 案例 ​​​​​​​this.$nextTick Vue 生命周期选项:2.x 与 3.x 的全面解析及案例分享一-CSDN博客 Vue3.X生命周期 介绍 beforeCreate:在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。此时无法访…...

Linux centos7 安装sftp

这里写自定义目录标题 指定 SSH 默认端口 (通常是22)添加自定义端口确保 SFTP 子系统配置存在匹配自定义端口的配置 在 CentOS 7 上安装 SFTP 并使用自定义端口 22345 启动&#xff0c;同时不影响现有的 SSH 登录&#xff0c;可以按照以下步骤进行配置&#xff1a; 步骤 1: 安…...

Java未来还是霸主吗?Java 在当今企业中的未来到底是什么?

Java 及其生态系统对于许多现代企业的成功至关重要。它是一种多功能语言&#xff0c;对许多用例提供强大支持&#xff0c;并具有强大的新功能来应对棘手的情况。但您可能会问自己&#xff1a;Java 的未来是什么&#xff1f; 尽管自 1999 年以来 Java 一直是软件开发领域的关键角…...

【C++】类和对象——Lesson2

Hi~&#xff01;这里是奋斗的小羊&#xff0c;很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~~ &#x1f4a5;&#x1f4a5;个人主页&#xff1a;奋斗的小羊 &#x1f4a5;&#x1f4a5;所属专栏&#xff1a;C &#x1f680;本系列文章为个人学习笔记…...

常用传感器讲解十五--触摸传感器(KY-036)

常用传感器讲解十五–触摸传感器&#xff08;KY-036&#xff09; 具体讲解 这个比较简单&#xff0c;就是触摸后给个信号 电路连接 在Arduino上将VCC引脚连接到5V。 将GND连接到Arduino的GND。 将OUT连接到Arduino上的D2 代码实现 void setup() {pinMode(2, INPUT);Seri…...

web后端--Spring事务管理

事务也要日志配置 !!!!debug前面记得加空格 logging:level:org.springframework.jdbc.support.JdbcTransactionManager: debugrollbackFor 默认情况下&#xff0c;只有出现RunTimeException才会回滚事务&#xff0c;rollbackfor属性用于控制出现何种异常类型&#xff0c;回滚…...

【Docker系列】Docker 中-d 和-it 的区别

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

PHP回收废品平台系统小程序源码

&#x1f30d;绿色行动&#xff0c;从“回收废品平台系统”开始&#xff01;&#x1f69a; &#x1f6aa;【家门口的环保站&#xff0c;废品不再无处安放】 你是否曾为家里的旧报纸、空瓶子、废旧电器等废品头疼不已&#xff0c;不知该如何处理&#xff1f;现在&#xff0c;“…...

IIS解析漏洞~ IIS7.漏洞分析

IIS解析漏洞 文件解析漏洞是由于中间件错误的将特殊格式的文件解析成可执行网页文件(脚本)&#xff0c;配合文件上传漏洞进行GetShell的漏洞&#xff01; 1.2&#xff1a;IIS7.X 在IIS7.0和IIS7.5版本下也存在解析漏洞&#xff0c;在默认Fast-CGI开启状况下&#xff0c;在一个文…...

基于python+django的病人人信息管理系统及安全策略分析设计与实现

博主介绍&#xff1a; 大家好&#xff0c;本人精通Java、Python、C#、C、C编程语言&#xff0c;同时也熟练掌握微信小程序、Php和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验&#xff0c;能够为学生提供各类…...

前端必知必会-html表单的input属性

文章目录 HTML 输入属性value 属性readonly 属性disabled 属性size 属性maxlength 属性min 和 max 属性multiple 属性pattern 属性placeholder 属性required 属性step 属性autofocus 属性height 和 width 属性list 属性autocomplete 属性总结 HTML 输入属性 本章介绍 HTML <…...

设计模式:详细拆解策略模式

策略模式 既然是详解&#xff0c;就不以案例开头了&#xff0c;直奔主题&#xff0c;先来看看什么是策略模式。 模式定义 定义一系列的算法&#xff0c;把它们一个个封装起来&#xff0c;并且使它们可相互替换。本模式 使得算法可独立于使用它的客户而变化。 结构 Strategy&a…...

Python正则表达式面试题分析总结

Python正则表达式面试题主要围绕Python内置的re模块展开&#xff0c;考察的是应聘者对于正则表达式的理解、使用以及在实际问题中的应用能力。以下是对这些面试题的详细分析总结&#xff1a; 正则表达式基础&#xff1a; re模块简介&#xff1a;Python中的re模块提供了正则表达…...

LeetCode题练习与总结:超过经理收入的员工--181

一、题目描述 SQL Schema > Pandas Schema > 表&#xff1a;Employee ---------------------- | Column Name | Type | ---------------------- | id | int | | name | varchar | | salary | int | | managerId | int | ----…...

LInux:循环语句

LInux&#xff1a;循环语句 if-else语句 if 语句语法格式 if [ $a -gt $b ]; then echo "a>b" fiif [ $a -gt $b ]; then echo "a>b"echo "a!b"echo "true" fiif-else语句 if-else 语句语法格式 if [ $a -gt $b ]; then echo &q…...

NumPy和Pandas中的布尔索引

布尔索引&#xff08;Boolean Indexing&#xff09;是数据分析中一种强大且常用的技术&#xff0c;用于通过布尔值数组&#xff08;即包含 True 和 False 的数组&#xff09;来选择数据子集。布尔索引可以用于 NumPy 数组、Pandas 数据框等数据结构。 布尔索引是一种非常有用的…...

.NET 一款反序列化打入冰蝎内存马的工具

01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等&#xff08;包括但不限于&#xff09;进行检测或维护参考&#xff0c;未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失&#xf…...

FPGA实现SDI视频接收转USB3.0传输,GS2971+FT601方案,提供4套工程源码和QT上位机源码

目录 1、前言工程概述免责声明 2、相关方案推荐本博已有的 SDI 编解码方案本博已有的FPGA驱动USB通信方案FPGA基于GS2971的SDI视频解码方案FPGA基于FT601的USB3.0视频传输方案 3、详细设计方案设计原理框图SDI 相机GS2971-SDI解码芯片解读BT1120转RGB888图像缓存FT601-USB3.0芯…...

2024第26届中国(深圳)国际清洁能源、储能科技与新型电力展览会

源网荷储充产业链盛会&#xff0c;2024年续写辉煌&#xff0c;第26届中国国际清洁能源、储能技术与新型电力展览会11月11日将启幕&#xff1b; 2024第二十六届中国国际储能技术与设备展览会 China International Energy Storage Technology and Equipment Exhibition 2024第二…...

计算机基础(Windows 10+Office 2016)教程 —— 第6章 电子表格软件Excel 2016(下)

电子表格软件Excel 2016 6.4 Excel 2016的公式与函数6.4.1 公式的概念6.4.2 公式的使用6.4.3 单元格的引用6.4.4 函数的使用6.4.5 快速计算与自动求和 6.5 Excel 2016的数据管理6.5.1 数据排序6.5.2 数据筛选6.5.3 分类汇总6.5.4 分组显示6.5.5 合并计算 6.6 Excel 2016的图表6…...

npm install 巨慢,导致Jenkins编译报错问题解决——基础积累

今天在弄后台系统的服务器编译时&#xff0c;一直报错。报错信息为&#xff1a;系统找不到指定的路径。 最后进入到服务器中&#xff0c;找到E:/Jenkins/WorkSpace/JiePeiAiMomsAdmin_FenZhi这个路径&#xff0c;然后通过cmd进入到命令提示符中。 然后通过npm i进行安装&#…...

Stable Diffusion 使用详解(5)---- 光影效果与场景融入

目录 背景 底模选取 提示词 ControlNet openpose illumination 效果 背景 有一家服装品牌店&#xff0c;需要绘制一款模特穿着某个英文LOG的漂亮服装&#xff0c;这是一种很常见UI作画需求&#xff0c;这类需求实际上可以透过选取正确的底模 controlNet 进行完美的实现…...

5G三大场景:eMBB、mMTC、uRLLC

1G,2G,3G,4G,5G有什么区别&#xff1f;5G的优势在哪&#xff1f;有什么应用&#xff1f; 1G,2G,3G,4G,5G有什么区别&#xff1f;5G的优势在哪&#xff1f;有什么应用&#xff1f;_3g4g5g的区别和作用-CSDN博客 从1G到4G&#xff0c;移动通信的核心是人与人之间的通信&#xff0…...

程序员做网站美工能过关吗/百度云搜索引擎官网

【Struts2国际化资源文件定义的3种范围方法】1&#xff09;全局的国际化资源文件&#xff0c;对所有的Action和View都有效定义方式&#xff1a;在struts.xml中增加全局资源文件定路径定义&#xff1a; <constant name"struts.custom.i18n.resources" value…...

外贸网站网站建设/鞋子软文推广300字

不经意间&#xff0c;从事前端开发已经有7年了&#xff0c;慢慢的&#xff0c;我从最开始的写简单的表单验证脚本和滑动效果&#xff0c;过渡到基于OOP的类库开发&#xff0c;然后又经历了长时间的JavaScript模块化开发过程&#xff0c;现在&#xff0c;我开始觉得应该重新整理…...

网站个人主页怎么做/百度seo培训要多少钱

第四章课后作业(6—27)6.试按下列要求分别编制程序段。(1)把标志寄存器中符号位SF置“1”。(2)寄存器AL中高、低四位互换。(3)由寄存器AX、BX组成一个32位带符号数(AX中存放高16位)&#xff0c;试求这个数的负数。(4)现有三个字节存储单元A、B、C&#xff0c;在不使用ADD和ADC指…...

网站建设实训报告心得体会/社群营销

MySQL - 扩展性 1 概述&#xff1a;人多力量未必大我们应该接触过或者听说过数据库的性能瓶颈问题。对于一个单机应用而言&#xff0c;提升数据库性能的最快路径就是氪金 - 买更高性能的数据库服务器&#xff0c;只要钱到位&#xff0c;性能不是问题。 但是当系统性能增加到一定…...

做博彩类的网站/全国疫情防控最新数据

1、区别 watch 中的函数是不需要调用的 computed 内部的函数调用的时候不需要加() watch 属性监听 监听属性的变化 computed: 计算属性通过属性计算而得来的属性 watch 需要在数据变化时执行异步或开销较大的操作时使用 对于任何复杂逻辑或一个数据属性在它所依赖的属性发生…...

广州城市建设档案馆网站/百度关键词购买

用户对客户端设备补丁更新保持怀疑态度&#xff0c;因为他们担心他们的计算机会在未经许可的情况下突然自己重启&#xff0c;丢失数据。虽然&#xff0c;您可以在更新后推迟重新启动并安排选择的时间&#xff0c;具体取决于更新Windows在未经您许可的情况下仍可能在一段时间后重…...