동일한 입력 문자를 가지는 상태의 병합을 통한 메모리 효율적인 결정적 유한 오토마타 구현

Vol. 23, No. 3, pp. 395-404, 6월. 2013
10.13089/JKIISC.2013.23.3.395, Full Text:
Keywords: Pattern matching, regular expression, DFA, state blowup, state merging
Abstract

패턴 정합 알고리듬은 침입 탐지 및 방지 시스템의 성능을 좌우하는 중요한 기능 요소로서 일반적으로 정규 표현식(Regualr Expressions)을 사용해 패턴을 표현한다. 공격 패턴이 복잡해지고 다양해짐에 따라, 정규 표현식 또한 복잡해지고 그 수가 증가하고 있으며 이로 인해, 패턴 매칭 알고리듬에서 정규 표현식을 인식하기 위해 사용된 결정적 유한 오토마타(Deterministic Finite Automata)를 구성하는 상태가 폭발적으로 증가(states blowup)하고 있다. 이러한 상태의 폭발적 증가 문제를 해결하고 메모리 효율적인 자료 구조를 구현하기 위해 많은 연구가 이루어졌다. 대부분의 연구 결과들에서는 하나의 정규 표현식을 변환한 결정적 유한 오토마톤(Automaton) 내 상태의 수를 감소시키기 위한 효과적인 방안들을 제안하였다. 하지만, 이들 연구 결과는 단일 패턴 내 상태의 수만을 감소시킬 뿐 패턴의 수에 따라 증가하는 상태의 수를 감소시키지 못하는 한계점을 가지고 있다. 본 논문에서는 이를 해결하기 위해 정규 표현식으로 구성된 유한 오토마타(Automata) 상의 상태 병합을 통한 상태 감소 방안을 제안한다. 이는 동일한 입력 문자를 가지는 상태를 병합함으로써 유한 오토마타 상의 상태의 수를 감소시켜, 기존 결정적 유한 오토마타에 비해 평균 40.0%의 메모리 감소 효과를 나타낸다.

Statistics
Show / Hide Statistics

Statistics (Cumulative Counts from December 1st, 2017)
Multiple requests among the same browser session are counted as one view.
If you mouse over a chart, the values of data points will be shown.


Cite this article
[IEEE Style]
Y. Choi, "Design of Memory-Efficient Deterministic Finite Automata by Merging States With The Same Input Character," Journal of The Korea Institute of Information Security and Cryptology, vol. 23, no. 3, pp. 395-404, 2013. DOI: 10.13089/JKIISC.2013.23.3.395.

[ACM Style]
Yoon-Ho Choi. 2013. Design of Memory-Efficient Deterministic Finite Automata by Merging States With The Same Input Character. Journal of The Korea Institute of Information Security and Cryptology, 23, 3, (2013), 395-404. DOI: 10.13089/JKIISC.2013.23.3.395.