網路傳輸筆記(TCP)

2021-10-23 09:30:55 字數 1718 閱讀 2428

以下內容來自個人理解,資料**是中科院計算所老師講課

(打破腦袋記不住怎麼辦!!!)

連線方埠任意

被連線方埠固定

握手三步走:

傳送fin資料報

表示己方不再傳送資料

對方仍需要對接收資料進行確認

tcp是乙個全雙工傳輸協議

未收到ack表示丟包了,但是這個未收到ack有乙個時間閾值,較大或較小時的影響如下:

較大值:恢復丟包效率低

較小值:導致誤重傳 (spurious retransmission)

快速重傳:

如果乙個資料報之後的三個都被ack,那麼認為該包丟了,在乙個rtt(round trip time)內重傳;

兩種擁塞控制的策略:

端到端的擁塞控制(通過丟包和延遲判斷擁塞情況)

好處:設計簡單

壞處:效能取決於擁塞判斷策略

對於網路裝置,當遇到丟包需要降低傳送速率,還需要定期探測最大傳送速率,那麼這個增減策略是什麼?

一般就是線性增減(和性)或者乘性增減,兩兩組合共有四種策略;

快恢復:

這時候就是慢啟動機制了,慢啟動從3或10開始每收到ack,若視窗大小小於門限閾值,就加 1,否則加1/cwnd,慢啟動的速率:log2(target_cwnd/initial_cwnd)個rtt達到穩態

initialization:

cwnd <

- initial cwnd

if cwnd < ssthresh:

for each ack:

cwnd +=

1else

:for each ack:

cwnd +=

1/cwnd

when encountering loss:

ssthresh <

- cwnd

cwnd <

- cwnd/

2

因為傳輸中會有部分亂序的情況,用三個會減小誤重傳的機率。

一般長流適用快重傳,短流適用超時重傳,web一般都是短流。

TCP網路傳輸方式

tcp和udp區別 1.tcp面向連線 udp是不面向連線 2.tcp提供可靠的資料傳輸,也就是說,通過tcp連線傳送的資料,無差錯,不丟失,不重複,且按序到達 udp不保證可靠的資料傳輸,容易出現丟包情況 3.tcp需要連線傳輸速度慢,udp不需要連線傳輸速度快 4.tcp不支援發廣播 udp支援...

TCP網路傳輸「粘包」問題

原文出處 http www.ciw.com.cn 當前在網路傳輸應用中,廣泛採用的是tcp ip通訊協議及其標準的socket應用開發程式設計介面 api tcp ip傳輸層有兩個並列的協議 tcp和udp。其中tcp transport control protocol,傳輸控制協議 是面向連線的...

TCP網路傳輸 粘包 問題

解決tcp網路傳輸 粘包 問題http www.ciw.com.cn 當前在網路傳輸應用中,廣泛採用的是tcp ip通訊協議及其標準的socket應用開發程式設計介面 api tcp ip傳輸層有兩個並列的協議 tcp和udp。其中tcp transport control protocol,傳輸控...