Networking 移动设备上的周期性网络延迟峰值

Networking 移动设备上的周期性网络延迟峰值,networking,mobile,real-time,Networking,Mobile,Real Time,我大约每200毫秒从服务器上实时接收一次UDP数据包,有时甚至在几秒钟的延迟内收到数据包 我已经将UDP ping(从客户端)设置为200ms,这使我的网络响应速度更快,但这都是从实验中学到的。 我不太清楚为什么会这样 我想了解节能算法是如何在移动设备上工作的,因为我认为这就是为什么会发生这种情况 经过一些调查,到目前为止我发现最好的事情是 但是它没有太多关于这个主题的细节,也没有任何参考资料可供进一步阅读。可能有两种方法来看待这个问题: 为什么“200ms”如此特别 用户可以知道什么时候事情

我大约每200毫秒从服务器上实时接收一次UDP数据包,有时甚至在几秒钟的延迟内收到数据包

我已经将UDP ping(从客户端)设置为200ms,这使我的网络响应速度更快,但这都是从实验中学到的。 我不太清楚为什么会这样

我想了解节能算法是如何在移动设备上工作的,因为我认为这就是为什么会发生这种情况

经过一些调查,到目前为止我发现最好的事情是


但是它没有太多关于这个主题的细节,也没有任何参考资料可供进一步阅读。

可能有两种方法来看待这个问题:

为什么“200ms”如此特别

用户可以知道什么时候事情需要超过200-300毫秒。这可能不仅包括传输时间,还包括移动设备使用该数据所花费的时间。实际上,这是一个重要的平衡点。假设新数据持续可用,并且网络可以随时发送更新,那么速度超过200毫秒可能会浪费资源

为什么调整ping频率似乎有效果

许多节能算法做两件事:

  • 仅在必要时发送/请求更新,但

  • 定期让网络知道你还在

这定义了另一个平衡点,因为在“必要的”更新之间可能会经过几秒钟,网络可能会在该点之前检查您是否还在。通过调整ping,您可能表示每隔200毫秒“我还在这里,需要更新!”


这可能无法解释你所看到的效果,但这是一些需要考虑的因素。

这不是一个编程问题。@ IHANYI建议分类。我不确定这是如何被断定为“不是编程问题”。如果没有提供足够的关于所讨论的应用程序的信息,并且这些信息有助于回答您的问题,这与离题不同。奇怪的是,网络标签的信息表明标签本身是离题的:“对于大多数编程问题,使用[network programming]标签。非编程网络问题与主题无关…'。所以,假设你的问题与编程问题有关,也许应该标记为网络编程。你是通过手机网络还是wifi?如果您使用wifi,设备和服务器是否在本地?