网络相关的命令工具研究报告:netsta观察TCP连接状态
网络相关的命令工具研究报告 : netstat 本文主要通过 netstat 来在 linux 下观察服务端和客户端的状态,了解 TCP 状态的转移过程 这张两图是完整的描述的TCP协议的过程 从中可以清楚的了解到整个 TCP 状态转移的过程。总共有11个状态。 先说明下图中每个字段的含义: LISTEN :服务器打开一个 socket 进行监听 SYN_SENT :当 socket 执行 CONNECT 连接时,客户端发送了 SYN 报文,并等待服务器发送三次握手 中的第2 个报文。 SYN_SENT 状态表示客户端已发送 SY N报文。 SYN_RCVD :表示接受到了 SYN 报到,该状态是 SOCKET 建立 TCP 的连接时的三次握手会话过程的一个中间状态,很短暂,基本上很难通过 netstat 观察到。 ESTABLISHED :表示客户端和服务器连接建立。 FIN_WAIT_1: 该状态与 FIN_WAIT_2 状态都是表示等待对方的 FIN 报文。但是 FIN_WAIT_1 状态是 ESTABLISHED 状态时,它想主动关闭连接,向对方发送了 FIN 报文,此时该 SOCKET 即进入 FIN_WAIT_1 状态。而 FIN_WAIT_2 状态是服务器回应 ACK 报文进入的状态。 FIN_WAIT_2 :是 socket 的半连接状态,也就是一方要求 close