After the 3-way handshake is completed, i am interested in getting the ack for the first request to be delayed so that it can be piggybacked with the response. I expected that setsockopt() TCP_QUICKACK option with a value of 0 will disable quickacks. This should set tp->ack.pingpong to 1 and cause the ack to be delayed. But looks like somehow pingpong value is reset to 0 and the ack is sent immediately. What is the reason for this behaviour? I noticed a couple of places where pingpong can be reset to 0, for ex. while sending a dupack or retransmission. But i am not sure why it is being reset to 0 at such an early stage of the connection. Thanks Sridhar - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html