NDN
PROBLEM STATEMENT:
Named Data Networking (NDN) is a proposed data-centric internet architecture. Its premise is that the internet is primarily used as an information distribution network, and hence the users must be allowed to focus on the data, named content, rather than the location from where the data is to be retrieved from, a feature which defines contemporary host-centric architectures like TCP/IP. A quantitative comparison between these two architectures is to be drawn.
PROPOSED SOLUTION:
A comparison between NDN and TCP/IP will be drawn by simulating both architectures on the same network topologies (e.g. 5x5 grid). Simulation results will be obtained in the form of PCAP (Packet Capture) files, which will be analyzed using a packet analyzer (e.g. Wireshark).
TECHNOLOGY USED
ndnSIM - Named Data Networking simulator based on ns-3
NetAnim - Animator for ns-3 simulations
Wireshark - Packet analyzer
R - Language and environment for statistical computing and graphics
METHODOLOGY
Phase 1: Understanding TCP/IP and NDN concepts
TCP/IP concepts were covered by referring [1]. NDN concepts were covered by referring [2].
Numerous meetings were held between the mentors and the team members to clarify doubts in
these concepts.
Phase 2: Attempt to work on NDN-RTC
The ideas involved in the development of NDN-RTC were covered by studying [3]. Attempts were
then made to install the NDN-RTC library. The process was tedious, and required hours todownload.
Due to network issues, the download did not complete. It was then decided to move
forward with ndnSIM.
Phase 3: Drawing comparisons between NDN and TCP/IP
ndnSIM was downloaded, compiled, and run by following [4]. NetAnim was installed and
configured by following [5]. Different NDN topologies were studied and run by referring [6]. To
contrast between NDN and TCP/IP, both architectures were simulated on the same network
topologies, and their performances were compared. This comparison was drawn by generating
PCAP files for each simulation, and analyzed using Wireshark. To generate PCAP files, the
‘Simple scenario with pcap dump’ section of [6], and the ‘PCAP Tracing’ section of [7] were
referred. Furthermore, plots were generated which showed the variation of the rate (in Kbits/s) of
the Interest/Data packets forwarded by each node with time, for the NDN example topologies,
using R.
RESULTS
The simulations of both architectures on the 5x5 grid topology show a difference in the route
taken by the packets in each architecture. Following are the screenshots of the simulations:
From the above screenshots, it becomes evident that in NDN, Data packets follow the route
which was taken by the corresponding Interest packets, while in TCP/IP, upstream and
downstream packets may take different routes based on factors like congestion.
Both simulations were run for a time span of 1.491 s. PCAP files were generated for each
simulation, and the following results were obtained upon analyzing these files:
Following are the screenshots of the results:
FUTURE WORK
The initial plan of working with the NDN-RTC library can be resumed, upon resolving network-related issues. Ideas for developing other applications which can use NDN, such as a text-messaging app, can also be worked upon.
KEY LEARNINGS
The following concepts dealing with the NDN architecture were studied:
1. Interest and Data packets - Sent by a consumer and producer respectively, for the
exchange of data across a named data network.
2. Pending Interest Table (PIT): A table present in each NDN router, which stores the
Interests which haven’t been satisfied with a corresponding Data packet yet.
3. Forwarding Information Base (FIB): A data structure in each router which contains
prefixes and corresponding interfaces for forwarding data,
4. Forwarding Strategy: A module which decides the interface along which an Interest must
be forwarded, based on longest-prefix-matching in the FIB.
5. Content Store: A cache of Data packets, which can satisfy incoming Interests.
The following key differences were noted and appreciated between the NDN and TCP/IP
architectures:
1. In NDN, Interests are forwarded based on prefix-matching, and Data packets are
forwarded along the interface where the Interest came from. There is no requirement of
knowing the destination or source of the packets, unlike the IP end-to-end packet
delivery model.
2. Address exhaustion, which is a problem in the IP architecture, is not an issue in NDN,
since packets are routed and forwarded based on names, which are unbounded.
3. Connections between consumers and producers don’t exist in NDN, since packets are
routed and forwarded based on names instead of addresses. This solves the NAT
traversal problem faced in TCP/IP.
4. NDN provides a major improvement in privacy protection, compared to IP, as in IP
networks, one may analyze packet headers and discover the person/entity consuming
the packets, whereas in NDN, only the data in each packet can be examined, and not
the destination, since the concept of addressing packets does not exist.
REFERENCES
Following are the papers that we used as reference for our project:
[1]Kurose, J. & Ross, K., Computer Networking: A Top-Down Approach, 6th ed., Pearson
[2] https://named-data.net/publications/named_data_networking_ccr/
[3] http://conferences2.sigcomm.org/acm-icn/2015/proceedings/p117-gusev.pdf
[4] https://ndnsim.net/current/getting-started.html
[5] https://www.nsnam.org/wiki/NetAnim_3.105
[6] https://ndnsim.net/current/examples.html
[7] https://www.nsnam.org/docs/release/3.9/tutorial/tutorial_23.html
TEAM
● Chinmay Gupta chinmaygupta61@gmail.com
● Manas Trivedi manasdtrivedi@gmail.com
● Paranjay Saxena paranjayasaxena@gmail.com
Mentors:
● Shreyansh Shrivastava
● Tushar Dubey