Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 20 Aug 2004 23:07:34 +0300
From:      Maxim Sobolev <sobomax@portaone.com>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        current@FreeBSD.ORG
Subject:   Re: on amd64 tcp4 cksums are bad (FYI)
Message-ID:  <41265A06.3030800@portaone.com>
In-Reply-To: <16678.21478.381551.833252@grasshopper.cs.duke.edu>
References:  <20040820190525.GA21626@isc.org> <16678.21478.381551.833252@grasshopper.cs.duke.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
Andrew Gallatin wrote:

> David W. Hankins writes:
>  > 
>  > This is as observed via tcpdump on [client], which is what is producing
>  > the bad checksums.  Obviously it doesn't cause a problem since no one
>  > listens to TCP checksums, but it's interesting.  I only noticed it
>  > because I was tcpdump'ing for completely unrelated reasons, and it caught
>  > my eye.
> 
> <...>
> 
>  > Client machine is amd64, running 64-bit mode 5-current fresh as of
>  > yesterday.  Network interface is e1000, so fxp.  Server is also freebsd
> 
> e1000 is actually em.  
> 
> You're almost certainly using a driver which offloads transmit
> checksums.  (both fxp and em do) Since BPF sniffs the packet before it
> leaves the host, the checksum has not yet been calculated, so it looks
> bad.

Is it possible to detect this situation and flag tcpdump somehow, so 
that it don't trust checksum? With the widespread adoption of GigE 
cards, this "problem" is likely to be more and more common.

-Maxim



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41265A06.3030800>