javaEE 初阶 — 传输层 TCP 协议 中的延迟应答与捎带应答

news2024/9/29 13:14:47

文章目录

  • 1. 延迟应答
  • 2. 捎带应答

TCP 工作机制

确认应答机制

超时重传机制

连接管理机制

滑动窗口

流量控制与拥塞控制

1. 延迟应答


延时应答 也是提升效率的机制,也是在滑动窗口基础上搞点事情。

滑动窗口的关键是让窗口大小大一点,传输的速度就会快一点。因此,延时应答要做的就是,
在接收方能够处理的情况下,尽可能的把窗口大小放大一点。

延时应答 在收到数据后,不是立即返回 ACK ,而是会稍微等待一会儿再返回。
在这等待的时间里,接收方的应用程序,就能够把接收缓冲区的数据给消费一波,此时接收缓冲区里的剩余空间就更大了。

剩余空间更大了,这个时候可以把窗口大小进一步的扩大,传输的速率进一步提高了。


实际上延时应答采取的方式,就是在滑动窗口下, ACK 不再每一条数据都返回了,比如是此处是隔一条返回一次ACK。

实际上的剩余空间大小,变化是一个复杂的过程,既取决于发送方的发送也取决于接收方的处理。

2. 捎带应答


捎带应答也是提高效率的方式,是在延时应答的基础上引入的。

服务器客户端程序,最典型的模型就是 “一问一答”,也就是业务上的请求和响应。




这里的 “我看看” ACK 是内核立即返回的,而 “11:30” 这个 ACK 是业务上的响应,是在李四的应用程序里发送的。

这两个本来是不同的时机,但是 TCP 存在着 延时应答。
由于延时应答机制,导致等待 ACK 的过程中,李四就要给 张三 发送业务数据了,
就可以让业务数据捎带上 “我看看” 这个 ACK 一起发送过去了。


效果如下图。



与三次握手的的区别

不来是不同的时机,在延时应答下可能成为相同的时机,如果时机是相同的就可以合二为一,而三次握手本来就是相同的时机,

换句话就是,三次握手一定会合二为一,但捎带应答只是有一定的概率,而延时应答提高了这个概率。

这个捎带应答比较像中午吃饭的时候,自己突然有一点事要解决,然后就要等待一会儿。
这个时候,看到张三要去吃饭,那么就让他帮忙带一份。

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

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

相关文章

LabVIEW监控实时嵌入式目标上的CPU和内存使用情况

LabVIEW监控实时嵌入式目标上的CPU和内存使用情况NI实时(RT)控制器上有不同的用于监测CPU和内存使用情况的不同选项。可用内存量取决于多个因素,包括已安装的软件和用户应用程序内存要求。本文将介绍从Windows操作系统访问此信息的不同方法&a…

盘点23大厂互联网秋招技术岗薪资!

2023届秋招形式比起前几年严峻了很多。根据牛客网、offershow小程序、脉脉、qq微信群等渠道收集汇总了一波2023届秋招技术岗薪资情况,发现对比2022届秋招薪资基本没有太大变化,往年秋招出现的倒挂现象在23届的秋招中消失了。一起来看下2023届秋招技术岗薪…

Hashtable底层原理分析

特点 1、存放k-v键值对 2、key\value均不能是null,否则会抛出空指针异常NullPointerException 3、线程安全的,底层使用synchronized 高频问题 1、初始化大小多少?什么时候初始化? 答:默认11,在第一次put…

流量主开通一周,收益55块了,周末可以加个鸡腿!记录一下我开通流量主到有收益的艰难过程!

文章目录公众号【字节卷动】账号历程注册写文冻结解冻漫无目的的写作重新出发大佬带我憧憬申请流量主失败腾讯客服有人工吗?白高兴一场流量主正式开通全力开干付出总有回报总结公众号【字节卷动】账号历程 注册 其实在2017年1月我就注册了公众号,但是一…

【网络原理5】IP协议篇

