自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

TCP/IP

TCP, QUIC 传输优化

  • 博客(2539)
  • 资源 (4)
  • 收藏
  • 关注

原创 闲谈IPv6系列文章集锦

本文总结一个目录提纲,只要是给自己看的,记录一下哪些东西已经总结过了。闲谈IPv6-6to4隧道和ISATAP隧道: https://blog.youkuaiyun.com/dog250/article/details/88644797闲谈IPv6-说说IPv6地址分配和BGP: https://blog.youkuaiyun.com/dog250/article/details/88430415闲谈IPv6...

2019-03-18 22:38:43 43181 42

原创 拉格朗日函数和分布式传输优化

由于整个网络带宽为各个端到端流的线性叠加,当价格固定,全局拉格朗日函数可拆成各个子问题的和,全局最优即每个子问题分别最优,于是各留便可以价格为共识,各自局部优化。拉格朗日函数的构造,将一个全局控制问题转化为一个分布式控制问题,而这正是网络端到端传输的要旨,给带宽定个价,大家自己买。初涉分布式网络优化的工人接触拉格朗日函数,以为它是个原点,但它只是一个几何直觉的结果,而非原因。,交换机只负责调价,如果总带宽还有剩余,则各取所需,最后供需平衡。为瓶颈排队时延,由总流入速率与链路容量的差积累,

2026-11-07 09:54:24 227

原创 CUBIC 吞吐公式的推导

所有多项式窗口的拥塞算法,稳态幂律关系只由增长阶数决定。因为阶数固定,曲线的样子就定了,而这个样子就是算法的模型,量纲一致性即可导出 ​。若关联物理特性,可将窗口,队列长度看作流体,微分方程可描述其动力学,稳态下导数为。等场景,是网络控制系统分析的必备工具。,即推导现代拥塞控制理论的标准框架。浙江温州皮鞋湿,下雨进水不会胖。就这个意思,标度量纲的规律。这方法能扩展到多流竞争,

2026-10-27 17:10:21 649

原创 长肥管道下的 CUBIC

变体,窗口从线性增长变为三次函数,替换窗口增长函数即可推导出吞吐公式,通过两者公式比对,一眼便可看出事实。吞吐公式基于拥塞周期稳态假设,每周期窗口加性增到最大值后丢包,窗口乘性减,如此重复,稳态下每周期恰丢。就这么一环扣一环,证据确凿,非常明确的导出最后的合理优化方案,这才是一个做网络优化的工人应有的素质。,就总要丢点包,若改信号为时延达到目标,就能以一定点时延换取满载带宽,这样的。评估敏感性,在低丢包链路,如骨干网,数据中心,丢包敏感性更高,丢包率小幅波动的时候,的理由,但在随机丢包链路,如无线场景,

2026-10-27 10:26:17 601

原创 从 Kelly-NUM 到时延感知 AIMD 拥塞控制算法

时代让低时延变得重要,而不再是大设备大存储的下载,而经理们还在学术区分拥塞控制的类型,实际上不同的算法只是操作点的转移,哪个更加重要而已,经理拿崖点开刀,优化低时延,终究徒劳。做调整,确保低时延,这类算法有一系列实现,我在前年到前段时间陆陆续续展示过几个,有的复杂,有的简单,但本质上它们都是一系列负反馈。框架严格的对偶梯度迭代结构。条件,但哑网络并不支持反馈,无法在互联网部署,但却可以在数据中心自研,就又卷出一篇论文。为归一化时延,作为递增惩罚函数,时延越高,分母越大,窗口削减越多,以对应。

2026-10-22 17:02:37 914

原创 欣赏 AIMD 之美

Kelly\text{Kelly}Kelly 的 NUM\text{NUM}NUM 理论即 Network Utility Maximization\text{Network Utility Maximization}Network Utility Maximization,详见论文 ​Charging and rate control for elastic traffic。说的是若要寻找能使一个带约束的分布式节点网络的效用达到最优的解,而 AIMD\text{AIMD}AIMD 恰恰就是满足约束的一个解

