From owner-freebsd-arch@FreeBSD.ORG Sat Aug 20 21:10:08 2011 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 27815106564A for ; Sat, 20 Aug 2011 21:10:08 +0000 (UTC) (envelope-from lev@freebsd.org) Received: from onlyone.friendlyhosting.spb.ru (onlyone.friendlyhosting.spb.ru [IPv6:2a01:4f8:131:60a2::2]) by mx1.freebsd.org (Postfix) with ESMTP id AC29F8FC12 for ; Sat, 20 Aug 2011 21:10:07 +0000 (UTC) Received: from lion.home.serebryakov.spb.ru (unknown [IPv6:2001:470:923f:1:248b:b3cd:918d:d0d2]) (Authenticated sender: lev@serebryakov.spb.ru) by onlyone.friendlyhosting.spb.ru (Postfix) with ESMTPA id EF9FE4AC58; Sun, 21 Aug 2011 01:10:05 +0400 (MSD) Date: Sun, 21 Aug 2011 01:10:05 +0400 From: Lev Serebryakov X-Priority: 3 (Normal) Message-ID: <1361908410.20110821011005@serebryakov.spb.ru> To: Luigi Rizzo In-Reply-To: <20110820134530.GA42942@onelab2.iet.unipi.it> References: <810527321.20110819123700@serebryakov.spb.ru> <201108191401.23083.pieter@degoeje.nl> <425884435.20110819175307@serebryakov.spb.ru> <20110819172252.GE88904@in-addr.com> <368496955.20110820101506@serebryakov.spb.ru> <20110820134530.GA42942@onelab2.iet.unipi.it> MIME-Version: 1.0 Content-Type: text/plain; charset=windows-1251 Content-Transfer-Encoding: quoted-printable Cc: freebsd-arch@freebsd.org Subject: Re: 10gbps scalability (was: Re: FreeBSD problems and preliminary ways to solve) X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Aug 2011 21:10:08 -0000 Hello, Luigi. You wrote 20 =E0=E2=E3=F3=F1=F2=E0 2011 =E3., 17:45:30: > - the Click modular router now runs (in userspace) at up to 4Mpps > per core, which is faster than in-kernel linux; > A userspace version of ipfw should be available in a short time, > and i have some work in progress to bring the forwarding tables > in userspace (but of course you can do the same with Click). > I also see people start using it, which is a good thing because > i am getting useful feedback on features and bugs and patches > for more device drivers. [SKIPPED] > On the general issue of improving performance of the network stack, > I feel that to achieve significant speed improvements we should > really reconsider the way things are done in the network stack.=20 > And that comes before support for special HW features.=20 Could you please explain (I don't mean, that you are wrong, I really don't understand), how netmap and other user-level processing could help for ROUTING (with firewalling, different routes, etc) and software switching? I understand very well, why this help user-level applications, which need to process huge PPS rates. Less memcpy, less allocations, less context switches (and TLB/cache flushes) -- all these things is very clear to me. But why user-level software swithcing is faster than in-kernel one, hwcih should wotk without memory context switches AT ALL?! Or netmap is used for prototyping code, which will be moved into kernel later? --=20 // Black Lion AKA Lev Serebryakov