我有一个服务器和一个客户机在两台Unix机器上运行。它们可以是LAN中的两台机器,也可以是相隔很远且连接在VLAN中的两台机器。客户端只接收数据包,服务器只发送数据包。(UDP或TCP)
如何以编程方式测量它们之间的延迟?
这样做的一种方法是在发送之前在数据包上添加时间戳,但不能保证时钟同步。有什么建议吗?
发布于 2012-04-28 07:19:40
如果你的通信是严格的单向的,并且时钟不同步,你就不能这样做。
您可以引入一个从客户端发送到服务器的新数据包,该数据包询问“现在是什么时间?”服务器将使用其时间进行响应,而客户端将把响应时间除以2,从而得到单向延迟。附带的好处是,客户端可以找出服务器认为现在是什么时间。
https://stackoverflow.com/questions/10359074
复制相似问题