Packet Classification Using Two-Dimensional Binary Search on Length

길이에 대한 2차원 이진검색을 이용한 패킷분류 구조

  • 문주형 (이화여자대학교 정보통신학과 SoC설계연구실) ;
  • 임혜숙 (이화여자대학교 정보통신학과 SoC설계연구실)
  • Published : 2007.09.30

Abstract

The rapid growth of the Internet has stimulated the development of various new applications and services, and the service providers and the Internet users now require different levels of service qualities rather than current best-effort service which treats all incoming packet equally. Therefore, next generation routers should provide the various levels of services. In order to provide the quality of services, incoming packets should be classified into flows according to pre-defined rules, and this should be performed for all incoming packets in wire-speed. Packet classification not only involves multi-dimensional search but also finds the highest priority rule among all matching rules. Area-based quad-trie is a very good algorithm that constructs a two-dimensional trie using source and destination prefix fields. However, it performs the linear search for the prefix length, and hence it does not show very good search performance. In this paper, we propose to apply binary search on length to the area-based quad-trie algorithm. In improving the search performance, we also propose two new algorithms considering the priority of rules in building the trie.

인터넷의 성장은 다양한 응용 프로그램들의 발달을 야기 시켰으며, 그로 인해 모든 패킷을 동일하게 처리하는 현재의 최선지원 서비스 보다 나은 서비스를 제공할 것을 요구하고 있다. 따라서 차세대 인터넷 라우터들은 다양한 레벨의 품질보장 서비스를 제공하여야 한다. 품질보장 서비스를 제공하기 위해서는 모든 입력 패킷을 미리 정의된 룰에 따라 구분하는 패킷 분류가 실시간으로 수행되어야 한다. 패킷분류는 패킷에 포함된 여러 헤더 필드에 대하여 다양한 종류의 검색을 수행하여야 하며, 일치하는 룰들 중에서 가장 높은 우선순위를 갖는 룰을 찾아야 하는 다차원 검색이다. 영역분할을 사용한 사분트라이 구조는 근원지와 목적지 프리픽스를 2차원 트라이 구조로 저장하여 검색을 진행하는 좋은 알고리즘이나, 길이에 대하여 선형검색을 하는 방법이므로 좋은 검색 성능을 보이지 못한다. 본 논문에서는 사분트라이 구조에서 길이에 대하여 이진검색을 진행하는 새로운 패킷분류 알고리즘을 제안한다. 또한 패킷이 여러 개의 룰과 일치하였을 경우 가장 높은 우선순위를 가지는 룰을 선택한다는 특성을 이용하여, 사분트라이를 만드는 과정에서 우선순위를 고려하여 검색 성능을 향상시킬 수 있는 방안을 제안한다.

Keywords

References

  1. H. Jonathan Chao, 'Next generation routers,' Proceedings of the IEEE, Volume 90, Issue 9, pp. 1518 1558, Sept. 2002
  2. 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
  3. 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
  4. M. Waldvogel, G. Varghese, J. Turner, and B. Plattner, 'Scalable high speed IP routing lookups,' in Proc. ACM SIGCOMM1997, Cannes, France, pp. 25-35, 1997
  5. 추하늘, 임혜숙, '최장길이 우선검색에 기초한 프리픽스 길이에 따른 이진 IP 검색구조,' 한국통신학회 논문지, vol .31, no.8B, pp.691-700, Aug. 2006
  6. D.E. Taylor and J.S. Turner, 'ClassBench: a packet classification benchmark,', INFOCOM 2005. 24th Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings IEEE Volume 3, vol.3, pp. 2068-2079, 13-17 March 2005
  7. P. Gupta and N. Mckeown, 'Algorithms for packet classification,' IEEE Network, vol.15, no. 2, pp.24-32, Mar./Apr. 2001
  8. T.V. Lakshman and D. Stildialis, 'High-speed policy-based packet forwarding using efficient multi-dimensional range matching,' in Proc. ACM SIGCOMM1998, Sep. 1998
  9. Hyesook Lim, Min Young Kang, and Changhoon Yim, 'Two-dimensional Packet Classification Algorithm Using a Quad-Tree,' Computer Communications, vol. 30, no.6 pp. 1396-1405, March 2007 https://doi.org/10.1016/j.comcom.2007.01.004