为什么 buffer 越大传输效率越低

先看 从边际效益递减看 buffer 中挤占带宽 中的两个模型:

  • E1 = inflight_prop - inflight_buff: y = 2 t x − b x a − x y=2tx-\dfrac{bx}{a-x} y=2txaxbx
  • E2 = bw / delay: y = a x − x 2 b + t a − t x y=\dfrac{ax-x^2}{b+ta-tx} y=b+tatxaxx2

其中,E 为效益,编号 1,2 区分两个模型,公式中均以 y 表示,x 表示一条流的有效带宽,a 为瓶颈链路总带宽,b 为 buffer 已填充大小,c 为单向传播时延。

首先,固定 a 和 c,控制 b,动图如下:
在这里插入图片描述

一目了然:

  • buffer 填充越大,E1 和 E2 最大值绝对值均单调减小,取最大值时的 x 单调减小。

简单解释一下,E 的绝对值减小意味着效益度量值减小,即低效的意思,而最大值时的 x 减小意味着收益(注意和效益的区别)在减小。

结论是,buffer 越大,能效越低,收益越低。

现在固定 a,b,控制 c:
在这里插入图片描述

一目了然:

  • c 越大,E1,E2 取得最大值时的 x 单调递增;
  • c 越大,E1 最大值单调递增,E2 最大值单调递减。

简单解释一下,c 越大,rtt 越大,管道长短视为固有属性,E1 最大值同步增加意味着 c 越大,挤占 buffer 的收益带来的总效能越大,这件事值得做,反之,c 越小,小 rtt 链路挤占 buffer 就是相对出大力而不讨好了。

对 E2 而言,c 越大,E2 最大值反而越小,意味着越长的链路挤占 buffer 的收益越被淹没,属于出大力亦不讨好。

但无论 E1 还是 E2,c 越大,取得最大值时的 x 都单调递增,意味着如果链路过长,有 buffer 就去挤占吧。

综上:

  • buffer 越大,能效越低,收益越低;
  • 链路越长,挤占 buffer 收益明显,但总效益被淹没;
  • 链路越短,挤占 buffer 越困难;
  • 如果 buffer 已部署,不要谦让。

看看,是不是所有 reno,cubic,vegas,bbr 的配置部署建议都在里面了。但总的结论还不是这,总的结论是,不要寄希望于增加 buffer 以提高传输效率,buffer 越大越低效,违反直觉了吧,这就对了。特别针对数据中心,小 rtt 短肥管道,看上面的动图,孰轻孰重。

sender 收着点,姿势对了才舒服。

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

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

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

相关文章

OpenMV学习笔记1——IDE安装与起步

目录 一、OpenMV IDE下载 二、OpenMV界面 三、Hello World! 四、将代码烧录到OpenMV实现脱机运行 五、插SD卡(为什么买的时候没送?) 一、OpenMV IDE下载 浏览器搜索OpenMV官网,进入后点击“立即下载”&#xff0…

深度学习基于Tensorflow卷积神经网络VGG16的CT影像识别分类

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 随着医疗技术的快速发展,CT(Computed Tomography)影像已成为医生…

面试准备【面试准备】

面试准备【面试准备】 前言面试准备自我介绍:项目介绍: 论坛项目功能总结数据库表设计注册功能登录功能显示登录信息功能发布帖子评论私信点赞功能关注功能通知搜索网站数据统计热帖排行缓存 论坛项目技术总结Http的无状态cookie和session的区别为什么要…

Linux-应用编程学习笔记(二、文件I/O、标准I/O)

