TCP系列-狀態(tài)機(jī)

  • CLOSED (關(guān)閉): 這是所有TCP連接的初始狀態(tài),表示沒有連接活動。
  • LISTEN (監(jiān)聽): 服務(wù)器端進(jìn)入此狀態(tài),表示已準(zhǔn)備好接受來自客戶端的連接請求。它正在監(jiān)聽指定的端口。
  • SYN_SENT (發(fā)送SYN): 客戶端主動打開(Active Open),發(fā)送SYN(同步序列號)報(bào)文段后進(jìn)入此狀態(tài),等待服務(wù)器的SYN-ACK響應(yīng)。
  • SYN_RECEIVED (收到SYN): 服務(wù)器端收到客戶端的SYN報(bào)文段后,發(fā)送SYN-ACK(同步-確認(rèn))報(bào)文段,并進(jìn)入此狀態(tài),等待客戶端的ACK響應(yīng)。
  • ESTABLISHED (已建立): 客戶端收到服務(wù)器的SYN-ACK,并發(fā)送ACK報(bào)文段后,雙方都進(jìn)入此狀態(tài)。表示TCP成功建立連接,可以開始雙向數(shù)據(jù)傳輸。
  • FIN_WAIT_1 (等待FIN1): 主動關(guān)閉方(通常是客戶端)發(fā)送FIN(結(jié)束)報(bào)文段后進(jìn)入此狀態(tài),等待對方的ACK。
  • CLOSE_WAIT (等待關(guān)閉): 被動關(guān)閉方(通常是服務(wù)器)收到FIN報(bào)文段后,發(fā)送ACK報(bào)文段,并進(jìn)入此狀態(tài)。此時(shí),它會通知應(yīng)用程序,數(shù)據(jù)傳輸已結(jié)束,等待應(yīng)用程序關(guān)閉連接。
  • FIN_WAIT_2 (等待FIN2): 主動關(guān)閉方收到對方的ACK報(bào)文段后,進(jìn)入此狀態(tài),等待對方發(fā)送FIN報(bào)文段。
  • LAST_ACK (最后確認(rèn)): 被動關(guān)閉方在應(yīng)用程序關(guān)閉連接后,發(fā)送自己的FIN報(bào)文段,并進(jìn)入此狀態(tài),等待對方的最后ACK。
  • TIME_WAIT (時(shí)間等待): 主動關(guān)閉方收到對方的FIN報(bào)文段后,發(fā)送ACK報(bào)文段,并進(jìn)入此狀態(tài)。這是一個(gè)2MSL(Maximum Segment Lifetime,最大報(bào)文段生命周期)的等待時(shí)間,以確保最后一個(gè)ACK報(bào)文段能夠到達(dá)對方,并讓舊的重復(fù)報(bào)文段在網(wǎng)絡(luò)中消失。
  • CLOSED (關(guān)閉): 經(jīng)過TIME_WAIT后,或在其他異常情況下,連接最終回到CLOSED狀態(tài)。
    image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容