网络时间同步

118 阅读1分钟

301e943fe2d86306f4b541b3f0792748.png

T0:客户端发给服务端时的时间戳

T1:服务端接收到时间戳

T2:服务端发给客户端时间戳

T3:客户端接收到时间戳

网络来回总延时: delay = (t3 - t0) - (t2-t1)

展开来看:设t0到t1,t2到t3的网络延迟相同,则

t1 = t0 + delta + delay/2

t3 = t2 - delta + delay/2

则客户端与服务端时间差: delta = ((t1-t0) + (t2-t3)) / 2

不过这是理想情况下的时间差,实际中上传和下发的网络延迟是不同的。

若客户端和服务端的时间差为0,则可以单独求出上传和下发的网络延迟。

更细的方面可以看下NTP协议相关内容。