2026-10-22 09:58:14 911

原创 CSMA/CD 和 AIMD 的对偶同构

包括企业按照人数招聘,按照比例裁员,平时零存员工,积累组织能力,危机时快速裁员,释放成本压力,最终所有企业会变成一个鸟样子。它在生物学,生态学,经济学中都有对偶同构的实例,比如细胞分裂,可见,二次阻尼与平方反比描述了二者的对偶同构,二者都是常数激励,二次阻尼的负反馈系统,平衡点均服从平方反比律,丢包率。成反比,这是天然公平。成正比,因为窗口越大,不仅发包多,丢包后的惩罚量也大,形成平方级减速力,这种保守是稳定的根源。,它们都是对偶同构的一体两面,只是在时间尺度的分离,若将每一次排队都看作一次冲突,则。

2026-10-16 16:38:20 1130

原创 从电梯调度建模到不可能三角

通过技术手段,或随着技术进步,或引入三者间非线性关系,让这些平面不断接近原点从而垂点不断接近原点,或将平面按住垂点往原点方向挤压成凹曲面,但永远无法到达原点,这是资源性质的物理极限决定的,这些曲面就是所谓的墙。若希望提升一个或两个,必然要牺牲其它,给定一个技术世代,就确定了平面,由于平面的空间限制,垂点的位置无法沿垂线进一步接近原点,这就是不可能三角的描述。往深了继续,就涉及香农极限,时钟噪声了,这也就不再是统计复用的范畴了,我也不是很懂。左右,整体达到最优,等待时间,能耗同时好。

2026-10-15 16:35:25 826

原创 带宽,时延,抖动的不可能三角

中任意两个取约束,第三个的可行域就被推到边界外,任何技术进步调优只能改变这个三角的形状,但永远也改不了三个角的耦合本身。找到一个平衡就意味着牺牲一些看得见的收益,而经理往往不会放弃可以到手的东西,这就是跟经理的矛盾点。网络所有理论都基于泊松到达指数分布的排队论,而这个前提模型是错误的,因为数据流是幂分布的,但不影响用。简单论证一下带宽,时延,抖动的不可能三角,这是一个非常浅显的道理,啰嗦了无数次,也不在乎再多一次。里同量级,为了适应所有分布的流,我将抖动从模型中拆开,靠接收缓存。,剩余的波动即输出抖动。

2026-10-11 10:20:40 1063

原创 描述一个灰色地下运输网络

然而等到了上车点才发现其实是黑车,车辆由现场人员指定,八点都没发车又让换乘另一辆车,上车随便坐,来回倒换行李,好不容易发车,却一路国道到了一个县城接人,一路换人换乘,接人送客,但只停高速口和服务区,还有小面包车接送,把一些熟人送到门口。长假第六天,周口至上海高铁没余票,买了长途汽车票,出票后看着非常正规,有发票联,座位号,乘客姓名,身份证号,早七点发车,停靠上海嘉定。为未被服务需求的正规转运、候补或拒载计数。为受伤,延误,赔偿等损失,所有匹配,容量,时间窗,许可线路和核定座位约束作为可行集,应用时采用。

2026-10-10 13:41:07 943

原创 堵车时,最前面的车在干什么

理想状态下大家反应时间一致,等待时间和排队长度线性变长,但现实里跟车太近,反应快慢不一,穿插变道,会把放大效应拉得特别强,排队拉长的速度非常快,就给人指数扩散的错觉。随时间线性增长,后车等待时间与到达队尾的时间成正比,亦线性关系,但现实中的激波强度即密度差会不断增大,停车时间非线性拉长,便造成了指数级扩散的主观感受。当车流出现密度突变,比如拥堵锋面,一侧通畅,一侧堵死,导数不存在,原始的积分守恒律就会有不同的表达。激波形成后,代入离散的激波速度公式即可判断传播方向,前方下游,激波已过,密度。

