Near-optimal routing lookups with bounded worst case performance

The problem of route address lookup has received much attention recently and several algorithms and data structures for performing address lookups at high speeds have been proposed. In this paper we consider one such data structure-a binary search tree built on the intervals created by the routing table prefixes. We wish to exploit the difference in the probabilities with which the various leaves of the tree (where the intervals are stored) are accessed by incoming packets in order to speedup the lookup process. More precisely, we seek an answer to the question: How can the search tree be drawn so as to minimize the average packet lookup time while keeping the worst-case lookup time within a fixed bound?" We use ideas from information theory to derive efficient algorithms for computing near-optimal routing lookup trees. Finally, we consider the practicality of our algorithms through analysis and simulation.

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

[2]  Russell L. Wessner Optimal Alphabetic Search Trees With Restricted Maximal Height , 1976, Inf. Process. Lett..

[3]  M. R. Garey,et al.  Optimal Binary Search Trees with Restricted Maximal Depth , 1974, SIAM J. Comput..

[4]  Edgar N. Gilbert,et al.  Codes based on inaccurate source probabilities , 1971, IEEE Trans. Inf. Theory.

[5]  Thomas M. Cover,et al.  Elements of Information Theory , 2005 .

[6]  T. C. Hu,et al.  Combinatorial algorithms , 1982 .

[7]  T. C. Hu,et al.  Optimal Computer Search Trees and Variable-Length Alphabetical Codes , 1971 .

[8]  Raymond W. Yeung Alphabetic codes revisited , 1991, IEEE Trans. Inf. Theory.

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

[10]  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).

[11]  Lawrence L. Larmore,et al.  A Fast Algorithm for Optimum Height-Limited Alphabetic Binary Trees , 1994, SIAM J. Comput..

[12]  Butler W. Lampson,et al.  IP lookups using multiway and multicolumn search , 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.

[13]  Yasuichi Horibe An Improved Bound for Weight-Balanced Tree , 1977, Inf. Control..

[14]  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.

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

[16]  Dimitri P. Bertsekas,et al.  Nonlinear Programming , 1997 .

[17]  Ruy Luiz Milidiú,et al.  Efficient Implementation of the WARM-UP Algorithm for the Construction of Length-Restricted Prefix Codes , 1999, ALENEX.

[18]  Hans-Werner Braun,et al.  The NLANR network analysis infrastructure , 2000, IEEE Commun. Mag..

[19]  David A. Huffman,et al.  A method for the construction of minimum-redundancy codes , 1952, Proceedings of the IRE.

[20]  Yakov Rekhter,et al.  An Architecture for IP Address Allocation with CIDR , 1993, RFC.

[21]  Adriano M. Garsia,et al.  A New Algorithm for Minimum Cost Binary Trees , 1977, SIAM J. Comput..

[22]  Baruch Schieber,et al.  Computing a minimum-weight k-link path in graphs with the concave Monge property , 1995, SODA '95.

[23]  Ruy Luiz Milidiú,et al.  The WARM-UP Algorithm: A Lagrangian Construction of Length Restricted Huffman Codes , 2000, SIAM J. Comput..

[24]  D. Huffman A Method for the Construction of Minimum-Redundancy Codes , 1952 .

[25]  Alon Itai,et al.  Optimal Alphabetic Trees , 1976, SIAM J. Comput..

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