姊妹篇:tcp/ip协议
netstat
作用:
查看“网络连接”、“路由表”、“接口统计”、“伪装连接”、“组播成员”、统计数据。
显示的都是网络子系统的信息,显示结果由第一个参数决定。
输出:
① 网络连接
⊙Proto “--inet”
⊙Recv-Q 本地没有来得及接收的字节数
⊙Send-Q 远程主机没有接收的字节数
⊙State
SYN SENT | 正在建立连接(第一次握手;客户端状态) |
SYN RECV | 正在确认连接(第二次握手;服务器状态) |
ESTABLISHED | 已建立连接(完成三次握手) |
FIN WAIT1 | 上层服务停止,等待连接关闭 |
FIN WAIT2 | 连接关闭,等待对方“关闭连接”信号 |
TIME WAIT | |
CLOSED | |
CLOSED WAIT | |
LAST ACK | |
LISTEN | |
CLOSING | |
UNKNOWN |
② unix域套接字
⊙Proto “--unix”
⊙RefCnt
⊙Flags
⊙Type
⊙State
⊙PID
⊙Path
* 附加:
TCP 协议建立连接时三次握手过程:
1客户端发送 SYN(j=100) 包;进入SYN_SENT 状态。
2反馈客户端的 ACK(j=100+1) 包,发送 SYN(k=100) 包;进入SYN_RECE状态。
3收到了自己发送给服务器的确认包,反馈服务器发送的 ACK(k=100+1) 包;进入ESTABLISHED状态。
TCP协议断开连接时四次握手过程:
1传输层接到上层协议关闭信号,主机1发送 FIN 给主机2;主机1进入FIN_WAIT1状态。
2主机2接收后反馈 ACK 给主机1;主机2进入CLOSE_WAIT状态,主机1收到后进入FIN_WAIT2状态。
3主机2把关闭信号报告给上层协议后,收到应答后发送 FIN 给主机1;主机2进入LAST_ACK状态。
4主机1收到后反馈一个 ACK;主机1进入TIME_WAIT状态,等待一段时间后进入CLOSED状态;主机2收到后进入CLOSED状态。