现在做的项目是用android双卡设备向服务器端发送数据,在客户端启动两个线程(每个线程对应一个3G卡)向服务器发送数据,设置发送缓存都是8K,在客户端检测到每个线程是轮流发送数据的,但是服务器接收时偶尔会出现这样的的情况:接收到一个线程发送的很多数据(远大于8K),然后再收到到另一个线程的很多数据(服务器端接收到的数据不均匀),请教过有经验的同事,说是这些数据由于网络问题,阻塞在了网络上。
现在请教一下做过3G传输的前辈,怎样才能让服务器及时的接收到阻塞在网络上的这部分数据?客户端的socket已经设置了立即发送。
谢谢大家!
现在请教一下做过3G传输的前辈,怎样才能让服务器及时的接收到阻塞在网络上的这部分数据?客户端的socket已经设置了立即发送。
谢谢大家!
就好比你让两个人给你把东西从A点带到D点,途经B,C两点,虽然两个人都是轮流发的,但是我们不能确定在B,C两点间发生了什么事情,也许休息了下,也许生了一觉,这样就不能确定在D端接收是按顺序的。
你可以看下网络协议,你就会理解这里面的问题了。
需要参考TCP协议自己定义方式来保证包的顺序