A Two-Dimensional Binary Prefix Tree for Packet Classification

패킷 분류를 위한 이차원 이진 프리픽스 트리

  • Published : 2005.08.01

Abstract

Demand for better services in the Internet has been increasing due to the rapid growth of the Internet, and hence next generation routers are required to perform intelligent packet classification. For a given classifier defining packet attributes or contents, packet classification is the process of identifying the highest priority rule to which a packet conforms. A notable characteristic of real classifiers is that a packet matches only a small number of distinct source-destination prefix pairs. Therefore, a lot of schemes have been proposed to filter rules based on source and destination prefix pairs. However, most of the schemes are based on sequential one-dimensional searches using trio which requires huge memory. In this paper, we proposea memory-efficient two-dimensional search scheme using source and destination prefix pairs. By constructing binary prefix tree, source prefix search and destination prefix search are simultaneously performed in a binary tree. Moreover, the proposed two-dimensional binary prefix tree does not include any empty internal nodes, and hence memory waste of previous trio-based structures is completely eliminated.

인터넷은 그 급속한 성장과 더불어 점차 더 나은 서비스를 제공할 것을 요구받게 되었다. 이에 따라 차세대 인터넷 라우터들에서의 지능적인 패킷 분류 기능은 필수 불가결한 것으로 여겨지고 있다. 패킷 분류란 미리 정의된 classifier에 의거하여 입력된 패킷에 매치하는 가장 순위가 높은 룰을 찾는 과정이다. 기존에 나와있는 많은 패킷 분류 검색 구조들이 출발지, 목적지 프리픽스 필드에 기반하여 룰을 추려내는 접근 방법을 사용하고 있다. 그러나 대부분의 검색 구조들은 출발지, 목적지 프리픽스 검색을 위하여 트라이 구조에 바탕을 둔 순차적인 일차원 검색을 따르고 있으며, 매우 큰 메모리를 요구한다는 단점을 가지고 있다. 본 논문에서는 메모리를 매우 효율적으로 사용하면서도 출발지-목적지 프리픽스 쌍에 기반한 이차원 패킷 분류 구조를 제안하고자 한다. 코드워드로 구성된 이진 프리픽스 트리를 구성함으로써, 출발지 프리픽스 검색과 목적지 프리픽스 검색이 하나의 이진 트리를 통해 동시에 가능하도록 하였다. 또한 본 논문에서 제안하는 구조인 이차원 이진 프리픽스 트리는 트리 구조 내부에 비어있는 노드를 포함하고 있지 않으므로 트라이 구조가 가지고 있는 메모리의 비효율성 문제를 완전히 제거하였다.

Keywords

References

  1. Florin Baboescu, Sumeet Singh, and George Varghese, 'Packet Classification for Core Router: Is there an alternative CAMs?,' IEEE Infocom 2003, vol.1, pp. 5363, Apr., 2003
  2. P.Gupta and N.McKeown, 'Algorithms for Packet Classification,' IEEE Network, vol. 15, pp. 24-32, 2001 https://doi.org/10.1109/65.912717
  3. H.Jonathan Chao, 'Next Generation Routers,' Proceedings of the IEEE, Vol.90, No.9, pp.1518-1558, Sep, 2002 https://doi.org/10.1109/JPROC.2002.802001
  4. P. Tsuchiya, 'A search algorithm for table entries with non-contiguous wildcarding,' Bellcore, internet document
  5. V. Srinivasan, G. Varghese, S. Suri, and M. Waldvogel, 'Fast and scalable layer four switching,' in Proc. ACM SIGCOMM'98, Aug. 1998, pp. 191-202 https://doi.org/10.1145/285237.285282
  6. M. M. Buddhikot, S. Suri, and M/ Waldvogel, 'Space decomposition techniques for fast layer-4 switching,' in Proc. Conf. Protocols for High Speed Networks, Aug. 1999, pp. 25-41
  7. N.Yazdani and P.S.Min, 'Fast and Scalable Schemes for the IP Address Lookup Problem,' Proc. IEEE HPSR2000, pp. 83-92, 2000 https://doi.org/10.1109/HPSR.2000.856650
  8. Hyesook Lim and Bomi Lee, 'A New Pipelined Binary Search Architecture for IP Address Lookup,' Proc. IEEE HPSR2004, pp. 86-90, Apr. 2004 https://doi.org/10.1109/HPSR.2004.1303435