Re: TCP wierdness (2.2.3)

Alan Cox (alan@lxorguk.ukuu.org.uk)
Wed, 31 Mar 1999 15:23:48 +0100 (BST)


> am trying to debug an embedded TCP stack (that is only used
> for a telnet command interface), this has been made more
> interesting by the Linux TCP bug(s).

One thing you'll find is you need to test against about 15 stacks to
knock all the holes out of any stack. Life is much simpler if you import
the BSD stack into proprietary objects 8)

> Not true. However, there does not seem to be enough detail in
> either there or RFC 793 to determine what the correct behaviour
> is in response to an ACK that ACKs all but your FIN (other's FIN
> already received). Either that or I need to read 793 more slowly.

RFC793 is quite clear on it. An ACK that acks all but the FIN requires
you retransmit the FIN assuming it lost. A FIN takes sequence space.
The FIN is a -retransmit- so the repeat FIN is sent with the same
sequence before and can optionally contain previously sent data too.

A FIN marker is data in a sense.

To test a tcp stack you need to verify it against all the common bugs, There
are some current rfc/drafts pieces on common tcp/ip bugs. you want to be
sure your stack contains none of them and handles having them all thrown
at it.

Alan

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