Re: Linux TCP's Robustness to Multipath Packet Reordering
From: Ilpo Järvinen <hidden>
Date: 2011-06-21 11:35:02
On Mon, 20 Jun 2011, Dominik Kaspar wrote:
quoted
Where did you get this idea of reneging?!?I observed that my scenario of a retransmitted packet overtaking the original somehow causes TCP to enter the "Loss" state although no RTO was caused. And since the Loss state seems to be only entered due to RTO timeout or SACK reneging, I got the idea that reneging must be occurring.quoted
Reneging has nothing to do with DSACKs, instead it is only detected if the cumulative ACK stops to such boundary where the _next_ segment is SACKed (i.e., some reason the receiver "didn't bother" to cumulatively ACK for that too). ... That certainly does not happen (ever) for out of window DSACKs.You are right. If I turn off DSACK, the same thing happens: TCP enters the Loss state without timeouts occurring. Isn't that a sign of reneging happening? What else can it be?
There's a MIB for reneging from where you should be able to confirm that it did(n't) happen... Please note that tcpprobe is only run per ACK (not on timeouts), and FRTO (enabled by default) doesn't even cause CA_Loss entry immediately but slightly later on once it has figured out that the timeout doesn't seem to be spurious. -- i.