周二下班路上发了一则朋友圈:
长肥管道的特征和问题谈得够多了,但这里谈的是短肥管道,因为下面趋势,短肥管道才是未来大势:
- 云计算致使数据中心网络快速发展,而数据中心网络时延短,带宽大。
- CDN 普遍部署使上网路径几乎限于 lastmile,随技术升级,lastmile 带宽越来越大。
- 边缘计算将传输从中心往外推,时延越来越短,带宽越来越大。
不了解 CDN 调度机制的可做下面的简单实验:ping www.tencent.com 观察时延,找距离你南北分别 500KM 开外的朋友也 ping www.tencent.com,你会发现你们三人所在地解析出来的不同 IP 延时都在十几个 ms 左右,这意味着 CDN 总是将请求调度到距离你最近的地方。
但目前包括 TCP,QUIC 在内的传输协议都不能精确测量和区分 RTT 分量,在短肥管道,RTT 的非拥塞分量轻微波动将导致连接吞吐大幅震荡。
delay-based 算法基本假设,吞吐与 RTT 成反比,y = 1/x 图像可看出,x 越小,轻微 x 变化带来的 y 变化越大,短肥管道中,吞吐对 RTT 非常敏感。
也正是在这背景下,Google Swift 通过硬件时间戳的方式区分了网络时延和主机时延,以最大限度摆脱非拥塞波动对整体测量的影响。
so?
信息不精确是造成问题的根源,唯一彻底的解决方案是补充信息,而不是创造更 trick 的启发算法。显然,标准 TCP 已不适合这类传输,指标测量不精确是根本。
浙江温州皮鞋湿,下雨进水不会胖。