反馈时延与端到端拥塞控制

先从 越来越无效的拥塞控制 获得一个直感。
开局一张图,剩下全靠编。这是一道习题:
在这里插入图片描述

这图来自《高性能通信网络(第二版)》,2002 年的书,很好很高尚,目前这种书不多了。不准备做这道题,但意思要明白,时延越大越不同,系统越震荡,甚至跑飞不稳定,这个道理也可以从相轨迹看出。首先,先看经典的 aimd 收敛图是如何获得的。

aimd 系统的微分方程如下:

d W d t = ( 1 − p ) ∗ a W − p ∗ b ∗ W \dfrac{dW}{dt}=(1-p)*\dfrac{a}{W}-p*b*W dtdW=(1p)WapbW

系统会稳定在 ( 1 − p ) ∗ a W = p ∗ b ∗ W (1-p)*\dfrac{a}{W}=p*b*W (1p)Wa=pbW 处,p 由 buffer 决定,解得 W 为一定值,相平面空间如下:
在这里插入图片描述

然而若引入一个时滞,即 W ( t ) W(t) W(t)代换为 W ( t − τ ) W(t-\tau) W(tτ),相轨迹就没有这么简单了,大概的意思会变成下面这样:
在这里插入图片描述

没有时延时,系统的稳定性由 df(x,t)/dt 的符号决定,引入时延后,平衡点的稳定性分析变得更为复杂,需要考虑时延对 f(x,t) 的影响。

时延会导致系统响应滞后。这意味着系统在给定输入的情况下,响应的速度会减慢或产生振荡,这种效应在非线性系统和复杂系统中尤为显著,直接命中网络传输。

简单通俗来讲,rtt 过大时,当 sender 接收到拥塞信号时,拥塞可能已经解除或已经进入第 n 次完全不同的拥塞状态,亦或相反,拥塞状态已经病入膏肓,信号仍未到达 sender,导致持续注入流量加剧拥塞,崩溃是可能的,虽能恢复,但恢复期受震荡周期影响,而震荡周期一般又与反馈时延正相关。

稍微正式一点说,反馈时延过大对控制系统的影响主要体现在系统的稳定性和性能上,基于微分方程分析相轨迹还是太复杂,正规方式是基于系统传递函数分析(涉及拉普拉斯变换)。

控制系统中,传递函数描述输入信号和输出信号之间关系。当反馈时延存在时,系统传递函数会受到影响。假设无时延时系统的传递函数为 G(s),有时延后的传递函数 G_d(s) 可表示为:

G d ( s ) = G ( s ) e − τ s G_d(s) = G(s)e^{-\tau s} Gd(s)=G(s)eτs

这里的 e^{-\tau s} 改变了系统的频率响应和相位特性,影响了系统的稳定性和响应速度。时延会在所有频率上引入一个线性相位滞后,同时,增益曲线也会在高频段出现衰减。

时延的存在还会使根轨迹发生变化,可能导致闭环极点向复平面的不稳定区域移动,从而影响系统的稳定性。

反馈时延还直接影响系统的动态响应,包括上升时间和调整时间。时延越大,系统的响应越慢,动态性能恶化,对干扰和噪声的敏感度增加,这在实时控制和需要快速响应的应用场景中尤其重要。

一个小小的反馈时延,一下子就将一个准线性系统或准一阶,二阶线性系统变成了非线性复杂系统,加上一个时滞就让你无法再用分离变量等方法处理微分方程,更无法在相平面空间施展拳脚(我自信善于此),从而不得不上传递函数工具,陷入更复杂的数学分析。

我为什么总是反对端到端精确测量,背后就是这个。我强调快速收敛规则而不是精确测量,重点在快速,以确保不会拥塞崩溃,或崩溃后尽快恢复。因此,我在 inflight 守恒算法中强调只保持 “一点点” 对 buffer 的占用,以获得动态性和感知敏感性,我并不觉得过度侵占资源可以获得更高性能或资源利用率,因为整体来看,这种方法代价巨大,即遍从自私的视角来看也是如此,越过 E_best 后,事实上你已经没有收益了。相反,E_best 本身就决定了 buffer 不会占太多。

反思我昨天的 PID 加持 inflight 守恒算法,依然没有占据过多 buffer,但我在 “快速响应” 方面冒了险,还好 PID 还有调参的艺术,效果如何,试试看咯。

进一步反思 aimd,长肥管道 cwnd 恢复慢,大概就是本文所论述的内秉属性,如果想快速恢复,势必会被另一种代价击中另一个软肋。

so aimd-based?大致都是一回事,bbr 就算了,最终它也还是叶落归根。

最后,转发个有趣的:中国移动完成全球最长距离数据快递广域高吞吐技术验证。

浙江温州皮鞋湿,下雨进水不会胖。

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

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

相关文章

Docker 拉取镜像失败处理 配置使用代理拉取

解决方案 1、在 /etc/systemd/system/docker.service.d/http-proxy.conf 配置文件中添加代理信息 2、重启docker服务 具体操作如下: 创建 dockerd 相关的 systemd 目录,这个目录下的配置将覆盖 dockerd 的默认配置 代码语言:javascript 复…

手撕RPC——前言

