TCP屬于傳輸層協議。在HTTP連接建立之前,需要進行TCP三次握手,在握手過程中,傳輸的報文段僅限于傳遞標志位與序號
在三次握手過程中,需要用到的標志位與序號:
seq序列號:表示報文段第一個數據字節的序號。隨著客戶端發送至服務端,給報文段一個標識。
ack確認號:表示期望下次客戶端發送的序列號。在seq的序號基礎上加1,用以確認收到客戶端請求,并期望下次得到的報文段。
ACK確認標志位:ACK=1時,確認字段有效。ACK=0時,確認字段無效。
同步SYN:與ACK配合使用,連接建立時用于同步序號。SYN=1,ACK=0時,表示這是一個連接請求報文,SYN=1,ACK=1時表示這是一個響應請求報文。SYN標志位只有在TCP建立連接請求時才會被置1,握手完成后才會被置0。
終止FIN:用來表示釋放一個連接。FIN=1表示此報文段的發送方的數據已經發送完畢,并請求連接運輸斷開。