私は、アイドルな興味からNagleのアルゴリズムを研究してきました。私はそれの背後にある基本的なコンセプトを理解しています(TCPパケットには、特に小さなペイロードを扱うときにかなりのオーバーヘッドが含まれます)。Nagleのアルゴリズムについて不明確
私はウィキペディアでthis articleを読んでいましたが、私はまだそれがどのように動作するかは不明です。 Telnet接続の例を考えてみましょう。接続が確立され、入力を開始します。たとえば、3文字(たとえばcat
)とヒットリターンを入力したとします。今私達はまだわずか5バイトであるcat\r\n
を話している。私たちが送信するのに十分なバイトを待ち行列に入れるまで、このメッセージは送信されないと思うでしょう。は直ちに(ユーザーの視点から)送信されます。cat
はすぐに返されます。
ここでは、アルゴリズムがどのように動作するかについての基本的な誤解があります。具体的には、「確認されていないデータがパイプに残っていれば、すぐにエンキューします。
この記事では、問題になっているtelnetセッションについて説明しているので、すぐに送信されます。 – cloudhead