技術系、非技術系のネタを書き散らしてます。ちなみに、じーくゎいとは子供が赤ん坊の頃によく叫んでいた謎の言葉です。 TCP の世界で、Nagle アルゴリズムと Delayed Ack が組み合わさった時の 問題は結構有名な話。 ネットワークソフトウェアエンジニアのバイブル UNIXネットワークプログラミング〈Vol.1〉 にもしっかりと載っている。 簡単に説明しておくと、 Nagleアルゴリズム 送信データ(セグメント)をOSが溜め込む。溜め込んだデータを送信するタイミングは下記の通り。 OS(TCP)の気持ちも書いておく。 * すでに送信しているデータのAckが返るまで。 → お、さっき送ったデータのAckを受け取ったぞ。 じゃあ次のデータを相手に送ってやらなきゃ。 * 溜め込んでいるデータ量がMSSを超えるまで。 → やべ、データをたくさん(量的に)溜め込みすぎた。 * タイムアウトを
![NagleアルゴリズムとDelayed Ack問題: じーくゎい](https://cdn-ak-scissors.b.st-hatena.com/image/square/91294c5e7d5927632be882106d59f6c861902287/height=288;version=1;width=512/https%3A%2F%2Fblog.ss-blog.jp%2F_common%2Fimg%2Fsonet_logo_l.png)