如果机器在收到 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 对话的方式。