Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 18 Aug 2013 11:39:12 -0700 (PDT)
From:      Barney Cordoba <barney_cordoba@yahoo.com>
To:        Adrian Chadd <adrian@freebsd.org>
Cc:        "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
Subject:   Re: it's the output, not ack coalescing (Re: TSO and FreeBSD vs Linux)
Message-ID:  <1376851152.3322.YahooMailNeo@web121606.mail.ne1.yahoo.com>
In-Reply-To: <CAJ-Vmo=0OX=_6cO_pZ45XrvfQzb%2BNVms00LUo5oRriZWUMBx%2Bg@mail.gmail.com>
References:  <520A6D07.5080106@freebsd.org> <520AFBE8.1090109@freebsd.org> <520B24A0.4000706@freebsd.org> <520B3056.1000804@freebsd.org> <20130814102109.GA63246@onelab2.iet.unipi.it> <1376745244.6575.YahooMailNeo@web121606.mail.ne1.yahoo.com> <1376748170.66110.YahooMailNeo@web121601.mail.ne1.yahoo.com> <CAJ-VmonGeqn5qqbfvF9xWaFPYNMNSVb6VwMx%2BoEVSGXVid98ag@mail.gmail.com> <1376833738.94737.YahooMailNeo@web121605.mail.ne1.yahoo.com> <71EA3DFB-B410-432D-98E0-B6341556BE6D@netgate.com> <CAJ-Vmo=0OX=_6cO_pZ45XrvfQzb%2BNVms00LUo5oRriZWUMBx%2Bg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Great. Never has the been a better explanation for the word Kludge than net=
map.=0A=0A=0A________________________________=0A From: Adrian Chadd <adrian=
@freebsd.org>=0ATo: Jim Thompson <jim@netgate.com> =0ACc: Barney Cordoba <b=
arney_cordoba@yahoo.com>; FreeBSD Net <net@freebsd.org>; Luigi Rizzo <rizzo=
@iet.unipi.it>; Lawrence Stewart <lstewart@freebsd.org> =0ASent: Sunday, Au=
gust 18, 2013 11:57 AM=0ASubject: Re: it's the output, not ack coalescing (=
Re: TSO and FreeBSD vs Linux)=0A =0A=0ARight. Well, post some profiling dat=
a, let's figure this out sometime.=0A=0ALuigi can do bridging with 2 cores =
using netmap. So it's technically=0Apossible. There's just a lot of kernel =
gunk in the way of doing it ye olde=0Away.=0A=0A=0A=0A-adrian=0A=0A=0AOn 18=
 August 2013 07:25, Jim Thompson <jim@netgate.com> wrote:=0A=0A>=0A> On Aug=
 18, 2013, at 8:48 AM, Barney Cordoba <barney_cordoba@yahoo.com>=0A> wrote:=
=0A>=0A> > I could fill a tx queue with 10gb of traffic with=A0 yesteryear'=
s cpus.=0A> It's not an achievement. Being able to bridge=0A> > real traffi=
c at 10gb/s with 2 cores is=0A>=0A> Or forward at layer 3.=0A>=0A> Or filte=
r packets.=0A>=0A> Or IPSEC.=0A>=0A> Or...=0A______________________________=
_________________
From owner-freebsd-net@FreeBSD.ORG  Sun Aug 18 19:18:37 2013
Return-Path: <owner-freebsd-net@FreeBSD.ORG>
Delivered-To: freebsd-net@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org
 [IPv6:2001:1900:2254:206a::19:1])
 (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by hub.freebsd.org (Postfix) with ESMTP id 08972B9A
 for <freebsd-net@freebsd.org>; Sun, 18 Aug 2013 19:18:37 +0000 (UTC)
 (envelope-from adrian.chadd@gmail.com)
Received: from mail-wg0-x236.google.com (mail-wg0-x236.google.com
 [IPv6:2a00:1450:400c:c00::236])
 (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits))
 (No client certificate requested)
 by mx1.freebsd.org (Postfix) with ESMTPS id 8D3962739
 for <freebsd-net@freebsd.org>; Sun, 18 Aug 2013 19:18:36 +0000 (UTC)
