Назад | Перейти на главную страницу

Использует ли IPTables преимущества многоядерных процессоров?

Каждый пакет обрабатывается другим ядром? Или это однопоточный процесс?

Iptables - это просто интерфейс пользователя для межсетевого экрана Linux, который является netfilter. Netfilter - это действительно система перехватов в ядре для обработки пакетов. Каждый пакет обрабатывается ядром путем запуска прерывания. Уравновешивает ли ваше ядро ​​прерывания между несколькими процессорами, зависит от того, сколько ему лет. См. Эту ветку на StackOverflow об этом. https://stackoverflow.com/questions/7467688/netfilter-hooks-on-multi-core-system

Как упомянул Нильс, эти прерывания не будут сбалансированы для каждого пакета. Они будут сбалансированы по IRQ (для каждого интерфейса) или, возможно, будут перемещены на другой ЦП, если один из них станет слишком загруженным.