From owner-freebsd-net@FreeBSD.ORG Fri Jan 16 15:50:16 2004 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3140216A4CE; Fri, 16 Jan 2004 15:50:16 -0800 (PST) Received: from exchange.wan.no (exchange.wan.no [80.86.128.88]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D79143D68; Fri, 16 Jan 2004 15:50:07 -0800 (PST) (envelope-from sten.daniel.sorsdal@wan.no) MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-MimeOLE: Produced By Microsoft Exchange V6.0.6249.0 content-class: urn:content-classes:message Date: Sat, 17 Jan 2004 00:50:04 +0100 Message-ID: <0AF1BBDF1218F14E9B4CCE414744E70F5D97FF@exchange.wanglobal.net> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: ip_input - chksum - why is it done so early in ip_input? Thread-Index: AcPci3XZNAfA0SjOROqn22VbyT2w8A== From: =?iso-8859-1?Q?Sten_Daniel_S=F8rsdal?= To: , Subject: ip_input - chksum - why is it done so early in ip_input? X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Jan 2004 23:50:16 -0000 Apologies for the cross-post, i wasnt sure if this was hackers or net = material. I've often wondered why ip checksumming is done on every incoming=20 packet and not only on the packets that need to be delivered locally. It looks like a very expensive way of doing it, especially on high PPS. Basically all hosts do checksumming so why not just pass the bad packet on, making the forward process alot cheaper (cpu wise)? I ran some tests (unable to disclose results) by removing it completely and it seems to make a noticable impact on the performance. Especially on for example gaming services where there is a high PPS = versus actual data. Besides that i'd like to add that FreeBSD has the fastest forwarding = engine i've seen on any free OS. It's in my opinion a very suitable OS for=20 routing/forwarding. _// Sten