gpt4 book ai didi

algorithm - 通过网络同步计数器

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:00:32 24 4
gpt4 key购买 nike

我有两台可以通过串行连接相互通信的计算机。通过无线网络建立连接。两个系统之间的通信存在可变的、不断变化的延迟。在这两个系统上,我都有一个计数器运行时间,每毫秒递增 1。它们都在应用程序启动时启动。假设每台计算机在不同时间启动。我如何使用串行连接同步计数器,以便 systemA.counter 等于 systemB.counter 并且两个计数器同时递增(或尽可能接近)。

理想情况下,一旦同步,计数器只会缓慢地分开,这样我就可以每 3 或 4000 inc 重新同步一次。

我正在寻找有关该主题的良好资源、示例算法、示例代码 (c/c++),以及任何能为我指明正确方向的资源。

更新

这是一个封闭的系统,没有互联网。出于所有意图和目的,除了通过无线链路打开串行线路之外根本没有真正的协议(protocol)。目前该链接是蓝牙,但我正在考虑将其移至 ZigBee Mesh。目前有 2 个节点,但如果我有 30 个节点都运行同一个应用程序,我希望它们全部同步。没有客户端/服务器指定,只有几个设备运行带有计数器的相同程序。我无权访问诸如时间之类的任何内容,只有这个每毫秒递增一次的计数器以及我可以采用的任何算法。

一旦我可以让它工作,我想建立一个命题和映射系统,但要计算节点之间的距离,我需要在设备上同步 actuate timing。

最佳答案

如果您使用此计数器对系统中的事件进行排序,您应该查看 vector clocksLamport timestamps .

关于algorithm - 通过网络同步计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12593517/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com