Named Data Networking: A survey

Divya Saxena, Vaskar Raychoudhury, Neeraj Suri, Christian Becker, Jiannong Cao
<span title="">2016</span> <i title="Elsevier BV"> <a target="_blank" rel="noopener" href="" style="color: black;">Computer Science Review</a> </i> &nbsp;
Internet was developed as a packet data network where users and data sources (server) with specific IP addresses interacted over a pre-established communication channel. This model of client-server data communication has evolved into a peerto-peer mode of data sharing in recent times. Applications like, YouTube, Bit Torrent, social networks have revolutionized the idea of user generated contents. Modern users care only for specific data items irrespective of their sources. So, the idea of using
more &raquo; ... IP addresses to identify servers hosting a particular content is losing its importance. Moreover, want of IP addresses is a challenging issue haunting the Internet community since long. The need of the time is a content-centric networking platform where data hosts are of less importance, and Named Data Networking (NDN) has been proposed to that end. NDN allows users to float a data request without any knowledge about the hosting entity. NDN can handle user mobility, security issues more efficiently than the current Internet. Although NDN has been proposed in 2010, so far, there is no survey paper studying its architecture and various schemes proposed for its different characteristic features, like, naming, adaptive forwarding and routing, caching, security, mobility, etc. In this paper, we introduce a novel taxonomy to study NDN features in depth. We have also covered several NDN applications. We conclude our survey by identifying a set of open challenges which should be addressed by researchers in due course. Analyzing the architectural design, key functional characteristics, and important auxiliary support, we have proposed taxonomy of NDN as shown in Fig. 3 . We have broadly classified NDN features into system architecture, system services, Whenever a D_pkt returns to an NDN router, all PIT entries are searched to find a matching CN. If a corresponding PIT entry is available, the D_pkt is forwarded to all the interfaces mentioned in the list of incoming interface(s). After that, the PIT entry is deleted and the content is stored in the CS based on the local caching policy, for serving future requests for the same content. If no matching entry exists (may be because its lifetime is over), the D_pkt is dropped. NDN SYSTEM SERVICES In this Section, we shall introduce an elaborate survey of the major routing, caching, forwarding, security, privacy and trust, and mobility techniques proposed for NDN in recent years. Routing In NDN, routing is used for setting the topology and policies and handling their long-term changes, as well as for updating the forwarding table. NDN routing protocol coordinates with NDN forwarding plane for interface ranking and probing [28] [29] . In NDN, the only difference between routing and forwarding is, while routing decides about the availability of routes, forwarding makes decisions about the preference and usage of routes based on their performance/status. The routing algorithm suitable for Internet, i.e., link-state and distance-vector can be used for NDN with slight modifications [6] . Both IP and NDN use the FIB to store routing related information. IP searches the destination address in the FIB to find the next-hop and to deliver packets to the destination address, not necessarily via the best path. NDN searches the name prefix in the FIB to find the next-hop(s) and fetches data, not necessarily the nearest copy. Current Internet routing protocols can be adapted for usage in NDN by changing the message types (I_pkt / D_pkt) and adding multi-path forwarding. As, NDN deals with CNs, NDNs routing table may consume more memory space in compared to the IP routing table. The main performance metrics to evaluate the performance of NDN routing approaches [30] are CPU utilization (total number of CPU resources like, CPU time, used for routing the named contents), PIT count (total number of PIT entries existing at an NDN router), memory consumption (total memory consumed during named content routing), network utilization (total data transferred over the network), Interest re-transmission rate (total number of re-issued I_pkt(s) as a result of either packet loss or lifetime expiry), and time-to-completion (total time required to satisfy a content request), etc. There are mainly three major routing protocols [31][32] [33] in NDN and all are designed to perform only intra-domain routing as shown in Fig. 9 . Routing OSPFN [31] Two layers [32] NLSR [33] In Table V, we have summarized the possible security attacks and their countermeasures on NDN on a layer-by-layer basis. Mobility In IP-based environment, devices require an IP address (to communicate with other devices) for every networking interface they use (or for topological change) and do not guarantee the continuation of an ongoing connection. Therefore, for mobile devices, communication is not feasible until they acquire a new IP address every time when there is a change in location. For handling this problem, proposed solutions are Mobile IP [156] and Host Identification Protocol (HIP) [157] , but they do not directly deal with content mobility issue. These solutions rely on topological information and on indirection points for traffic redirection [158] . However, NDN supports data access by CNs instead of IP addresses. This enables mobile users to have better data access as there is no need for them to repeatedly acquire an IP address and they may continue their communication during the content flow or unavailability of published content. Below, we summarize the basic differences between IP-mobility and NDN mobility issues [159] . • Host Multi-homing. In the Internet, individual applications are required to establish individual connections with multiple network interfaces (Bluetooth, Wi-Fi, etc.). Each interface needs a different IP address to facilitate communication and every time there is a need to maintain TCP connection. Therefore, IP address assignment to each interface makes switching difficult between the network interfaces. NDN supports the naming. Therefore, NDN applications can explore multiple network interfaces by sending requests to all interfaces at the same time.
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="">doi:10.1016/j.cosrev.2016.01.001</a> <a target="_blank" rel="external noopener" href="">fatcat:z256vu3lwrdnpkzsdnruxtlosi</a> </span>
<a target="_blank" rel="noopener" href="" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href=""> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="external alternate icon"></i> </button> </a>