DOI QR코드

DOI QR Code

정규표현식 프로세서에서의 효율적 문자 클래스 매칭을 위한 구조

Architecture for Efficient Character Class Matching in Regular Expression Processor

  • Yun, SangKyun (Department of Computer and Telecommunication Engineering, Yonsei University)
  • 투고 : 2018.03.11
  • 심사 : 2018.03.20
  • 발행 : 2018.03.31

초록

보통의 CPU 처럼 명령어 기반으로 정규표현식 패턴 매칭을 수행하는 정규표현식 프로세서가 최근에 연구되었다. 이들 중 REMPc만이 문자 클래스 처리를 위한 기능을 제공한다. 본 논문에서는 정규표현식에서 사용 빈도가 높은 문자 클래스들에 대해서 명령어의 오퍼랜드 필드에 비트맵 방식으로 나타내고, 하드 배선 방식으로 이 문자 클래스에 대한 매칭을 수행하여 효율적인 문자클래스 매칭을 수행하는 구조를 제안한다. 제안한 방법을 사용하면 Snort 규칙의 문자 클래스에 대해서 대부분의 문자 클래스를 명령어의 한 오퍼런드 또는 한 명령어로 나타낼 수 있다. 이처럼 REMPc에 비해서 적은 수의 명령어를 사용하므로 효율적인 문자 클래스 매칭을 할 수 있다.

Like CPUs, regular expression processors that perform regular expression pattern matching using instructions have been proposed recently. Of these, only REMPc provides features for character class matching. In this paper, we propose an architecture for efficient character class matching in a regular expression processor, which use character class bitmap format in a instruction operand field and implement the hard-wired character class comparator for several frequently used character classes. Using the proposed method, most of the character classes used in Snort rule can be represented by an operand or an instruction. Thus, character class matching can be performed more efficiently in the proposed archiecture than in REMPc.

키워드

참고문헌

  1. J. C. Bispo, I. Sourdis, J. M. Cardoso, and S. Vassiliadis, "Regular expression matching for reconfigurable packet inspection," in IEEE Int. Conf. Field Programmable Technology (FPT'06) , 2006. DOI:10.1109/FPT.2006.270302
  2. M. Paolieri, I. Bonesana, M. Santambrogio, "ReCPU: a parallel and pipelined architecture for regular expression matching," in Proc. IFIP Int. Conf. VLSI-SoC, 2007. DOI:10.1109/VLSISOC.2007.4402466
  3. I. Bonesana, M. Paolieri, and M. Santambrogio, "An adaptable FPGA-based system for regular expression matching," in Proc. Conf. Design, Automation and Test in Europe (DATE'08) , 2008. DOI:10.1109/DATE.2008.4484852
  4. Q. Li, J. Li, J.Wang, B. Zhao, and Y. Qu, "A pipelined processor architecture for regular expression string matching," Microprocess. Microsy., vol. 36, no. 6, pp. 520-526, 2012. DOI:10.1016/j.micpro.2012.04.004
  5. B. Ahn, K.H. Lee, and S.K. Yun, "Regular expression matching processor supporting efficient repetitive operations," Journal of KI ISE:Computing Practices and Letters, Vol. 19, No. 11, pp. 553-558, 2013. DOI:10.4204/EPTCS.62.3
  6. S.K. Yun, "Regular expression matching processor supporting character class matching," Journal of KIISE, vol 42, no. 10. pp. 1280-1285, 2015. DOI:10.5626/JOK.2015.42.10.1280
  7. "Snort - Network Intrusion Detection," https://www.snort.org