一、文件I/O基础 文件 I/O 指的是对文件的输入/输出操作,就是对文件的读写操作。Linux 下一切皆文件。 1.1 文件描述符 在 open函数执行成功的情况下, 会返回一个非负整数, 该返回值就是一个文件描述符(file descriptor&#x…

Python3 笔记:sort() 和 sorted() 的区别

1、sort() 可以对列表中的元素进行排序,会改变原列表,之前的顺序不复存在。 list.sort(key, reverse None) key:默认值是None,可指定项目进行排序,此参数可省略。 reverse&#…

零基础PHP入门(一)选择IDE和配置环境

配置环境 官网下载安装包,windows https://windows.php.net/download#php-8.3 我是下载的最新版,也可以切换其他版本 https://windows.php.net/downloads/releases/archives/ 下载好压缩文件后,双击解压到一个目录 D:\soft\php 复制ph…

Vue 3 的 setup语法糖工作原理

前言 我们每天写vue3项目的时候都会使用setup语法糖,但是你有没有思考过下面几个问题。setup语法糖经过编译后是什么样子的?为什么在setup顶层定义的变量可以在template中可以直接使用?为什么import一个组件后就可以直接使用,无需…

匝间冲击耐压试验仪产品介绍及工作原理

产品简介 武汉凯迪正大KD2684S匝间冲击耐压试验仪适用于电机、变压器、电器线圈等这些由漆包线绕制的产品。因漆包线的绝缘涂敷层本身存在着质量问题,以及在绕线、嵌线、刮线、接头端部整形、绝缘浸漆、装配等工序工艺中不慎而引起绝缘层的损伤等,都会造…

零基础代码随想录【Day42】|| 1049. 最后一块石头的重量 II,494. 目标和,474.一和零

目录 DAY42 1049.最后一块石头的重量II 解题思路&代码 494.目标和 解题思路&代码 474.一和零 解题思路&代码 DAY42 1049.最后一块石头的重量II 力扣题目链接(opens new window) 题目难度:中等 有一堆石头,每块石头的重量都是正整…

Axure软件安装教程

链接:https://pan.baidu.com/s/1fHrSrZ7PIeDZZpn6QyJ6jQ?pwdb4mv 提取码:b4mv 安装完后点击Finish 名字随便起 关闭Axure 复制到安装目录下 最后成果

ASP+ACCESS基于WEB社区论坛设计与实现

摘要:系统主要实现BBS网站全部功能。采用目前应用最为广泛的ASP作为开发工具来开发此系统、以保证系统的稳定性。采用目前最为流行的网页制作工具Dreamweaver和目前最为流行的动画制作工具Flash MX。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发&…

第七步 实现打印函数

文章目录 前言一、如何设计我们的打印函数?二、实践检验! 查看系列文章点这里: 操作系统真象还原 前言 现在接力棒意见交到内核手中啦,只不过我们的内核现在可谓是一穷二白啥都没有,为了让我们设计的内核能被看见被使用…

uniapp微信小程序在ios端返回不显示弹窗的bug解决

这个问题其实是因为返回页面的时候弹的太快了导致的解决办法: 其实就是返回页面的弹窗加个延迟就好啦

电脑同时配置两个版本mysql数据库常见问题

1.配置时,要把bin中的mysql.exe和mysqld.exe 改个名字,不然两个版本会重复,当然,在初始化数据库的时候,如果时57版本的,就用mysql57(已经改名的)和mysqld57 代替 mysql 和 mysqld 例如 mysql -u root -p …

golang通过go-aci适配神通数据库

1. go-aci简介 go-aci是神通数据库基于ACI(兼容Oracle的OCI)开发的go语言开发接口,因此运行时需要依赖ACI驱动和ACI库的头文件。支持各种数据类型的读写、支持参数绑定、支持游标范围等操作。 2. Linux部署步骤 2.1. Go安装: 版本:1.9以上…

[数据集][目标检测]吸烟检测数据集VOC+YOLO格式1449张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):1449 标注数量(xml文件个数):1449 标注数量(txt文件个数):1449 标注…

深度学习之基于Pytorch框架手写数字识别

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与意义 手写数字识别是数字图像处理领域的一个经典问题,也是深度学习技术的一个常用应用场…

初识C语言——第二十八天

代码练习1&#xff1a; 用函数的方式实现9*9乘法表 void print_table(int n) {int i 0;int j 0;for (i 1; i< n; i){for (j 1; j< i; j){printf("%d*%d%-3d ", i, j, i * j);}printf("\n");}}int main() {int n 0;scanf("%d", &a…

【加密与解密(第四版)】第十六章笔记

第十六章 脱壳技术 16.1 基础知识 壳的加载过程&#xff1a;保存入口参数、获取壳本身需要使用的API地址、解密原程序各个区块的数据、IAT的初始化、重定位项的处理、HOOK API、跳转到程序原入口点 手动脱壳步骤&#xff1a;查找真正的入口点、抓取内存映像文件、重建PE文件&…

pod介绍之 容器分类与重启策略

目录 一 pod 基础概念介绍 1&#xff0c;pod 是什么 2&#xff0c;Pod使用方式 3&#xff0c;如何解决一个pod 多容器通信 4&#xff0c;pod 组成 5&#xff0c; k8s 中的 pod 二 pause容器 1&#xff0c;pause容器 是什么 2&#xff0c;pause容器作用 3&#xff…