我正在考虑创建一个实时应用程序,其中 iPod Touch/iPhone/iPad 与服务器端组件(产生 MIDI,并在主机内向前发送)对话。当我在 Wifi 上 ping 我的 iPod Touch 时,我遇到了巨大的延迟(并且也有巨大的差异):
64 bytes from 192.168.1.3: icmp_seq=9 ttl=64 time=38.616 ms
64 bytes from 192.168.1.3: icmp_seq=10 ttl=64 time=61.795 ms
64 bytes from 192.168.1.3: icmp_seq=11 ttl=64 time=85.162 ms
64 bytes from 192.168.1.3: icmp_seq=12 ttl=64 time=109.956 ms
64 bytes from 192.168.1.3: icmp_seq=13 ttl=64 time=31.452 ms
64 bytes from 192.168.1.3: icmp_seq=14 ttl=64 time=55.187 ms
64 bytes from 192.168.1.3: icmp_seq=15 ttl=64 time=78.531 ms
64 bytes from 192.168.1.3: icmp_seq=16 ttl=64 time=102.342 ms
64 bytes from 192.168.1.3: icmp_seq=17 ttl=64 time=25.249 ms
即使这是 iPhone->Host 或 Host->iPhone 时间的两倍,15ms+ 对于我正在考虑的应用程序来说也太长了。 有没有更快的解决方法(例如 USB 数据线)?如果没有,在 Android 上构建应用会提供任何其他选择吗?
Traceroute 报告更多可用时间:
traceroute to 192.168.1.3 (192.168.1.3), 64 hops max, 52 byte packets
1 192.168.1.3 (192.168.1.3) 4.662 ms 3.182 ms 3.034 ms
任何人都可以为我解释 ping 和 traceroute 之间的区别,以及它们对于需要与主机对话的应用程序意味着什么?
最佳答案
我认为这可能是 WiFi 省电模式要了你的命。我认为电话会缓冲数据包并仅偶尔将其发送出去。我在 N900 上通过 WiFi 看到了类似的行为。
请注意您发布的 ping 中的强模式。这可能是由 ping 和天线周期性开关产生的节拍模式。
关于iphone - 较大的 iPhone Ping 时间是否表示应用程序延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2678325/