仅使用一个 FIN 包的 HTTP 关闭连接

网络工程 通讯协议
2021-07-14 07:02:37

在wireshark上,我尝试使用http协议连接到某个站点。当我跟踪 TCP 流时,我看到只有一个 FIN 包。这怎么会发生?

编辑:

问题是我没有保存捕获,现在每次尝试复制它时我都会获得两次握手,我可以告诉http://elpais.com/是我访问的网页。

我在考虑两种可能:

1-我在收到所有数据包之前关闭了捕获。

2-我遵循了 TCP 转换图上的特殊转换,因此只需要一个 FIN 即可关闭连接...(这可能吗?)

1个回答

听起来接近一半

什么是半封闭连接?或者:这不是错误——这是一个功能!

每个 TCP 连接都由两个相互独立关闭的半连接组成。因此,如果一端发送 FIN,则另一端可以自由地仅 ACK 该 FIN(而不是 FIN+ACK-ing),这会向 FIN 发送端发出信号,表明它仍有数据要发送

https://superuser.com/questions/298919/what-is-tcp-half-open-connection-and-tcp-half-closed-connection