История изменений
Исправление blind_oracle, (текущая версия) :
В общем дошли руки, еще потестировал.
Роутинг\бриджинг проверил - достаточно большая нагрузка, т.к. пакеты копируются через netlink в юзерспейс при -j NFQUEUE. Есть memory-mapped netlink, но не уверен что Суриката его юзает.
Плюс непонятно с распределением флоу по воркерам - NFQUEUE поддерживает --queue-balance для раскидывания по Сурикатным тредам, и он вроде бы даже flow-aware, но вот обратные пакеты flow из-за RSS наверное не попадут в тот же тред.
Надо дальше копать, в принципе перспективно.
По AF_PACKET.
1) Похоже Суриката сама дропает внутри себя пакеты по каким-то одной ей понятным правилам. Возможно битые чексуммы или порванные флоу.
Ибо: a) Количество дропов для конкретного PCAP всегда идентично с точностью до пакета
b) При смене copy-mode с ips на tap дропы пропадают, т.к. Суриката перестает вмешиваться в поток и всё сразу хорошо.
Каких-либо настроек это контроллирующих в конфиге не нашел, задал вопрос у них в багтрекере - может посоветуют.
2) Выяснился конский Latency при использовании AF_PACKET - пинги идут по 10-50мс в зависимости от погоды на марсе, iperf-ом в результате больше гигабита сложно получить и то после раскачки TCP-окна.
В роутинге такой хрени нет.
Исправление blind_oracle, :
В общем дошли руки, еще потестировал.
Роутинг\бриджинг проверил - достаточно большая нагрузка, т.к. пакеты копируются через netlink в юзерспейс при -j NFQUEUE. Есть memory-mapped netlink, но не уверен что Суриката его юзает.
Плюс непонятно с распределением флоу по воркерам - NFQUEUE поддерживает --queue-balance для раскидывания по Сурикатным тредам, и он вроде бы даже flow-aware, но вот обратные пакеты flow из-за RSS наверное не попадут в тот же тред.
Надо дальше копать, в принципе перспективно.
По AF_PACKET.
1) Похоже Суриката сама дропает внутри себя пакеты по каким-то одной ей понятным правилам. Возможно битые чексуммы или порванные флоу.
Ибо: * Количество дропов для конкретного PCAP всегда идентично с точностью до пакета * При смене copy-mode с ips на tap дропы пропадают, т.к. Суриката перестает вмешиваться в поток и всё сразу хорошо.
Каких-либо настроек это контроллирующих в конфиге не нашел, задал вопрос у них в багтрекере - может посоветуют.
2) Выяснился конский Latency при использовании AF_PACKET - пинги идут по 10-50мс в зависимости от погоды на марсе, iperf-ом в результате больше гигабита сложно получить и то после раскачки TCP-окна.
В роутинге такой хрени нет.
Исходная версия blind_oracle, :
В общем дошли руки, еще потестировал.
Роутинг\бриджинг проверил - достаточно большая нагрузка, т.к. пакеты копируются через netlink в юзерспейс при -j NFQUEUE. Есть memory-mapped netlink, но не уверен что Суриката его юзает. Плюс непонятно с распределением флоу по воркерам. Надо дальше копать, в принципе перспективно.
По AF_PACKET.
1) Похоже Суриката сама дропает внутри себя пакеты по каким-то одной ей понятным правилам. Возможно битые чексуммы или порванные флоу.
Ибо: * Количество дропов для конкретного PCAP всегда идентично с точностью до пакета * При смене copy-mode с ips на tap дропы пропадают, т.к. Суриката перестает вмешиваться в поток и всё сразу хорошо.
Каких-либо настроек это контроллирующих в конфиге не нашел, задал вопрос у них в багтрекере - может посоветуют.
2) Выяснился конский Latency при использовании AF_PACKET - пинги идут по 10-50мс в зависимости от погоды на марсе, iperf-ом в результате больше гигабита сложно получить и то после раскачки TCP-окна.
В роутинге такой хрени нет.