Is there a way to disable TCP delayed ACKs with libvma? We have a scenario where we are experiencing Nagle/Delayed ACK stalls (
http://www.stuartcheshire.org/papers/nagledelayedack/). In this scenario we only control one side of the TCP connection so while we are running with TCP_NODELAY the other side appears to still be running the Nagle algorithm and we experience 100ms stalls while they wait for us to send a delayed ACK. Digging through the source code I see we can set VMA_TCP_TIMER_RESOLUTION_MSEC=10 to reduce this to 10ms and presumably we could set it even lower if we tweak VMA_TIMER_RESOLUTION_MSEC but I have not dug around enough to understand the implications of setting VMA_TIMER_RESOLUTION_MSEC. Ideally I'd like delayed Acks completely disabled because even 1ms is too long.
So is there a way to disable delayed ACKs, and if not can we add one?
Thanks,
Shawn