2026-10-07 11:18:42 1385

原创 低时延 AIMD 拥塞控制

拥塞控制已一年多,这绝对是一个正确的价值度量指标,在端到端意义上,可能是唯一正确的指标,做了很多负反馈机制,索性来个极简的打个底,一步正确,步步正确,等到国庆后再深究。的控制点从崖点拉到了膝点,天堑变通途,且不再需要感应丢包,只需连续观测。算法形成了关于操作点的对称,且二者完全可自动保持公平,算法逻辑都是。负责收敛和公平,事情竟然就成了,这是真正的膝点上的。峰值附近,越不过膝点太远,队列只在越过膝点后一个。,保持实时灵敏性,操作点的膝点特征决定了所有流的。,只是参数不同,形成了机制和策略的分离。

2026-09-24 14:53:33 1455

原创 Vegas 与 AIMD 的公平共存

流的存在,然后变成它,但至今没有实现,在放假前有闲暇思考,就干脆为。流独立运行,流间不通信,对路由器反馈也不依赖,双。,再次强调不混部原则,后来手欠又给它加入了与。模式的公平性,这里是重复写,以前写过很多次。意味着收敛单调,无震荡。共存的机制,算是了却一些事,但留下个尾巴。又因天生原因无法与之共存,从此就成了背景。模式,按照标准版本保证低延迟,目标队列。是一个相当优秀的算法,只是当时。对所有流相同,因此所有流的稳态。浙江温州皮鞋湿,下雨进水不会胖。裤衩子锁着边儿,而且绣着花儿。这就是负反馈,系统渐近稳定。

2026-09-23 17:24:33 1417

原创 区分丢包类型的 Reno-RNA

关于丢包,其实有很多可以说,日常的编程的人在模拟仿真丢包时,最容易犯的错误就是设置一个丢包率,而这个丢包率只是一个随机丢包率,最简单的实现就是一个均匀的概率,这种规则场景下,算法的行为就是规则,可预期的,但这种测试用例是最不完整的。对丢包太敏感而自然产生的手痒想优化的心理,则要避免,细微的极致优化是毫无意义的弄巧成拙之举,误判的方向总是恒负,虽有肉眼可见之微利,但总体就弊大于利。丢包往往是突然发生的连续的,严重小概率事件,符合幂律分布,就像地震,一般不发生,发生则会连锁反应。,当时取名二次机会。

2026-09-22 17:13:40 1324

原创 DIPCC 与 AIMD 的公平共存

无法获得更好的参数了,我暂时无法证明算法的不动点本身在哪怕一组参数下的稳定性,准备后面用。刚说过,只要有不混部的条件,就不要混部不同的拥塞控制算法,能隔离。再看下算法外,所有流整体的链路利用率,稳态时队列稳定。,不需要路由器反馈,甚至不需要区分同构异构流,每个。,检测丢包,执行一个简单方程,就自动完成了公平收敛。,这一切都是确定的,经理一句话,就可以全网统一。了,多么纯粹,一开始简单,后面全都不难。的负反馈是,恢复得越快,队列积累越多,不管怎样,在一个全局可控尺度的网络,如。

2026-09-21 17:13:39 1326

原创 写一个时延固定的拥塞控制

在数据中心,只要经理开个会,安排工人们把所有算法切到此,一切变得高尚,至少,经理安排工人在所有交换机上划一个虚拟队列出来给这算法也。会将包含排队时延的测量误判为传播时延,导致信号归零,新流误判网络空闲而跑飞。当然,在广域网这是不可能的,因为广域网上没有经理,所以这不是给广域网的协议。最后看流加入,退出的瞬态响应,以解释边缘毛刺。的变化通过队列反馈间接传导,新流加入,总注入上升,这意味着延迟是固定的,抖动是没有的,名副其实的。算法的分布式控制律很简单,每条流本地执行,每。若将算法写成伪代码,则简单到粗暴。

2026-09-19 09:09:46 1946 11

原创 带宽换时延的柔性传输

