Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Mar 2008 18:10:56 +0100
From:      Andre Oppermann <andre@freebsd.org>
To:        Robert Watson <rwatson@FreeBSD.org>
Cc:        Sepherosa Ziehau <sepherosa@gmail.com>, freebsd-hackers@freebsd.org, araujo@freebsd.org, vadim_nuclight@mail.ru, freebsd-ipfw@freebsd.org, Julian Elischer <julian@elischer.org>
Subject:   Re: [HEADS UP!] IPFW Ideas: possible SoC 2008 candidate
Message-ID:  <47EBD520.8050305@freebsd.org>
In-Reply-To: <20080325094400.I6905@fledge.watson.org>
References:  <slrnfud9lu.1rus.vadim_nuclight@hostel.avtf.net>	<47E79636.1000909@FreeBSD.org> <47E7EAA8.7020101@elischer.org>	<ea7b9c170803250203l6e3769ablcba65df6c1f5a4b6@mail.gmail.com> <20080325094400.I6905@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Robert Watson wrote:
> 
> On Tue, 25 Mar 2008, Sepherosa Ziehau wrote:
> 
>> On Tue, Mar 25, 2008 at 1:53 AM, Julian Elischer <julian@elischer.org> 
>> wrote:
>>
>>>  3/ possibly keeping per CPU stats..
>>
>>
>> This probably is the trickest part, not difficult for non-fastforward 
>> case. But if fastforward is enabled, I could only imagine full 
>> cross-cpu states duplication.
> 
> 
> FWIW, there is decreasing difference between IP fast forwarding and 
> regular IP processing in FreeBSD 7.x, as we perform direct dispatch by 
> default, so it's not just the fast forward case where full input 
> parallelism is possible for the firewall, and parallel firewall 
> processing has occurred for output since 5.3.

The regular forwarding path still does a (partial) copy of each packet
it forwards.  This is done for the ICMP redirect functionality.  Additionally
it has a much larger I-cache footprint due to the full ip_input(), ip_forward()
and ip_output() functions being executed.  Yes, the delta is shrinking but
still quite big.  I think regular forwarding still hits the wall at around
300-350kpps whereas fastforward can do 500kpps up to 1mpps with a good hardware
base.

-- 
Andre




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