Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Apr 2012 23:22:24 +0200
From:      Luigi Rizzo <rizzo@iet.unipi.it>
To:        "K. Macy" <kmacy@freebsd.org>
Cc:        Andre Oppermann <andre@freebsd.org>, current@freebsd.org, net@freebsd.org
Subject:   Re: Some performance measurements on the FreeBSD network stack
Message-ID:  <20120419212224.GA95459@onelab2.iet.unipi.it>
In-Reply-To: <CAHM0Q_M4wcEiWGkjWxE1OjLeziQN0vM%2B4_EYS_WComZ6=j5xhA@mail.gmail.com>
References:  <20120419133018.GA91364@onelab2.iet.unipi.it> <4F907011.9080602@freebsd.org> <20120419204622.GA94904@onelab2.iet.unipi.it> <CAHM0Q_M4wcEiWGkjWxE1OjLeziQN0vM%2B4_EYS_WComZ6=j5xhA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Apr 19, 2012 at 10:34:45PM +0200, K. Macy wrote:
> >> This is indeed a big problem. ?I'm working (rough edges remain) on
> >> changing the routing table locking to an rmlock (read-mostly) which
> >
> 
> This only helps if your flows aren't hitting the same rtentry.
> Otherwise you still convoy on the lock for the rtentry itself to
> increment and decrement the rtentry's reference count.
> 
> > i was wondering, is there a way (and/or any advantage) to use the
> > fastforward code to look up the route for locally sourced packets ?

actually, now that i look at the code, both ip_output() and
the ip_fastforward code use the same in_rtalloc_ign(...)

> >
> 
> If the number of peers is bounded then you can use the flowtable. Max
> PPS is much higher bypassing routing lookup. However, it doesn't scale
> to arbitrary flow numbers.

re. flowtable, could you point me to what i should do instead of
calling in_rtalloc_ign() ?

cheers
luigi



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