0

假设我已经接受()到我的服务器(在 Solaris 上运行)的连接,并且客户端已经关闭了连接。在服务器端关闭()它之前,服务器端的套接字(在 netstat 类别中)的状态是什么?它是绑定的吗?

4

5 回答 5

7

它将是 CLOSE_WAIT,参见 tcp 状态图,例如在http://en.wikipedia.org/wiki/File:Tcp_state_diagram_new.svg

于 2008-12-15T10:44:21.900 回答
1

在这种情况下,客户端上的套接字将处于 TIME_WAIT 状态,而服务器上的套接字将通过 CLOSE_WAIT 并很快变为 CLOSED,因此在它完全从列表中消失之前,您可能无法在 netstat 中捕获它。

于 2008-12-16T12:27:50.443 回答
0

应该是从开始到--->CLOSE_WAIT的末尾开始。FINTIME_WAITCLOSED

在这种情况下,首先启动的是客户端。所以服务器会去CLOSE_WAIT

于 2011-04-20T17:20:53.257 回答
0

CLOSE_WAIT

您可以通过以下方式检查:

ps辅助

lsof -a -p [server_process_id]

你会得到:袜子 0,8

状态 8:TCP_CLOSE

于 2016-06-13T20:36:06.773 回答
-1

我猜,TIME_WAIT。

您可以在 Linux 上使用“netstat”检查它,不知道在 Solaris 上如何操作。

于 2008-12-15T10:15:46.263 回答