TCP的协议格式 --- 20字节固定长度 + 40字节可选数据

news2024/11/15 11:06:46

目录

一、 20字节的固定长度

16位源端口和16位目的端口号,32位序号,32位确认属序号,4位首部长度(需要乘4)

 保留(6位)

16位窗口大小

16位的校验和16位的紧急指针

二、40字节可选数据

1.2.1、MSS:最大报文长度,决定TCP连接双方每次发送数据的最大值   !!!

 1.2.2、为啥要协商最大保温端=段长度呢?


一、 20字节的固定长度

16位源端口和16位目的端口号,32位序号,32位确认属序号,4位首部长度(需要乘4)

 保留(6位)

16位窗口大小

描述的是接收缓冲区的大小

为什么在发送数据的时候,还要告诉对方自己接收缓冲区的大小呢?

                        是为了控制消息接收方给自己发送消息的速率。假如给对方发送说自己的接收缓冲区为0,那对方就不能给自己再发了,因为发了也是收不了的,为保证可靠还要重传,与其重传还不如就不发v

16位的校验和16位的紧急指针

16位校验和:校验数据在发送过程中是否失真

16位紧急指针:配合URG标志位,发送带外数据

二、40字节可选数据

1.2.1、MSS:最大报文长度,决定TCP连接双方每次发送数据的最大值   !!!

MSS在双方三次握手的时候就协商好了

 1.2.2、为啥要协商最大保温端=段长度呢?

本质原因:防止报文过大,在网络当中数据丢失,引发后续的超时重传机制

eg:

如果说一次产生的tcp数据有5w字节,直接往网络当中丢,如果说这条数据丢了,那就需要重传这条数据,那对于网络和tcp而言都是一个双重压力

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

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

相关文章

软件设计师教程(六)计算机系统知识-操作系统知识

