回答編
スライディングウィンドウは通信高速化手法の一つね。送受信を並列化させてなるべく多くのデータを送る仕組み。
送受信の並列化……ですか?
TCP(*4)などでデータをやりとりする時って、基本はトランシーバみたいに『送』と『受』の繰り返しなのよ。送信側がデータを投げて受信応答が返ってくるまで次のデータを送らない。
ああ、『こちらA、位置につきました、どうぞ』『B了解。どうぞ』みたいな感じですか。
そう、その『了解』ってやつがいわゆるACK(確認応答)ね。ただこれ、伝えたいことがたくさんある場合、いちいち待ってると大変でしょ。
確かに……途中からじりじりしてきそうです。
なので一定量の通信までは確認応答を待たずデータ送信できるようにする。これがスライディングウィンドウの基本コンセプト。
? 一度に送れるデータ量を増やしたってことですか?
ではないわね。というのもIPパケットのサイズって有限だから一回で何十メガものデータは送信できないの。代わりに細切れのデータを連続して送りつける。さっきのトランシーバのたとえだと『要件1、どうぞ』『要件2、どうぞ』『要件3、どうぞ』って感じで。
なんか空気を読まない人っぽいですが……。
まぁ人になぞらえるとうざいけど、これは機械の話だから。でまぁたとえば三件までは連続して送ってよいと決めておけば、要件3が終わった時点で受け手は要件1のACKを返す。すると送り手は要件4を送れるでしょ。
送信と受信をなるほど、並列させると。
この『三件まで』って決めがウィンドウ(窓)サイズ。で、それがACK到着でどんどんスライドしていくからスライディングウィンドウなのよ。動作をそのまま言葉で表した感じね。
ウィンド(風)じゃなくてウィンドウ(窓)でしたか……。さすがに『窓のスライディングタックル』じゃ中二技になりませんね。意味不明すぎて。
そこをなんとかイメージ膨らませていくのが真性の中二病患者でしょ? そうね……たとえば無数の窓を召還し、そのガラスを蹴り破って相手にダメージ与えるとか。
反則どころの騒ぎじゃありませんが!
じゃあ天から窓が落ちてきて相手の指を挟む、必殺スライディングウィンドウ! これは痛い!
………。
いや、いっそ窓を手裏剣のように投げる方がクールかしらね。ニンジャアタック! カミカゼーって感じでスライディングウィンドウ! うーん、まさに中二! ああどんどんイマジネーションがわいてくるわ。私、ひょっとして天才かも!
………(室見さんって実はセンス酷いかも……)。
(*4) Transmission Control Protocol。データの伝送を制御するプロトコルの一つ。エラー訂正機能をもつため信頼性が高い。
【解説】
スライディングウィンドウ:
TCPなどにおける通信高速化手法の一つ。送受信を並列化させてなるべく多くのデータをやりとりする仕組み。ZMODEMなどでも採用されている。
この連載の記事
-
最終回
トピックス
IT業界の夢とロマンが詰まった、最終回なIT用語! -
第43回
トピックス
業界人は軍事用語好き? やっぱり中二病なんですかね、なIT用語 -
第41回
トピックス
いくぜっ、バーストモード! 動作クロック30倍! なIT用語 -
第40回
トピックス
前世の記憶は信じなくても、過去のミスは忘れない室見さん、なIT用語 -
第39回
トピックス
もう一人の自分を解き放て! 対比で分かる中二病的IT用語 -
第38回
トピックス
生命を刈り取る「不死の軍団」みたいなIT用語 -
第37回
トピックス
MK2、透明で発展系のMK2……なIT用語 -
第36回
トピックス
お金がかかるをキーワードにいろいろな話題が広がったIT用語 -
第35回
トピックス
理化学とミリタリーへの憧れが中二病につながるかもしれないIT用語 -
第34回
トピックス
超兵器とリンク、しているようで実はただ乗りしてるだけのようなIT用語 - この連載の一覧へ