Ethereal-users: Re: [Ethereal-users] Re: Checksum errors

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Ulf Lamping <ulf.lamping@xxxxxx>
Date: Sun, 05 Mar 2006 12:13:05 +0100
ronnie sahlberg wrote:
As far as I can tell most implementations with tcp checksum offloading
specify the checksum as 0 in the apckets captured.

Agreed, and  I see checksum offloading on many machines recently ...
Maybe we should change the tcp checksum code to
1, IF checksum checking is enabled and IF the checksum is wrong and IF
the specified checksum value is 0,   THEN mark it as Checksum:0x0000
(Checksum Offloaded)
Agreed, but probably better [Checksum Offloaded] :-)
2, since tcp checksum errors are VERY rare and would result in either
a RST or a retransmission anyway making it easy to spot them, we could
disable checksum checking by default.
Having some checksums checked and others not doesn't seem to be a good idea. Disabling all the checksum checks might also be a bad idea.

But having the reassembling code depending on the checksum checks might not be a good idea because of that reason. We might try to reassemble things even when the checksum fails, when:

a.) the checksum is 0 (I would prefer that)
b.) try it all the time

Regards, ULFL