skip to main content
10.1145/1882486.1882520acmconferencesArticle/Chapter ViewAbstractPublication PagesancsConference Proceedingsconference-collections
research-article

Range Tries for scalable address lookup

Published: 19 October 2009 Publication History

Abstract

In this paper we introduce the Range Trie, a new multiway tree data structure for address lookup. Each Range Trie node maps to an address range [Na, Nb) and performs multiple comparisons to determine the subrange an incoming address belongs to. Range Trie improves on the existing Range Trees allowing shorter comparisons than the address width. The maximum comparison length in a Range Trie node is [log2 (Nb -- Na)] bits. Address parts can be shared among multiple concurrent comparisons or even omitted. Addresses can be properly aligned to further reduce the required address bits per comparison. In so doing, Range Tries can store in a single tree node more address bounds to be compared. Given a memory bandwidth, more comparisons are performed in a single step reducing lookup latency, memory accesses per lookup, and overall memory requirements. Latency and memory size scale better than related works as the address width and the number of stored prefixes increase. Considering memory bandwidth of 256-bits per cycle, five to seven Range Trie levels are sufficient to store half a million IPv4 or IPv6 prefixes, while memory size is comparable and in many cases better than linear search. We describe a Range Trie hardware design and evaluate our approach in terms of performance, area cost and power consumption. Range Trie 90-nm ASIC implementations, storing 0.5 million IPv4 and IPv6 prefixes, perform over 500 million lookups per second (OC-3072) and consume 3.9 and 11.4 Watts respectively.

References

[1]
http://bgp.potaroo.net/.
[2]
F. Baboescu, D. M. Tullsen, G. Rosu, and S. Singh. A tree based router search engine architecture with single port memories. In ISCA '05, pages 123--133, Washington, DC, USA, 2005.
[3]
R. de Smet. Range trie heuristics for variable-size address region lookup. Master's thesis, TU Delft, Computer Engineering, May 2009.
[4]
M. Degermark, A. Brodnik, S. Carlsson, and S. Pink. Small forwarding tables for fast routing lookups. SIGCOMM Comput. Commun. Rev., 27(4):3--14, 1997.
[5]
W. Eatherton, G. Varghese, and Z. Dittia. Tree bitmap: hardware/software IP lookups with incremental updates. SIGCOMM Comput. Commun. Rev., 34(2):97--122, 2004.
[6]
W. N. Eatherton and Z. Dittia. Data structure using a tree bitmap and method for rapid classification of data in a database. US Patent 6728732, July 2007.
[7]
P. Gupta and N. McKeown. Algorithms for packet classification. IEEE Network, 15(2):24--32, Mar/Apr 2001.
[8]
S. Kumar, M. Becchi, P. Crowley, and J. Turner. CAMP: fast and efficient IP lookup architecture. In ANCS '06, pages 51--60, 2006.
[9]
H. Lu and S. Sahni. A B-Tree dynamic router-table design. IEEE Trans. Comput., 54(7):813--824, 2005.
[10]
D. R. Morrison. PATRICIA---practical algorithm to retrieve information coded in alphanumeric. J. ACM, 15(4):514--534, 1968.
[11]
S. Nilsson and G. Karlsson. IP-address lookup using LC-tries. IEEE JSAC, 17(6):1083--1092, 1999.
[12]
NRO: IPv6 Growth Increases 300 Percent in Two Years. www.nro.net/documents/press_release_031108.html, Dec 2008.
[13]
RIPE Network Coordination Centre. http://www.ripe.net/.
[14]
M. Ruiz-Sanchez, E. Biersack, and W. Dabbous. Survey and taxonomy of ip address lookup algorithms. IEEE Network, 15(2):8--23, Mar/Apr 2001.
[15]
I. Sourdis, R. de Smet, and G. Gaydadjiev. Range trees with variable length comparisons. In IEEE Workshop on High Performance Switching and Routing, Paris, France, France, 2009.
[16]
V. Srinivasan and G. Varghese. Fast address lookups using controlled prefix expansion. ACM Trans. Comput. Syst., 17(1):1--40, 1999.
[17]
G. Stefanakis. Design and implementation of a range trie for address lookup. Master's thesis, TU Delft, Computer Engineering, July 2009.
[18]
D. E. Taylor. Survey and taxonomy of packet classification techniques. ACM Comput. Surv., 37(3):238--275, 2005.
[19]
P. Warkhede, S. Suri, and G. Varghese. Multiway range trees: scalable ip lookup with fast updates. Comput. Netw., 44(3):289--303, 2004.

Cited By

View all

Index Terms

  1. Range Tries for scalable address lookup

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ANCS '09: Proceedings of the 5th ACM/IEEE Symposium on Architectures for Networking and Communications Systems
    October 2009
    227 pages
    ISBN:9781605586304
    DOI:10.1145/1882486
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 19 October 2009

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. IP lookup
    2. address lookup
    3. internet router

    Qualifiers

    • Research-article

    Conference

    ANCS '09
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 88 of 314 submissions, 28%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)5
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 22 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2016)Hardware accelerator to speed up packet processing in NDN routerComputer Communications10.1016/j.comcom.2016.06.00491:C(109-119)Online publication date: 1-Oct-2016
    • (2014)Optimized packet classification for Software-Defined Networking2014 IEEE International Conference on Communications (ICC)10.1109/ICC.2014.6883427(859-864)Online publication date: Jun-2014
    • (2014)IP address lookup using bit-shuffled trieComputer Communications10.1016/j.comcom.2014.04.00647(51-64)Online publication date: Jul-2014
    • (2012)Scalable Tree-Based Architectures for IPv4/v6 Lookup Using Prefix PartitioningIEEE Transactions on Computers10.1109/TC.2011.13061:7(1026-1039)Online publication date: 1-Jul-2012
    • (2011)Bit-Shuffled Trie: IP Lookup with Multi-Level Index Tables2011 IEEE International Conference on Communications (ICC)10.1109/icc.2011.5962429(1-5)Online publication date: Jun-2011
    • (2011)Memory-Efficient IPv4/v6 Lookup on FPGAs Using Distance-Bounded Path CompressionProceedings of the 2011 IEEE 19th Annual International Symposium on Field-Programmable Custom Computing Machines10.1109/FCCM.2011.40(242-249)Online publication date: 1-May-2011
    • (2011)Longest Prefix Match and updates in Range TriesProceedings of the ASAP 2011 - 22nd IEEE International Conference on Application-specific Systems, Architectures and Processors10.1109/ASAP.2011.6043236(51-58)Online publication date: 11-Sep-2011
    • (2011)400 Gb/s Programmable Packet Parsing on a Single FPGAProceedings of the 2011 ACM/IEEE Seventh Symposium on Architectures for Networking and Communications Systems10.1109/ANCS.2011.12(12-23)Online publication date: 3-Oct-2011
    • (2010)Bit-shuffled trieProceedings of the 6th ACM/IEEE Symposium on Architectures for Networking and Communications Systems10.1145/1872007.1872020(1-3)Online publication date: 25-Oct-2010
    • (2010)End-to-end congestion management for non-blocking multi-stage switching fabricsProceedings of the 6th ACM/IEEE Symposium on Architectures for Networking and Communications Systems10.1145/1872007.1872016(1-12)Online publication date: 25-Oct-2010
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media