日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TCP协议三步挥手与四步挥手

發(fā)布時間:2025/3/21 编程问答 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TCP协议三步挥手与四步挥手 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

關(guān)于TCP協(xié)議

TCP(Transmission Control Protocol, 傳輸控制協(xié)議)是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。與之對應(yīng)的是UDP(User Datagram Protocol ,用戶數(shù)據(jù)報協(xié)議),是不可靠傳輸層協(xié)議。

三步握手

可以想象兩人用對講機交談。

A:我準(zhǔn)備好了你準(zhǔn)備好了嗎,收到請回答。 B:收到收到,我也準(zhǔn)備好了,收到請回答。 A:收到收到

?

?

  • 客戶端發(fā)送 SYN報文給服務(wù)器端,序列號是n,進(jìn)入 SYN_SEND 狀態(tài)。

  • 服務(wù)器端收到 SYN 報文,回應(yīng)一個ACK(序列號是n+1)同時發(fā)一個 SYN (序列號是m),進(jìn)入 SYN_RECV 狀態(tài)。

  • 客戶端收到服務(wù)器端的 SYN 報文,回應(yīng)一個 ACK(序列號是m+1)報文,進(jìn)入 Established 狀態(tài)。

  • 四步揮手

    ?

    ?

  • 客戶端發(fā)送一個 FIN ,告訴服務(wù)器想關(guān)閉連接。

  • 服務(wù)器收到這個 FIN ,發(fā)回一個 ACK。

  • 服務(wù)器通知應(yīng)用程序關(guān)閉網(wǎng)絡(luò)連接,應(yīng)用程序關(guān)閉后通知服務(wù)器。服務(wù)器發(fā)送一個 FIN 給客戶端 。

  • 客戶端發(fā)回 ACK 報文確認(rèn)。

  • 為什么揮手要四步

    這是因為服務(wù)端的 LISTEN 狀態(tài)下的 SOCKET 當(dāng)收到客戶端建立連接請求的SYN 報文后,它可以把 ACK 和 SYN ( ACK 起應(yīng)答作用,而 SYN 起同步作用)放在一個報文里來發(fā)送。但關(guān)閉連接時,當(dāng)服務(wù)器收到客戶端的 FIN 報文通知時,服務(wù)器只能發(fā)一個回應(yīng)報文ACK:“哦,我知道了”,然后通知應(yīng)用程序。應(yīng)用程序完成全部數(shù)據(jù)發(fā)送并確定可以終止了,服務(wù)器才能發(fā)送FIN告訴客戶端可以真正斷開連接了。所以這一步ACK報文和FIN報文需要分開發(fā)送,因此多了一個步驟。

    TCP報文格式

    ?

    ?

    • ACK : TCP協(xié)議規(guī)定,只有ACK=1時有效,也規(guī)定連接建立后所有發(fā)送的報文的ACK必須為1。

    • SYN(SYNchronization) : 在連接建立時用來同步序號。當(dāng)SYN=1而ACK=0時,表明這是一個連接請求報文。對方若同意建立連接,則應(yīng)在響應(yīng)報文中使SYN=1和ACK=1. 因此, SYN置1就表示這是一個連接請求或連接接受報文。

    • FIN (finis)即完,終結(jié)的意思, 用來釋放一個連接。當(dāng) FIN = 1 時,表明此報文段的發(fā)送方的數(shù)據(jù)已經(jīng)發(fā)送完畢,并要求釋放連接。

    轉(zhuǎn)載于:https://www.cnblogs.com/yaokai729/p/11300064.html

    總結(jié)

    以上是生活随笔為你收集整理的TCP协议三步挥手与四步挥手的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。