> I'm experimenting with TCP to see how long it takes to send a small amount > of data from A to B. One would expect a latency of a few hundred > milliseconds, but it's a few hundred microseconds instead. It is as if > Nagle's algorithm has been disabled.
I suggest you re-read https://en.wikipedia.org/wiki/Nagle's_algorithm Nagle only kicks in when there are un-acknowledged packets. So on the first packet, there is no delay. There will be a delay on the *second* packet if it's small and we haven't yet received confirmation that the first packet was received. Stefan