我目前正在用Java编写一个Minecraft客户端模拟器,用于最后一年的E& E工程项目。我正在使用此library来处理数据包。该库内部使用Netty 5.0库进行联网。
我的部分项目涉及测量正在发送的数据包的带宽,延迟和抖动。带宽并不是一个问题,因为我知道正在发送/接收哪些数据包,但我不知道如何测量延迟和抖动。
据我所知,TCP数据包确实包含时序信息。无论如何都可以通过Netty访问此信息或直接测量延迟/抖动?
答案 0 :(得分:1)
最简单的解决方案是测量请求/响应时间。您的客户端发送一条消息,该消息具有来自服务器的预期响应。然后,您可以使用tcpdump或wireshark记录所有数据包,并编写工具来计算响应时间请求。
这可以在不更改客户端或服务器代码的情况下完成。