
Каждый пакет обрабатывается отдельным ядром? Или это однопоточный процесс?
решение1
Iptables на самом деле просто пользовательский интерфейс для брандмауэра Linux, которым является netfilter. Netfilter на самом деле система хуков в ядре вокруг обработки пакетов. Каждый пакет обрабатывается ядром, вызывая прерывание. Балансирует ли ваше ядро прерывания между несколькими процессорами, зависит от его возраста. См. эту ветку на StackOverflow об этом.https://stackoverflow.com/questions/7467688/netfilter-hooks-on-multi-core-system
Как упомянул Нильс, эти прерывания не будут сбалансированы на основе пакетов. Они будут сбалансированы на основе IRQ (на основе интерфейса) или, возможно, вообще будут перемещены на другой ЦП, если один из них станет слишком занятым.