依靠相邻像素相关性做压缩,一旦像素打散,相邻像素不再相关,压缩效率大幅下降,占用带宽变高,其次,由于像素或像素块不再位置连续,就必须附带位置坐标信息,这进一步增加了带宽的占用,最后,在互联网演化(以及任何演化)领域,一件再正确的事如果一开始没有做,后面就几乎不可能做。帧,就是在时间域的压缩,为了节省带宽,用非关键与关键帧的差异信息替代整帧信息,但关键帧丢了就必须要重传,这就引入了时延,这就是交换,如果全部打散传输整帧,便不存在不可丢失的关键帧,也就没有了重传时延,但也增加了带宽占用。整体看来,效果还不错。

2026-09-18 15:11:22 1204

原创 网络状态感知的 Flex-AIMD

的分母越小越好,分子越大越好,它的总体方向是单调的,而凸凹则表现了边际成本和收益,所以。就这样了,也没什么意思和前途,裤衩子锁着边儿,而且绣着花儿,无聊搞着玩玩。是必须的,未来的数据传输一定是延迟比带宽重要的,因为未来的数据是。的竞争力,又需要一个棘轮。首先要保证自己同构共存时没有棘轮效应,以完美解决。为目标,因此需要一个实时负反馈替代。的,但几乎没有一个算法能在兼容。的大开合记忆状态机,也替代标准。浙江温州皮鞋湿,下雨进水不会胖。要解决这个问题,原则很不难。大小的丢包事件反馈。

2026-09-16 16:40:29 1072

原创 BBR 算法的棘轮效应

(这里的 “西皮” 指 “穿西装和皮鞋的家伙们”)一个传输协议的算法的核心是公平性,稳定性和收敛效率这些统计学指标,其次才是资源利用率,带宽,低时延等这些网络指标,但几乎所有人但凡提到传输协议优化就认定是单流加速,首要关注高带宽,高吞吐,甚至不管时延,更不提方差,不要试图调整这些参数,这些参数是这台棘轮契合好的,调一个而动全身,但这些大开合的覆盖区间又是必须的,因为没有事件驱动状态机,也没有普适的移动平滑系数,人为调整只能人为设置粒度。是依环境随行的,因此它是不稳定的,更可况它本身就是脏的。

2026-09-10 17:09:10 1016

原创 网络的时延抖动

例如,空间维度的内存碎片,磁盘碎片皆为统计矩,它们便可采用算法去整理对齐,而算法本身就是时间的序列,对时间维度的统计矩本身就无能为力。若没有额外信息注入,最终,信息的不确定会转化为无效的,盲目的等待,即时间。光介质的不纯净导致不确定的折射反射率,以及链路层的动态事件,软件处理的指令周期波动,操作系统不确定的调度时机,不确定的突发排队,,在上下行的带宽是不对称的,这背后有一个非常高效的逻辑,多对一要精确调度,而一对多则广播选收。统计学本身就是概率的,度量的正是信息的不确定性,即无知性。

2026-09-08 17:24:03 1087

原创 重构 BBR 的 buffer 动力学

不公平范围被压缩,带宽差距不会无限拉大,不会出现严重饥饿现象,这就是近似公平,即偏差存在但有上界。曲线的参数甚至一个简单的单调函数足以收住它,网络本身就是统计动力学的,稳定性,公平性,扩展性,自适应性,尺度不变性大于一切。,公平校正力归零,系统变成中性,带宽可停在任意分配。值的统计分布在一个固定的网络是确定的,我们也不必管它是正态还是指数,哪怕它是发散的,即带宽越大,每一步削减越多,速率低的流削减少,慢慢追上来,两条流博弈后自动均分。做综合判定,而不只是任意其中一个,因为它自带了带宽和时延的相互作用,而。

2026-09-03 17:06:47 1821 1

原创 AI 大模型的马尔萨斯陷阱

