TCP三次握手四次断开

一、了解TCP

🍅TCP :传输控制协议,是一种面向连接的可靠的传输协议。     
 什么是可靠的传输协议?如何保障可靠传输?        

保证可靠性: 1.确认机制 2.重传输机制
什么是面向连接?如何保障面向连接?          

面向连接是在传递数据之前迚行协商,确保数据在后续的发送过程中双方能够収送以及能够发送到数据。

 保障面向连接:TCP三次握手机制
  TCP优化机制:1.重排序 2.滑劢窗口机制
  TCP主要应用环境: web浏览器 、电子邮件、FTP 等协议
TCP的主要特点:

1、TCP是面向连接(虚连接)的传输层协议。

2、每一条TCP连接只能有两个端点,每- 条TCP连接只能是点对点的。

3、TCP提供可靠交付的服务,无差错、不丢失、不重复、按序到达。可靠有序,不丢不重

4、TCP提供全双工通信。一发送缓存 准备发送的数据&已发送但尚未收到确认的数据

接收缓存按序到达但尚未 被接受应用程序读取的数据&不按序到达的数据

5、TCP面向字节流,把应用程序交下来的数据看成仅仅是一连串的无结构的字节流。

二、三次握手四次断开

TCP三次握手

(1)第一次握手:

客户端主动向服务端发送请求建立连接的报文,并进入同步已发送状态;SYN = 1 表示连接请求,seq = x 表示起始序列号,x表示一个随机数,通常为1。(SYN=1,seq=x)

(2)第二次握手:

服务端收到客户端的报文之后,返回一段确认接收到请求报文并同意创建新连接的报文,并进入同步收到状态。(SYN=1, ACK=1, seq=y, ack=x+1)

(3)第三次握手:

客户端接收到服务端的确认报文之后,也返回一段确认报文给服务端表示自己已收到确认报文并进入建立连接状态,服务端收到确认报文后也进入建立连接状态,此时双方成功建立TCP连接。(ACK=1, seq=x+1, ack=y+1)

注 :双方的确认号ack和序号seq的值,都是在彼此ack和seq值的基础上进行计算的,这样做保证了TCP报文传输的连贯性。一旦出现某一方发出的TCP报文丢失,便无法继续"握手",以此确保了"三次握手"的顺利完成。

TCP四次断开

TCP断开连接得过程分为4步,我们称之为四次挥手。
(1)服务器向客户端发送FIN,ACK位置1得TCP报文段。
(2)客户端向服务器返回ACK位置1得TCP报文段。
(3)客户端向服务器发送FIN,ACK位置1得TCP报文段。
(4)服务器向客户端返回ACK位置1得TCP报文段。
在TCP断开连接的过程中,有一个半关闭得概念。TCP一端可以中止发送数据,但是仍然可以接收数据,称之为半关闭:
(1)客户端发送FIN,半关闭了这个链接。服务器发送ACK接受半关闭。
(2)服务器继续发送数据,而客户端只发送ACK确认,不发送任何数据。
(3)当服务器所有数据传输完毕,就发送FIN报文段,客户再发送ACK报文段,这样就关闭了TCP连接。
 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

zookeeper --- 高级篇

一、zookeeper 事件监听机制 1.1、watcher概念 zookeeper提供了数据的发布/订阅功能,多个订阅者可同时监听某一特定主题对象,当该主题对象的自身状态发生变化时(例如节点内容改变、节点下的子节点列表改变等),会实时、主动通知所有订阅者 …

模仿火星科技 基于cesium+角度测量+高度测量+可编辑

1. 创建提示窗: 启动Cesium应用,地图场景将打开,欢迎您进入编辑模式。 在屏幕的一角,一个友好的提示窗将呈现,随着您的操作,它会为您提供有用的信息和指导。 2. 绘制面积: 轻轻点击鼠标左键&a…

mac安装open3d时候出现错误

在测试open3d是否正常顺利安装时&#xff0c;出现了如下错误&#xff1a; python -c "import open3d as o3d; print(o3d.__version__)" Traceback (most recent call last):File "<string>", line 1, in <module>File "/Users/huangzhe/…

解决selenium的“can‘t access dead object”错误

目录 问题描述 原因 解决方法 示例代码 资料获取方法 问题描述 在python执行过程中&#xff0c;提示selenium.common.exceptions.WebDriverException: Message: TypeError: cant access dead object 原因 原因是代码中用到了frame,获取元素前需要切换到frame才能定位到…

分析一下vue3下会造成响应式丢失的情况

前言 在我们从vue2过渡到vue3的时候&#xff0c;对于数据响应式的变化其实是懵懵懂懂的。从以往直接在data函数里面定义变量到每一次都要使用ref/reactive时&#xff0c;是有些不适应的。但问题不大&#xff0c;毕竟在大前端时代中&#xff0c;如果不及时跟上时代的步伐&#…

动手吧,vue移动端消息滚动组件

先看效果图&#xff1a; 1、模板部分 <transition name"fade-sport"><div class"v-message-roll" v-show"visible"><svg class"v-icon" viewBox"0 0 1024 1024" version"1.1" xmlns"http://…

上传图片视频

分布式文件系统MinIo MinIO提供多个语言版本SDK的支持&#xff0c;下边找到java版本的文档&#xff1a; 地址&#xff1a;https://docs.min.io/docs/java-client-quickstart-guide.html MinIO测试&#xff08;上传、删除、下载&#xff09; public class MinioTest {MinioC…

