Jump to content

Nagle's algorithm

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Cmdrjameson (talk | contribs) at 10:27, 17 April 2005. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

Nagle's algorithm is a means of improving the efficiency of TCP/IP networks by reducing the number of packets that need to be sent over the network.

Nagle's document, "Congestion Control in IP/TCP Internetworks" (RFC896) describes what he called the 'small packet problem', where an application repeatedly emits data in small chunks, frequently only 1 byte in size. Since TCP packets have a 40 byte header, this results in a 41 byte packet for 1 byte of useful information, a huge overhead. This situation occurs in Telnet sessions, where keypresses generate a single byte of data which is transmitted immediately.

The Nagle algorithm works by concatenating a number of small outgoing messages, and sending them all at once.