TY - GEN
T1 - A Fast and Memory-Efficient Trie Structure for Name-Based Packet Forwarding
AU - Ghasemi, Chavoosh
AU - Yousefi, Hamed
AU - Shin, Kang G.
AU - Zhang, Beichuan
N1 - Publisher Copyright:
© 2018 IEEE.
PY - 2018/11/7
Y1 - 2018/11/7
N2 - Name lookup is an essential function, but a performance bottleneck in both today's and future network architectures. Variable-length and unbounded names rather than fixed-length addresses, as well as much larger and more dynamic forwarding tables call for a careful re-engineering of lookup structures for fast, memory-efficient, and scalable packet for-warding. We propose a novel data structure, called NameTrie, to store and index forwarding table entries efficiently and to support fast name lookups and updates. Its novelty lies in the optimized design and implementation of a character-trie structure. The nodes of NameTrie are stored compactly, improving cache efficiency and speeding up packet processing. Its edges are implemented using a hash table, facilitating fast name lookups and updates. A new scheme is used to encode control information without consuming additional memory. Running on conventional commodity hardware and using large-scale real-world name datasets, our implementation of NameTrie in software achieves 2.82∼3.56, 3.48∼3.72, and 2.73∼3.25 million name insertions, lookups, and removals per second, respectively, for various datasets while requiring a small memory footprint. We have conducted a comprehensive performance evaluation against the state-of-the-art of named data networking (NDN) as a typical use-case. It is shown to require at least 35% less memory and runs at least 3x faster for name table lookups and updates than two well-known trie-based schemes in NDN.
AB - Name lookup is an essential function, but a performance bottleneck in both today's and future network architectures. Variable-length and unbounded names rather than fixed-length addresses, as well as much larger and more dynamic forwarding tables call for a careful re-engineering of lookup structures for fast, memory-efficient, and scalable packet for-warding. We propose a novel data structure, called NameTrie, to store and index forwarding table entries efficiently and to support fast name lookups and updates. Its novelty lies in the optimized design and implementation of a character-trie structure. The nodes of NameTrie are stored compactly, improving cache efficiency and speeding up packet processing. Its edges are implemented using a hash table, facilitating fast name lookups and updates. A new scheme is used to encode control information without consuming additional memory. Running on conventional commodity hardware and using large-scale real-world name datasets, our implementation of NameTrie in software achieves 2.82∼3.56, 3.48∼3.72, and 2.73∼3.25 million name insertions, lookups, and removals per second, respectively, for various datasets while requiring a small memory footprint. We have conducted a comprehensive performance evaluation against the state-of-the-art of named data networking (NDN) as a typical use-case. It is shown to require at least 35% less memory and runs at least 3x faster for name table lookups and updates than two well-known trie-based schemes in NDN.
KW - Lookup Structure
KW - Named Data Networking
KW - Trie
UR - http://www.scopus.com/inward/record.url?scp=85058122089&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85058122089&partnerID=8YFLogxK
U2 - 10.1109/ICNP.2018.00046
DO - 10.1109/ICNP.2018.00046
M3 - Conference contribution
AN - SCOPUS:85058122089
T3 - Proceedings - International Conference on Network Protocols, ICNP
SP - 302
EP - 312
BT - Proceedings - 26th IEEE International Conference on Network Protocols, ICNP 2018
PB - IEEE Computer Society
T2 - 26th IEEE International Conference on Network Protocols, ICNP 2018
Y2 - 24 September 2018 through 27 September 2018
ER -