From owner-freebsd-net@FreeBSD.ORG Wed Dec 5 09:50:49 2007 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B206716A46C for ; Wed, 5 Dec 2007 09:50:49 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.freebsd.org (Postfix) with ESMTP id 8477C13C45D for ; Wed, 5 Dec 2007 09:50:49 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id F1BD14706B; Wed, 5 Dec 2007 04:55:45 -0500 (EST) Date: Wed, 5 Dec 2007 09:50:40 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Vlad GALU In-Reply-To: <20071205093244.U87930@fledge.watson.org> Message-ID: <20071205094657.P87930@fledge.watson.org> References: <4755EFDD.8070609@isc.org> <20071205021851.V87930@fledge.watson.org> <20071205093244.U87930@fledge.watson.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-net@freebsd.org, Peter Losher Subject: Re: Aggregating many ports into one for tcpdump server. X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2007 09:50:49 -0000 On Wed, 5 Dec 2007, Robert Watson wrote: > On Wed, 5 Dec 2007, Vlad GALU wrote: > >> I would like to try the aforementioned patches too. Can you please point me >> to a link? > > You can download our experimental tarball from here: > > http://www.watson.org/~robert/freebsd/20071103-zcopybpf.tgz > > You can find a BSDCan quick talk on the topic here: > > http://www.watson.org/~robert/freebsd/2007bsdcan/20070517-devsummit-zerocopybpf.pdf > > I've had several reports of significantly improved packet capture rates at > high speeds with it, but it's not yet in the tree because we feel it needs > more evaluation and review. I hope to ship some form of zero-copy BPF > buffer support in FreeBSD 8, and possibly even MFC it. Any feedback you > might have would be most helpful. Having sent you the patch, I should have let you know that you'll need to: - Add options BPF_ZEROCOPY to your kernel configuration to enable the zero-copy buffering mode. - Make sure the kernel and libpcap are rebuild following the application of the patch and dropping in the tarball. - setenv BPF_ZERO_COPY before running tcpdump or other BPF-based tools to enable the zero-copy buffer mode. The patch includes both kernel changes (abstract the buffer model, add a new buffer model) and user space changes (updated libpcap to speak the new model, selected right now with the environmental variable). Presumably if merged, zero-copy BPF buffers would be used by default via libpcap if present in the kernel, but right now this is all for evaluation purposes. Robert N M Watson Computer Laboratory University of Cambridge