Nagle's algorithm
Appearance
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.