>Погуглил, нашёл вот такой интересный тест:
>http://bulk.fefe.de/scalability/
>Правда он к обсуждаемому вопросу не имеет отношения...
>говорит 404..
>Аналогом таблиц pf в iptables является модуль ipset. Поиск же по спискам
>правил точно так же линеен.
>
ipset это и есть тот самый левый патч который страшно ставить в продакшн.. приключений както не хочется..
>В Linux эмпирическим путём обнаружилась интересная особенность - кэширование совпадений для правил,
>правда не нашёл прямых упоминаний об этом от разработчиков netfilter. В
>цепочках iptables долго идёт только первый поиск. Если приходит пакет с
>такими же атрибутами, что и уже проверенный, для этого пакета правило
>определяется из кэша: http://www.protocols.ru/Papers/iptables-test.shtml
"В завершении я хочу привести результаты теста на реально используемом шлюзе с достаточно высоким уровнем трафика (на момент тестирования исходящий трафик составлял около 2 Мбит/с)."
ой я вас умоляю не смешите мне тапочки этими двумя мегабитами. кеширование это костыли которые дают прирост только в синтетике
>В случае с iptables точно так же, почитайте man:
>http://ipset.netfilter.org/ipset.man.html
>
все тот же стремный левый патч
>>Начинку таблиц без проблем можно менять на лету. Время поиска по такой
>>таблице очень и очень маленькое.
>>В случае с линухом мы вынуждены держать 1000 правил, поиск по 1000
>>правил идет настолько долго что ksoftirqd вылазит вверх (это симптом, никогда
>>такого не видели?) и машина просто не вылазит из прерываний. LA
>>растер вверх а количество успешно прошедших пакетов - вниз.
>
>Я же говорю - руки кривые.
>
удивительный коментарий, и чего я вам доказываю?
>>Есть патч для linux который добавляет такой функционал, но не очень хочется
>>приключений связанных с глюками third level патча.
>
>Каждый сильно востребованный патч со временем попадёт в upstream.
>
этот востребованный патч уже давно есть в *BSD, а в линухе от него кернел паники бывают
>>> Очень глубокомысленный вывод. Ценю. "Таблицы" звучит круче чем "Цепочки".
>>Не просто звучит, но и работает =) Простой линейный поиск гораздо медленеей
>>поиска по self-ballancing binary tree (хотя я не уверен что в
>>pf именно такое дерево, лень в исходники лезть)
>
>Ну и iptables тоже не просто звучит, но и работает =)
ага, работает и ядро до полусмерти зашугивает... подождем когда его вылижут, а пока его даже на тестовую железку ставить страшно