【发布时间】:2009-12-16 09:26:47
【问题描述】:
客户端先关闭socket,当服务器端数据不多时,tcp连接关闭就好了:
FIN -->
<-- ACK
<-- FIN, ACK
ACK -->
服务器忙于发送数据时:
FIN -->
<-- ACK,PSH
RST -->
并且服务器连接进入 CLOSE_WAIT 状态并在那里挂了很长时间。
这里有什么问题?客户端相关还是服务器相关?这发生在 Redhat5 的本地套接字上。
这个article讲为什么会发送“RST”,但是不知道为什么服务器连接卡在CLOSE_WAIT,不发送FIN。
[编辑]我忽略了最重要的信息,这发生在 qemu 的 slirp 网络仿真上。处理关闭连接似乎是 slirp bug 的问题。
【问题讨论】:
标签: linux tcp network-programming network-protocols qemu