A B-tree dynamic router-table design

We propose B-tree data structures for dynamic router-tables for the cases when the filters are prefixes as well as when they are nonintersecting ranges. A crucial difference between our data structure for prefix filters and the MRT (multiway range trees) is that, in our data structure, each prefix is stored in O(1) B-tree nodes per B-tree level, whereas, in MRT, each prefix is stored in O(m) nodes per level (m is the order of the B-tree). As a result of this difference, the measured average insert and delete times using our structure are about 30 percent less than when MRT is used. Further, an update operation of MRT will, in the worst case, make 2.5 times as many cache misses as made when our structure is used. The asymptotic complexity to find the longest matching prefix is the same and the measured time for this operation also is nearly the same for both data structures. Both B-tree structures for prefix router-tables take O(n) memory. However, our structure is more memory efficient by a constant factor. For the case of nonintersecting ranges, our data structure requires O(n log/sub m/n) memory and O(log/sub m/n) nodes are accessed during an operation (finding the highest-priority matching range, insert and delete a range).

[1]  Ellis Horowitz,et al.  Fundamentals of data structures in C , 1976 .

[2]  Sartaj Sahni,et al.  Data structures for one-dimensional packet classification using most-specific-rule matching , 2002, Proceedings International Symposium on Parallel Architectures, Algorithms and Networks. I-SPAN'02.

[3]  Sartaj Sahni,et al.  Efficient Dynamic Lookup For Bursty Access Patterns , 2004, Int. J. Found. Comput. Sci..

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

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

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

[7]  Sartaj Sahni,et al.  Data Structures, Algorithms and Applications in Java , 1998 .

[8]  Sartaj Sahni,et al.  Efficient construction of variable-stride multibit tries for IP lookup , 2002, Proceedings 2002 Symposium on Applications and the Internet (SAINT 2002).

[9]  Sartaj Sahni,et al.  Dynamic IP router-tables using highest-priority matching , 2004, Proceedings. ISCC 2004. Ninth International Symposium on Computers And Communications (IEEE Cat. No.04TH8769).

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

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

[12]  Funda Ergün,et al.  A dynamic lookup scheme for bursty access patterns , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

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

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

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

[16]  Ellis Horowitz,et al.  Fundamentals of Data Structures , 1984 .

[17]  Günter Karjoth,et al.  Routing on longest-matching prefixes , 1996, TNET.

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

[19]  S. Sahni,et al.  O(log n) dynamic packet routing , 2002, Proceedings ISCC 2002 Seventh International Symposium on Computers and Communications.

[20]  Sartaj Sahni,et al.  Dynamic Packet Routing , 2002 .

[21]  George Varghese,et al.  Multiway range trees: scalable IP lookup with fast updates , 2001, GLOBECOM'01. IEEE Global Telecommunications Conference (Cat. No.01CH37270).

[22]  Sartaj Sahni,et al.  Efficient construction of fixed-stride multibit tries for IP lookup , 2001, Proceedings Eighth IEEE Workshop on Future Trends of Distributed Computing Systems. FTDCS 2001.