Compactação do Algoritmo de Comparação de Strings do Snort para o uso na Memória Compartilhada de GPUs

  • José Bonifácio da Silva Júnior Júnior
  • Edward David Moreno Moreno
  • Ricardo Ferreira dos Santos Santos

Resumo

A tarefa de comparar assinaturas de ataques com pacotes de redes em um Intrusion Detection System (IDS) consome bastante tempo de CPU. Para amenizar esse problema, tem-se tentado paralelizar o motor de comparação dos IDSs transferindo sua execução da CPU para a GPU. Este artigo mostra o processamento em paralelo dos dados no algoritmo de comparação de string Aho-Corasick e propõe compactar a Tabela de Transição de Estados desse algoritmo a fim de possibilitar o uso dele na memória compartilhada. A paralelização foi feita através da plataforma CUDA da NVIDIA e executada nas diversas memórias da GPU. O algoritmo AC foi compactado e executado na memória compartilhada, alcançando, em seu melhor resultado, um ganho de desempenho de 73% em relação às outras memórias da GPU e o algoritmo compactado chegou a ser 56 vezes mais rápido que sua versão serial. Com isso, pode-se perceber que o uso da compactação na memória compartilhada torna-se uma solução adequada para acelerar o processamento de IDSs que necessitem de agilidade na busca por padrões.
Publicado
2018-03-28
Como Citar
JÚNIOR, José Bonifácio da Silva Júnior; MORENO, Edward David Moreno; SANTOS, Ricardo Ferreira dos Santos. Compactação do Algoritmo de Comparação de Strings do Snort para o uso na Memória Compartilhada de GPUs. Teste, [S.l.], mar. 2018. Disponível em: <http://143.54.25.88/index.php/teste/article/view/775>. Acesso em: 19 sep. 2024.
Edição
Seção
Artigos