«Какова максимальная пропускная способность PF?»
«На сколько мощным должен быть процессор, чтобы PF мог справиться с
моим сетевым соединением?»
На эти вопросы не так-то и просто ответить. Для домашнего подключения
самого обычного железа должно быть более чем достаточно. Для некоторых
специальных конфигураций возможно потребуется и более быстрая машина с
высокопроизводительными сетевыми картами.
PF используется на очень крупных системах с большим трафиком, а его
разработчики являются опытными пользователями PF. Скорее всего у
большинства людей не возникнет никаких проблем.
Производительность PF определяется следующими факторами:
- Количество пакетов в секунду.
Для пакета размером 1500 байт необходимо выполнить почти такой же
объем работы, как для однобайтового пакета. Число пакетов в секунду
определяет количество, которое таблица состояний и правила фильтрации
должны ежесекундно использоваться, определяя дальнейшую судьбу пакета
и загрузку системы соответственно.
- Эффективность сетевой карты. Некоторые сетевые карты просто более
качественны и эффективны, чем другие. Старые сетевые карты
rl(4) имеют тенденцию быть
менее хорошего качества нежели ix(4).
Последние, как правило, работают очень хорошо.
- Сложность набора правил. Чем больше строк конфига необходимо
обработать для каждого пакета, тем ниже производительность. Чем больше
пакетов будет отфильтровано по быстрым правилам, тем выше будет производительность.
- Едва ли стоит тут это упоминать: процессор и оперативную память.
Поскольку PF - это процесс, выполняющийся в ядре, он не будет использовать
swap. Таким образом, если в системе достаточно RAM, он запускается,
если нет, получите panic из-за исчерпания
pool(9).
Огромного количества оперативной памяти не требуется.