手撕RPC——前言 一、RPC是什么?二、为什么会出现RPC三、RPC的原理3.1 RPC是如何做到透明化远程服务调用?3.2 如何实现传输消息的编解码? 一、RPC是什么? RPC(Remote Procedure Call,远程过程调用&#xff…

52、U-boot2023的移植教程

uboot:https://ftp.denx.de/pub/u-boot/ nxp-uboot:https://github.com/nxp-imx/uboot-imx 1、顶层Makefile 文件加入编译的两种方式:以xxx/xxx.c文件为例 1、使用menuconfig: 先编辑.c所在目录下的Kconfig&#xff0…

实验六:三维图形修改器的综合应用

如果文章有写的不准确或需要改进的地方,还请各位大佬不吝赐教💞💞💞。朱七在此先感谢大家了。😘😘😘 🏠个人主页:语雀个人知识库 🧑个人简介:大家…

20240623 每日AI必读资讯

🤖原生鸿蒙AI浓度要爆表了! - 一年一度华为开发者大会上,余承东首次揭秘“鸿蒙原生智能”Harmony Intelligence! - 华为小艺进化成系统级智能体。 - 一句话实现跨多个应用的规划和任务执行;在第三方APP上随意处理文…

啥移动硬盘格式能更好兼容Windows和Mac系统 NTFS格式苹果电脑不能修改 paragon ntfs for mac激活码

对于同时使用Windows和Mac操作系统的用户而言,选择一个既能确保数据互通又能满足大容量存储需求的移动硬盘格式尤为重要。下面我们来看看啥移动硬盘格式能更好兼容Windows和Mac系统,NTFS格式苹果电脑不能修改的相关内容。 一、啥移动硬盘格式能更好兼容…

简单了解html常用的标签

HTML 一、基础认知 1、注释 1.1、注释的作用和写法 1.1.1、作用 为代码添加解释性,描述性的信息,主要用来帮助开发人员理解代码,浏览器执行代码时回忽略所有注释。 1.1.2、注释的快捷键 在VS Code中:Ctrl / 2、HTML标签的…

Android-系统开发_四大组件篇----探讨-Activity-的生命周期

当一个活动不再处于栈顶位置,但仍然可见时,这时活动就进入了暂停状态。你可能会觉得既然活动已经不在栈顶了,还怎么会可见呢? 这是因为并不是每一个活动都会占满整个屏幕,比如对话框形式的活动只会占用屏幕中间的部分…

基于SpringBoot+Vue二手交易平台设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝1W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟 感兴趣的可以先收藏起来,还…

《Windows API每日一练》5.4 键盘消息和字符集

本节我们将通过实例来说明不同国家的语言、字符集和字体之间的差异,以及Windows系统是如何处理的。 本节必须掌握的知识点: 第31练:显示键盘消息 非英语键盘问题 字符集和字体 第32练:显示默认字体信息 第33练:创建逻…

爬虫笔记15——爬取网页数据并使用redis数据库set类型去重存入,以爬取芒果踢V为例

下载redis数据库 首先需要下载redis数据库,可以直接去Redis官网下载。或者可以看这里下载过程。 pycharm项目文件下载redis库 > pip install redis 然后在程序中连接redis服务: from redis import RedisredisObj Redis(host127.0.0.1, port6379)…

2024青海三支一扶报名流程图解❗

报考公告 1、招考人数: 1910 人 2、报名时间:6月20-6月25 3、笔试时间:7月6日 4、笔试内容:综合知识和能力素质测验 🔴线上报名流程图解 一、本次报名采用线上报名方式,考生需登录《青海省人事考试信息网》…

OpenGL:中点直线算法

理论部分 中点直线算法是通过在像素中确定与理想直线最靠近的像素来进行扫描转换的。 在上图中,假设直线的斜率 0 ≤ m ≤ 1 0\le m \le 1 0≤m≤1。假设当前最近的像素已经确认为 P ( x k , y k ) P(x_k, y_k) P(xk​,yk​),由于 x x x位最大的位移方向,因此直线在 x x x方…

【因果推断python】51_去偏/正交机器学习3

目录 What is Non-Parametric About? What is Non-Parametric About? 在我们继续之前,我只想强调一个常见的误解。当我们考虑使用非参数 Double-ML 模型来估计 CATE 时,我们似乎会得到一个非线性治疗效果。例如,让我们假设一个非常简单的数…

【干货】Android中高级开发进阶必备资料(附:PDF+视频+源码笔记)

4、数据传输与序列化 5、Java虚拟机原理 6、高效IO 设计思想解读开源框架 随着互联网企业的不断发展,产品项目中的模块越来越多,用户体验要求也越来越高,想实现小步快跑、快速迭代的目的越来越难,插件化技术应用而生。如果没有…

大模型微调和RAG的应用场景

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

Android高工面试:分享两道阿里P6究极难度算法题,面试完我直接怀疑人生---

10亿数据内筛选最大的100个,要求速度要快。 最近阿里的一道面试题,其实基于多层博弈论,我想我刷过这题,我知道如何偷鸡的。我以为我在第二层,没想到我只在第一层。 第一层 于大顶堆的方式的方式筛选出数组内最​ 大的…

帆软使用总结-新建填报报表

1.界面设计 选择菜单[文件>新建普通报表] 2.分别把B3、C3设置为文本控件 3.选中D3,并设置为下拉控件 4.选择菜单[模板>报表填报属性] 5.选择菜单[模板>模板web属性] 2.效果演示

Vue-表格

需求 代码 <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTE-8"> <meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-width…

Git客户端安装步骤详解

git windows7 百度经验:jingyan.baidu.com 方法/步骤 1 从git官网下一个git安装包。 步骤阅读 2 点击git.exe安装程序&#xff0c;点击【next】 ![git的安装和配置](https://imgsa.baidu.com/exp/w500/sign7565f44ba58b87d65042ab1f37092860/21a4462309f790525e5b0144…