测试 NTP 以在本地网络中的节点之间进行时间同步
testing NTP for time sync between nodes in a local network
我需要你的专业知识:
我有一块 Xilinx zynq 板和一台台式电脑,它们正在与 NTP 服务器(第 3 层)同步时间 NTP 服务器是一台台式电脑,正在与 NTP 池同步时间,现在为了测试和计算嵌入式系统(Zynq)和桌面计算机之间的时间差异我正在使用下面描述的简单回显方法:
注意:除本地NTP服务器和NTP池外,所有通信均通过无线网络进行。
- 客户端将时间发送给服务器
- 服务器读取数据包并将其时间与数据包的时间进行比较并打印出来
- 服务器把它的时间放到另一个数据包上发送给客户端
- 客户端获取数据包并读取它并打印差异时间
这给我大约 1-2 毫秒的时差
现在的问题是,用另一种方法测试:简单的发送和接收而不是回显方法,意味着一个系统只发送带有时间戳的数据包,另一个系统只读取和打印时间差,结果是 10大倍的时差!我想知道你们是否知道背后的原因是什么?
原因是无线设备有一个队列,在发送任何数据包之前缓冲 10 个数据包,这使得这个过程比正常情况下更长。
我需要你的专业知识:
我有一块 Xilinx zynq 板和一台台式电脑,它们正在与 NTP 服务器(第 3 层)同步时间 NTP 服务器是一台台式电脑,正在与 NTP 池同步时间,现在为了测试和计算嵌入式系统(Zynq)和桌面计算机之间的时间差异我正在使用下面描述的简单回显方法:
注意:除本地NTP服务器和NTP池外,所有通信均通过无线网络进行。
- 客户端将时间发送给服务器
- 服务器读取数据包并将其时间与数据包的时间进行比较并打印出来
- 服务器把它的时间放到另一个数据包上发送给客户端
- 客户端获取数据包并读取它并打印差异时间
这给我大约 1-2 毫秒的时差
现在的问题是,用另一种方法测试:简单的发送和接收而不是回显方法,意味着一个系统只发送带有时间戳的数据包,另一个系统只读取和打印时间差,结果是 10大倍的时差!我想知道你们是否知道背后的原因是什么?
原因是无线设备有一个队列,在发送任何数据包之前缓冲 10 个数据包,这使得这个过程比正常情况下更长。