这个计算器是做什么的?
本工具用于估算由两点之间物理距离所决定的理论最低网络延迟。数据在光纤中的传播速度大约只有真空光速的三分之二,因此距离为数据包的传输速度设定了一道无法逾越的底线——无论带宽多大,都无法突破物理规律的限制。
使用方法
输入两个端点之间的光缆距离,选择单位为公里或英里,再设置光纤速度因子(标准单模光纤通常约为 0.67)。计算器会给出单向传播延迟以及往返延迟(RTT),后者正是 ping 命令所测量的数值。
公式详解
信号的有效传播速度为 \(c \times v_f\),其中 \(c = 299{,}792{,}458\) 米/秒,\(v_f\) 为速度因子。单向延迟 = 距离 ÷ 有效速度;RTT 则是其两倍,因为要把返回路程也算进去。实际延迟总会更高,这是由于路由绕行、交换处理以及各种处理延迟等因素造成的。
$$\text{RTT} = \frac{2 \cdot d}{c \cdot \text{Velocity Factor}} \times 1000$$ $$\text{where}\quad \left\{ \begin{aligned} d &= \text{Distance (km)} \times 1000 \\ c &= 299792458 \ \text{m/s} \end{aligned} \right.$$
实例计算
以 1,000 公里光纤、\(v_f = 0.67\) 为例:有效速度 = \(299{,}792{,}458 \times 0.67 \approx 200{,}860{,}946\) 米/秒。单向延迟 = \(1{,}000{,}000 \div 200{,}860{,}946 \approx 0.004979\) 秒 ≈ 4.98 毫秒。RTT ≈ 9.96 毫秒。
$$\text{One-way} = \frac{1{,}000{,}000}{200{,}860{,}946} \approx 0.004979\ \text{s} \approx 4.98\ \text{ms}$$常见问题
为什么是 0.67? 玻璃光纤的折射率约为 1.47,会把光速减慢到真空光速的约 67%。
为什么我实际测得的 ping 值更高? 路由器、交换机、排队等待以及光缆并非直线铺设等因素,都会在这个物理最低值之上叠加额外的延迟。
能用它来计算卫星链路吗? 对于自由空间或真空中的传播路径,把速度因子设为接近 1.0 即可。