值得注意的是,克莱伯定律描述的多维度指数不均衡发展是限制的本质,总会碰到天花板,若不改变维度本身的范式,极限便无法突破,但若获得了突破,就会进入另一个马尔萨斯循环,然后再次寻求突破。高数十万倍,本质是底层计算范式的差异,人脑以存算一体的突触脉冲完成计算,能耗集中在计算本身,而冯·诺依曼架构下,数据搬运消耗了七成以上功耗,真正用于计算的能量占比极低。同时,技术与制度的效率增益,文字,印刷术,交通通信,专利制度等技术与制度进步,会大幅降低信息传播与协作的成本,让同等人口规模下的交互效率和创新产出显著提高。

2026-08-27 17:20:36 2927 9

原创 再论 TCP 的流式传输

流式传输意味着总有个位置串行处理每个报文,而在摩尔定律下,串行处理能力属亚线性对数增长,但带宽却是超线性,近乎指数级增长,这个带宽和流式传输的错配限制了。在沙漏模型中做流式传输是一种良性的投机,处理好乱序重排即可,但流式传输的低性能并不在传输协议的设计,而在沙漏本身,因为它的腰太细了,太哑了。的确认机制加重了串行流的负担,虽然一个载荷报文的长度理论上可以长到一通电话,超线性增长的带宽足以负担足够大的载荷报文,但实际上。成为带宽限制时被提出,减弱了对丢包的反馈,但由于收敛的最根本目标,逐步又在。

2026-08-26 17:25:15 1632

原创 为什么不要优化网络协议

网络传输优化的第一性原理即降低传输流分布的各阶统计矩,这很难。进一步思考,几乎所有优化的目标都是自私行为,成为上分位,成为统计分布上的那个尾部,越尾尖越好,这恰拉高了各阶矩。如果一条流单独拉高了inflight,它便可以挤出更多的吞吐,这是事实,所有的优化都基于这事实,但所有人都采用这种内卷行为后,优化效果便失效了。这是TCP拥塞控制中一个经典的悲剧性结构,当所有流同时试图多占带宽时,没人得到更多带宽,所有人只得到更多延迟。任何超出链路容量的inflight。

2026-08-25 17:23:25 1796

原创 带宽和延迟间的转换

然而,当端到端路径存在足够大的丢包率时,问题便出现了,由于丢包重传待确认,导致发送队列积压,发送。为解决一个问题,将参数单向调大,直到引发了另一个问题,才显示出参数调得过大。场景,显得越来越重要,而高带宽更多是作为缓存来使用,比如下载。,除非你理解上面这段内容,这是一个巧妙的丢包,带宽,延迟之间的转换。这是一个典型的高带宽和低延迟不能兼得的场景,现网环境丢包率不会是。我一向的主张,以低带宽换低延迟,针对越来越普遍的。的延迟,丢包率越大,有效吞吐越低,延迟越高,所以不要盲目过分地增大。

2026-08-24 16:15:34 1497

原创 多路径聚合效率的统计理论

一旦涉及到网络传输的统计规律,很多人就觉得偏离了确定性,试图用精确替换统计,但这是错误的。网络是统计的而不是确定的,本质上是信息量的上限决定的,而信息量的度量则是统计矩(各阶矩为0就是确定性)。出差时发过一则朋友圈:其实我说的是多路径聚合,比如具体的MPTCP。多次有人不厌其烦地问为什么时延异构会降低带宽聚合的叠加效率,我也多次说这是个数学问题,而大部分不做理论研究和技术研发的人是根本不懂数学的,我也就只说一句 “你们不必关注原因,看结果” 就对付了。

2026-08-21 15:01:30 1456

原创 网络优化,还是降低各阶矩

样本的加减乘除是无意义的,这也是工程上往往用移动指数平均来平滑它们的原因,换句话说,你无法用 “尺子” 量出时延的 “长度”,你只能获得统计结果,正如分子的速度毫无工程意义,但一堆分子的速度可以表征精确的温度一样。的绝对时间,真正值得在乎的是统计波动带来的不确定性,而不确定性正是长尾延时的元凶,不确定性放大了统计各阶矩,统计波动造成的状态不同步持续累加,降低了资源利用率,最终,低利用率最终表现为更长的时间,这才是本质。到底有什么区别,都说是绕过了操作系统,节省了切换,拷贝的时间,但这并非本质。

