Subject: Re: Intel i82547 performance problems in wm(4)
To: Matthias Scheler <firstname.lastname@example.org>
From: Mipam <email@example.com>
Date: 07/16/2004 12:14:58
On Fri, 16 Jul 2004, Matthias Scheler wrote:
> On Fri, Jul 16, 2004 at 11:29:18AM +0200, Mipam wrote:
> > Suppose I've got a card which support tcp offloading. It'll be enabled by
> > default, ...
> No, it won't, at least not with NetBSD.
> > however, when i run a firewall which manipulates several fields in the ip
> > and tcp header i do not wish the card to perform offloading.
> Why not? The card will calculate the correct checksum whether the firewall
> manipulated the packet or not. The firewall only has to cope with the
> fact that it will see outgoing packets with incorrect checksums.
But shouldnt tcp packets with incorrect tcp checksums be discarded
according rfc 793, causing a firewall to drop such a packet?
And as for the benefits of offloading engines, on local networks with
several cards which support offloading it can make a difference (large
frames (if the switch supports them :-)), less interrupts) and so large
tcp windows can make a difference.
On the internet jumbo frames dont work, so only checksum
offloading can be done. But since that isnt such a complicated operation,
it wont boost performance that much i guess, or maybe am i wrong?
And on broadcom cards i noticed several times that the udp checksum were
set to 0 before transmitting the packet. This is not a problem with IPv4,
but it is in IPv6, but maybe it wont set the udp csum to 0 in that case
(didnt test that).
> > Is it allowed to disable this by somethig like
> > ifconfig wm0 -ip4csum -tcp4csum -udp4csum link0 media autoselect
> > or isnt it?
> Yes, but it's not necessary. Offloading will be disabled by default unless
> you manually disable it.