1. 程式人生 > 其它 >tcp-擁塞控制

tcp-擁塞控制

tcp使用四種演算法實現擁塞控制

1. 慢開始

擁塞視窗值 cwnd 控制每次傳輸報文段數量 在未達到慢開始門限值之前,每次收到確認報文 cwnd*2

慢開始門限值 達到慢開始門限值之後,每次收到確認報文 擁塞視窗值+1

2. 擁塞避免

當傳輸期間超時未收到確認報文,就會將慢開始門限值設定為當前擁塞視窗值的一半,擁塞視窗值設定為1開始慢開始演算法

3. 快重傳

目的是讓傳送方儘早知道傳送報文的丟失,接收方每次接收到報文立即回覆確認報文段,避免報文超時重傳被髮送方誤認為網路發生了擁塞而減少擁塞視窗值為1

傳送方收到3個重複確認時會重發相應的報文段

4. 快恢復

傳送方收到3個重複確認時 啟用快恢復演算法,將當前慢開始門限值和擁塞視窗值設定為當前視窗值的一半,開始執行擁塞避免演算法

也有將擁塞視窗值設定為慢開始門限值+3,因為收到了3個重複確認報文段,代表網路中少了三個報文段,接收緩衝區中多了三個報文段,所以可以將擁塞視窗擴大一些