셋-프루닝 이진 검색 트리를 이용한 계층적 패킷 분류 알고리즘

A Hierarchical Packet Classification Algorithm Using Set-Pruning Binary Search Tree

  • 이수현 (이화여자대학교 전자정보통신학과) ;
  • 임혜숙 (이화여자대학교 전자정보통신학과)
  • 발행 : 2008.12.15

초록

인터넷 라우터에서의 패킷 분류는 들어오는 모든 패킷에 대하여 패킷이 입력되는 속도와 같은 속도로 수행되어야 하는데, 여러 헤더 필드에 대해 다차원 검색을 수행하여야 하므로, 라우터 설계에 있어 가장 어려운 문제중의 하나이다. 계층적 패킷 분류 구조는 하나의 필드 검색이 끝날 때마다 검색 영역이 현저하게 줄어듦으로 매우 효율적이다. 그러나 계층적 구조들은 빈 노드와 역추적이라는 두가지 문제를 내재하고 있다. 본 논문에서는 두가지 문제를 동시에 해결하는 새로운 계층적 패킷분류 구조를 제안한다. 역추적 문제는 셋-프루닝 기법을 이용하여 해결하였으며, 이진 검색트리를 적용하여 빈노드를 제거하였다. 시뮬레이션 결과 제안된 알고리즘은 메모리 요구량의 증가 없이 검색 성능을 현저히 향상시킴을 확인하였다. 또한 셋-프루닝에 있어 제한된 룰의 복사를 적용하는 최적화 기법을 제안한다.

Packet classification in the Internet routers requires multi-dimensional search for multiple header fields for every incoming packet in wire-speed, hence packet classification is one of the most important challenges in router design. Hierarchical packet classification is one of the most effective solutions since search space is remarkably reduced every time a field search is completed. However, hierarchical structures have two intrinsic issues; back-tracking and empty internal nodes. In this paper, we propose a new hierarchical packet classification algorithm which solves both problems. The back-tracking is avoided by using the set-pruning and the empty internal nodes are avoided by applying the binary search tree. Simulation result shows that the proposed algorithm provides significant improvement in search speed without increasing the amount of memory requirement. We also propose an optimization technique applying controlled rule copy in set-pruning.

키워드

참고문헌

  1. H.Jonathan Chao, "Next Generation Routers," Predeedings of the IEEE JPROC.2002.802001, Volume 90, Issue 9, pp. 1518-1588, Sept. 2002
  2. M. de Berg, M. Van Kreveld, M. Overmars, and O. Schwarzkopf, "Computational Geometry: Algorithms and Applications," Springer-Verlag, 2000
  3. G.Vaghese, "Network Algorithmics," Morgan Kaufmann, 2005
  4. F.Baboescu, S.Singh, G.Varghese, "Packet classification for core router : is there an alternative to CAMs?" IEEE INFOCOM 2003, Vol.1, pp. 53-63, Mar. 2003
  5. D. E.Taylor, J. S. Turner, J.S, "ClassBench: a packet classification benchmark," Proc. IEEE INFOCOM 2005, pp. 2068-2079, March 2005
  6. D. E.Taylor, J. S. Turner. The Source Code of Packet ClassifiationBench, http://www.arl.wustl.edu/ ~det3/ClassBench.index.htm
  7. M.M. Buddhikot, S.Suri, and M.Waldvogel, "Space Decomposition Techniques for Fast Layer-4 Switching," in Proc.Conf.Protocols for High Speed Networks, pp. 25-41, Aug. 1999
  8. N.Yazdani and P. S. Min, "Fast and Scalable Schemes for the IP Address Lookup Problem," Proc, IEEE HPSR2000, pp. 83-92, 2001
  9. Hyesook Lim, Min Young Kang, and Changhoon Yim, "Two-dimensional packet classification algorithm using a quad-tree," Computer Communications, Elsevier Science, Vol.30, No.6, pp. 1396-1405, Mar. 2007 https://doi.org/10.1016/j.comcom.2007.01.004
  10. T. V. Lakshnam and D. Stiliadas, "High-speed policy-based packet forwarding using efficient multi-dimensional range matching," in Proc. ACM SIGCOMM, pp. 203-214, 1998 https://doi.org/10.1145/285243.285283
  11. P. Gupta and N. Mckeown, "Classification using hierarchical intelligent cuttings," IEEE Micro, Vol.20, No.1, pp. 34-41, Jan./Feb., 2000 https://doi.org/10.1109/40.820051
  12. S. Singh, F. Baboescu, G. Varghese, and J. Wang, "Packet classification using multidimensional cutting," in Proc. SiGCOMM, 2003