3

Поскольку IPTABLES - это программный брандмауэр, мне интересно, можно ли записать точную загрузку, которую он вызывает, циклы процессора и т.д.

В небольшой системе я уверен, что это тривиально. Но как насчет тысяч правил?

Глядя в TOP и PS, это, кажется, ускользает от меня, так что это должен быть компонент уровня ядра?

Можно ли его изолировать и отслеживать / регистрировать?

eta: для ясности, в современном linux iptables не является видимым процессом или демоном, поэтому его нельзя увидеть, например, с помощью ps aux и я не знаю, как иначе изолировать его от ядра

1 ответ1

2

Фактическая обработка правил iptables выполняется в контексте softirq, поэтому изменения значения si% в top (или %soft в mpstat) должны дать подсказку о том, какую нагрузку он вызывает. Если вы хотите получить более подробную информацию, вы можете использовать функцию трассировки ftrace (см. Https://www.kernel.org/doc/Documentation/trace/ftrace.txt для получения дополнительной информации), чтобы регистрировать вызовы соответствующих функций ядра и измерять задержку. , Однако для этого требуется поддержка в ядре, то есть конкретные параметры конфигурации ядра.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .