Subject: Re: question about TCP checksums

From: David Borman <[email-masked]>
Date: Tue, 20 Oct 1998 11:42:58 -0500 (CDT)

> Date: Tue, 20 Oct 1998 09:14:35 -0700
> From: "Eric A. Hall" <[email-masked]>
> Subject: question about TCP checksums
> ...
> Various documents seem to be at odds with each other regarding the
> proper behavior for responding to a TCP segment that has an invalid
> checksum. Although STD 7 states that the segment should be discarded, it
> doesn't state what should happen next.

Nothing, other than noting the fact in local statistics.

> Some material suggests that the recipient shouldn't do anything, waiting
> for the sender to timeout and retransmit. Conversely, other materials

Yes.

> suggest sending an ACK for the last successfully-received segment.
> Either method would seem to work, with the benefit depending on the
> exact scenario.

The "other" scenario is wrong.  Though you know that the IP source and
destination addresses are correct (since they are part of the IP header,
and IP would have tossed the packet if the IP checksum was bad), you
don't know that the TCP source/destination ports are correct, because
the TCP checksum is bad.  Thus, you can't be 100% sure that you would
even know who to send the ACK to.

> The question is: what's the position of the group as to which method is
> the enforcable STANDARD method?

Silently drop the packet, since when you have a TCP checksum error
you can't be 100% sure that you know for which connection the packet
was destined.  TCP will retransmit the dropped data.

> Thanks
>
> -- 
> Eric A. Hall                                            [email-masked]
> +1-650-685-0557                                    http://www.ehsco.com

			-David Borman, [email-masked]