Subject: Re: FAST_IPSEC [was Re: ipv6 source address selection]
To: None <tech-net@netbsd.org>
From: Christos Zoulas <christos@astron.com>
List: tech-net
Date: 09/26/2007 23:50:25
In article <20070926215247.GA7048@Amilo.at.home>,
Arnaud Degroote <degroote@netbsd.org> wrote:
>On Wed, Sep 26, 2007 at 10:22:31AM -0700, jonathan@dsg.stanford.edu wrote:
>>
>> In message <20070926083708.GA6092@Amilo.at.home>Arnaud Degroote writes
>> >On Tue, Sep 25, 2007 at 02:52:06PM -0700, Stone wrote:
>> >> In message <20070925211032.GA6028@serpens.de>Michael van Elst writes
>> >> >On Tue, Sep 25, 2007 at 01:55:26PM -0700, Jonathan Stone wrote:
>> >In NetBSD-4, you can use FAST_IPSEC and IPv6. I have pullup most of the
>> >current change into NetBSD-4 a long time ago. There are still some
>> >issues in the implementation (the implementation doesn't work correctly
>> >with extension header in transport mode). Of course, the code needs to
>> >be tested, tested and retested in real configuration and I wait for any
>> >feedback good or bad :).
>>
>> Thanks for the update and correction.
>>
>> Are there other known gotchas besides the extension header in
>> transport mode? Any Big/little endian issues? I ask because one way
>> to get the testing would be to get people turning on FAST_IPSEC in
>> -current.
>
>For moment, I only have tested on le boxes. I will try to find a sparc64
>box to test FAST_IPSEC. There are still some pr about FAST_IPSEC but I
>hope that I can fix most of them before NetBSD-4.
>
>I think we will get more feedback when NetBSD-4 will be released (and it
>is the reason why I pulled the IPv6 changes in NetBSD-4). I don't think
>IPSEC is really used by developpers on current.
>
>> There has also been talk of turning on FAST_IPSEC by default. But the
>> consensus was that before doing that, we should measure send and
>> receive packet rates both with and without IPsec configured; and make
>> sure there's negligible difference in packet rates. (On a CPU-limited
>> or memory-limited system, needless to say. send/receive rates on
>> 10GbE would be one interesting way to measure :-))
>
>There are two questions :
> - can we replace Kame IPSEC by FAST_IPSEC (and so drop Kame IPSEC from
> src). I think FAST_IPSEC is not far from Kame IPSEC about features
> (-current has IPSEC_NAT_T support for FAST_IPSEC for example). But
> the FAST_IPSEC stack need to be more used/tested for that.
I think that we should. There is little to gain by supporting 2 different
IPSEC stacks and there is the cost of maintaining them.
> - can we enable FAST_IPSEC in GENERIC ? What is the impact on kernel
> size and on the performance of network stack. I will do some
> benchmarks later but for moment, I prefer focussing on bug fixes.
> We have time before 5.0 ... :)
There were two reasons for not enabling IPSEC in generic.
1. performance. It would be nice to have a flag to globally enable or disable
it, so that the ip path does not slow down a lot when IPSEC is enabled but
there are no IPSEC policies.
2. the crypto/export issues. I don't think that this is an issue anymore.
christos