Binary Search on Multiple Small Trees for IP Address Lookup

복수의 작은 트리에 대한 바이너리 검색을 이용한 IP 주소 검색 구조

  • 이보미 (이화여자대학교 정보통신학과 SoC Design 연구실) ;
  • 임혜숙 (이화여자대학교 정보통신학과 SoC Design 연구실) ;
  • 김원정 (이화여자대학교 정보통신학과 SoC Design 연구실)
  • Published : 2004.12.01


Advance of internet access technology requires more internet bandwidth and high-speed packet processing. IP address lookups in routers are essential elements which should be performed in real time for packets arriving tens-of-million packets per second. In this paper, we proposed a new architecture for efficient IP address lookup. The proposed scheme produces multiple balanced trees stored into a single SRAM. The proposed scheme performs sequential binary searches on multiple trees. Performance evaluation results show that p개posed architecture requires 301.7KByte SRAM to store about 40,000 prefix samples, and an address lookup is achieved by 11.3 memory accesses in average.

인터넷 접근 기술의 발달은 보다 큰 인터넷 bandwidth를 필요로 하게 되었고 라우터에서의 빠른 패킷 처리를 요구하게 되었다. 라우터에서의 어드레스 경색은 일초에 수천만개 이상으로 입력되는 패킷에 대하여 실시간으로 처리되어야 하는 중요한 기능이다. 본 논문에서는 효율적인 어드레스 검색을 위한 소프트웨어에 기반한 새로운 검색 구조를 제안한다. 라우팅 테이블을 여러 개의 밸런스 트리들로 구성하여 하나의 SRAM에 저장하고 각각의 트리에 대해 순차적으로 바이너리 검색을 수행하는 방식이다. 본 논문에서 제안하는 구조는 약 40,000 여개의 프리픽스를 갖는 라우팅 테이블을 저장하기 위하여 301.7KByte의 작은 사이즈 SRAM을 사용하고 평균 11.3번의 메모리 접근으로 주소 검색이 가능한 구조이다.



  1. H.Jonathan Chao, 'Next Generation Routers', Proceedings of the IEEE, Vo1.90, No.9, pp.1518-1558, Sep, 2002
  2. M.A.Ruiz-Sanchex, E.W. Biersack and W.Dabbous, 'Survey and Taxonomy of IP Address Lookup Algorithms', IEEE Network, pp.8-23, March/April 2001
  3. V.Srinivasan and G.Varghese, 'Faster IP Lookup using Controlled Prefix Expansion', in Proc. ACM SIGMATICS'98, pp.l-lO, June 1998
  4. S.Nilsson and G.Karlsson, 'IP-Address Lookup using LC-tries', IEEE Journal on Selected Area in Communication, Vo1.17, pp.1083-1092, Jun1999
  5. M.Degermark, A.Brodnik, S.Carlsson, S.Pink,'Small Forwarding Tables for Fast Routing Lookups', Proc. ACM SIGCOMM, pp.3-14,1997
  6. M.Waldvogel, G.Varghese, J. Tumer, and B.Plattner, 'Scalable High Speed IP Routing Lookups', in Proc. ACM SIGC0MM'97 Conf.,pp. 25-35, 1997
  7. Hyesook Lim, Ji-Hyun Seo, and Yeo-Jin Jung, 'High speed IP Address Lookup Architecture Using Hashing', 한국 통신학회지, 28권, 2B, pp. 138-143, 2003
  8. Daxiao Yu, Brandon C. Smith and Belle Wei, 'Forwarding Engine for Fast Routing Lookups and Updates', Proc.IEEE GL0BEC0M'99, pp.1556-1564, 1999
  9. Hyesook Lim and Yeojin Jung, 'A Parallel Multiple Hashing Architecture for IP Address Lookup', Proc. IEEE HPSR2004, pp.91-98, 2004
  10. P.Gupta, S.Lin and N.McKeown, 'Routing lookups in hardware at memory access speed', Proc. IEEE INF0C0M'98, pp 1240-1247, ARP 1998
  11. N.Huang, S.Zhao, J.Pan and C.Su, 'A Fast IP Routing Lookup Scheme for Gigabit switching routers', Proc.IEEE INP0C0M'99, Mar 1999
  12. N.Yazdani and P.S.Min, 'Fast and Scalable Schemes for the IP Address Lookup Problem', Proc. IEEE HPSR2000, pp 83-92, 2000
  13. Hyesook Lim and Bomi Lee, 'A New Pipelined Binary Search Architecture for IP Address Lookup', Proc. IEEE HPSR2004, pp. 86-90, Apr. 2004
  14. IA-32 Intel Architecture Software Developer's Manual, Intel, 2004
  15. Butler Lampson, Venkatachary Srinivasan and George Varghese, 'IP Lookups Using Multiway and Multicolumn Search', IEEE/ACM Transactions on Networking, pp 324-334, Vo1.7, No.3, Jun. 1999