对比项
| 对比项 | FIN 关闭 | RST 终止 |
|---|---|---|
| 语义 | 我不再发数据,仍可收 | 立即放弃连接 |
| 对端表现 | 读到 EOF,可优雅收尾 | read 报 ECONNRESET,未读数据丢失 |
| 缓冲数据 | 正常发送 | 可能直接丢弃 |
| 典型场景 | 正常 close() | 端口拒绝、崩溃、SO_LINGER 0、重置 |
抓包区分
抓包区分
tcpdump -nn 'tcp[tcpflags] & (tcp-fin|tcp-rst) != 0' -c 20HTTP/1.1 客户端收到 RST 会丢失未读完的响应体,这是「偶发响应截断」的常见来源。