我有一个代理,比如A
,正在运行并向我的服务器发送信息,比如说S
。 A
的套接字配置为keepalive
,当A
和S
之间的网络较差时,A
会检测到连接错误,尝试重新连接到S
。我有时可以观察到A
上的TCP连接状态为FIN_WAIT1
,这意味着A
发送FIN
数据包并等待。但是这个FIN
数据包似乎丢失了,因为在S
我可以看到ESTABLISHED
和A
之间有很多S
个连接,通常应该只有一个。
TCP在这种情况下是否失败,或者我错过了什么?
答案 0 :(得分:0)
在没有ACK的情况下重新传输,就像任何其他TCP段一样。