Scalable high-speed NDN name lookup

Name lookup is a core function of the Named Data Networking (NDN) forwarding plane. It performs a name-based longest prefix match lookup against a large amount of variable-length, hierarchical name prefixes. NDN name lookup suffers a scalability challenge and needs to satisfy three key requirements: high-speed lookups, low memory cost, and fast updates. However, no existing work satisfies these requirements. Hash-based linear search schemes achieve fast updates and low memory cost but not high-speed lookups. Binary search (BS) schemes achieve high-speed lookups but slow updates with high memory cost. In this paper, we propose CBS, a hash-based counting binary search scheme for scalable high-speed NDN name lookup. CBS achieves fast updates and low memory cost, while sustaining high-speed lookups. The key to CBS is using a counter for each slot in a hash table to keep track of the number of markers that direct a search to find longer matching prefixes. This design not only allows fast updates by incrementing and decrementing counters, but also reduces the additional memory cost. Our experimental results demonstrate that CBS outperforms BS in update throughput, memory cost, and lookup throughput.

[1]  Bernhard Plattner,et al.  Scalable high speed IP routing lookups , 1997, SIGCOMM '97.

[2]  Patrick Crowley,et al.  Scalable NDN Forwarding: Concepts, Issues and Principles , 2012, 2012 21st International Conference on Computer Communications and Networks (ICCCN).

[3]  Bin Fan,et al.  Cuckoo Filter: Practically Better Than Bloom , 2014, CoNEXT.

[4]  Bin Liu,et al.  On Pending Interest Table in Named Data Networking , 2012, 2012 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[5]  Patrick Crowley,et al.  Enhancing Scalable Name-Based Forwarding , 2017, 2017 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[6]  Hongke Zhang,et al.  Scalable Name Lookup with Adaptive Prefix Bloom Filter for Named Data Networking , 2014, IEEE Communications Letters.

[7]  Bin Liu,et al.  NameFilter: Achieving fast name lookup with low memory cost via applying two-stage Bloom filters , 2013, 2013 Proceedings IEEE INFOCOM.

[8]  Patrick Crowley,et al.  Named data networking , 2014, CCRV.

[9]  Athanasios V. Vasilakos,et al.  TB2F: Tree-bitmap and bloom-filter for a scalable and efficient name lookup in Content-Centric Networking , 2014, 2014 IFIP Networking Conference.

[10]  Michael Mitzenmacher,et al.  Less hashing, same performance: Building a better Bloom filter , 2008 .

[11]  Hao Wu,et al.  NDN-NIC: Name-based Filtering on Network Interface Card , 2016, ICN.

[12]  Yang Zhao,et al.  MaPIT: An Enhanced Pending Interest Table for NDN With Mapping Bloom Filter , 2014, IEEE Communications Letters.

[13]  Won So,et al.  Named data networking on a router: Fast and DoS-resistant forwarding with hash tables , 2013, Architectures for Networking and Communications Systems.

[14]  Burton H. Bloom,et al.  Space/time trade-offs in hash coding with allowable errors , 1970, CACM.

[15]  Van Jacobson,et al.  Networking named content , 2009, CoNEXT '09.

[16]  Patrick Crowley,et al.  Scalable Name-Based Packet Forwarding: From Millions to Billions , 2015, ICN.

[17]  Bin Liu,et al.  Scalable Name Lookup in NDN Using Effective Name Component Encoding , 2012, 2012 IEEE 32nd International Conference on Distributed Computing Systems.

[18]  Bin Liu,et al.  BFAST: Unified and scalable index for NDN forwarding architecture , 2015, 2015 IEEE Conference on Computer Communications (INFOCOM).

[19]  Michael A. Bender,et al.  A General-Purpose Counting Filter: Making Every Bit Count , 2017, SIGMOD Conference.

[20]  Leonardo Linguaglossa,et al.  Caesar: a content router for high-speed forwarding on content names , 2014, ANCS '14.

[21]  Patrick Crowley,et al.  Scalable Pending Interest Table design: From principles to practice , 2014, IEEE INFOCOM 2014 - IEEE Conference on Computer Communications.

[22]  Sarang Dharmapurikar,et al.  Longest prefix matching using bloom filters , 2006, IEEE/ACM Transactions on Networking.

[23]  Hao Wu,et al.  Wire Speed Name Lookup: A GPU-based Approach , 2013, NSDI.

[24]  Andrei Broder,et al.  Network Applications of Bloom Filters: A Survey , 2004, Internet Math..

[25]  Patrick Crowley,et al.  Reliably scalable name prefix lookup , 2015, 2015 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[26]  Bin Liu,et al.  Fast name lookup for Named Data Networking , 2014, 2014 IEEE 22nd International Symposium of Quality of Service (IWQoS).