目录 IP协议报头 4位版本号 4位首部长度 8位服务类型(TOS) 16位总长度 IP拆包 16位标识、3位标志、13位片偏移​编辑 8位生存时间(TTL) 8位协议 16位首部校验和 网络地址管理 32位源ip&32位目的ip 方案一:动态分配ip地址 方案2:NAT网络地址转换(使用一个ip代…

docker中安装Mariadb

一、 docker中下载mariadb我的安装的版本是10.1.21,(大家可以根据自己的需求制定版本)docker pull mariadb:10.1.21 二、新建一个目录作为容器的映射目录新建目录用来将容器的目录及数据挂载到该目录下mkdir -p /data/mariadb/data 三、启动m…

Java反序列化漏洞——CommonsCollections1链分析

CC1的链在jdk-8u71之后因为AnnotationInvocationHandler的修改已无法利用。一、TransformedMap基于jdk-8u65进行试验1.Rutime.getRuntime().exec()Runtime.getRuntime().exec("calc");2.Runtime类不允许序列化,所有需要调用反射进行命令执行,将…

无需经验的steam搬砖,每天操作1小时,轻松创业赚钱!

我作为一个95后社畜,就喜欢倒腾各种赚钱的事情,8年老韭菜告诉你,副业创收一点都不难,难就难在是否找对项目,俗话说方向不对,努力白费! 什么做苦力、技能、直播卖货,电商等等对比我这…

面试题59 - II. 队列的最大值

题目 请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的均摊时间复杂度都是O(1)。 若队列为空,pop_front 和 max_value 需要返回 -1 思路 对于一个普通队列,push_back 和 pop_front…

ChatGPT 简介

目录1 背景与发展历程1.1 背景1.2 发展历程2 技术原理2.1 第一阶段:训练监督策略模型2.2 第二阶段:训练奖励模型2.3 第三阶段:采用强化学习来增强模型的能力。3 国内使用情况及应用的领域4 面临的数据安全挑战与建议4.1 ChatGPT获取数据产生的…

传奇SF架设问题处理方式

传奇SF架设问题处理方式 正常开服当中我们会遇到很多问题,比如游戏黑屏、登录器链接失败等等。 接下来我会把经常会遇到的问题罗列出来以及解决方法附上 传奇M2引擎出现时间格式报错? 这个解决方法有两种第一种是在你电脑桌面的右下角修改时间格式为短…

开源堡垒机GateOne安装

GateOne 是一款基于 html5 实现的 ssh 客户端,有如下特点:不需要任何浏览器插件支持多用户和多终端,同时支持上百个用户和终端终端支持高级特性,例如 256 色彩,高级文本样式支持支持终端截图,保存为图片和 …

【Oracle实用小技巧一】

PLSQL里一些实用的小技巧,可以让日常工作更便捷。 1、PLSQL可以直接打开命令行测试语句,非常方便,可以在SQL窗口里测试好语句,再在SQL文件里编写查询脚本。 2、describe tablename查询数据表结构; 3、upper(text)字…

Yakit实战技巧:用MITM热加载任意修改流量

背景 用户在使用 Yakit MITM 功能的时候,经常会遇到一些特殊需求: 我的数据包需要携带一些特征变量才能访问,但是浏览器无法做到,我可以批量修改流量新增某一个 Header 吗? 我可以在代理层面在所有流量中新增一个参数…

L1-072 刮刮彩票

“刮刮彩票”是一款网络游戏里面的一个小游戏。如图所示: 每次游戏玩家会拿到一张彩票,上面会有 9 个数字,分别为数字 1 到数字 9,数字各不重复,并以 33 的“九宫格”形式排布在彩票上。 在游戏开始时能看见一个位置上…

JavaEE——MyBatis配置文件的详细介绍

简单介绍: 需要我们编写的配置文件主要有三个,分别是核心配置文件(mybatis-config.xml),数据库连接信息文件(db.properties),SQL语句映射文件(Mappers)&…

蒙特卡洛方法

蒙特卡洛方法 理解:是一种利用大量样本与样本中正确数量形成的概率去逼近真实值的一种方法。 可以很巧妙的求取某些问题:如 π 的值 1、利用蒙特卡洛方法求π 我们知道圆的面积公式是:π * r * r 那么 1 / 4 圆的面积就是 1/ 4 *π * r …

Spring Data JPA关于懒加载的那些事

背景 环境 相关环境配置: SpringBootPostGreSQL Spring Data JPA 懒加载现象 首先声明一下 application.yml 文件中关于 JPA 的配置: spring:jpa:show-sql: truehibernate:ddl-auto: noneopen-in-view: falseproperties:hibernate:order_by:defaul…

「6」线性代数(期末复习)

🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀 目录 第五章 相似矩阵及二次型 &2)方阵的特征值与特征向量 &3&#xff…

从transformers开始,哪些工作可以被看成是自然语言处理里程碑式的突破。

文本生成的含义是在某一语言数据基础上对语言的从前到后(自监督本身下行目标)、两段对齐语言序列(相互之间的文本共性矩阵计算)分布的研究实现路线。简而言之如何以具有可微可导的向量去寻找攻关语言分布的能力即为当代信息科学与…