tcp連線(三次握手):
發起方: 傳送1次連線,接收一次連線
接收方: 接收到並傳送,接收
由於發起方和接收方都需要各做一次傳送->接收->確認
tcp斷開(四次揮手):傳送方: 通知接收方準備斷開(傳送方不再傳送資料)
接收方: 響應傳送方(此時還在正常接收與傳送資料)
接收方: 響應後->傳送準備斷開(此時資料已經處理結束),此時進入等待最終確認狀態
傳送方: 響應接收方請求(此時未關閉,過了最大報文段生存時間才會關閉)
接收方: 收到確認後,關閉連線
最大報文段生存時間(time_wait中2*msl)解釋:
time_wait狀態的socket在等待兩倍的msl時間以後(之所以是兩倍的msl,是由於msl是乙個資料報在網路中單向發出到認定丟失的時間,乙個資料報有可能在傳送圖中或是其響應過程中成為殘餘資料報,確認乙個資料報及其響應的丟棄的需要兩倍的msl),將會轉變為closed狀態。這就意味著,乙個成功建立的連線,必然使得先前網路中殘餘的資料報都丟失了
http2的多路復用
ps: 在看grpc的時候,順便找了些http2的相關資料
每次傳遞資料.都可以通過stream_id區別每個請求
下次找時間把具體請求格式分析一下吧
TCP三次握手 四次揮手
tcp 三次握手 tcp 連線是通過三次握手進行初始化的。三次握手的目的是同步連線雙方的序列號和確認號並交換 tcp 視窗大小資訊。以下步驟概述了通常情況下客戶端計算機聯絡伺服器計算機的過程 1.客戶端向伺服器傳送乙個syn置位的tcp報文,其中包含連線的初始序列號x和乙個視窗大小 表示客戶端上用來...
TCP三次握手 四次揮手
服務端的tcp程序先建立傳輸控制塊tcb,準備接受客戶端程序的連線請求,然後服務端程序處於listen狀態,等待客戶端的連線請求,如有,則作出響應。1 客戶端的tcp程序也首先建立傳輸控制模組tcb,然後向服務端發出連線請求報文段,該報文段首部中的syn 1,ack 0,同時選擇乙個初始序號seq ...
TCP三次握手四次揮手
tcp transmission control protocol 傳輸控制協議 tcp是主機對主機層的傳輸控制協議,提供可靠的連線服務,採用三次握手確認建立乙個連線。位碼即tcp標誌位,有6種標誌 urg urgent緊急 ack acknowledgement 確認 psh push傳送 rst...