Re: fxp(4) checksum (offloading?) errors



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@xxxxxxxxxxxxx
_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@xxxxxxxxxxx"



Relevant Pages