Date: Wed, 31 Jan 2007 23:48:49 +0100 From: Erik Trulsson <ertr1013@student.uu.se> To: Wesley Shields <wxs@atarininja.org> Cc: C?dric Jonas <cedric@decemplex.net>, freebsd-net@freebsd.org, freebsd-current@freebsd.org Subject: Re: fxp(4) checksum (offloading?) errors Message-ID: <20070131224849.GA86858@owl.midgard.homeip.net> In-Reply-To: <20070131212534.GC58404@atarininja.org> References: <20070131214705.0ee0ba67@ganymed> <20070131212534.GC58404@atarininja.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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@student.uu.se
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070131224849.GA86858>