四个时间戳分离处理与网络延迟

在基本双向交换中,t1是客户端发送时刻,t2和t3是服务器接收、发送时刻,t4是客户端收到回答时刻。往返延迟估计为(t4−t1)−(t3−t2),从总经过时间里扣除服务器处理期间。

偏差估计为[(t2−t1)+(t3−t4)]/2,依赖双向传播时间大致对称这一前提。若一个方向持续更慢,就会把部分路径差异误作时钟差;时间戳位数很多,也不能消除这种系统误差。后续交错模式还可利用更准确的实际发送时间戳。

参考:[1] [2]

时间源层级不是准确度排名

NTP把服务器组织到通向参考时钟的同步关系中,stratum表示其中的层级,而不是地理距离或简单的精度排名。报文还有根延迟、离散度等信息,只有层级较低这一点,不足以断定某个远端时间源必然更适合当前网络路径。

协议算法考虑多次测量的偏差、延迟和抖动,并可结合多个时间源持续校准本地时钟的时间与频率。它不是定时把系统时间直接覆盖为最近收到的一个数字;具体滤波、选择和时钟调节行为也会影响稳定性。

参考:[1]

认证时间消息仍不能消除延迟

网络时间安全NTS为NTP客户端—服务器模式加入认证与重放保护等机制。它先通过TLS进行密钥建立,再使用相应NTP扩展保护时间交换;并不是把每一轮NTP请求都改成必须重新建立TLS连接。

认证能帮助排除伪造或被修改的内容,却不能阻止有能力干预路径的一方只延迟报文而不改内容。RFC 8915据此单独讨论延迟攻击:仍要考虑可接受延迟、多时间源和路径条件,不能把“已认证”直接等同于“时间必定准确”。

参考:[3]