我想查看我的udp服务器客户端应用程序。我想检查的功能之一是服务器发送的数据与客户端接收的数据之间的时间延迟,反之亦然。 我想出了一种从服务器向客户端发送消息并记下时间的方法。收到此消息时,客户端将相同的消息发送回服务器。服务器返回此回显消息并再次记录时间。发送消息的时间与收到回送消息的时间之间的差异告诉我服务器发送的数据与客户端收到的数据之间的延迟。
这种做法是否正确? 因为我也预见到使用这种方法会涉及很多其他延迟。有什么可能的方法来计算更准确的延迟?
等待帮助。
答案 0 :(得分:2)
是的,这是最传统的做法,你可以这样做。
答案 1 :(得分:1)
你可以在嗅探器上看到,使用发送者的udp数据包和接收者的udp数据包之间的相对时间。为了获得更准确的结果,您必须深入窗口的堆栈,检查是否收到udp数据包。而对于计时器的计算,您可以使用实时时钟,该时钟可提供高达微秒的延迟。你也使用udp,它具有高优先级的数据包丢失,不像tcp那样可靠。 你用的是什么堆栈? LwIP?