[lkml]   [2000]   [Oct]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subjectfor small packets TCP_NODELAY still delays

(repost, apologies if youve seen this before)

There appeared to be a bug/feature in kernel series 2.0.x and 2.2.x
which caused perodic delays in the sending of very small TCP packets
even when the TCP_NODELAY option was set. In other words, the Linux
kernel was still trying to use delayed acknowledgements.

To quote:
"A detailed measurement of inter-message timing revealed that every
35th message under about 500 bytes is delayed by 20 ms under Linux
kernel 2.0.36. Upgrading to Linux kernel 2.2.2 changed this conclusion
only slightly (every 41st message under about 100 bytes was delayed
by 10 or 20 ms)."

Does kernel 2.4.0-testX(latest) still have this behavior?

This bug/feature greatly impairs the performance of distributed parallel
programs like those that use MPI, as in a Beowulf cluster. Simple kernel
patches increase the performance by a factor of 20.

I dont grok TCP/IP stacks so perhaps im being rude and dont understand
that there might be a valid reason why this bug/feature still happens.
In that case, it would be the right thing to include this as an
optimisation setable by a kernel compile time flag or even a sysctl

What comments do the 2.4.0 kernel networking experts have about this?

Source of the quote:-

The pages include a link to a tool netpipe which can be used to measure
these performance factors.

- Antony Suter ( "Examiner" openpgp:71ADFC87
- "And how do you store the nuclear equivalent of the universal
- solvent?"
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 12:45    [W:0.031 / U:0.600 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site