8月31日(月)2コマ目
今日、やったこと
- テスト
- TCPのフロー制御(ウィンドウ・スライディングウィンドウ)
今日のテスト
正解例です。
![]() |
| 図 確認テスト解答例 |
ポイントは
- コネクション確立時は0相当の値をお互い送信する
- データはMSS(最大セグメント長)まで
- 受信応答を受け取らずに連続してデータを送信することができる
です。
今日のホワイトボード
受信バッファを相手に伝える
TCPヘッダのウィンドウサイズを使って、自分の空きバッファサイズを相手に通知する。
![]() |
| 図 TCPヘッダのウィンドウサイズで空きバッファサイズを通知 |
バッファサイズは以下のようにサイズを変えて、バッファが未処理のパケットでいっぱいにならないようにコントロールしている(スロースタート)。
- はじめ(コネクション確立直後)は少なめを通知
- やりとりのなかでサイズをちょっとづつ増やしていく
送信側の仕組み
相手から通知される空きバッファサイズ(ウィンドウサイズ)と送信データサイズの合計を比べながら送信するのはめんどくさい。もっと簡単に送信側で送信データサイズをコントロールする仕組みがスライディングウィンドウ。
![]() |
| 図 スライディングウィンドウ |
データは窓から送信されるイメージ
送信側のデータには窓があり、窓からデータが送信されるイメージ。
窓は受信応答で移動する
窓の位置は受信応答の確認応答番号から始まり、窓の大きさはウィンドウサイズ分。
受信応答を受け取るたびに、窓が移動(スライド)するイメージになるため、スライディングウィンドウと呼ぶ。



コメント