2026-08-14 12:26:57 1674

原创 AI 带来的伪专业错觉对秩序的冲击

多层级结构的容错率来自层级间的冗余缓冲,当结构被压缩成 “上层决策-一线执行” 的哑铃型串联结构,任何上层的认知偏差都会无衰减地传导至全执行端,局部错误会直接打乱整条业务线,系统从具备冗余容错的层级系统,变为单点故障即可引发全链路崩盘的脆弱系统。对应信噪比模型,上层的专业认知信噪比极低,但因掌握行政权,低信噪比的判断会被强制落地,高信噪比的专业判断被压制。古希腊没有垄断知识的祭司阶层,所以他们发展出了德赛先生,社会获得了进步,成了轴心时代的标杆,演绎推理也成了现代科技的源泉,而。

2026-07-31 12:18:01 2410

原创 统一 loss-based 和 delay-based 的拥塞控制

这种测吞吐的算法,其实也将丢包包含了,因为丢包一定会体现在吞吐上,所以本质上就是正交,一旦叠加非正交量参与计算,就是故弄玄虚,最终弄巧成拙。除此之外,它还能平滑掉噪声丢包而不被误判为拥塞,因为偶尔丢一个包引入的大。计算,因此丢包和重传便从传输中分离开来,单独记为一个事件,用来触发。,这很合理,但作为端到端协议,所谓的网络状态其实就是。样本,因此,这段时间的网络状态监测也跟着脱离了。,如果基于时延交易的视角,二者则可以统一为一个。实现法则为,当出现丢包时,重传。,加权这类样本的比重,这样就把。

2026-07-17 09:16:53 2891

原创 从重尾到截断流量模型的演进

视频播放量,热门内容的访问热度增强幂律,和网络传输的数据流的幂律不同,不会造成网络拥塞抖动,但拥塞和抖动的压力给到了存储和缓存替换算法,这不是我的领域,不多说。网络架构层面,也涉及拓扑,大量小型化边缘节点下沉缓存短视频,减少跨城,跨骨干流量传输,扩容按同时并发的短视频分片数量规划,不用再按超大文件峰值带宽计算。级文件,但图片会压缩,分块加载,超大流量变少,流量的重尾收窄,虽完整长视频点播依旧会产生长流,但受限于手机解码能力,这些长流已经不再有文件下载时代。,而手机流量资费,屏幕尺寸限制,很少有人下载。

2026-07-03 14:29:07 7216

原创 正确适配互联网理论模型

极小发包间隔,不牺牲交互短流的传输速度,流持续变长,逐步提升 pacing 间隔,强制把连续包拆成离散间隔,数学上把原本高度自相关的阶段改造为近似独立间隔的泊松型到达,流量的长程相关性被持续削弱,总之,我这两种方法优于传统的先污染后治理的方法,例如各类拥塞控制算法,流控算法,队列调度算法,均没有从根源上消除问题本身,也就无力彻底解决问题,背后还是时间的单向流动,控制和反馈的时滞总是无法消除。推理等,那么微小随机延时对这类同步突发抑制效果极强,是低成本,端侧无侵入的平坦化手段,且完全跳出队列,

2026-07-02 12:24:45 8162

原创 互联网理论模型与现实之间的错配

他用排队论首先证明了统计复用的可行,奠定了互联网的统计学理论基础,在他之前,虽然人们设想了很多不同拓扑的组网方式,但大家始终无法摆脱可用性的魔鬼,人们怀疑,如此不受任何约束的,混乱的所谓分组交换网,真的行得通?然而排队论里没有重尾分布,但恰恰互联网的流量就是重尾的,这意味着,互联网的早期模型基础与现状存在不小的偏差。这是一个建模的教训,因为只要是相关的随机变量,几乎都会是幂律分布,价格,价值,收入,成绩,投资,灾难,千万不要用均值回归的思想对待它们,要看百分位而不是均值,要为黑天鹅事件做好准备。

