侠外游戏论坛

标题: 两台设备时间同步round trip latency (RTT)方式介绍 [打印本页]

作者: 灰色系    时间: 2017-1-3 17:11
标题: 两台设备时间同步round trip latency (RTT)方式介绍
在游戏开发过程中,会发现很多时候需要两台设备间时间同步进行的情况。
一般情况下,两台设备间时间同步使用round trip latency (RTT)方式
假设有A,B两台设备。
A->B:发送A的系统时间 [1]
B->A:直接发送 [2]
在A中,A的系统时间减去[1]的时间就可以获得RTT.
A->B:发送RTT[2]和A的现在时间[3]。
以上操作即可。
假设在B中想得到A的现在时间,计算方法是->A的现在时间=[3]+[2]/2.
NTP也与以上方式类似。
通过网络特征来看,因为RTT测定一次无法确定准确性,所以RTT的每次测定都会稍有偏差。
无线网络环境下,会发生更大的变化只有反复测定后取平均值才会更加准确。
想了解更多平详情可参考  Proudnet.com/zh-hans  网站中提供了多种时间同步函数。
```
CNetClient.GetIndirectServerTimeMs
CNetClient.GetP2PServerTimeMs
CNetClient.GetServerTimeMs
```
ProudNet不仅仅是对服务器,还有P2P连接的其他客户端获取RTT的功能。
只需要运用CNetClient和CNetServer中的GetLastPing和GetRecentPing。

作者: 飞翔天空    时间: 2017-1-3 17:33
鄙视楼下的顶帖没我快,哈哈
作者: 美柠    时间: 2017-1-4 11:23
提示: 作者被禁止或删除 内容自动屏蔽
作者: 美柠    时间: 2017-1-5 14:05
提示: 作者被禁止或删除 内容自动屏蔽
作者: 美柠    时间: 2017-1-6 19:37
提示: 作者被禁止或删除 内容自动屏蔽
作者: 浏览    时间: 2017-1-8 13:51
维持一个人的生命的事物,是他的事业。
作者: 美柠    时间: 2017-1-9 11:22
提示: 作者被禁止或删除 内容自动屏蔽
作者: 美柠    时间: 2017-1-10 11:30
提示: 作者被禁止或删除 内容自动屏蔽
作者: 美柠    时间: 2017-1-11 16:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: 美柠    时间: 2017-1-12 10:42
提示: 作者被禁止或删除 内容自动屏蔽
作者: 美柠    时间: 2017-1-13 16:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: 小小个    时间: 2017-1-19 11:39
LZ是最棒哒,鉴定完毕




欢迎光临 侠外游戏论坛 (https://bbs.xiawai.com/) Powered by Discuz! X3