火光游戏

 找回密码
 立即注册
搜索
查看: 6265|回复: 24
打印 上一主题 下一主题

两台设备时间同步round trip latency (RTT)方式介绍

[复制链接]
跳转到指定楼层
1
发表于 2016-12-9 21:58:38 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
在游戏开发过程中,会发现很多时候需要两台设备间时间同步进行的情况。
一般情况下,两台设备间时间同步使用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。
回复

使用道具 举报

25
发表于 2017-1-13 15:49:08 | 只看该作者
Proudnet的产品你肯定会非常感兴趣的
回复 支持 反对

使用道具 举报

24
发表于 2017-1-12 10:19:02 | 只看该作者
ProudNet你可以了解一下
回复 支持 反对

使用道具 举报

23
发表于 2017-1-11 16:19:38 | 只看该作者
更多技术问题可以跟大家一起分享
回复 支持 反对

使用道具 举报

22
发表于 2017-1-10 10:59:26 | 只看该作者
跟大家一起学习跟大家一起学习
回复 支持 反对

使用道具 举报

21
发表于 2017-1-9 10:57:20 | 只看该作者
或许对你有所帮助或许对你有所帮助
回复 支持 反对

使用道具 举报

20
 楼主| 发表于 2017-1-6 19:09:04 | 只看该作者
更多的精彩等你来参与
回复 支持 反对

使用道具 举报

19
 楼主| 发表于 2017-1-5 13:41:00 | 只看该作者
好的经验跟大家一起分享
回复 支持 反对

使用道具 举报

18
 楼主| 发表于 2017-1-4 10:47:46 | 只看该作者
很多著名游戏都使用了ProudNet产品
回复 支持 反对

使用道具 举报

17
 楼主| 发表于 2017-1-3 10:05:53 | 只看该作者
很多公司都使用了ProudNet产品
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Archiver|火光游戏发布网 ( 黔ICP备19013343号-1 )

贵公网安备 52011502001243号

GMT+8, 2025-11-25 09:12 , Processed in 0.097724 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2013

快速回复 返回顶部 返回列表