(兩百七十八)《TCP IP詳解》讀書筆記(一)

2021-10-10 03:20:28 字數 971 閱讀 8151

問題:

1)傳送方對乙個ack需要等待多久?

todo

2)如果ack丟失了怎麼辦?

重傳另外涉及乙個序列號的設計,這裡重傳分兩種情況,一種是超時重傳,一種是丟失重傳,接收方可能能解收到兩個包,序列號可以用來標記判斷是否是重複包。

3)如果分組被接收到了,但是裡面有錯怎麼辦?

編碼可檢查差錯,但簡單的不能糾正差錯,tcp使用了校驗和來檢查差錯,如果錯了就不回ack了丟棄該包,傳送方會重傳。

視窗的含義:如果你把在乙個通訊對話中傳送的所有分組排成長長的一行,但只能通過乙個小孔來觀察他們,你就只能看到他們的乙個子集——像通過也給視窗**一樣。

分組視窗:已被傳送方注入但還沒得到確認的分組的集合

流量控制分為基於速率的流量控制和基於視窗的流量控制(使用滑動視窗最流行的方法)。ack包會帶回來視窗通告和視窗更新,傳送方往往會在它視窗滑動到右邊的時候同時調整它的大小。

擁塞控制:當包傳送過程中有有限記憶體的路由器,他們比較低速,傳送方速率可能超過路由器的能力,從而導致丟包,這由一種叫做擁塞控制的流量控制形式來處理。(基於視窗的流量控制是由接收方的能力來制約的,擁塞控制是傳輸過程中的裝置制約)

序列號:每個分組第乙個位元組在整個資料流中的位元組偏移,而不是分組號

確認號:指示位元組號n的ack暗示著直到n位元組(不包括n)已經被成功接收了(這另外還帶來了魯棒性,如果乙個ack丟失了,後續的ack就足以確認前面的報文段了)

tcp不帶選項是20位元組,帶了選項可達60位元組,tcp的頭部長度以32位字為單位,即4個位元組,本身是4位,所以最長可達4*15,60位元組。

tcp頭部示意

源埠(16)|目的埠(16)

序列號(32)

確認號(32)

頭部長度(4)|保留(4)|tag(8)|視窗大小(16)

tcp校驗和(16) |緊急指標(16)

選項重傳計時器:這裡沒說的很明白,有提及rtt(往返時間)來估算重傳的計時器,當計時器計時完後進行重傳。

TCP IP詳解讀書筆記

igmp協議 icmp資料報結構 udphdr結構 tcphdr結構 iphdr結構 tcp ip詳解讀書筆記 第13章igmp internet組管理協議 tcp ip詳解讀書筆記 第12章 廣播和多播 tcp ip詳解讀書筆記 第11章 udp 使用者資料報協議 tcp ip詳解讀書筆記 第10...

TCP IP詳解 讀書筆記 四

tcp提供可靠的運輸層。它使用的方法之一就是確認從另一端收到的資料。但資料和確認都有可能會丟失。tcp通過在傳送時設定乙個定時器來解決這種問題。如果當定時器溢位時還沒有收到確認,它就重傳該資料。對任何實現而言,關鍵之處就在於超時和重傳的策略,即怎樣決定超時間隔和如何確定重傳的頻率。首先觀察tcp所使...

TCP IP詳解讀書筆記(一)

arp協議用來找到目標主機的ethernet網絡卡mac位址,ip則承載要傳送的訊息。資料鏈路層可以從arp得到資料的傳送資訊,而從ip得到要傳輸的資料資訊。ip不是可靠的協議 這是說,ip協議沒有提供一種資料未傳達以後的處理機制,這被認為是上層協議tcp或udp要做的事情。ip位址協議頭 ttl欄...