[Sysadmins] туннель с помощью ipsec

Alexey Shabalin =?iso-8859-1?q?a=2Eshabalin_=CE=C1_gmail=2Ecom?=
Пн Фев 2 12:30:40 MSK 2009


30 января 2009 г. 20:30 пользователь Maxim Tyurin написал:
> Alexey Shabalin writes:
>
>> Если не ошибаюсь, наши ядра поддерживают ipsec. Кроме спец. модулей
>> для openswan/freeswan.
>> Это означает, что при создании тунеля у вас не будет новых сетевых
>> интерфейсов и посмотреть есть ли тунель можно только ipsec утилитами.
>> С пол года назад занимался тестированием на производительность
>> раздичных vpn-тунелей, racoon - последнее место по производительности.
>> А вот openvpn оказался даже лучше openswan. Самое досадное, что
>> шифрование/дешифрование не распаралеливается по многоядерным
>> процессарам - всё упирается в частоту одного ядра :(
>
> Не верю (С)
>
> Обнародуйте методику тестирования и результаты.
> ИМХО openvpn будет быстрее openswan только при использовании Null
> encription в OpenVPN и AES/Twofish в OpenSWAN.
>
> /me тестировал во времена Master 2.4
> OpenVPN по моим тестам оказался примерно в 10 раз медленее
> OpenSWAN+KLIPS при использовании одинаковых алгоритмов.
>
> Native IPSec был всегда медленнее KLIPS, но не настолько.
> Что-то не верится что в последних ядрах так изуродовали стек IPsec.

Извиняюсь, действительно я не доделал тесты с openswan(+KLIPS). На
момент проведения тестов openswan/strongswan не было в репозитарии,
если сам и собирал, то результаты тестов куда-то задевались.

Для определения скорости передачи данных использовалась утилита iperf
Инфраструктура SA не разворачивалась, все тесты проводились на
pre-shared ключах.
Описание стенда:
2 одинаковых blade-сервера IBM HS-21XM с характеристиками:
CPU: 2 x 4-ядерных Intel E5345 2.33GHz
RAM: 16 Гб
NIC: Broadcom NetXtreme II BCM5708 1000Base-SX (B2) PCI-X 64-bit 133MHz
ОС: Linux 2.6.18-std-smp-alt12 x86_64
Сервера подключены к одному сетевому коммутатору.

"чистый" канал без шифрования - 950
openvpn(BF-CBC-128 + lzo) - 478
openvpn(BF-CBC-128) - 241
openvpn(RC2-40-CBC - MD2 +lzo) - 166
openvpn(RC2-40-CBC - MD2) - 31
openvpn(AES + lzo) - 429
openvpn(AES) - 247
openssh тунель - 234
ipsec-tools(BF+deflate) - 247
ipsec-tools(DES+deflate) - 191
ipsec-tools(3DES+deflate) -100

Скорость шифрования упирается в одно ядро процессора(одно ядро занято
на 100%, остальные простаивают). Так же странным оказалась
производительность "слабого" алгоритма RC2-40, видимо из-за
особенностей реализации.

Стояла задача организовать шифрование трафика 1Гб канала. В результате
остановились на выделенных железках (дабы не создавать рекламу,
производителей можно уточнить в привате).

-- 
Alexey Shabalin


Подробная информация о списке рассылки Sysadmins