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