様々なTCP1-Tahoe 演習第6回 情報通信技術論 インターネット工学 情報通信技術論/インターネット工学 ウインドウ制御 ウインドウサイズを変化させてレート調節を行う ウインドウサイズ = 1セグメント の場合 ウインドウサイズ = 4セグメント の場合 シーケンス番号 シーケンス番号 1 2 3 1234 送信側 56 7 8 9101112 送信側 データ パケット ACK 受信側 ACK番号 データ パケット ACK 次 は 次 は 次 は 2 3 4 受信側 ACK番号 次次次次 はははは 次次次次 はははは 次 は 2345 6789 10 1 情報通信技術論/インターネット工学 ウインドウサイズ制御 ルール1 – 送信側で算出したウインドウサイズ(輻輳ウインドウサイズ)と 受信側のバッファサイズ(最大ウインドウサイズ)を比較して、 小さい値を送信ウインドウサイズとして通信する 送信ウインドウサイズ = min(輻輳ウインドウサイズ, 最大ウインドウサイズ) ルール2 – ネットワークが混雑(輻輳)するまでは、輻輳ウインドウサイズを 増加させる。 通信開始時はネットワークの状態がわからないため、 小さい輻輳ウインドウサイズで送信し、以降どんどん大きくしていく。 ある程度の輻輳ウインドウサイズになったら、少しずつ大きくしていく。 – 混雑し始めたら、すぐに輻輳ウインドウサイズを減少させる。 2 情報通信技術論/インターネット工学 TCP ― ウインドウサイズの変化 最大ウインドウサイズ(rwnd) = 8セグメント の場合 – 理想的な場合 RTT RTT: Round Trip Time 送信側 データ パケット ACK 受信側 理論的 最大スループット [Mbps] rwnd [bytes] RTT [s] ※ byte = 8 bits – 現実 ウインドウサイズを変化させて送信レートを調節 – スロースタート段階 – 輻輳回避段階 3 情報通信技術論/インターネット工学 スロースタート段階 –Slow Start Phase– 最初から大量にデータ送信ネットワークが急激に混雑 ウインドウサイズ 1 2 4 8 16 送信側 データ パケット ACK 受信側 しかし、このまま続けるとウインドウサイズが指数的に増加 どうする? 4 情報通信技術論/インターネット工学 輻輳回避段階 –Congestion Avoidance Phase– 輻輳ウインドウサイズがある閾値を超えたら… スロースタート閾値 (ssthresh: slow start threshold) ウインドウサイズ 1 2 4 8 9 10 11 送信側 データ パケット ACK 受信側 この場合、ssthresh = 8 ウインドウサイズを線形的に増加 5 情報通信技術論/インターネット工学 ウインドウサイズの変化 送信側で算出した 輻輳ウインドウサイズ ウインドウサイズ ssthresh (閾値) 指数的増加 線形的増加 最大ウインドウサイズ 送信ウインドウサイズ 時刻 スロースタート 輻輳回避 ルール1: 送信ウインドウサイズ = min(輻輳ウインドウサイズ, 最大ウインドウサイズ) 6 情報通信技術論/インターネット工学 ウインドウサイズの変化 送信側で算出した 輻輳ウインドウサイズ ウインドウサイズ 最大ウインドウサイズ ssthresh (閾値) 指数的増加 線形的増加 送信ウインドウサイズ 時刻 スロースタート 輻輳回避 ルール1: 送信ウインドウサイズ = min(輻輳ウインドウサイズ, 最大ウインドウサイズ) 7 情報通信技術論/インターネット工学 ネットワークが混雑している場合 • 重複ACKを3つ受信 • タイムアウト パケットが廃棄された (と判断) ネットワークが混雑(輻輳)? 輻輳ウインドウサイズを1に減少スロースタート段階 ssthreshを(元の)送信ウインドウサイズの半分に ウ イ ン ド ウ サ イ ズ ssthresh (old) ウ イ ン ド ウ サ イ ズ = ssthresh = 時刻 ssthresh (old) = ssthres h = 時刻 8 情報通信技術論/インターネット工学 TCPウインドウ制御のまとめ (Tahoe) ウインドウサイズ 最大ウインドウサイズ パケットロス パケットロス パケットロス ssthresh (閾値) 時刻 (再送) (再送) (再送) 9 情報通信技術論/インターネット工学 実験2-1 0 25Mbps 5ms 4 FTP/TCP 2 帯域: Bw 3 25Mbps 5ms 遅延: d 5 1 FTP ダウンロード TCP Agent TCPSink Agent ネットワーク ルータ ネットワーク 10
© Copyright 2024 ExpyDoc