out_of_window handling in TIMEWAIT state

Melkor Ainur (melkorainur@yahoo.com)
Thu, 3 Apr 2003 19:09:50 -0800 (PST)


Hello,

I see in tcp_ipv4.c:tcp_v4_rcv. I see that a special
case is done that if an OTW data segment is received
in TIMEWAIT, then a correct ACK is generated. This is
not the case if the state was LAST_ACK or CLOSING
where OTW data is discarded. RFC793 appears to suggest
that OTW data arriving in these states be treated the
same. Was there a specific reason why this is
implemented as such? I'm hoping to gain an
understanding of whether there may have been known
problems interoperating with other stacks resulting in
this need or if the change was simply to match RFC
requirement. If it was the RFC requirement, am I
correct in that LAST_ACK and CLOSING are treated
differently and if so why is that the case. Any
advice/pointers would be appreciated.

if (sk->state == TCP_TIME_WAIT)
goto do_time_wait;

case TCP_TW_ACK:
tcp_v4_timewait_ack(sk, skb);
break;

Melkor

__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online, calculators, forms, and more
http://tax.yahoo.com
-
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/