Elsevier

Computer Communications

Volume 130, October 2018, Pages 101-112
Computer Communications

Bitmap-based priority-NPT for packet forwarding at named data network

https://doi.org/10.1016/j.comcom.2018.09.001Get rights and content

Abstract

As a promising future Internet architecture, the named data networking (NDN) technology has recently been widely studied. A Forwarding Information Base (FIB) used in forwarding named packets is composed of a set of name prefixes, each of which consists of multiple variable-length name components. Achieving wire-speed name lookup on an FIB is an essential prerequisite for the successful realization of the NDN. As one of the various data structures for the FIB construction, a name prefix trie (NPT) has an extended structure of a binary trie. Since an FIB can have an excessively large number of name prefixes and the cardinality of components at each trie level is theoretically infinite, the name lookup using an NPT has critical issues in terms of memory usage and lookup performance. In this paper, we propose the use of a priority trie and an encoded bitmap structure for efficient name lookup. The simulation result shows that our proposed algorithm achieves less than 2.5 off-chip memory accesses in average for each name lookup against FIB tables with 10,000 to 600,000 name prefixes.

Introduction

The current Internet architecture has been evolved for resource sharing based on TCP/IP and works well with data exchange between two end-systems. Today, however, users and applications operate in terms of contents, rendering it increasingly difficult to conform to the requirement of the current Internet which communicates by discovering and specifying endpoints. For this reason, studies on future Internet architectures have been widely performed, and the named data networking (NDN) [1], [2] technology is one of the promising future Internet architectures [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [17], [18], [19].

The NDN involves two types of packets: Interest packet and Data packet. The Interest packet is generated by consumers and the Data packet can be provided by any node storing the requested content. Core components for the packet forwarding in a NDN router are Content Store (CS), Pending Interest Table (PIT), and Forwarding Information Base (FIB).

The CS is a storage for inbound Data packets. The PIT is queried using exact matching for each unsatisfied Interest packet, and a new entry is inserted if there is no matching entry. The PIT is also queried for each Data packet, and the matching entry is deleted when the Data packet satisfies the pending Interest. Hence, the PIT construction requiring per-packet-based update is one of the major challenges in NDN realization [4], [5], [6], [7].

The FIB is used to forward each Interest packet to the next hop, when the CS does not satisfy the Interest and the PIT finds no pending Interest with the same name [3]. Hierarchical content names used in packet forwarding consist of multiple variable-length name components, and packets are forwarded based on longest name prefix matching (LNPM) [3]. The LNPM operation is challenging since the number and length of components included in a content name are theoretically unbounded, even though there is a limit imposed by the packet size. Moreover, the number of name prefixes composing a forwarding information base (FIB) can be excessively large. Hence, performing the wire-speed name lookup on the FIB table is another challenging issue in NDN realization. In summary, two key design issues in realizing the forwarding engine of NDN routers are the exact string matching with fast updates for the PIT and the longest prefix matching for variable-length names for the FIB.

While the longest prefix matching problem [20] for IP address lookup has been solved with a specialized memory named ternary content addressable memory (TCAM) [21], [22], TCAMs are not large enough to store the FIB of an NDN router [3]. Off-chip DRAMs can be an alternative because they provide nearly 8 times density advantage compared to on-chip SRAMs [23], [24]. However, an off-chip DRAM has 10–20 times slower access time than an on-chip SRAM [25]. If the entire FIB of an NDN router is employed with off-chip DRAMs, the latency caused in the FIB lookup cannot satisfy the wire-speed packet forwarding requirement.

In this paper, we propose a new efficient LNPM algorithm that achieves high-performance FIB lookup. The motivation of our proposed algorithm is to separate on-chip processing parts from off-chip processing parts so that most of the LNPM procedures are performed with low-latency on-chip memories and the off-chip memory access is minimized.

Among many different data structures, a binary trie can be simply transformed for the FIB construction of name prefixes. In applying the name prefix trie (NPT), we propose three efficient principles: priority-name prefix trie (p-NPT), bitmap structure, and hashBrief. The p-NPT is proposed to solve the issue of empty internal nodes of a name prefix trie (NPT). The bitmap structure is proposed to store the outline of the p-NPT in an on-chip memory, while the full name prefixes and corresponding forwarding information are stored in an off-chip memory. The hashBrief is the fingerprint of a name prefix and is proposed to avoid unnecessary accesses to the off-chip memory. In this way, the proposed algorithm can achieve less than 2.5 off-chip memory accesses on average for the name lookup of each incoming packet.

The remainder of this paper is organized as follows. Section 2 describes related works including the priority trie, which is the basic structure for our proposed work. Section 3 describes the proposed algorithm. Section 4 shows the performance evaluation results and Section 5 briefly concludes the paper.

Section snippets

Priority trie

In a binary trie, the left and the right edge of each node corresponds to value 0 and value 1, respectively. Each prefix is stored into the node, whose path value from the root node is equal to the prefix. The binary trie has two issues. First, it has empty internal nodes (white nodes) in each path to a node storing a prefix (black nodes). Second, even if a matching prefix is encountered, to find the longest matching prefix, the search procedure must be continued to lower levels until no more

Priority Name Prefix Trie (p-NPT)

This paper proposes a new name lookup algorithm applying a priority trie to overcome the issue of the name prefix trie. Fig. 3 shows a priority-NPT (p-NPT) transformed from the NPT shown in Fig. 2. The longest name prefix stored in the NPT of Fig. 2 is ‘com/youtube/user/skyDoesMinecraft’, which has 4 components, assuming that ties are broken in favor of the leftmost node. Thus the name prefix is relocated to the root node of the p-NPT, and the empty root is transformed to a priority node.

Performance evaluation

Performance evaluation was carried out with two steps: build and search. Both steps use URL names provided by ALEXA [34], which is a web information company.

Conclusion

This paper proposes a new structure for the FIB lookup in NDN routers. The packet forwarding using content names in NDN routers is expected to be much more challenging than the packet forwarding using IP addresses because of a excessively larger number of name prefixes. The motivation of our proposed structure is to provide high-speed name lookup performance by minimizing the off-chip processing which takes much longer time than the on-chip processing.

First, we proposed the application of the

Acknowledgment

This research was supported by the National Research Foundation of Korea (NRF) , NRF-2017R1A2B4011254.

References (34)

  • W. You, B. Mathieu, P. Truong, J. Peltier, G. Simon, DiPIT: A distributed Bloom-filter based PIT table for CCN nodes,...
  • W. So, A. Narayanan, D. Oran, Named data networking on a router: Fast and DoS-resistant forwarding with hash tables,...
  • J.-P. Aumasson, D.J. Bernstein, Siphash: a fast short-input PRF Cryptology, ePrint Archive, Report 2012/351....
  • DannewitzaC. et al.

    Network of Information (NetInf)-An information-centric networking architecture

    Comput. Commun.

    (2013)
  • V. Jacobson, D.K. Smetters, J.D. Thornton, M.F. Pass, N.H. Briggs, . R.L.Braynard, Networking named content, in: ACM...
  • KoponenT. et al.

    A data-oriented(and beyond) network architecture

    ACM SIGCOMM Comput. Commun. Rev.

    (2007)
  • C. Esteve, F.L. Verdi, M.F. Magalhaes, Towards a new generation of information-oriented internetworking architectures,...
  • Cited by (14)

    • CRC algorithm for embedded system based on table lookup method

      2020, Microprocessors and Microsystems
      Citation Excerpt :

      However, in some occasions with strict communication security requirements, neither of the above two methods can meet the requirements, and the CRC verification principle needs to be used for verification [4–5]. The CRC check method is a cyclic check method widely used in data communication and data compression [6]. It guarantees a reliable and error-free transmission of data with a low error rate.

    • Dual-load Bloom filter: Application for name lookup

      2020, Computer Communications
      Citation Excerpt :

      One of the promising candidates is Named Data Networking (NDN) technology [16–19]. NDN utilizes two types of packets [20,21]: interest packet and data packet. An interest packet is sent by a consumer to request a content, and a data packet is forwarded by a content provider to the consumer as the response to the interest packet.

    View all citing articles on Scopus
    View full text