我与通过WiFi我银河王牌连接到我的笔记本电脑进行试验。 这两款器件均通过WiFi连接到路由器,双方使用Java。
经过TCP连接给了我很高的坪不时,我决定立足于UDP连接,能够当数据包实际发送到控制。
然而,这似乎是安卓还是缓冲的UDP数据包,并不会立即给他们。 此,或者它已完全关闭无线网络,如果不存在用于第二的一些部分没有发送输出的数据。
首先,我ping通在不定期的电话约每秒一次,重复发送ping请求,只要没有得到任何答复(覆盖UDP数据包丢失):
computer -> phone -> computer
Pinging 192.168.1.40: 148.05968ms
Pinging 192.168.1.40: 524.41156ms
Pinging 192.168.1.40: 705.8688ms
Pinging 192.168.1.40: 3.705367ms
Pinging 192.168.1.40: 3.872159ms
Pinging 192.168.1.40: 549.4541ms
Pinging 192.168.1.40: 479.29843ms
Pinging 192.168.1.40: 3.89936ms
Pinging 192.168.1.40: 428.85876ms
Pinging 192.168.1.40: 739.28125ms
我工作围绕这一问题,通过从手机发送数据包的计算机只有1每100ms的数据字节,就比常规的其他变着法子:
computer -> phone -> computer
Pinging 192.168.1.40: 4.147753ms
Pinging 192.168.1.40: 3.738213ms
Pinging 192.168.1.40: 14.133768ms
Pinging 192.168.1.40: 4.470561ms
Pinging 192.168.1.40: 3.628386ms
Pinging 192.168.1.40: 3.898334ms
Pinging 192.168.1.40: 3.512401ms
Pinging 192.168.1.40: 7.907006ms
Pinging 192.168.1.40: 5.234216ms
Pinging 192.168.1.40: 5.639137ms
至关重要的是我的应用程序需要低响应时间,所以我会不停地发送空包这样的(只要至少有传输没有真正的数据)。 我想知道,我是否可以强制机器人来尽可能快地作出反应,而无需到处乱扔网络的所有无用的数据。 那么,有没有更好的解决方案?
顺便说一句,我假设的问题是智能手机,而不是电脑,但它也有可能是计算机等待传入数据包,然后发送它的数据包。 从我所了解的网络,这是非常不可能的,虽然。
谢谢你的帮助!