第二章:网络延迟的物理极限
做低延迟交易系统这些年,我经常被问到同一个问题:延迟到底能降到多低?
很多人以为换张网卡、调几个内核参数就完事了。其实不然。真正的天花板,是物理定律。光速就在那里,谁也绕不过去。
这一章,我们就来聊聊网络延迟的物理极限。说白了,就是搞清楚「理论上最快能有多快」。
2.1 光速限制:真空中的极限
真空中的光速是 299,792,458 米/秒。约等于 30 万公里每秒。这个数字你肯定知道。
但我要说的是:在光纤里,光速没那么快。
核心概念:光纤中的光速 ≈ 真空光速 × 折射率的倒数。
标准单模光纤的折射率约 1.47。所以实际速度 ≈ 204,000 公里/秒。
举个例子。上海到深圳的光纤距离大约 1200 公里。理论上单向传播延迟是:
延迟 = 距离 / 速度
= 1200 km / (204,000 km/s)
≈ 5.88 毫秒
嗯,这是纯物理延迟。还没算任何设备处理时间。
我个人习惯把这种延迟叫做「不可压缩延迟」。你花再多钱、用再好的设备,也减不掉这 5.88 毫秒。
2.2 信号传播延迟:不只是光速的事
信号在介质中传播,速度受两个因素影响:
- 介质的折射率——决定了光速的衰减比例
- 信号频率——不同频率的电磁波在介质中速度不同
我在项目中遇到过一件事。有次我们测试一条 10 公里的光纤链路,理论延迟应该是 49 微秒左右。但实际测出来是 53 微秒。
排查了半天,发现是光纤的折射率标称值有偏差。厂家给的 1.47,实际是 1.49。别小看这 0.02,10 公里下来就差了 1.3 微秒。
避坑指南:我曾经以为光纤的折射率是固定值。后来才知道,不同批次、不同温度下都会有微小差异。做低延迟系统,这些细节不能放过。
2.3 介质对延迟的影响
不同介质,延迟差异很大。我整理了一张表:
| 介质类型 | 折射率 | 信号速度(km/s) | 每公里延迟(μs) |
|---|---|---|---|
| 真空 | 1.0 | 299,792 | 3.34 |
| 空气(标准大气压) | ≈1.0003 | ≈299,700 | ≈3.34 |
| 标准单模光纤 | ≈1.47 | ≈204,000 | ≈4.90 |
| 铜缆(Cat6a) | ≈1.5~1.6 | ≈187,000~200,000 | ≈5.0~5.35 |
| PCB 走线(FR4) | ≈1.8~2.2 | ≈136,000~166,000 | ≈6.0~7.35 |
看到没?同样是 1 米距离,PCB 走线的延迟比光纤多了将近一倍。你想想看,机箱内部几厘米的走线,在高频交易场景下,可能就差了几个纳秒。
为什么会有这种差异?说白了,介质的介电常数和磁导率决定了电磁波的传播速度。FR4 这种 PCB 材料的介电常数高,信号就跑得慢。
2.4 如何计算理论最小延迟
理论最小延迟的计算公式其实很简单:
理论最小延迟 = 物理距离 / 介质中的信号速度
但实际中要注意几个坑:
- 距离不是直线距离——光纤走的是管道、桥架,实际路径比直线长 5%~15%
- 设备处理延迟——交换机、网卡、CPU 都会引入额外延迟
- 协议开销——TCP 握手、重传、确认机制都会增加延迟
实战技巧:我建议在做系统设计时,先算物理极限延迟。然后在这个基础上加 20%~30% 作为「合理预期」。如果实际延迟比物理极限还低,那一定是测量方法有问题。
举个例子。假设你要从上海到东京做高频交易。上海到东京的直线距离约 1800 公里。光纤路径大概 2000 公里。
理论最小延迟 = 2000 km / 204,000 km/s
≈ 9.8 毫秒
加上设备处理、协议开销,实际能做到 11~12 毫秒就算很好了。如果有人跟你说能做到 8 毫秒,嗯,要么他在吹牛,要么他用了量子纠缠(开玩笑的)。
2.5 知识体系总览
下面这张图,是我自己梳理的「网络延迟物理极限」知识框架。你看一眼就能明白整个章节的逻辑:
这张图把本章的核心逻辑串起来了。从光速限制出发,到信号传播、介质影响,最后落到计算方法。你照着这个框架去理解,就不会乱。
2.6 小结
这一章我们聊了网络延迟的物理极限。核心就三句话:
- 光速是天花板,谁也突破不了
- 介质不同,速度不同,光纤比铜缆快,真空比光纤快
- 理论最小延迟 = 物理距离 / 介质速度,但实际要加余量
我记得刚入行时,总觉得延迟优化就是调参数。后来被现实教育了——物理定律面前,所有优化都是锦上添花。先算清楚物理极限,再谈优化策略。
下一章,我们会聊聊网卡和驱动层面的延迟优化。嗯,那又是另一片天地了。
公众号:蓝海资料掘金营,微信 deep3321