三次握手的第三个ACK包丢了,会发生什么?
生活随笔
收集整理的這篇文章主要介紹了
三次握手的第三个ACK包丢了,会发生什么?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載自三次握手的第三個ACK包丟了,TCP的處理方式
三次握手的第三個ACK包丟了,客戶端認為連接建立,寫數據時,會觸發RST。
當Client端收到Server的SYN+ACK應答后,其狀態變為ESTABLISHED,并發送ACK包給Server,如果此時ACK在網絡中丟失,那么Server端該TCP連接的狀態為SYN_RECV,并且依次等待3秒、6秒、12秒后重新發送SYN+ACK包,以便Client重新發送ACK包。
Server重發SYN+ACK包的次數,可以通過設置/proc/sys/net/ipv4/tcp_synack_retries修改,默認值為5。
如果重發指定次數后,仍然未收到ACK應答,那么一段時間后,Server自動關閉這個連接。
但是Client認為這個連接已經建立,如果Client端向Server寫數據,Server端將以RST包響應,方能感知到Server的錯誤
總結
以上是生活随笔為你收集整理的三次握手的第三个ACK包丢了,会发生什么?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软件测试的步骤
- 下一篇: 【老杜】MySQL—day02