gprs调试过程中关于TCP连接的问题
在TCP三次握手的过程中,mc35发送第一次握手,服务器应答第二次握手,但是mc35发送的第三次握手服务器始终收不到
通信过程中的数据如下:
第一次握手数据:(这只是列出了最后的两个,只是IP的标示和TCP的序号在递增,其他首部数据都是一样的)
FF 03 00 21 45 00 00 30 01 D4 40 00 80 06 6E 7C 0A 1D D4 AA 3B 24 62 9A 07 83 00 50 00 00 00 73 00 00 00 00 70 02 40 00 BE 53 00 00 02 04 05 B4 01 01 04 02 A2 5D 7E
FF 03 00 21 45 00 00 30 01 D6 40 00 80 06 6C 7C 0A 1D D4 AA 3B 24 62 9A 07 83 00 50 00 00 00 74 00 00 00 00 70 02 40 00 BE 52 00 00 02 04 05 B4 01 01 04 02 3E 0E 7E
第二次握手数据:
FF 03 33 2145 00 00 3056 1D 00 00 71 06 77 25 3B 24 62 9A 0A 1D D4 AA 00 50 07 83 CB BD 02 4E 00 00 00 6D 70 12 40 00 F0 3D 00 00 02 04 05 B4 01 01 04 02 70 6D 7E
第三次握手数据:
FF 03 00 21 45 00 00 28 01 D8 40 00 80 06 72 7C 0A 1D D4 AA 3B 24 62 9A 07 83 00 50 00 00 00 6D CB BD 02 4F 50 10 40 00 1D 02 00 00 F1 32 7E
FF 03 00 21 45 00 00 28 01 DA 40 00 80 06 70 7C 0A 1D D4 AA 3B 24 62 9A 07 83 00 50 00 00 00 6D CB BD 02 4F 50 10 40 00 1D 02 00 00 65 69 7E
发送第三次握手时的数据也只是在IP的标示在递增变化,其他数据都一样
但是第三次握手服务器端死活收不到,用Ethereal监控接收端口只能收到1个第一次握手的数据和应答的第二次握手的数据,而且第二次握手的数据在发送3次后就停止发送(估计是默认3次未响应就自动断开)。为了避免是因为GPRS丢包导致没有收到,于是在发送第三次握手的时候采用了死循环不停发送,但是服务器端还是收不到
希望大家来共同探讨一下,希望得到高手的指点
在此谢过各位
[解决办法]
先帮顶下。
MARK.
[解决办法]
mc35发送第三次握手,服务器没有收到,说明移动网络不是专线专用,可能已经断掉了。