DEV Community

Cover image for Named Data Networking (NDN) — The new internet.
Tanay Patel
Tanay Patel

Posted on • Edited on • Originally published at Medium

Named Data Networking (NDN) — The new internet.

Today’s Internet architecture is based on ‘Internet Protocol’ (IP). Despite being designed for conversations between communicating endpoints, it is now overwhelmingly used for content distribution, both to stationary hosts and increasingly to mobile devices.

Working in today’s IP world is based on the client-server paradigm. When we create a request for data/service from a website or web portal, this creates an HTTP request from the client-side. This HTTP request is routed through many different routers to reach the intended server. If the server has the requested information then it is transmitted in the form of packets to the client. TCP ensures the delivery of packets to the client. This structure of the internet is not suitable for content delivery. But due to enormous efforts made in cellular networks for improving the user experience and faster networking, user of the internet does not experience any problem while surfing/accessing the content.

But anyhow, current internet architecture is a poor match to its primary use today. Just as the telephone system would be a poor vehicle for the broadcast content distribution done by TV and radio.

The Named Data Networking (NDN) project aims to develop a new Internet architecture that can capitalize on strengths and also address weaknesses of the Internet’s current host-based, point-to-point communication architecture. NDN is one of five research projects funded by the U.S. National Science Foundation under its Future Internet Architecture Program.

NDN project proposed the evolution of the IP architecture by generalizing the internet architecture by removing the restriction of naming only communication endpoints. More precisely, NDN changes the semantics of networking which was delivering the packet to a given destination address to a whole new feature of fetching data identified by a given name.

The core idea of the concept is to steer away from the IP Protocol and the dependency on the central servers. NDN achieved that by fetching data by Name data instead of the IP address as well as by caching the data anywhere on the network to reuse it multiple times.

The hourglass architecture is what makes the original Internet design elegant and powerful. It centers on a universal network layer (IP) implementing the minimal functionality necessary for global interconnectivity. NDN keeps the same hourglass-shaped architecture but uses data names instead of IP addresses for delivery. This seemingly simple change leads to significant differences between IP and NDN in their operations of data delivery.

Major differences between the NDN and traditional TCP/IP are as follows,

  1. TCP / IP is focused on the IP address of the central server. NDN is focused on the names of data and looks for the shortest path to it instead of continually going to the server.

  2. TCP/IP is a peer-to-peer transmission, low efficiency, low network resource utilization. Whereas, NDN is multicast, has network caching, and high network resource utilization.

  3. TCP/IP is focused on the communication channel’s security and ignores information protection. NDN pays special attention to the security of information via encryption of each data packet with a cryptographic signature.

Other than the above-mentioned differences NDN has a different way of serving the request made by the client. The working of the NDN network can be explained in brief as follows,

Communication in NDN is driven by the receiving end, i.e., the data consumer. To receive data, a consumer sends out an Interest packet, which carries a name that identifies the desired data. Once the Interest reaches a node that has the requested data, a Data packet is sent back, which carries both the name and the content of the data, together with a signature by the producer’s key. This Data packet follows in reverse the path taken by the Interest to get back to the consumer. Note that neither Interest nor Data packets carry any host or interface addresses (such as IP addresses).

In the NDN design, content retrieval is not dependent on the endpoints of the network. Instead, each packet represents itself as an independent entity and could be cached and reused for an extended period on the network.

Due to its new architecture and working methods, it has some advantages over current internet architecture can be stated as follows,

  1. Today’s applications are written in terms where data is located, which uses application-specific middleware to map the application model and the Internet. With NDN the application’s what model can be used directly in data delivery, removing all the middleware and its associated configuration and communication inefficiencies.

  2. In NDN, all data is signed by data producers and verified by the onsumers, and the data name provides an essential context for security.

  3. Every chunk of data is uniquely named, an NDN Data packet is meaningful independent of where it comes from or where it may be forwarded to, thus it can be cached inside the network to satisfy future requests.

  4. NDN removes the translation from application data names to IP addresses and thus saves overhead.

  5. In NDN, security is built into data itself, rather than being a function of where, or how, it is obtained.

Despite being beneficial over the traditional internet architecture NDN has its challenges that are under development.
In summary, Named data networking (NDN) uses name-based routing and in-networking caching to support efficient content delivery, making it a promising future Internet architecture as well as a great network technology.

Author’s perspective,

NDN project is still in the research phase. But due to its enormous benefits over the current internet architecture it is a possibility that in the near future we can come across some software that uses NDN as a platform for communication.
But it remains a question that, Will NDN completely replace the IP?

Top comments (0)