fxp(4) checksum (offloading?) errors
Erik Trulsson
ertr1013 at student.uu.se
Wed Jan 31 22:48:53 UTC 2007
On Wed, Jan 31, 2007 at 04:25:34PM -0500, Wesley Shields wrote:
> On Wed, Jan 31, 2007 at 09:47:05PM +0100, C?dric Jonas wrote:
> > Hi,
> >
> > I get TCP/UDP checksum errors with fxp(4). I noticed it after using
> > Wireshark today:
> >
> > Checksum: 0xac18 [incorrect, should be 0xfbc7 (maybe caused by
> > checksum offloading?)]
> >
> > for example.
> >
> > If I understand it more or less correctly, checksum offloading is
> > performed by or with help of the NIC - only for TCP and UDP, where the
> > checksum fails exactly...
>
> Yes, the checksums are offloaded to the card. Maybe I missed it, but
> you were not very clear on where you were seeing the invalid checksums.
> In the case of wireshark running on the machine which is doing the
> offloading then this makes sense as the checksums are computed AFTER
> wireshark sees them. The best way to know for sure if the checksums
> were computed correctly is to check them on the destination or somewhere
> along the wire to the destination.
>
> > I didn't found a way to disable it, so I assume it's a bug in the
> > driver... I don't know exactly which infos I must provide additionally
> > to the following, so don't hesitate to ask more :)
>
> According to ifconfig(8) they can be toggled using -rxcsum and -txcsum,
> but it is dependent upon the NIC/driver in use. A quick glance through
> fxp(4) indicates that it doesn't do checksum offloading. I'm sure
> someone will correct me if I am wrong. :)
Some fxp(4) NICs support checksum offloading, but most don't.
The fairly common 82559 controller chip does not support checksum
offloading. The 82550 (which can be found on the Intel PRO/100 S cards)
does support checksum offloading.
--
<Insert your favourite quote here.>
Erik Trulsson
ertr1013 at student.uu.se
More information about the freebsd-net
mailing list