초록
Network Intrusion Detection System(NIDS)는 네트워크를 통해 들어오는 패킷들을 모니터링 하고 분석하여 내부 시스템에 유해한 내용을 담고 있는 패킷을 탐지 하는 시스템이다. 이 시스템은 네트워크의 패킷을 놓치지 않고 분석할 수 있어야 하며, 예측 불허의 공격 방법들에 대해서는 새로운 법칙을 적용하여 방어할 수 있어야 한다. 이에 대응하여, 소프트웨어적 처리에 비해 높은 비교 성능과 재구성이 가능한 유연성을 제공하는 FPGA는 좋은 해결책이다. 그럼에도 불구하고, 고속 네트워크의 등장과 축적되는 공격 패턴들의 증가는 제한된 속도와 공간을 가지고 있는 FPGA에게 부담이 된다. 본 연구는 추가적인 자원 사용을 최소화하고 성능의 극대화를 가져오는 방식으로 접두어 공유 병렬 패턴매치 기법을 제시하고 설계하였다. 실험을 통하여 입력 문자열을 8bit에서 16bit로 증가할 때 성능이 두 배 향상이 되면서 구현을 위해 사용되는 자원은 평균 1.07배 증가하는 것을 확인할 수 있다.
Network intrusion detection system (NIDS) monitors all incoming packets in the network and detects packets that are malicious to internal system. The NIDS should also have ability to update detection rules because new attack patterns are unpredictable. Incorporating FPGAs into the NIDS is one of the best solutions that can provide both high performance and high flexibility comparing with other approaches such as software solutions. In this paper we propose and design a novel approach, prefix sharing parallel pattern matcher, that can not only minimize additional resources but also maximize the processing performance. Experimental results showed that the throughput for 16-bit input is twice larger than for 8-bit input but the used LEs/Char in FPGA increases only 1.07 times.