tcp inflight 守恒算法的几何解释

news/2024/5/19 6:45:26

接上文:tcp inflight 守恒算法背后的哲学

在 tcp inflight 守恒算法正确性 中,E = bw / srtt 的公平最优解是算出来的,如果自然可以用数学描述,那能算出来的东西反过来也一定能通过直感看出来,我倾向于用几何和力学描述自然(中学时中了《几何原本》和《自然哲学的数学原理》之毒) ,inflight 守恒算法的几何解释就有了:
在这里插入图片描述

这就是一个初等平面几何练习题,涉及一点力矩知识。

回到算法本身,值得注意的是,在流 a 注入的 inflight 从 0 到达与流 b 相同的 q 过程中,流 b 的 E = bw / srtt 是逐渐降低的,此时流 b 什么必须都不能做,因此流 a 必须 “适可而止”,否则流 b 就必须做出反制措施,比如同样进行 probe,或者执行增窗,于是事情就复杂了,几乎所有拥塞控制算法无不在处理这些复杂情况中拉扯

inflight 守恒算法的精髓是简单,一切尽在法则 2,进时适可而止,退时才可什么都不做。

上图的核心是,E 表示为三角形高与底边之比,两个力量拉扯一个三角形,bw 的力量往上拉高,delay 的力量往右拉扁,三角形的形状最瘦高的时候就是最佳 E,而直观上,通过力矩可以得到平衡点就在 Ox 与 AB 垂直之时,此时 x == b。

既然这图可由力学解释,“从 buffer 中挤兑带宽到何种程度的能效最高” 就只是这普适力学原理的一个实例,这普适原理可解释 buffer 挤兑之外很多自然现象。 更普遍的,经典力学本质上就是一种几何学描述(这就是自然哲学的数学原理)。图示原理表明,收益必须付出代价,要寻找最佳收益,而不是大收益,在最辉煌的时候悬崖勒马,在最失意的时候等待,自然本是福祸相依。

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


http://www.mrgr.cn/p/72385477

相关文章

【vue3入门】-【1】Vue介绍与项目结构

Vue是什么? 渐进式javaScript框架,易学易用,性能出色,适用场景丰富的web框架官方文档 地址:https://cn.vuejs.orgVue简介 是渐进式javascript框架,易学易用,性能出色,适用场景丰富的web前端框架 Vue是一款用于构建用户节点的javascript框架。它基于标准html、css、java…

鸿蒙HarmonyOS实战-ArkUI事件(触屏事件)

🚀前言 触屏事件是指通过触摸屏幕来进行操作和交互的事件。常见的触屏事件包括点击(tap)、双击(double tap)、长按(long press)、滑动(swipe)、拖动(drag)等。触屏事件通常用于移动设备和平板电脑等具有触摸屏幕的设备上,用户可以通过触摸屏幕上的不同区域或者以不…

vue快速入门(四十四)自定义组件

注释很详细,直接上代码 上一篇 新增内容 全局注册自定义组件并应用局部注册自定义组件并应用 此篇使用了axios模块没有安装导入的先看这一篇 axios模块下载与导入 源码 main.js import Vue from vue import App from ./App.vue//全局引入axios // 引入axios impor…

FLINKCDC 3.0整库同步MYSQL至DORIS(FLINK1.18): 历程

大数据技术涉及组件较多,各个环境较DEMO又不尽相同,所以参照DEMO进行,任然很多报错信息出现。 如下报错处理,尽供参考: 1.创建同步配置文件 ################################################################################ Description: Sync MySQL all tables to Do…

Jira搭建过程

看到很多小伙伴对jira有兴趣,我们今天就来分享一下jira的搭建吧 首先要明白jira是什么? 看来搭建jira也是我们测试人员需要具备的技能之一了.下面是详细的大家步骤: 1.系统环境准备 Centos 7.5 Mysql 5.6 Java1.8 2.软件安装包 atlassian-jira-software-7.13.0-x64.bin …

万字长文总结与剖析C语言关键字 -- C语言深度解剖

总结与剖析C语言关键字的功能与原理、ANSI C,GNU C、跨平台、多学科角度C总结与剖析:关键字篇 -- <<C语言深度解剖>> 目录C总结与剖析:关键字篇 -- <<C语言深度解剖>>程序的本质:二进制文件变量1.变量:内存上的某个位置开辟的空间2.变量的初始化3.为什…

TCP/IP协议—MQTT

TCP/IP协议—MQTT MQTT协议MQTT协议特点MQTT通信流程MQTT协议概念 MQTT报文固定报头可变报头有效载荷 MQTT协议 消息队列遥测传输&#xff08;Message Queuing Telemetry Transport&#xff0c;MQTT&#xff09;是一个基于客户端-服务器的消息发布/订阅传输协议。它的设计思想…

容器使用之`Array`

