6月30日(木)1コマ目
今日、やったこと
[確認テスト]シーケンス番号、確認応答番号の推測その1
(シーケンス番号、確認応答番号)パケット未達の場合
(シーケンス番号、確認応答番号)ウィンドウ制御
今日のホワイトボード
パケットが未達の場合
データ、受信応答のパケットが相手に届かないこともあります。
この場合、送信元には受信応答が届きません。
TCPでは、データ送信後一定時間の間に受信応答が届かない場合、同じパケットを再度送信(再送)します。
再送されても、受信側はシーケンス番号で再送されたパケットであることが分かります。
ケース1 データパケットが喪失した場合
![]() |
| 図 データパケットが喪失した場合 |
ケース2 受信応答パケットが喪失した場合
![]() |
| 図 受信応答が喪失した場合 |
ウィンドウ制御
TCPは基本的に
①データ送信
②受信応答を受信
③次のデータを送信
と確実にデータを送信しますが、これでは効率が悪いです。
そこで、受信応答を待たずにデータを連続して送信する仕組みを用意しています。
![]() |
| 図 ウィンドウ制御 |
TCPではウィンドウ制御と呼ばれる仕組みで実現しています。
- ウィンドウサイズまで受信応答を待たずに送信可能
- 受信応答を受信するとウィンドウを移動=>新たにデータ送信が可能になる
遅延応答
1データパケットごとに受信応答を送信することも効率的ではありません。
TCPでは複数のデータパケット受信を1つの受信応答パケットでまとめて返信することもあります。これを遅延応答と呼びます。
次回は
実際のパケットのやり取りからTCPの動きを確認します。


