1.客戶端傳送連線請求報文段,無應用層資料,只是用來請求;
syn=1,seq=x(隨機)
2.服務端為該tcp連線分配快取和變數,並向客戶端返回確認報文段,允許連線,無應用層資料;
syn=1,ack=1,seq=y(隨機),ack=x+1
3.客戶端為該tcp連線分配快取和變數,並向伺服器端返回確認的確認,可以攜帶資料;
tcp連線的兩個程序的任意乙個都能終止該連線。
1.客戶端傳送連線釋放報文段,停止傳送資料,主動關閉tcp連線。
fin=1,,seq=u
2.伺服器端回送乙個確認報文段,客戶到伺服器這個方向的連線就釋放了——半關閉狀態(只是客戶停止發資料)。
ack=1,seq=v,ack=u+1
3.服務端發完資料,就發出連線釋放報文段,主動關閉tcp連線。
fin=1,ack=1,seq=w,ack=u+1
4.客戶端回送乙個確認報文段,再等到時間等待計時器設定的2msl(最長報文段壽命)後,連續徹底關閉。
ack=1,seq=u+1,ack=w+1
TCP連線管理
tcp是面向連線的協議,因此每個tcp連線都有三個階段 連線建立 資料傳送和連線釋放。tcp連線的管理就是使運輸連線的建立和釋放都能正常進行。在tcp連線建立的過程中,要解決以下三個問題 要使每一方都能確知對方的存在。要允許雙方協商一些引數 如最大視窗值 是否使用視窗擴 項 時間戳選項以及服務質量等...
TCP 連線管理
本節將介紹一條tcp連線是如何建立和拆除的。此處假設客戶機a上面的乙個程序想要和服務 器b上的乙個程序建立一條tcp連線。本文前面介紹的是比較正常的連線和拆除,特殊的會在後面介紹。第一步客戶機a的tcp會向伺服器的tcp傳送乙個不包含應用層資料的資料的tcp報文段。該報文段中首部標誌位s yn被置為...
TCP連線管理
一些基本的概念可以先看另一篇部落格 這篇直接對tcp連線過程做筆記 1.tcp連線詳細過程 假設執行在主機 客戶 的乙個程序想跟另一台主機 伺服器 上程序建立乙個連線 第一步 客戶端的tcp首先向服務端的tcp傳送乙個特殊的tcp報文段。該報文段不包含應用層資訊。報文段的syn 標誌位 置1。因此這...