【数据结构刷题】数组oj

前言:本文章是关于在力扣上面的数组相关面试题的讲解&#xff0c;包括:1.原地移除数组中所有的元素val&#xff0c;要求时间复杂度为O(N)&#xff0c;空间复杂度为O(1),2.删除排序数组中的重复项。3. 合并两个有序数组。一.原地移除数组中所有的元素val 题目: https://leetcod…

狂码三万字 | 三维场景点云理解与重建技术

目录 00 引言 01 点云特征提取与匹配 1.1 传统点云特征提取 1.2 点云深度学习 1.3 点云卷积 1.4 稀疏卷积 1.5 点云Transformer 1.6 点云旋转不变特征提取 1.7 点云匹配 02 场景点云语义分割 2.1 场景表征与数据集 2.1.1 室内场景表征与相关数据集 2.1.2 室外场…

电脑IP地址错误无法上网怎么办?

电脑出现IP地址错误后就将无法连接网络&#xff0c;从而无法正常访问互联网。那么当电脑出现IP地址错误时该怎么办呢&#xff1f; 确认是否禁用本地连接 你需要先确定是否禁用了本地网络连接&#xff0c;如果发现禁用&#xff0c;则将其启用即可。 启用方法&#xff1a;点击桌…

pytest-xdist分布式测试原理浅析

目录 pytest-xdist执行流程&#xff1a; pytest-xdist 模块结构&#xff1a; pytest-xdist分布式测试原理&#xff1a; pytest-xdist源码浅读&#xff1a; pytest-xdist执行流程&#xff1a; 解析命令行参数&#xff1a;pytest-xdist 会解析命令行参数&#xff0c;获取用户…

DROP USER c##xyt CASCADE > ORA-01940: 无法删除当前连接的用户

多创建了一个用户&#xff0c;想要给它删除掉 一 上执行过程&#xff0c;确实删除成功了 Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing optionsSQL> DR…

CVPR 2023 | Attention-Based Point Cloud Edge Sampling

注1:本文系“计算机视觉/三维重建论文速递”系列之一,致力于简洁清晰完整地介绍、解读计算机视觉,特别是三维重建领域最新的顶会/顶刊论文(包括但不限于 CVPR, ICCV, ECCV, NeurIPS等)。本次介绍的论文是: CVPR 2023 | Attention-Based Point Cloud Edge Sampling CVPR 2023 | …

【c语言】-- 结构体

&#x1f4d5;博主介绍&#xff1a;目前大一正在学习c语言&#xff0c;数据结构&#xff0c;计算机网络。 c语言学习&#xff0c;是为了更好的学习其他的编程语言&#xff0c;C语言是母体语言&#xff0c;是人机交互接近底层的桥梁。 本章来学习结构体。 让我们开启c语言学习之…

CTF流量题解http4.pcapng

流量分析 导出http 打开报错 验证文件头&#xff0c;发现是zip。 图常片见里文可件能的包16含进:压制缩头包部,word,pdf JPG FF D8 FF E0/FF D8 FF E1 PNG 89 50 4E 47 GIF 47 49 46 38 ZIP 50 4B 03 04 RAR 52 61 72 21 MP3 49 44 33 0 改后缀 使用工具爆破。 git clone git…

WordPress使用【前端投稿】功能时为用户怎么添加插入文章标签

在使用Wordpress做前端投稿功能的时候&#xff0c;可能需要用户填写文章标签&#xff0c;在插入文章的时候很多人不知道怎么把这些标签插入进去&#xff0c;下面这篇文章来为大家带来WordPress使用前端投稿功能时插入文章标签方法。 在Wordpress里 wp_insert_post 此函数的作…

docker菜谱大全

记录docker常用软件安装&#xff0c;感谢小马哥和杨师傅的投稿。&#x1f60e;&#x1f60e;&#x1f60e; 相关文档&#xff1a; DockerHub&#xff1a;https://hub.docker.com/Linux手册&#xff1a;https://linuxcool.com/Docker文档&#xff1a;https://docs.docker.com/Do…

探索Python异常世界:玩转异常、模块与包

文章目录 一 异常概念二 异常的捕获方法2.1 捕获异常的原因2.2 捕获常规异常2.3 捕获指定异常2.4 捕获多个异常2.5 捕获异常并输入异常信息2.6 捕获所有异常2.7 异常else2.8 异常finally 三 异常的传递四 python模块4.1 模块的导入方式4.2 自定义模块4.3 测试模块4.4 注意事项4…

金蝶云星空与旺店通WMS对接集成盘盈单查询连通商品同步接口(盘盈单=>其他入库单)

金蝶云星空与旺店通WMS对接集成盘盈单查询连通商品同步接口(盘盈单>其他入库单) 来源系统:金蝶云星空 金蝶K/3Cloud结合当今先进管理理论和数十万家国内客户最佳应用实践&#xff0c;面向事业部制、多地点、多工厂等运营协同与管控型企业及集团公司&#xff0c;提供一个通用…

python爬虫相关

目录 初识爬虫 爬虫分类 网络爬虫原理 爬虫基本工作流程 搜索引擎获取新网站的url robots.txt HTHP协议 Resquests模块 前言&#xff1a; 安装 普通请求 会话请求 response的常用方法 简单案例 aiohttp模块 使用前安装模块 具体案例 数据解析 re解析 bs4…