Abstract
In network intrusion prevention, attack packets are detected and filtered out based on their attack signatures. Pattern matching is extensively used to find attack signatures and the most time-consuming execution part of Network Intrusion Prevention Systems(NIPS). Pattern matching is usually accelerated by hardware and should be performed at wire speed in NIPS. However, that alone is not good enough. First, pattern matching hardware should be able to generate sufficient pattern match information including the pattern index number and the location of the match found at wire speed. Second, it should support pattern grouping to reduce unnecessary pattern matches. Third, it should always have a constant worst-case performance even if the number of patterns is increased. Finally it should be able to update patterns in a few minutes or seconds without stopping its operations, We propose a system architecture to meet the above requirement. The system architecture can process multiple pattern characters in parallel and employs a pipeline architecture to achieve high speed. Using Xilinx FPGA simulation, we show that the new system stales well to achieve a high speed oner 10Gbps and satisfies all of the above requirements.
네트워크 침입 방지에서 공격 패킷은 시그내쳐에 기반을 둔 방법에 의해 발견되어 제거된다. 패턴 매칭(Pattem Matching)은 공격 시그내쳐를 발견하기 위해 광범위하게 사용되고 있고, 또한 네트워크 침입방지 시스템에서 시간적으로 가장 많이 수행되는 부분이다. 네트워크 침입방지 시스템에 사용되는 패턴 매칭은 주로 하드웨어를 사용하여 가속화되며 회선 속도로 수행되어야 한다. 그러나 이것만으로는 충분치 않고 다음과 같은 조건들이 더 요구된다. 첫째, 패턴 매칭 하드웨어는 패턴 인덱스 번호와 패턴 발견위치를 포함한 충분한 패턴 매칭 정보를 회선 속도에 맞게 제공해야 한다. 둘째, 불필요한 패턴 매칭을 줄이기 위한 패턴 그룹을 지원할 수 있어야 한다. 셋째, 패턴의 개수가 증가하더라도 최저 성능을 보장 할 수 있어야 한다. 마지막으로, 수행 중단 없이 몇분 또는 몇초 이내에 패턴 업데이트가 가능해야 한다. 본 논문에서는 위의 요구사항을 만족하는 시스템 구조를 제안한다. 이 시스템은 여러 개의 패턴 문자를 동시에 처리하고 파이프라인 구조를 사용하여 고속의 처리를 가능케 한다. Xilinx FPGA 시뮬레이션을 통해 제안된 시스템이 10Gbps 이상의 속도에서 동작하며 위의 모든 요구사항을 만족시킴을 보였다.