• DocumentCode
    1587745
  • Title

    Adaptive data structures for IP lookups

  • Author

    Ioannidis, Ioannis ; Grama, Ananth ; Atallah, Mikhail

  • Author_Institution
    Dept. of Comput. Sci., Purdue Univ., West Lafayette, IN, USA
  • Volume
    1
  • fYear
    2003
  • Firstpage
    75
  • Abstract
    The problem of efficient data structures for IP lookups has been well studied in literature. Techniques such as LC tries and extensible hashing are commonly used. In this paper, we address the problem of generalizing LC tries and extensible hashing, based on traces of past lookups, to provide performance guarantees for memory sub-optimal 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 9×b/22 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)n × log 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 demonstrate experimentally the performance and scalability of the algorithm on actual routing data. We also show that our algorithm significantly outperforms extensible hashing for the same amount of memory.
  • Keywords
    IP networks; computational complexity; data structures; trees (mathematics); IP lookup; Internet protocol; LC tries technique; adaptive data structure; extensible hashing; greedy algorithm; memory access; memory sub-optimal structure; optimal data structure; routing data; space complexity; time complexity; Data structures; Greedy algorithms; Internet; Memory management; Probability distribution; Protocols; Routing; Scalability; Table lookup; Turning;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Computer and Communications. IEEE Societies
  • ISSN
    0743-166X
  • Print_ISBN
    0-7803-7752-4
  • Type

    conf

  • DOI
    10.1109/INFCOM.2003.1208660
  • Filename
    1208660