Quão eficiente é o módulo hashlimit do iptables?

1

Estou procurando uma solução para o limite de taxa em uma base ip. Quantos pacotes o módulo iptables hashlimit pode manipular em um núcleo recente da CPU Intel x86_64? 1.000 / seg 1.000.000 / seg?

    
por user127749 10.07.2012 / 11:06

2 respostas

2

O maquinário adicional mais importante do netfilter tem que passar, pelo que eu vejo da fonte, está fazendo hash de novas entradas, atualizando créditos de entrada, procurando entradas e limpando as tabelas hash subjacentes que você precisa (veja / proc / net / ipt_hashlimit).

Como as tabelas de hash são usadas, todas essas operações são constantes e muito rápidas, exceto a limpeza de tabelas. Este último é caro se você tiver muitas solicitações de todos os diferentes usuários.

Se eu tiver que fazer uma estimativa aproximada para a sobrecarga de hashlimit, adicionaria no máximo 15% ao custo de processamento de um conjunto de regras padrão. Como de costume, a melhor maneira de saber é medir. Se você fizer isso, atualize este post:)

Como observação, talvez você queira conferir o PF taxa limitando opção no BSD.

    
por 10.07.2012 / 12:31
0
As tabelas de hash

geralmente são eficientes e, na maioria das vezes, têm escalabilidade linear.

.. embora, olhando as opções, verifique com mais cuidado htable-gcinterval , pois isso pode ter um impacto maior no desempenho. coleta garbace da tabela de hash é provavelmente a operação mais cara. Se eu esperasse um gargalo na implementação do hashlimit, seria em torno do código gc.

    
por 29.02.2016 / 03:24