Dynamic Segment Trees for Ranges and Prefixes

In this paper, we develop a segment tree data structure for solving dynamic table lookup problems. The proposed dynamic segment tree (DST) uses all of the distinct end points of ranges as the keys based on a new range end point scheme. The new end point scheme generates fewer end points than the traditional end point scheme. DST is implemented as a balanced binary search tree augmented with a range set in each node. The performance of accessing and updating the ranges stored in each node is improved by an efficient range set data structure that combines the priority queue and the interval tree. Based on the proposed data structures, the time complexities of search, insertion, and deletion in a set of N arbitrary ranges are O(log N), O(log N times log Max), and O(Max times log N times log Max), respectively, where Max is the maximum number of ranges covering any address. In practical routing tables, Max is a small constant (six for the routing tables we tested). The memory requirement for DST is O(N log N). The experimental results using real Internet Protocol version 4 (IPv4) routing tables show that both the DST and prefix binary tree on binary tree (PBOB) by Lu et al. (2004) perform much better than the multiway range tree (MRT) by Warkhede et al. (2004) and prefix in B-tree (PIBT) by Lu et al. (2005) in terms of update speed and memory consumption, but DST performs much better than PBOB and a little slower than MRT and PIBT in terms of search speed

[1]  Sartaj Sahni,et al.  Enhanced interval trees for dynamic IP router-tables , 2004, IEEE Transactions on Computers.

[2]  Sartaj Sahni,et al.  A B-tree dynamic router-table design , 2004, Proceedings. ISCC 2004. Ninth International Symposium on Computers And Communications (IEEE Cat. No.04TH8769).

[3]  Sartaj Sahni,et al.  Prefix and interval-partitioned dynamic IP router-tables , 2005, IEEE Transactions on Computers.

[4]  David Waitzman,et al.  A 50-Gb/s IP router , 1998, TNET.

[5]  Nick McKeown,et al.  Algorithms for packet classification , 2001, IEEE Netw..

[6]  Keith Sklower,et al.  A Tree-Based Packet Routing Table for Berkeley Unix , 1991, USENIX Winter.

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

[8]  Sartaj Sahni,et al.  An O(logn) dynamic router-table design , 2004, IEEE Transactions on Computers.

[9]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[10]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[11]  Mark de Berg,et al.  Computational geometry: algorithms and applications , 1997 .

[12]  Anja Feldmann,et al.  Tradeoffs for packet classification , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

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

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

[15]  Walid Dabbous,et al.  Survey and taxonomy of IP address lookup algorithms , 2001, IEEE Netw..

[16]  Edward M. McCreight,et al.  Priority Search Trees , 1985, SIAM J. Comput..

[17]  Halim Fathoni,et al.  DEPARTMENT OF COMPUTER SCIENCE AND INFORMATION ENGINEERING , 2008 .

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

[19]  Sartaj Sahni,et al.  O(log n) Dynamic Router-Tables for Prefixes and Ranges , 2004, IEEE Trans. Computers.

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

[21]  Nick McKeown,et al.  Dynamic Algorithms with Worst-Case Performance for Packet Classification , 2000, NETWORKING.

[22]  Donald R. Morrison,et al.  PATRICIA—Practical Algorithm To Retrieve Information Coded in Alphanumeric , 1968, J. ACM.

[23]  George Varghese,et al.  Multiway range trees: scalable IP lookup with fast updates , 2004, Comput. Networks.

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

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

[26]  Farnam Jahanian,et al.  Internet routing instability , 1998, TNET.

[27]  Hung-Hsiang Jonathan Chao,et al.  Next generation routers , 2002, Proc. IEEE.

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