Received: by mail-wg0-f54.google.com with SMTP id e12so2959771wgh.9
 for <freebsd-net@freebsd.org>; Sun, 18 Aug 2013 12:18:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=mime-version:sender:in-reply-to:references:date:message-id:subject
 :from:to:cc:content-type;
 bh=eDhvPd4JNvPgrVF2aFlH7WoRmqJCI5w7gkx6nODeUy4=;
 b=W2zVqVlu/sArglET4jknTc1sRBvGAX+K5EnD9GA3ns580rcMJq/KX744umETGSSsO/
 kGduWmEfG2P2qO8gq1petSERqK/Z1VPQWHiTfWAAO0h6PIie+3TxUyzoEpZ3FRWPHxqe
 GLepEuKHz3hFH3QI4xhZ/Gk9Uey8AKQ3uhF9flvYnxo1q+mz0mE7IhnbdE6xyfFlVVdk
 pQwzSUELkYqXLNBfkj5CpfEDCM8jun+KC2v2qyT7NAbjA84fDQk2kMORWbHNeVnJufZa
 IDUg3YLKOiZ3j7pZSb5gsKbUALjmpR7BhLU2SzBEBMGealoPwBpK4DemoIlLRLyAFJVS
 N+3g==
MIME-Version: 1.0
X-Received: by 10.180.37.164 with SMTP id z4mr5470283wij.30.1376853514182;
 Sun, 18 Aug 2013 12:18:34 -0700 (PDT)
Sender: adrian.chadd@gmail.com
Received: by 10.217.116.136 with HTTP; Sun, 18 Aug 2013 12:18:34 -0700 (PDT)
In-Reply-To: <1376851152.3322.YahooMailNeo@web121606.mail.ne1.yahoo.com>
References: <520A6D07.5080106@freebsd.org> <520AFBE8.1090109@freebsd.org>
 <520B24A0.4000706@freebsd.org> <520B3056.1000804@freebsd.org>
 <20130814102109.GA63246@onelab2.iet.unipi.it>
 <1376745244.6575.YahooMailNeo@web121606.mail.ne1.yahoo.com>
 <1376748170.66110.YahooMailNeo@web121601.mail.ne1.yahoo.com>
 <CAJ-VmonGeqn5qqbfvF9xWaFPYNMNSVb6VwMx+oEVSGXVid98ag@mail.gmail.com>
 <1376833738.94737.YahooMailNeo@web121605.mail.ne1.yahoo.com>
 <71EA3DFB-B410-432D-98E0-B6341556BE6D@netgate.com>
 <CAJ-Vmo=0OX=_6cO_pZ45XrvfQzb+NVms00LUo5oRriZWUMBx+g@mail.gmail.com>
 <1376851152.3322.YahooMailNeo@web121606.mail.ne1.yahoo.com>
Date: Sun, 18 Aug 2013 12:18:34 -0700
X-Google-Sender-Auth: -ac0bum_uBW0cJfLWgHjDga6TdQ
Message-ID: <CAJ-VmokPhxAe1CAVqfKDJhssqg0VaUZT4hRPNB9gigECebh7VA@mail.gmail.com>
Subject: Re: it's the output, not ack coalescing (Re: TSO and FreeBSD vs Linux)
From: Adrian Chadd <adrian@freebsd.org>
To: Barney Cordoba <barney_cordoba@yahoo.com>
Content-Type: text/plain; charset=ISO-8859-1
X-Content-Filtered-By: Mailman/MimeDel 2.1.14
Cc: "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
X-BeenThere: freebsd-net@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: Networking and TCP/IP with FreeBSD <freebsd-net.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/freebsd-net>,
 <mailto:freebsd-net-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-net>;
List-Post: <mailto:freebsd-net@freebsd.org>
List-Help: <mailto:freebsd-net-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-net>,
 <mailto:freebsd-net-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 18 Aug 2013 19:18:37 -0000

On 18 August 2013 11:39, Barney Cordoba <barney_cordoba@yahoo.com> wrote:

> Great. Never has the been a better explanation for the word Kludge than
> netmap.
>

Nah. Netmap is a reimplementation of some reasonably well known ways of
pushing bits. Luigi just pushed it up to eleven and demonstrated what
current hardware is capable of. I have never bought the "We need eleventy
cores just to push 10ge of real traffic!" before.

Luigi did note down where the per-packet inefficiencies were. What we have
to do now is sit down and for each of those, figure out what the root
causes are and how to mitigate it. There's some architectural things that
need tidying up (read: CPU pinning, queue handling, some locking hilarity)
but if they're solved, we'll end up having dual core boxes push line rate
packets for routing.

So the gauntlet has been thrown. Let's fix this shit up.


-adrian



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