Optimum Range Cutting for Packet Classification

최적화된 영역 분할을 이용한 패킷 분류 알고리즘

  • 김형기 (이화여자대학교 대학원 전자정보통신학과) ;
  • 박경혜 (이화여자대학교 대학원 전자정보통신학과) ;
  • 임혜숙 (이화여자대학교 전자정보통신학과)
  • Published : 2008.12.15

Abstract

Various algorithms and architectures for efficient packet classification have been widely studied. Packet classification algorithms based on a decision tree structure such as HiCuts and HyperCuts are known to be the best by exploiting the geometrical representation of rules in a classifier. However, the algorithms are not practical since they involve complicated heuristics in selecting a dimension of cuts and determining the number of cuts at each node of the decision tree. Moreover, the cutting is not efficient enough since the cutting is based on regular interval which is not related to the actual range that each rule covers. In this paper, we proposed a new efficient packet classification algorithm using a range cutting. The proposed algorithm primarily finds out the ranges that each rule covers in 2-dimensional prefix plane and performs cutting according to the ranges. Hence, the proposed algorithm constructs a very efficient decision tree. The cutting applied to each node of the decision tree is optimal and deterministic not involving the complicated heuristics. Simulation results for rule sets generated using class-bench databases show that the proposed algorithm has better performance in average search speed and consumes up to 3-300 times less memory space compared with previous cutting algorithms.

현재 패킷 분류에 대한 다양한 알고리즘들이 연구되어 오고 있다 그 중 HiCuts와 HyperCuts와 같은 디시젼(decision) 트리에 기초한 패킷 분류 알고리즘은 룰의 각 필드가 가지는 영역에 따른 기하학적 구조를 이용한 방법으로 잘 알려져 있다. 그러나 이 알고리즘들은 분할(cutting)을 수행할 필드(Field)를 선택하거나 디시젼 트리의 각 노드에서 컷(cut)의 수를 결정해야 하는 등의 비교적 복잡한 작업을 요구하므로 현실적으로 구현하기 어려운 점을 가진다. 또한 각 룰이 차지하는 영역의 특성을 고려하지 않고 일정한 크기의 영역으로 커팅이 이루어지므로 효과적인 커팅을 하지 못하는 단점이 있다. 본 논문에서는 새로운 영역 분할을 사용한 효과적인 패킷 분류 알고리즘을 제안한다. 제안하는 알고리즘은 먼저 프리픽스를 가지는 두 필드를 이용하여 각 룰이 차지하는 영역들을 찾아내 이들을 이용해 영역분할을 수행한다. 따라서 제안된 알고리즘은 보다 효율적인 디시젼 트리를 구성한다. 즉, 디시젼 트리의 각 노드에서는 HiCuts이나 HyperCuts와 같은 복잡한 작업없이 최적화된 커팅을 수행할 수 있다. 클래스 벤치에서 제공된 데이타베이스에 대하여 시뮬레이션을 수행한 결과, 제안된 알고리즘은 평균 검색 속도에서 기존의 알고리즘들보다 훨씬 향상되었고 메모리 요구량에서는 기존의 커팅 알고리즘과 비교하여 대략 $3{\sim}300$배까지 크게 줄어드는 효과를 보였다.

Keywords

References

  1. F. Baboescu and G. Varghese, "Scalable Packet Classification," in Proc. ACM SiGCOMM, Aug. 2001
  2. A. Feldmann and S. Muthukrishnan, "Tradeoffs for packet Classification," IEEE INFOCOM, 2000
  3. 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
  4. S. Singh, F. Baboescu, G. Varghese, and J. Wang, "Packet classification using multidimensional cutting," in Proc. SiGCOMM, 2003
  5. B. Lampson, B. Srinivasan, and G. Varghese, "IP lookups using multiway and multicolumn search," IEEE/ACM Tans. Networking, Vol.7, pp. 324-334, June 1999 https://doi.org/10.1109/90.779199
  6. 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
  7. D. E. Taylor, J. S. Turner, J.S, "ClassBench: a packet classification benchmark," Proc. IEEE INFOCOM 2005, pp. 2068-2079, Mar. 2005
  8. P. Gupta and N. Mckeown, "Algorithms for packet classification," IEEE Network, Vol.15, No. 2, pp. 24-32, Mar./Apr. 2001
  9. M. M. Buddhikot, S. Suri, and M. Waldvogel, "Space decomposition techniques for fast layer-4 switching," in Proc. Protocols for High Speed Networks, pp. 25-41, Aug. 1999
  10. 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
  11. T. V. Lakshman and D. Stiliadis, "High-speed policy-based packet forwarding using efficient multi-dimensional range matching," in Proc. ACM SIGCOMM, Sep. 1998