容器使用之Array 使用c++当中容器都被定义在以容器为名的头文件当中使用时需要引入头文件关键点:因为容器都有一个适配器去分配内存.所以声明array的时候要告诉编译器array放置的数据类型array的大小示例代码: #pragma#ifndef __ARRAY__#define __ARRAY__​#include <array&…

玩转枚举Enum

背景介绍 为什么要使用枚举呢&#xff0c;我将通过枚举模拟一些使用场景来说明&#xff1a; 枚举类也是一个普通类&#xff0c;可以定义一些变量、常量&#xff0c;同样可以定义构造方法可以实现接口&#xff0c;可以以main函数作为测试类等等&#xff0c;但是它不能继承一个类…

JavaScript-4.正则表达式、BOM

正则表达式 正则表达式包含在"/"&#xff0c;"/"中 开始与结束 ^ 字符串的开始 $ 字符串的结束 例&#xff1a; "^The"&#xff1a;表示所有以"The"开始的字符串&#xff08;"There"、"The cat"等&#x…

最新青龙部署美团自动领红包、抢券

一、服务器部署: 1、安装docker这里选择Ubuntu 系统进行操作:apt-get install docker docker.io -yps:centos自行查找安装docker​ 安装完测试docker命令: docker ps // 打印正在运行的容器 docker -v // 打印docker版本信息2、docker安装青龙青龙的仓库地址:https://gith…

YOLOv5 GUI界面部署教程

(1)将yolov5-6.0-APP文件夹解压,解压后其中文件夹如下。(2)在pycharm中打开yolov5-6.0-APP文件夹,如下图所示。(3)打开终端,运行命令pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple,安装第一批依赖(4)输入命令cd PyQt5-YOLOv5-yolo…

Linux下的UDEV机制/守护进程

一. Udev机制概念引入 ( 需要在 etc/udev/rules.d/ 下创建设备的相关规则&#xff0c;不然有可能udev机制生成的设备文件不具备可读可写的权限&#xff0c;adb无法成功通过该设备文件访问设备 ) a. 创建文件夹 sudo vim Xiaomi-audroid.rules b. 添加规则 …

【汇编语言】流程转移和子程序

【汇编语言】流程转移和子程序 文章目录 【汇编语言】流程转移和子程序前言一、“转移”综述二、操作符offset三、jmp指令jmp指令——无条件转移jmp指令&#xff1a;依据位移进行转移两种段内转移远转移&#xff1a;jmp far ptr 标号转移地址在寄存器中的jmp指令转移地址在内存…

球体与棱柱的切接问题

球体与棱柱的切接问题前言 球体与正三棱柱正三棱柱不一定有内切球和棱切球,但一定有外接球。正三棱柱的外接球的球心是上下底面中心连线的中点,关键关系:正三棱柱的高为 \(h\),正三棱柱的底面外接圆的半径 \(r\) 与球的半径 \(R\) 之间的关系为 \((\cfrac{h}{2})^2+r^2=R^2…

帆软笔记

一:表格值自定义显示 1、日期型格式化:=FORMAT($$$,"MM月dd日"),或者 2、普通值自定义显示:if($$$=SW_1,丝网一号机,if($$$=SW_2,丝网二号机,丝网三号机)),或者 二:从数据集中再次筛选,如Sum运算SUM(表格.select(QTY_SW, SHIFT_CODE_NAME = B3 && WO…

户外旅行摄影手册,旅游摄影完全攻略

一、资料前言 本套旅游摄影资料&#xff0c;大小295.47M&#xff0c;共有9个文件。 二、资料目录 《川藏线旅游摄影》杨桦.彩印版.pdf 《户外摄影指南》(Essential.Guide.to.Outdoor.photography.amateur)影印版.pdf 《旅行摄影大师班》(英)科尼什.扫描版.PDF 《旅行摄影…

linu管理文本文件

vi\vim编辑器的三种工作模式 命令模式(Command mode):按键编辑器都理解为命令,以命令驱动执行不同的功能。此模型下,不能自由进行文本编辑。 输入模式(Insert mode):也就是所谓的编辑模式、插入模式。此模式下,可以对文件内容进行自由编辑。 底线命令模式(Last line …

第十五届蓝桥杯省赛第二场C/C++B组F题【狡兔k窟】题解(AC)

题意分析 有一个 n n n 个点&#xff0c; n − 1 n-1 n−1 条边的无向图&#xff0c;边权均为 1 1 1。 每个点隶属于一个集合&#xff0c;同一个集合的点可以互相传送。 给定 m m m 个询问&#xff0c;求 x , y x, y x,y 的最短距离。 最短路解法 步骤&#xff1a; 建…

【PyTorch】torch.gather() 用法

gather常被用于image做mask的操作中&#xff0c;对哪些地方进行赋值0/1 API&#xff1a; torch.gather — PyTorch 2.2 documentation torch.gather(input, dim, index, outNone) → Tensor gather()的意义&#xff1a; 顾名思义&#xff0c;聚集、集合&#xff1a;gather…