IPStash: a set-associative memory approach for efficient IP-lookup

IP-lookup is a challenging problem because of the increasing routing table sizes, increased traffic and higher speed links. These characteristics lead to the prevalence of hardware solutions such as TCAMs (ternary content addressable memories), despite their high power consumption, low update rate and increased board area requirements. We propose a memory architecture called IPStash to act as a TCAM replacement, offering at the same time, high update rate, higher performance and significant power savings. The premise of our work is that full associativity is not necessary for IP-lookup. Rather, we show that the required associativity is simply a function of the routing table size, Thus, we propose a memory architecture similar to set-associative caches but enhanced with mechanisms to facilitate IP-lookup and in particular longest prefix match (LPM). To reach a minimum level of required associativity we introduce an iterative method to perform LPM in a small number of iterations. This allows us to insert route prefixes of different lengths in IPStash very efficiently, selecting the most appropriate index in each case. Orthogonal to this, we use skewed associativity to increase the effective capacity of our devices. We thoroughly examine different choices in partitioning routing tables for the iterative LPM and the design space for the IPStash devices. The proposed architecture is also easily expandable. Using the Cacti 3.2 access time and power consumption simulation tool we explore the design space for IPStash devices and we compare them with the best blocked commercial TCAMs.

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

[2]  Huan Liu Routing Table Compaction in Ternary CAM , 2002, IEEE Micro.

[3]  Bin Liu,et al.  An ultra high throughput and power efficient TCAM-based IP lookup engine , 2004, IEEE INFOCOM 2004.

[4]  Jean-Loup Baer,et al.  Memory hierarchy design for a multiprocessor look-up engine , 2003, 2003 12th International Conference on Parallel Architectures and Compilation Techniques.

[5]  Gunnar Karlsson,et al.  IP-address lookup using LC-tries , 1999, IEEE J. Sel. Areas Commun..

[6]  Laxmi N. Bhuyan,et al.  EaseCAM: an energy and storage efficient TCAM-based router architecture for IP lookup , 2005, IEEE Transactions on Computers.

[7]  Bill Lin,et al.  IP caching for terabit speed routers , 1999, Seamless Interconnection for Universal Services. Global Telecommunications Conference. GLOBECOM'99. (Cat. No.99CH37042).

[8]  Tutomu Murase,et al.  A longest prefix match search engine for multi-gigabit IP processing , 2000, 2000 IEEE International Conference on Communications. ICC 2000. Global Convergence Through Communications. Conference Record.

[9]  Huan Liu,et al.  Routing prefix caching in network processor design , 2001, Proceedings Tenth International Conference on Computer Communications and Networks (Cat. No.01EX495).

[10]  Geoff Huston,et al.  Analyzing the Internet's BGP Routing Table , 2001 .

[11]  Devavrat Shah,et al.  Fast Updating Algorithms for TCAMs , 2001, IEEE Micro.

[12]  Francis Zane,et al.  Coolcams: power-efficient TCAMs for forwarding engines , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[13]  Steven McCanne,et al.  Optimal routing table design for IP address lookups under memory constraints , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).

[14]  Rina Panigrahy,et al.  Reducing TCAM power consumption and increasing throughput , 2002, Proceedings 10th Symposium on High Performance Interconnects.

[15]  André Seznec,et al.  A case for two-way skewed-associative caches , 1993, ISCA '93.

[16]  Butler W. Lampson,et al.  IP lookups using multiway and multicolumn search , 1999, TNET.

[17]  Tzi-cker Chiueh,et al.  Cache memory design for network processors , 2000, Proceedings Sixth International Symposium on High-Performance Computer Architecture. HPCA-6 (Cat. No.PR00550).

[18]  Farnam Jahanian,et al.  Internet routing instability , 1997, SIGCOMM '97.

[19]  Norman P. Jouppi,et al.  CACTI: an enhanced cache access and cycle time model , 1996, IEEE J. Solid State Circuits.

[20]  Ratul Mahajan,et al.  Understanding BGP misconfiguration , 2002, SIGCOMM '02.

[21]  Stefanos Kaxiras,et al.  IPStash: a Power-Efficient Memory Architecture for IP-lookup , 2003, MICRO.