No kernel do Linux 5.7, será acelerada a correspondência complexa em listas no NetFilter.

Os desenvolvedores do subsistema de filtragem e modificação de pacotes de rede Netfilter publicaram publicaram um conjunto de patches que acelera significativamente o processamento de grandes listas de correspondência (nftables set), onde é necessária a verificação da combinação de sub-redes, portas de rede, protocolo e endereços MAC. Os patches já foram aceitos na branch nf-next, que será proposta para inclusão no núcleo do Linux 5.7. O aumento mais significativo de desempenho foi alcançado graças ao uso de instruções AVX2 (futuramente, está previsto a publicação de otimizações semelhantes baseadas em instruções NEON para ARM).

As otimizações foram incorporadas ao módulo nft_set_pipapo ('PIle PAcket POlicies'), que resolve a tarefa de correspondência do conteúdo do pacote com os intervalos de estado utilizados nas regras de filtragem, como intervalos de IP e portas de rede (nft_set_rbtree e nft_set_hash manipulam a correspondência de intervalos e o reflexo direto dos valores). A versão pipapo vetorizada com instruções AVX2 de 256 bits em um sistema com processador AMD Epyc 7402 mostrou um aumento de desempenho de 420% ao processar 30 mil registros, incluindo pares porta-protocolo. O aumento ao corresponder pares de sub-rede e número de porta ao processar 1.000 registros foi de 87% para IPv4 e 128% para IPv6.

No kernel do Linux 5.7, será acelerada a correspondência complexa em listas no NetFilter.

Outra otimização, que permite o uso de grupos de correspondência de 8 bits em vez de 4 bits, também mostrou um aumento significativo de desempenho: 66% ao analisar 30 mil registros porta-protocolo, 43% para sub-rede_IPv4-port e 61% para sub-rede_IPv6-port. No total, considerando as otimizações AVX2, o desempenho do pipapo aumentou nos testes mencionados em 766%, 168% e 269%, respectivamente. As características obtidas para correspondências complexas superam as verificações de campos únicos em rbtree ('exceto no teste de pares porta+protocolo'), mas ainda ficam aquém das verificações diretas usando hashes e manipuladores de drop baseados em netdev.

No kernel do Linux 5.7, será acelerada a correspondência complexa em listas no NetFilter.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster