TCP resets connection after 3rd ACK with win=0

From: Gergely Magyarosi
Date: Tue Feb 19 2008 - 03:11:17 EST



I have noticed a strange behavior with heavy traffic.
Linux TCP stack resets connection, after exchanging 3 ACKs with zero advertised window size.
That is:

1. ACK, win=0,len=0 received from peer
ACK, win=0, len=0 sent to peer

2. same as 1.

3. ACK, win=0,len=0 received from peer
RST, ACK, win >0, len=0 sent to peer

The sequence numbers remain the same, because neither side can send.
3rd ACK received frequently triggers a RST. (It shouldn't IMHO, according to RFC.)

Is this a feature for conserving resources, or a bug?

the kernel version: 2.6.5

Thanks.
Best Regards, Gergely Magyarosi.
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html