2026-07-01 12:27:38 7703

原创 网络优化的第一性原理:消除各阶矩

基于此,文初引用的一系列优化手段,会随着传播时延占比的增加收益递减,它们优化的只是编程的人关心且只关心的主机时延,而随着传输距离的增加,沙漏模型的腰部而不是头部越发重要,意思是拥塞控制算法和。人类的现代文明建立在扩张主义模式之上,追求更多的人口,更多的增长,更多的消费。网络的第一性特征永远是时延抖动,只要不能直接对此有增益的,都是手段而非目标,瞄着手段当目标,在不适用的场景下甚至弄巧成拙。持有最大的恶意和鄙视, 而这些被鄙视的旧物恰都是统计系统,在消除统计不确定的方向上,编程的人做对了,但眼光狭隘了。

2026-06-26 12:37:19 7743

原创 实现一个松弛的传输层应对随机

但凡涉及可靠,冗余,去重,保序的话题,缓存,重传,定时器几乎就是第一设计,然后就成了远不如 TCP 的 YaTCP,由于编程的人容不得丢包和不确定性,他们倾注洪荒之力确保不丢包,不得已再用重传挽救,说到底还是围着 buffer 和启发式判定绕圈圈,一绕就是 30 多年。为解决传输层协议对端到端拥塞控制缺乏共识的问题,唯一的方式就是松弛化任何影响时延的确定性保障,让业务自身去处理,如此避免拥塞处理不同步造成的抖动和震荡,而确定性多来自重传以及多数人并不懂的带宽,损害的是网络传输唯一的指标,时延抖动。

2026-06-24 12:21:21 10835

原创 AIMD CUBIC 在实际网络有效的原因

算法在数学上天然契合自相似流量的统计特性,其有效性并非源于对网络状态的精确预测,而是用指数分布削掉了帕累托的重尾。机制构成了一个自调节马尔可夫链,其稳态分布不依赖于输入流量的矩结构,无论背景流量是理想指数分布还是重尾,调大一点,触发丢包的概率就极高,因此,系统根本不敢把窗口维持在很高的状态,大窗口出现的概率会断崖式下降。是一个马尔可夫链,当这个马尔可夫链满足一定的遍历性条件时,它存在一个唯一的平稳分布,记为。在实际网络中表现如何,答案是它非常有效,本文说的就是这,大多数情况下,这很容易理解,如果丢包率。

2026-06-20 11:55:11 7268

原创 在实际网络中失效的 TCP BBR

还是旧事重提,最近写了一些关于帕累托分布的自相似流量的反直觉特征,基于此实际网络特征,本文解释。的数学模型建立在短程依赖,平稳,单流的理想实验室假设之上,而实际互联网流量自相似特性以及高达。民间何必迷信一个只是看起来很美的东西,更多是吹出来的虚伪,编程的人只管编好程就行了,剩下的交给。实际网络中,没有一个是符合的,除了不必浪费口舌的,剩下的一个一个说。,拥塞,丢包,重传和编程的人无关,带宽绝对够用,不折腾就是低时延。,单流理想模型中,这可以精确找到瓶颈,但在多流自相似环境中,设。

2026-06-18 16:57:36 8505 1

原创 多数人并不懂带宽

行为,网络就会抖,时延不确定性增加,而自限定流量降低了单流规模,这在统计意义上(重点强调这个编程的人总是有意忽略的修饰词)降低了总时延的方差,也就降低了抖动,降低了时延期望。一个简单的例子,若将若干条视频流,文件下载流,控制信令流复用到一个大吞吐流,它们将承受相同程度的大抖动,若将其分开自行传输,则可获得更低的平均时延,而带宽总是够用的。一定,带宽代表的截面和时延代表的长度就是一对矛盾,下载追求高吞吐,在线则要求低延时,只有在网络很慢的时候,才需要高带宽下载,如果网络很快,就会直接在线,而。

