Title
Adaptive data structures for IP lookups
Abstract
The problem of efficient data structures for IP lookups has been well studied in the literature. Techniques such as LC tries and extensible hashing are commonly used. In this paper, we address the problem of generalizing LC tries, based on traces of past lookups, to provide performance guarantees for memory suboptimal structures. As a specific example, if a memory-optimal (LC) trie takes 6 MB and the total memory at the router is 8 MB, how should the trie be modified to make best use of the 2 MB of excess memory? We present a greedy algorithm for this problem and prove that, if for the optimal data structure there are b fewer memory accesses on average for each lookup compared with the original trie, the solution produced by the greedy algorithm will have at least 9 × b/11 fewer memory accesses on average (compared to the original trie). An efficient implementation of this algorithm presents significant additional challenges. We describe an implementation with a time complexity of O(ξ(d)nlog n) and a space complexity of O(n), where n is the number of nodes of the trie and d its depth. The depth of a trie is fixed for a given version of the Internet protocol and is typically O(log n). In this case, ξ(d) = O(log2 n). We also demonstrate experimentally the performance and scalability of the algorithm on actual routing data.
Year
DOI
Venue
2003
10.1145/1064546.1064548
Journal of Experimental Algorithmics (JEA)
Keywords
DocType
Volume
level compression,memory suboptimal structure,log2 n,greedy algorithm,excess memory,log n,original trie,nlog n,actual routing data,total memory,ip lookups,adaptive data structure,fewer memory access,space complexity,computational complexity,associative memory,hash table,time complexity,lookup table,internet protocol,data structures,data structure
Conference
10,
ISSN
Citations 
PageRank 
0743-166X
8
0.49
References 
Authors
18
3
Name
Order
Citations
PageRank
Ioannis Ioannidis114012.11
Ananth Grama21812136.25
Mikhail J. Atallah33828340.54