tcp協議隨筆

2021-07-27 09:53:21 字數 746 閱讀 1452

1、滑動視窗:為了避免網路擁塞,滑動視窗裡已傳送但未收到ack確認的訊息,收到ack後,傳送訊息的視窗往前移以便傳送新的資料。 這個過程就是滑動視窗

2、為了避免網路擁塞,傳送端的傳送速度由(接收視窗和擁塞視窗大小決定,傳送端視窗大小取兩者最小值)

a、慢開始演算法:tcp連線後擁塞視窗為1,然後每次收到訊息確認後 指數增加(不斷乘以2),當擁塞視窗的值達到慢開始門限時,改用擁塞避免演算法

b、擁塞避免演算法:此時達到慢開始門限的擁塞視窗加法增長(每次加1),直到當訊息包出現超時的情況後。就將慢開始門限的值設定為此時的擁塞視窗的1/2 。

然後擁塞視窗值設為1,重新回到  慢開始演算法,重複上面ab的過程。

如下圖:

注:該圖引用自

3、快重傳演算法和快恢復演算法

快重傳和快恢復是對慢開始和擁塞避免演算法的改進

a、快重傳演算法:當傳送發連續收到三個重複的ack報文後,直接重傳對方未收到的報文,而不用等超時時間到。(收到三個重複的ack,代表接收方收到了亂序的資料報,三個重複的ack資訊代表原本應該接收到的訊息,提示傳送方快重傳)

b、快恢復演算法:當傳送發連續收到三個重複的ack報文後,

就將慢開始門限的值設定為此時的擁塞視窗的1/2 。

同時將擁塞視窗值重新設為新的慢開始門限,因為此時擁塞視窗達到慢開始門限了,所以馬上進入擁塞避免演算法。

總結:慢開始演算法、擁塞避免演算法,快重傳演算法,快恢復演算法 的運用都是根據網路擁塞情況,動態調節自身的發包速度,使得發包速度和網路及接收視窗最大程度上的匹配。

TCP協議隨筆

listen blog介紹 limit the backlog parameter to fit in an u8 t backlog lwip min lwip max backlog,0 0xff err netconn listen with backlog sock conn,u8 t ba...

TCP協議隨筆

傳輸控制協議tcp是面向連線 保證高可靠性 資料無丟失 資料無失序 資料無錯誤 資料無重複到達 傳輸層協議。tcp ip結構對應osi tcp ip osi 應用層 應用層 表示層會話層 傳輸層 傳輸層 網路層 網路層 網路介面層 又稱資料鏈路層 資料鏈路層 物理層tcp報文格式 1.序號 seq序...

TCP IP隨筆 TCP協議詳解

tcp協議詳解 應用層 訊息 報文包含了將要傳送的完整的資料資訊 傳輸層 資料段 報文段 segment 注 tcp叫tcp報文段,udp叫udp資料報,也有人叫udp段 網路層 分組 資料報 packet 鏈路層 幀 frame 物理層 p pdu bit 位元組流和資料報都是一種資料傳遞方式 t...