三次握手和資料傳輸和四次揮手

2021-09-29 19:49:16 字數 1415 閱讀 6046

建立連線

資料傳輸

連線釋放

////

////

////

////

////

////

////

////

////

////

////

///////

建立連線

seq=

5000,ack=

0,syn=

1seq就是傳送第乙個位元組的序號

seq=

8000 ackn=

5001 syn=

1,ack=

1seq是目標回訊息的第乙個位元組的序號

ackn期待下乙個要傳送位元組的起始序列號

seq=

5000 ackn=

5001 syn=

0,ack=

1你懂得

記住seq是自己傳送位元組的第乙個序列號

和其他沒有任何關係

ackn有關係

第三次握手看起來優點多餘、其實一點也不多餘

如果沒有第三次,第二次握手中間假如出現一些失敗,那麼伺服器可能會認為已經建立成功

然後為其分配資源

////

////

////

////

////

////

////

////

////

////

////

////

////

/資料傳輸

給你我的第乙個位元組序列在x+

1,我想要你的y+

1序列---

> x+

1 y+

1給你我的y+

1序列處,我想要你的x+

101處序列--

-< y+

1 x+

101

後面自己推--

-> x+

101 y+

101---

< y+

101 x+

201等等

這一過程稱為累計確認,他不是只發乙個位元組進行確認

////

////

////

////

////

////

////

////

////

////

////

////

////

/連線釋放

fin=

1,ack=1-

---> a:沒有資料了

ack=1-

---< b:好的

fin=

1,ack=1-

---< b:我也沒資料了

ack=1-

---> a:好的

TCP 協議 三次握手 四次揮手 資料傳輸

為什麼要三次握手 在一次溝通過程中,當然是要兩方的,我們就來甲乙好了 甲說 hi!乙如果沒聽到,或者中途斷了,那麼乙根本不知道甲要和他溝通 甲也不知道乙沒有聽到 所以一次握手是不行的 甲說 hi 乙說 hi 同樣的,甲知道乙收到了,但是乙不知道甲收到沒有,只是單向的建立了連線 那麼四次呢,甲2次知道...

三次握手和四次揮手

三次握手和四次揮手如圖所示 為什麼是三次握手而不是兩次 因為當客戶端第傳送syn到服務端的時候,如果有幾次請求是因為網路等原因延時等情況的時候,如果沒有第三次握手的確定。服務端就會認為客戶端重寫傳送請求了,就會去開啟連線相應。為什麼關閉連線的時候是四次握手而不是三次?當客戶端傳送請求關閉連線的時候,...

三次握手和四次揮手

tcp三次握手和四次揮手的全過程 tcp是主機對主機層的傳輸控制協議,提供可靠的連線服務,採用三次握手確認建立乙個連線 位碼即tcp標誌位,有6種表示 syn synchronous建立連線 ack acknowledgement 表示響應 確認 psh push表示有data資料傳輸 fin fi...