2026-06-18 09:06:09 8156

原创 真实网络流量的自相似本质

足够大时,统计突发消失,也就不需要 buffer 了,编程的人说这是纸上谈兵,相反,他们倾向于越来越大的 buffer,这也是纸上谈兵,因为大 buffer 也有成熟的理论做支撑,同时,大 buffer 也并不正确。突发波动既然不会消失,似乎给了大 buffer 充足的理由,但恰恰正因为它不会消失,才必须设置一个迷途知返的点,适可而止,否则,buffer 将随总流量增长,一直增长。现实的网络流不是独立,无记忆,而呈现幂律的帕累托分布,这是一种典型的重尾分布,它相对真实,我在。

2026-06-17 14:32:10 8760

原创 不要再继续优化 TCP

TCP 的上限不是算法和实现,是可靠字节流抽象的设计。拆解下来,首先是字节流抽象,这约束其实现的字节粒度,在规模,尺度上不可扩展,越高速的网络,维持字节流的指令周期,内存操作成本占比越高,其次就是流约束下的可靠性,意味着多路径不可用,传输无法随并行度而扩展。在 400G 网络里,把 TCP 单流吞吐从 50G 优化到 200G,其实是负收益,因为 200 只是一个吞吐均值,越高速越怕抖动,而延迟,P99 可能还会升高,且代码实现复杂度提高,这就是典型的负 ROI 工程,看起来很硬核,实际是借债玩自嗨。

2026-06-16 10:53:02 7778

原创 信号权重和流分类的对数规律

即时的 w 值会造成路由震荡,连接跟着乒乓,那么就必须对 rssi 做处理,而且容易看到,1,2,3 的区分和 101,102,103 的区分并不一样,前三者属于不同类别,后三者显然属于同一类,100,800 属于不同类,但 10100,10899 就属于同类。韦伯-费希纳定律说人的感觉是对数的,自然界的无线信号衰减也是对数的,所以区分信号类别的函数就是对树的,而不必搞什么阶梯式分段函数来故弄玄虚,就像手机厂商把一段 dBm 区间直接映射成几格一样。但有趣的是,w0,w1,w2 如何归类。

2026-06-13 10:42:54 9990

一个iptables的stateless NAT模块实现

如果你在寻找Linux上配置诸如Cisco设备上的static双向NAT的方法,这个或许就是你想要的; what?你觉得它完不成PAT?是的,它不行。但是想做PAT为何不使用现有的iptables实现呢?它可以自动为你解决元组唯一性问题。不要从概念上分析,事实上,static双向NAT是完全对称的,一对一的 ,也只有在BOX两边的网络在拓扑级别是完全对等的情形下,这种NAT或许才是有用的,Cisco设备经常处在这样的位置,比如一个很大的stub节点的出口位置,比如两个domain的中间位置... 我将名字取为STATIC-2-WAY-NAT,比较长也比较怪,完全不符合UNIX的小写短名传统,我的想法是:这样可以少写很多的帮助信息,因为名字就是自解释的。

2014-12-27

模块化的nf-HiPAC

原版的nf-hipac需要为内核打patch,且只支持较低版本的内核,构建起来相对比较麻烦。 模块化后的nf-hipac可以直接作为内核可加载模块编译,且适配了高版本的Linux内核。为了移植工作简化,去掉了和iptables模块的联动支持!

2014-11-21

关于linux内核以及其他个人体会的文集

本文集是我用将近两年的时间写成的,大多数文章是关于linux内核的,另外还有一些我自己对计算机的理解,还有一些历史,音乐方面的东西。适合于对linux内核思想感兴趣的阅读,文章偏重于对于思想的理解。

2009-09-07

配置文件还有一些other

代码和配置iptables配置文件,还有一些别的东西

2010-04-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除