软件设计师教程 软件设计师教程(一)计算机系统知识-计算机系统基础知识 软件设计师教程(二)计算机系统知识-计算机体系结构 软件设计师教程(三)计算机系统知识-计算机体系结构 软件设计师教程(…

最新中文版FL Studio21水果软件下载安装图文教程

FL Studio是目前流行广泛使用人数最多音乐编曲制作软件,这款软件相信广大网友并不陌生,今天带来的是FL中文版本,所有的功能都能在线编辑,用户直接就能操作,同时因为是21水果是最新版,所以增加了新的功能&am…

【Spring Cloud总结】1、服务提供者与服务消费者快速上手

目录 文件结构 代码 1、api 1.1实体类(Dept ) 1.2数据库 2、provider 2.1 DeptController 2.2 DeptDao 2.3 DeptService 2.4 DeptServiceImpl 2.5 application.yml 3、consumer 3.1 ConfigBean 3.2 DeptConsumerController 测试 1.启动…

创建阿里云物联网平台

创建阿里云物联网平台 对云平台设备创建过程做记录,懒得再看视频 文章参考视频:https://www.bilibili.com/video/BV1jP4y1E7TJ?p26&vd_source50694678ae937a743c59db6b5ff46c31 阿里云:https://www.aliyun.com 1.物联网平…

基于jsp的网络电子相册的设计与实现

技术:Java、JSP等摘要:随着科学技术的不断进步,云技术以及大数据的不断完善,越来越多的网络忠实用户告别了冲洗相片的时代,他们更喜欢将相片上传至网络,这样就省去了携带和查找的麻烦,随时随地只…

大数据技术之Hudi

Hudi概述 1.1 Hudi简介 Apache Hudi(Hadoop Upserts Delete and Incremental)是下一代流数据湖平台。Apache Hudi将核心仓库和数据库功能直接引入数据湖。Hudi提供了表、事务、高效的upserts/delete、高级索引、流摄取服务、数据集群/压缩优化和并发&a…

Vue3 的基础使用(详细)

一、Vite创建Vue3 项目 npm init vitelatest vue3-ts-vite -- --template vue创建成功后用npm install命令安装依赖运行项目 vue3vite初始化项目的基础结构 启动成功的页面 二、Vue3基本语法 1、定义全局变量 <template><h1>{{msg}}</h1><div><a…

常见漏洞之 Fastjson

数据来源 01 Fastjson相关介绍 》Fastjson概述 》Fastjson历史漏洞 02 Fastson的识别与漏洞发现 》Fastjson寻找 》Fastjson漏洞发现&#xff08;利用 dnslog&#xff09; 03 修复建议 建议1&#xff1a;使用fastjson1.2.83版本&#xff1b; Github地址&#xff1a;https:…

MySQL 高级查询

目录1.左关联2.右关联3.子查询4.联合查询5.分组查询1.左关联 MySQL中的左关联&#xff08;Left Join&#xff09;是一种基于共同列的连接操作&#xff0c; 它将左侧表中的所有行与右侧表中匹配的行结合在一起&#xff0c; 如果右侧表中没有匹配的行&#xff0c;则结果集中右侧…

[数据库]基本数据类型

●&#x1f9d1;个人主页:你帅你先说. ●&#x1f4c3;欢迎点赞&#x1f44d;关注&#x1f4a1;收藏&#x1f496; ●&#x1f4d6;既选择了远方&#xff0c;便只顾风雨兼程。 ●&#x1f91f;欢迎大家有问题随时私信我&#xff01; ●&#x1f9d0;版权&#xff1a;本文由[你帅…

nodejs下载安装以及配置全局变量

一、下载 官网下载&#xff1a; 1、https://nodejs.org/dist/v10.16.3/node-v10.16.3-win-x64.zip 2、http://nodejs.cn/download/ 注&#xff1a;根据自己的项目对应电的nodejs版本去下载对应的&#xff0c;否则肯出现项目无法运行的情况 二、安装 无脑下一步即可&#xff0…

【2021/反事实/POI推荐】Improving location recommendation with urban knowledge graph

文章全文首发&#xff1a;码农的科研笔记&#xff08;公众号&#xff09; 原文&#xff1a;https://arxiv.org/abs/2111.01013 1 动机 位置推荐定义为推荐地理位置给用户&#xff0c;现有推荐无法无法很好的建模地理位置属性&#xff0c;这导致推荐结果是次优的。同时作者希望…

引入QQ邮箱发送验证码进行安全校验

最近想给自己的项目在注册时加点安全校验&#xff0c;本想着使用短信验证码&#xff0c;奈何囊中羞涩只能退而求次改用QQ邮箱验证注册~ 一.需求分析 场景&#xff1a;用户输入自己的邮箱&#xff0c;点击获取验证码&#xff0c;后台会发送一封邮件到对应邮箱中。 分析&#x…

element表单搜索框与表格高度自适应

一般在后台管理系统中&#xff0c;表单搜索框和表格的搭配是非常常见的&#xff0c;如下所示&#xff1a; 在该图中&#xff0c;搜索框有五个&#xff0c;分为了两行排列。但根据大多数的UI标准&#xff0c;搜索框默认只显示一行&#xff0c;多余的需要进行隐藏。此时的页面被…

【Flutter入门到进阶】跨平台相关-Flutter的选择

1.回顾Android渲染机制工作流程 1.1 图例 1.2 说明 1.Android内部自己通过skia引起完成图像构建 2.Android通过surfacefilinger来完成图像与驱动之间的处理 2 自建渲染引擎渲染方案 自建渲染引擎渲染方案&#xff0c;是有别于Web渲染采用WebView容器进行渲染UI、原生渲染…

软件设计(十)--计算机系统知识

软件设计&#xff08;九&#xff09;https://blog.csdn.net/ke1ying/article/details/128990035 一、效验码 奇偶效验&#xff1a;是一种最简单的效验方法。基本思想是&#xff1a;通过在编码中增加一个效验位来使编码中1的个数为奇数&#xff08;奇效验&#xff09;或者为偶…

微内核架构

QNX微内核架构 设计原则 最小化内核功能 将操作系统功能移到用户态&#xff0c;成为Server“服务”。在用户模块之间&#xff0c;通过消息传递机制通信。 在宏内核中&#xff0c;文件系统和磁盘驱动都是运行在内核态&#xff0c;应用通过内核调用文件系统&#xff0c;文件系…

Ubuntu搭建博客typecho

提示 见过这样类型的blog吧&#xff0c;现在就是最详细的搭建过程。 第一步 搭建apache2环境 安装命令 sudo apt -y install apache2 apache2-utils访问项目地址&#xff1a; /var/www/html配置文件在: /etc/apache2/日志在&#xff1a; /var/log/apache2/ 修改配置文件 vim…

如何在项目中正确使用异常?

文章目录异常系列文章一、异常介绍二、异常体系三、异常处理机制四、异常处理五、异常调用链异常系列文章 如何在项目中正确使用异常&#xff1f;如何优雅的设计Java异常Java统一异常处理–实战篇Java 异常处理的误区和经验总结你要的Java常见异常都在这里Java中异常抛出后代码…