Scalable IP lookup for programmable routers

Continuing growth in optical link speeds places increasing demands on the performance of Internet routers, while deployment of embedded and distributed network services imposes new demands for flexibility and programmability. IP address lookup has become a significant performance bottleneck for the highest performance routers. Amid the vast array of academic and commercial solutions to the problem, few achieve a favorable balance of performance, efficiency, and cost. New commercial products utilize content addressable memory (CAM) devices to achieve high lookup speeds at an exorbitantly high hardware cost with limited flexibility. In contrast, this paper describes an efficient, scalable lookup engine design, able to achieve high performance with the use of a small portion of a reconfigurable logic device and a commodity random access memory (RAM) device. The Fast Internet Protocol Lookup (FIPL) engine is an implementation of Eatherton and Dittia's previously unpublished Tree Bitmap algorithm (1998) targeted to an open-platform research router. FIPL can be scaled to achieve guaranteed worst-case performance of over 9 million lookups per second with a single SRAM operating at the fairly modest clock speed of 100 MHz. Experimental evaluation of FIPL throughput, latency, and update performance is provided using a sample routing table from Mae West.

[1]  Jonathan S. Turner,et al.  Design of a gigabit ATM switch , 1997, Proceedings of INFOCOM '97.

[2]  Bernhard Plattner,et al.  Scalable high speed IP routing lookups , 1997, SIGCOMM '97.

[3]  Eric Hoffman,et al.  Transmission of Flow Labelled IPv4 on ATM Data Links Ipsilon Version 1.0 , 1996, RFC.

[4]  Fred Kuhns,et al.  Implementation of an Open Multi-Service Router , 2001 .

[5]  Nick McKeown,et al.  Routing lookups in hardware at memory access speeds , 1998, Proceedings. IEEE INFOCOM '98, the Conference on Computer Communications. Seventeenth Annual Joint Conference of the IEEE Computer and Communications Societies. Gateway to the 21st Century (Cat. No.98.

[6]  John W. Lockwood,et al.  Reprogrammable network packet processing on the field programmable port extender (FPX) , 2001, FPGA '01.

[7]  Svante Carlsson,et al.  Small forwarding tables for fast routing lookups , 1997, SIGCOMM '97.

[8]  Vince Fuller,et al.  Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Strategy , 1993, RFC.

[9]  John W. Lockwood,et al.  Dynamic hardware plugins: exploiting reconfigurable hardware for high-performance programmable routers , 2001, Comput. Networks.

[10]  Mohammad Ilyas,et al.  Distributed network management in an Internet environment , 1997, GLOBECOM 97. IEEE Global Telecommunications Conference. Conference Record.

[11]  Gunnar Karlsson,et al.  Fast address look-up for internet routers , 1998, Broadband Communications.

[12]  George Varghese,et al.  Faster IP lookups using controlled prefix expansion , 1998, SIGMETRICS '98/PERFORMANCE '98.

[13]  Will Eatherton Hardware-based internet protocol prefix lookups , 1998 .

[14]  John W. Lockwood,et al.  Field programmable port extender (FPX) for distributed routing and queuing , 2000, FPGA '00.

[15]  V. Srinivasan,et al.  Fast address lookups using controlled prefix expansion , 1999, TOCS.

[16]  Li Li,et al.  Design of a Flexible Open Platform for High Performance Active Networks , 1999 .