LINUX.ORG.RU

История изменений

Исправление 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-окна.

В роутинге такой хрени нет.