TCP協議學習筆記

2021-07-27 13:09:16 字數 1366 閱讀 8451

tcp:面向連線的可靠的傳輸層協議,基於資料流(位元組流),rfc編號。

特點:超時重傳;

解決亂序;

20,21:ftp檔案傳輸;

22:ssh,遠端登入,telnet的替代品;

80:http,網路服務;

443:https,安全的web(ssl/tls之上的http)。

inetd:internet daemon,用於管理、優化網路守護程序,如20埠的ftp。

全雙工,不支援組播和廣播。

push標誌位:立即傳輸;

urgent標誌位:緊急情況,立即處理,很少用;

syn:建立連線,syn=1,ack=0沒有使用捎帶確認;

ack:確認字段,syn=1,ack=1使用捎帶確認;

mtu:最大傳輸單元,限制資料報大小的一種方案;

32位序號:tcp關鍵特徵,用於乙個方向上滑動視窗,另乙個方向上確認(累計確認,確認號小於未收到的位元組編號)。

sack:選擇確認,對確認號的補充。

棘手問題(所幸的是資料流中的每乙個位元組有偏移值,因此該問題可以解決):

3072~4095的資料到達接受端,但是2048~3071還未到,因此接收端不能進行確認;

超時重傳的資料範圍與接收端需要的不一致。

tcp流量控制:滑動視窗協議(視窗大小可變,提高了靈活性)。

校驗和:提供了額外的可靠性。

mss:主機希望收到的最大段長。

時間戳:解決序號迴繞。

連線建立:三次握手。

syn泛洪攻擊:使用syn cookie解決。

連線釋放:四次揮手。如果在兩倍於資料報最大生存期內,針對fin的響應包沒有出現,則fin的傳送端自動釋放連線,另一方會注意到似乎沒人在監聽,因此會超時(並非完美無缺,但不存在完美的解決方案)。

連線建立、資料傳輸和連線釋放可以用有限狀態自動機表示。

三次握手過程:類似打**。

四次揮手過程:

tcp為乙個連線定義了11種狀態,狀態轉換圖如下:

tcp連線分組交換圖:

處於time_wait狀態的主動關閉方將會在該狀態停留分組最大生命週期的2倍,其目的是:

TCP協議筆記

參照 tcp ip詳解 一書,tcp首部格式如下 最常見的選項欄位為最大報文段長度mss maximum segment size 表示本端所能接受的最大tcp資料段長度。每個tcp連線通常在syn報文中設定這個選項。由於乙太網中資料幀不能超過1518個位元組,其中幀頭14位元組,校驗和4位元組,實...

TCP IP協議詳解卷1學習筆記 TCP協議

tcp協議 tcp首部 源埠號 目的埠號 位序號 位確認序號 首部長度 標誌位 視窗大小 檢驗和 緊急指標和其它選項。乙個ip位址和乙個埠號也成為乙個插口 socket 插口對可唯一確定網際網路中每個tcp連線的雙方。tcp連線的建立與終止 tcp是乙個面向連線的協議,無論哪方向另一方傳送資料之前,...

TCP IP學習筆記 8 TCP協議

tcp協議,這是tcp ip裡面最重要也是最精彩的部分,要花大力氣來學習。簡要介紹 tcp和udp處在同一層 傳輸層,但是tcp和udp最不同的地方是,tcp提供了一種可靠的資料傳輸服務,tcp是面向連線的,也就是說,利用tcp通訊的兩台主機首先要經歷乙個 撥打 的過程,等到通訊準備結束才開始傳輸資...