【发布时间】:2018-07-27 04:37:17
【问题描述】:
假设TCP客户端(A)向TCP Sever(B)发送SYN,TCP客户端断开网络的场景,这里TCP Server会处于SYN-RCVD状态,TCP Server怎么知道Client不可达??
TCP Server 会重传 SYN+ACK 吗?
(如果是,服务器将重传多少次SYN+ACK??
【问题讨论】:
-
'Disconnected' 在这里没有任何意义。客户端正在尝试连接。还没有可以断开的连接。它可以断开连接的唯一方法是停止尝试连接。 SYN/ACK 将被重试几次,受慢启动和所有其余部分的影响,就像任何其他 TCP 段一样。离题。
-
'Closed' 没有比'disconnect' 更多的意义。在建立连接之前没有要关闭的 TCP 客户端。可能你的意思是“走了”。还是离题了。
-
@EJP 我怀疑在重试几次后 TCP-Server 会进入 CLOSED 状态还是处于 LISTEN 状态??
-
在您的实际问题中没有一个字出现。监听端口将保持在 LISTEN 状态。由初始 SYN 创建的半连接将被丢弃并完全消失。
-
@EJP 你能告诉我 TCP SERVER 什么时候会进入 CLOSED 状态吗??
标签: networking tcp tcpclient tcpserver