This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我在软件开发过程中,一直发现CC3235S会接收不到或不回复,TCP层server发来的keepalive包。之后为了减少变量,找到根本原因。我将CC3235S烧回了官方network terminal样例。另一端PC段,我也只开了一个TCP server。我发现此问题依旧存在!!!
测试环境:network terminal跑了 “wlanconnect -s "Amba_tliu" -t WPA2 -p "Ambarella2015" 连接我的路由器,和“recv -c 10.0.0.5 -p 8888”建立TCP连接,并block住,因为server那里不会发任何数据。TCP server段设置keepalive interval 3秒钟,retry 10次。
如下图wireshark的log, server IP: 10.0.0.5, CC3235S IP: 10.0.0.67。从log中可以看出在第218秒时,server发给TI SOC一个keepalive包,但是没有收到回复。随后,server隔3秒后再次发送一个keepalive包,此时TI SOC收到后并回复了一个TCP RST。这操作直接导致两者间的TCP连接中断!!!
我的问题是:1. 为什么TI SOC会出现收到keepalive不会ACK的情况?或者说server发了,SOC干脆没收到? 2. 为什么server已经试图retry发送keepalive了,SOC直接选择中断连接?有什么解决办法?