Networking
傳入 TCP SYN 的可能性
這可能是一個一般的 TCP 問題。
我可以在連接或狀態連接上接收 TCP
SYN
數據包嗎?ESTABLISHED``TIME-WAIT
這可能嗎?
不應發生在 TCP 連接上
SYN
收到的消息。ESTABLISHED
它可能是一個延遲的數據包,可以安全地靜默丟棄。如果連接失去並且在客戶端而不是在伺服器上超時,或者如果客戶端重新啟動,則可能以伺服器處於
ESTABLISHED
狀態而客戶端處於狀態而結束。CLOSED
在這種情況下嘗試打開新連接會導致在狀態SYN
下接收數據包。ESTABLISHED
期望的結果是關閉舊連接並打開新連接。實現這一預期結果的方式如下:
- 客戶端發送一個
SYN
來創建一個新的連接。- 伺服器發送一個
ACK
連接ESTABLISHED
。- 客戶端使用導致連接消失
ACK
的數據包響應。RST``ESTABLISHED
- 客戶端重新傳輸
SYN
數據包以創建新連接。在伺服器關閉連接並且客戶端打開具有相同埠號的新連接後,可能會
SYN
在狀態下接收數據包。TIME_WAIT
這將導致打開一個新連接。