Title :
Memory-Efficient IPv4/v6 Lookup on FPGAs Using Distance-Bounded Path Compression
Author :
Le, Hoang ; Jiang, Weirong ; Prasanna, Viktor K.
Author_Institution :
Ming Hsieh Dept. of Electr. Eng., Univ. of Southern California, Los Angeles, CA, USA
Abstract :
Memory efficiency with compact data structures for Internet Protocol (IP) lookup has recently regained much interest in the research community. In this paper, we revisit the classic trie-based approach for solving the longest prefix matching (LPM) problem used in IP lookup. In particular, we target our solutions for a class of large and sparsely-distributed routing tables, such as those potentially arising in the next generation IPv6 routing protocol. Due to longer prefix and much larger address space, straight-forward implementation of trie based LPM can significantly increase the number of nodes and/or memory required for IP lookup. Additionally, due to the available on-chip memory and the number of I/O pins of in the state-of-the art Field Programmable Gate Arrays (FPGAs), existing designs cannot support large IPv6 routing tables consisting of over 300K prefixes. We propose two algorithms to compress the uni-bit-trie representation of a given routing table: (1) single-prefix distance bounded path compression and (2) multiple-prefix distance bounded path compression. These algorithms determine the optimal maximum slap distance at each node of the trie to minimize the total memory requirement. Our algorithms demonstrate substantial reduction in the memory footprint compared with the uni-bit-trie algorithm (1.86× for IPv4 and 6.16× for IPv6), and with the original path compression algorithm (1.77× for IPv4 and 1.53× for IPv6). Furthermore, implementation on a state of-the-art FPGA shows that our algorithms achieve 466 million lookups per second and are well suited for 100Gbps lookup. The implementation also scales to support larger routing tables and longer prefix length when we go from IPv4 to IPv6.
Keywords :
IP networks; field programmable gate arrays; routing protocols; table lookup; transport protocols; FPGA; I/O pins; IPv6 routing protocol; Internet protocol; LPM problem; compact data structure; field programmable gate array; longest prefix matching; memory-efficient IPv4/v6 lookup; multiple-prefix distance bounded path compression; on-chip memory; optimal maximum slap distance; routing table lookup; single-prefix distance bounded path compression; trie-based approach; uni-bit-trie algorithm; Algorithm design and analysis; Field programmable gate arrays; Hardware; IP networks; Memory management; Routing; Throughput; FPGA; IP Lookup; IPv4; IPv6; Path Compression; Pipeline; Routing Table; Trie;
Conference_Titel :
Field-Programmable Custom Computing Machines (FCCM), 2011 IEEE 19th Annual International Symposium on
Conference_Location :
Salt Lake City, UT
Print_ISBN :
978-1-61284-277-6
Electronic_ISBN :
978-0-7695-4301-7
DOI :
10.1109/FCCM.2011.40