IP address lookup is to determine incoming packet’s next hop destination in the router. The lookup is a major bottleneck in high performance router due to the increased routing table sizes, increased traffic, higher speed links, and the migration to 128 bit IPv6 addresses. IP lookup time is dependent on data structure of lookup table and search scheme.
In this paper, we propose a new way to build an optimal lookup table. The design of lookup table is formulated as an optimization problem. The objective is to minimize average depth for lookup. We assume that the frequencies with which prefixes are accessed are known and the data structure is level compressed trie. Thus, the problem is to determine the branching factor at each level. Procedures based on heuristics are proposed. Experimental results show that lookup table based on the proposed has better average depth for lookup and worst-case. The procedure has scalability from IPv4 to IPv6 by considering memory.