對tcp/ip協議新認識(三)
採用tcp協議連線的2端,在通訊的過程中協議的細節有一定的差別。
連線建立階段
連線發起者syn中的seq與連線接收者syn中的seq相差1
在連線建立時,雙方需要通報自己的seq開始值,滑動視窗大小,包的最大位元組數
滑動視窗的使用,使得通訊的兩端不需要收到乙個資料後,就馬上發出ack,可以一直傳送,只要seq不超過初始seq值+滑動視窗值
資料傳輸
資料接收者的ack中的seq等於資料傳送者的seq+資料長度
有時可能多次接收資料,傳送一次ack
每次傳送資料時,都要將資料從應用層拷貝到核心,資料在傳送前都要檢查連線是否有異常
連線關閉
連線關閉者發起的fin中seq與連線關閉ack的seq值相同
tcp協議中有乙個重要的協議命令reset,reset表示重置連線,一般來說server校驗client資訊不符時,會傳送rst到client,這個命令常用於server意外重啟,很多防火牆也用它來斷開client連線。
reset命令的發起者,reset命令一傳送,傳送緩衝區中的所有包都被清掉,而接收者的接受緩衝區的資料也會被清理。
fin命令是正常關閉,它會根據緩衝區的順序來傳送,就是傳送fin之前的資料都要傳送完畢,才會發fin包,所以rst用來異常關閉連線的。
對tcp ip協議新認識 四
對tcp ip協議新認識 四 tcp ip協議中存在一些基本的術語,如msl,ttl,rtt等。msl max segment lifetime 表示報文的最大生存時間,即包在網路上存在的最長時間,超過這個時間的包將被丟棄,這個值實際應用中是30s,1min,2 min等。ttl time to l...
tcp ip協議認識
協議分為四層,自下而上分別是鏈路層,網路層,傳輸層,應用層 1.鏈路層 主機a把網路層傳遞下來的ip資料報增加首部和尾部,之後變成mac資料報,傳給物理層。主機b鏈路層收到資料報會去掉首部和尾部,呈交給上層。鏈路層的基本協議 1.封裝成幀 傳輸時的mac資料報會增加soh和eot,接收端只有同時收到...
TCP IP協議的認識
1.什麼是tcp ip協議 tcp ip 是基於 tcp 和 ip 這兩個最初的協議之上的不同的通訊協議的大的集合。大家叫的時候方便說,所以統稱為tcp ip。tcp ip協議族中有乙個重要的概念是分層,tcp ip協議按照層次分為以下四層。應用層 傳輸層 網路層 資料鏈路層 網路介面層 tcp 傳...