GPRS TCP通信频繁断,是否可用UDP解决?
GPRS TCP通信频繁断,是否可用UDP解决?
有些现场很好一个星期断一次线,有些现场一天断几十次。
UDP是没有连接的,是否可以解决通信不好的问题? udp只管发,不管你收到没,你不做双向通信很难知道服务器有没有收到你的消息。还是要自己做通信协议。 用UDP比较好,TCP连接有的时候要很久。
UDP自己做一个重发机制就好了。 udp 自己做重发一tcp在移动网比较坑人 楼主确定“有的”能做到一星期才断一次?
我的TCP连接,最佳的状态是6小时准时断一次! EMC菜鸟 发表于 2017-7-25 08:58
楼主确定“有的”能做到一星期才断一次?
我的TCP连接,最佳的状态是6小时准时断一次! ...
我们应用的现场确实有一周掉一次线的! 不过很少 ljt80158015 发表于 2017-7-25 09:04
我们应用的现场确实有一周掉一次线的! 不过很少
说到这个,有个问题可能需要注意,那就是“断”未必是运营商的问题,也有可能是连接的服务器端软件的问题 —— 我现在遇到的问题可能就是这个,在某种状态下,其实 TCP 没断,只是设备侧进入“睡眠”状态,但这个时候服务器侧可能会认为断了,从而导致需要重新连接,我曾今用公网的一个测试环境(也是本论坛坛友做的)测试过,发现公网的测试环境跟我公司自己做的软件确实表现不一样,同样的条件下,公网的测试环境依然能正常通信,但我们自己的服务器侧就认为TCP断了,这个问题一直到现在都还没解决! EMC菜鸟 发表于 2017-7-25 09:09
说到这个,有个问题可能需要注意,那就是“断”未必是运营商的问题,也有可能是连接的服务器端软件的问题 ...
当 recv()返回值为0 的时候,就认为是对方关闭连接。我无线测试也遇到这个问题,recv=0,实际网络没断,后来就通过超时来解决,recv=0时不关闭连接,继续接受,知道超时时间没有任何数据,就关闭连接重连 印象中,LZ不是去搞家族生意了么。 比较关注这个问题 ljt80158015 发表于 2017-7-25 10:47
当 recv()返回值为0 的时候,就认为是对方关闭连接。我无线测试也遇到这个问题,recv=0,实际网络 ...
因为服务器侧的软件不是我做的,所以为这事一直和软件部门拉锯战,烦透了,我都拿出公网测试的证据出来了,他们还是一副不关他们事的态度!
页:
[1]