【てぃーしーぴーうぃんどう】
TCPウィンドウ とは?
💡 ACKを待たずに送れる量が、通信速度の上限を決める窓
📌 このページのポイント
毎回待っていたら遅くてしょうがないから、「ウィンドウサイズ」という量のデータをACK前にまとめて送っていいよ、というルールがあるんだよ。
ウィンドウサイズって大きければ大きいほどいいの?
受信側のバッファが満杯だと受け取れないから、受信側が「今これだけ受け取れる」とウィンドウサイズで伝えてくるんだ。送信側はそれを超えないように送る。これをフロー制御というよ。
ネットワークが混んでいるときはどうなるの?
衛星通信とか遠い国との通信でウィンドウが足りないってことはあるの?
あるよ!遅延が大きい回線では、ACKが戻ってくる間にウィンドウが使い切れてしまって回線が余るんだ。「ウィンドウスケーリング」という拡張を使うと、ウィンドウを数GBまで広げられて、高遅延・大帯域回線でも性能を出せるんだ。
まとめ:ざっくりこれだけ覚えればOK!
「TCPウィンドウ」って出てきたら「ACKを待たずに一度に送れるデータの量を調整する仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「TCP Window / TCP Window Size」 = TCP送信ウィンドウサイズ
💬 Window は「窓」の意味で、一度に覗ける範囲=送れるデータの範囲を窓枠に例えた言葉だよ