TCP高速回復アルゴリズムは次のように記述されています(TCP図解vol.1より)。ステップ 1 で理解できないのは、CWD ウィンドウがセグメント サイズの 3 倍になるのはなぜですか?
- 3 番目の重複 ACK を受信したら、ssthresh を現在の輻輳ウィンドウ cwnd の半分に設定します。欠落しているセグメントを再送信します。 cwnd を ssthresh にセグメント サイズの 3 倍を加えた値に設定します。
- 別の複製 ACK が到着するたびに、cwnd をセグメント サイズだけインクリメントし、パケットを送信します (cwnd の新しい値で許可されている場合)。
- 新しいデータを確認する次の ACK が到着したら、cwnd を ssthresh に設定します。これは、ステップ 1 からの再送信の ACK である必要があります。再送信の 1 ラウンドトリップ時間後です。さらに、この ACK は、失われたパケットと最初の重複 ACK の受信との間に送信されたすべての中間セグメントを確認する必要があります。このステップは、パケットが失われたときの速度の半分に減速しているため、輻輳の回避です。