Date: Sat, 11 Jun 2011 20:55:33 +0200 From: Luigi Rizzo <rizzo@iet.unipi.it> To: "K. Macy" <kmacy@freebsd.org> Cc: freebsd-net@freebsd.org Subject: Re: FreeBSD I/OAT (QuickData now?) driver Message-ID: <20110611185533.GA67980@onelab2.iet.unipi.it> In-Reply-To: <BANLkTi=VspGAjP2W9ttLHpw%2BcH1SESyVFQ@mail.gmail.com> References: <BANLkTinuOS_yZYrqZ4cmU4cim%2BKFHNA=hQ@mail.gmail.com> <alpine.BSF.2.00.1106111645010.44950@fledge.watson.org> <20110611181352.GA67777@onelab2.iet.unipi.it> <BANLkTi=VspGAjP2W9ttLHpw%2BcH1SESyVFQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jun 11, 2011 at 08:07:18PM +0200, K. Macy wrote: > > I'd really encourage people to look at the code (e.g. the pkt-gen.c > > program, which is part of the archive) so you can see how easy it > > is to use. > > Provided one has a dedicated interface. yes, but this doesnt mean that the host stack is disconnected. Netmap also creates a "virtual" ring pair to talk to the host stack, and the archive you find a orogram, bridge.c, which passes packets between the host and the card. Depending on what you need to do with the card, it is easy to modify this program to process interesting packets without passing them up, etc. I am also looking at other options, eg. a "mixed" mode where certain packets (e.g. depending on the MAC address) retain the usual path, whereas others stay in the netmap ring. Of course when you need to replicate packets (multicast/broadcast) you have to pay the price somewhere -- even the 85299 (intel 10G controller) can do some replication in hardware but it takes some precious PCIe and memory bus cycles to do so. This said, one should consider that going fast and being completely general don't go well together -- you don't do F1 races with a minivan, and don't carry large groups of people around with an F1 car. I don't think we'll ever manage to have both at the same time. It is good to have a "transformer" vehicle though! cheers luigi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110611185533.GA67980>