2015-11-07 77 views
0

我实现了在本地网络中发送和接收消息的CFNetwork框架(所有设备都连接到同一个网络)。我成功实现了这个功能,但我的问题是,如果我连接更多的设备,如8到10那时消息将会延迟,我想在接收端获得延迟时间。我尝试了很多,但没有运气来获得延迟时间。如果有人有任何想法如何得到这个请帮助我。在接收端查找套接字消息的延迟时间

在此先感谢。

回答

0

我首先抓住一个BSD许可的ntpd实现并使用它来计算各个设备之间的时钟偏移量。任意宣布其中一次是“真相”。

通过该方案,发送设备可以将时间戳(相对于“真值”的本地时钟偏移调整)添加到出站分组中,并且接收设备可以将另一端的时间戳与当前时间(再次针对其本地时钟偏移进行调整)。

AFAIK,没有一个更简单的方法是准确的。通常情况下,延迟并不重要,如果确实如此,则需要使用lot工作来确定具有任何实际精度的延迟。