Abstract
As one of the most challenging tasks in designing the Internet routers, packet classification is required to achieve the wire-speed processing for every incoming packet. Packet classification algorithm which applies binary search on trie levels to the area-based quad-trie is an efficient algorithm. However, it has a problem of unnecessary access to a hash table, even when there is no node in the corresponding level of the trie. In order to avoid the unnecessary off-chip memory access, we proposed an algorithm using Bloom filters along with the binary search on levels to multiple disjoint tries. For ACL, FW, IPC sets with about 1000, 5000, and 10000 rules, performance evaluation result shows that the search performance is improved by 21 to 33 percent by adding Bloom filters.
패킷 분류는 인터넷 라우터가 수행하는 가장 중요한 기능 중 하나로써 들어오는 모든 패킷을 선 속도로 처리하기를 요구한다. 영역분할을 사용한 사분트라이 구조에 길이 별 이진 검색을 적용한 알고리즘은 2차원 필드를 동시에 검색하면서 검색영역을 반으로 줄여나갈 수 있으므로 매우 효율적인 구조이다. 하지만 트라이의 레벨에 노드가 없는 경우에도 해시 테이블에 접근하는 문제점이 존재한다. 따라서 본 논문에서는 해시 메모리로의 불필요한 접근을 줄이기 위해서 영역분할을 사용한 사분 트라이의 길이별 이진 검색에 블룸 필터를 적용하는 패킷분류 구조를 제안한다. 현재 사용되는 ACL, FW, IPC 룰 타입의 1000, 5000, 10000개의 룰 셋으로 실험한 결과, 블룸 필터를 적용함으로써 검색 성능이 21~33%까지 향상되는 결과를 얻었다.