FIN 数据包后 TCP Windowsize 0

发布于 2024-11-03 18:23:55 字数 569 浏览 4 评论 0原文

如果机器在收到 FIN 后将 TCP 窗口大小设置为零可以吗?

我从连接结束的wireshark 中得到了以下数据包转储,我只是想知道这是否是结束连接的有效方法或者是否有问题。

192.168.1.1 192.168.1.6 TCP 3450 > 102 [FIN, ACK] Seq=48 Ack=50 Win=65486 Len=0
192.168.1.6 192.168.1.1 TCP [TCP ZeroWindow] 102 > 3450 [ACK] Seq=50 Ack=49 Win=0 Len=0
192.168.1.6 192.168.1.1 TCP 102 > 3450 [FIN, PSH, ACK] Seq=50 Ack=49 Win=0 Len=0
192.168.1.1 192.168.1.6 TCP 3450 > 102 [ACK] Seq=49 Ack=51 Win=65486 Len=0

顺便说一句:.1 是常规 Windows PC,而 .6 是西门子 PLC。 (S7-400)


经过一番调查,这看起来是一种奇怪但有效的结束 TCP 会话的方法。

Is it okay if a machine sets the TCP windowsize to zero after receiving a FIN?

I've got the following packet dump from wireshark of the end of the connection and I'm just wondering if this is a valid way to end a connection or if something is wrong.

192.168.1.1 192.168.1.6 TCP 3450 > 102 [FIN, ACK] Seq=48 Ack=50 Win=65486 Len=0
192.168.1.6 192.168.1.1 TCP [TCP ZeroWindow] 102 > 3450 [ACK] Seq=50 Ack=49 Win=0 Len=0
192.168.1.6 192.168.1.1 TCP 102 > 3450 [FIN, PSH, ACK] Seq=50 Ack=49 Win=0 Len=0
192.168.1.1 192.168.1.6 TCP 3450 > 102 [ACK] Seq=49 Ack=51 Win=65486 Len=0

BTW: .1 is a regular windows PC while .6 is a Siemens PLC. (S7-400)


After some investigation it looks like a weird but valid way to end a TCP conversation.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

放赐 2024-11-10 18:23:55

我认为在 FIN ACK 之后发送零窗口没有任何问题...大概是 192.168.1.6192.168 发送了 FIN。 1.1,因此他们现在正在关闭连接。

192.168.1.6 192.168.1.1 TCP [TCP ZeroWindow] 102 > 3450 [ACK] Seq=50 Ack=49 Win=0 Len=0

但立即设置 PSH 标志并且在 ACK< 之后立即不发送任何数据 (Len=0) /code>,对我来说看起来很奇怪(但技术上没有错误)...

192.168.1.6 192.168.1.1 TCP 102 >第3450章【FIN,PSH,ACK】Seq=50 Ack=49 Win=0 Len=0

I see nothing wrong with sending a zero window after a FIN ACK... presumably 192.168.1.6 sent a FIN to 192.168.1.1, so they are now closing the connection.

192.168.1.6 192.168.1.1 TCP [TCP ZeroWindow] 102 > 3450 [ACK] Seq=50 Ack=49 Win=0 Len=0

But immediately setting a PSH flag and sending no data (Len=0) right after that ACK, looks rather odd (but not technically wrong) to me...

192.168.1.6 192.168.1.1 TCP 102 > 3450 [FIN, PSH, ACK] Seq=50 Ack=49 Win=0 Len=0

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文