Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Jun 2005 08:31:01 -0700
From:      Luigi Rizzo <rizzo@icir.org>
To:        Ruslan Ermilov <ru@FreeBSD.org>
Cc:        cvs-src@FreeBSD.org, Gleb Smirnoff <glebius@FreeBSD.org>, cvs-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: cvs commit: src/sys/netinet/libalias alias_ftp.c alias_irc.c alias_local.h alias_proxy.c alias_skinny.c alias_smedia.c alias_util.c
Message-ID:  <20050627083101.B56456@xorpc.icir.org>
In-Reply-To: <20050627152155.GF93072@ip.net.ua>; from ru@FreeBSD.org on Mon, Jun 27, 2005 at 06:21:55PM %2B0300
References:  <200506270736.j5R7a3OZ036531@repoman.freebsd.org> <20050627152155.GF93072@ip.net.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jun 27, 2005 at 06:21:55PM +0300, Ruslan Ermilov wrote:
...
> Why can't we just say that checksum offloading is incompatible
> with NAT (like with many other things), and do the software
> checksum calculations in libalias?

actually the more i see it the more i think checksum offloading
is a disgrace rather than a performance boost.

it needs a lot of special cases throughout the protocol stack
to be supported properly, which constitutes extra overhead
with low-end hardware which does not support the offloading;

it does not pay on small packets such as acks where you have
to touch the whole packet anyways;

some hardware needs the checksum engine to be reprogrammed when
changing protocol type (tcp <-> udp) which require extra I/O
cycles on the bus that are expensive;

some hardware has broken checksum engines;

	cheers
	luigi



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