lkml.org 
[lkml]   [2002]   [Feb]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: TCP in TIME_WAIT response to dup FIN
Date
Hello!

> > that when tcp socket is in TIME_WAIT state, the default response to a
> > retransmitted FIN packets is to silently drop them. Is this the correct
> > way of implementing TIME_WAIT?

No. Linux 2.2 is not expected to have this bug.


> > active and start sending back FIN-ACKs.

No. time-wait never send FINs, just bare ACK.



> > /* Ack old packets if necessary */
> > if (!after(TCP_SKB_CB(skb)->end_seq, tw->rcv_nxt) &&
> > (len > (th->doff * 4) || th->fin))
> > return TCP_TW_ACK;
> > return 0;
> >
> > Which I suspect contains some bug.

It should responce right. end_seq == rcv_nxt in the case of retransmitted
FIN, len == th->doff*4 but th->fin == 1. So, it returns TCP_TW_ACK.

So, it looks right, I have no idea what happens in your case.
Apparently, you diagnosed problem wrongly. It would be better
if you sent tcpdump of bad session instead.


> > Again, my question is whether 2.2.19 is doing correct things,

Supposed to do. If it does not, alas.


> > that in 2.4.9 and how? Or some alternative milder changes?

Milder change is just to install 2.4. :-)

Alexey
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:23    [from the cache]
©2003-2011 Jasper Spaans