DocumentCode :
865952
Title :
An O(logn) dynamic router-table design
Author :
Sahni, Sartaj ; Kim, Kun Suk
Author_Institution :
Dept. of Comput. & Inf. Sci. & Eng., Florida Univ., Gainesville, FL, USA
Volume :
53
Issue :
3
fYear :
2004
fDate :
3/1/2004 12:00:00 AM
Firstpage :
351
Lastpage :
363
Abstract :
Internet (IP) packet forwarding is typically done by finding the longest prefix in a router table that matches the packet´s destination address. For W-bit destination addresses, the use of binary tries enables us to determine the longest matching prefix in O(W) time, independent of the number n of prefixes in the router table. New prefixes may be inserted and old ones deleted in O(W) time also. Since n≪2W in real router tables, it is desirable to develop a data structure that permits longest prefix matching as well as the insertion and deletion of prefixes in O(logn). These three operations can be done with O(logn) cache misses using a B-tree data structure [S. Suri et al., (2001)]. However, the runtime (including operation cost and cost of cache misses) is not O(logn). In this paper, we develop a data structure in which prefix matching, prefix insertion, and deletion can each be done in O(logn) time. Experiments using real IPv4 routing databases indicate that, although the proposed data structure is slower than optimized variable-stride tries for longest prefix matching, the proposed data structure is considerably faster for the insert and delete operations.
Keywords :
IP networks; communication complexity; table lookup; telecommunication network routing; tree data structures; IPv4 routing database; Internet packet forwarding; dynamic router table design; red-black tree; tree data structure; Costs; Data structures; Databases; Dynamic programming; Internet; Kernel; Routing; Runtime; Table lookup; Tree data structures;
fLanguage :
English
Journal_Title :
Computers, IEEE Transactions on
Publisher :
ieee
ISSN :
0018-9340
Type :
jour
DOI :
10.1109/TC.2004.1261840
Filename :
1261840
Link To Document :
بازگشت