#real-time-clock #differential #measurement #tool #quick #dirty #sync

app timeywimey

快速且简单的RTC差分测量工具

1 个不稳定版本

0.1.0 2023年9月9日

#8 in #dirty

MIT/Apache

12KB
133 代码行(不包括注释)

这是一个简单的工具,可用于诊断和分析有故障的实时时钟。

使用方法

在受影响的机器和已知工作的诊断机器上安装此工具

cargo install timeywimey

受影响的机器

在受影响的机器上,只需运行 timeywimey server。如果您愿意,可以使用 -a 更改它监听的端口或接口。为了获得最大数据,请禁用操作系统可能正在后台执行的网络时间同步。 (别忘了之后打开它!)

诊断机器

在诊断机器上,运行 timeywimey client -ADDRESS_AND_PORT_OF_PATIENT -/to/logfile.csv。可选地,使用 - 修改轮询间隔。在默认的5秒轮询间隔下,日志文件每天将增长约600KB。

分析

运行几小时或几天后,将CSV文件插入您喜欢的电子表格、绘图或分析软件。第一列是诊断机器在发送轮询请求时的UNIX时间戳。第二列是此时间戳与受影响机器报告的时间戳之间的差异。第三列是诊断机器对请求发送和响应接收之间经过的时间(以秒为单位)的测量。

请注意,日志文件将包含大量行,可能会使您的电子表格软件崩溃!(如果发生这种情况,请尝试更长的轮询间隔。)

如果您将第一列作为X轴,第二列作为Y轴,您将看到两台机器之间时间差的趋势。如果每个人的RTC都运行良好,时间差将保持恒定,漂移非常小(即使每天一百分之一也是可怕的)。如果某人的RTC表现不佳,Y轴上可能会有明显的斜率,甚至包括不连续性。

尝试理解差分斜率的变化可能很有趣。例如,如果患者在玩游戏时明显加快或减慢,这可能表明该机器RTC的温度补偿电路不再正常工作。或者,如果它经常在固定的时间间隔内跳变一个固定的数值,这表明计数器或寄存器中的坏触发器。

安全性

可以访问服务器监听端口的任何人可以从交易中获得大约2:1的带宽放大。除此之外,安全考虑因素很少。仍然最好不要将其暴露在公共互联网上。

注意事项

由于懒惰,此版本仅测量UNIX时间,精度为1秒。这是使用最快和最便携的方式获取RTC时间所强加的限制。

法律声明

TimeyWimey版权所有©2023,Solra Bizna,许可方式如下:

由您选择。

除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交给TimeyWimey crate的任何贡献,将按照上述方式进行双重许可,不附加任何额外条款或条件。

依赖项

~3–16MB
~175K SLoC