Multi-Worker NFD : an NFD-compatible High-speed NDN
Forwarder
Sung Hyuk Byun, Jongseok Lee, Dong Myung Sul and Namseok Ko
Electronics and Telecommunications Research Institute
Daejon, Republic of Korea
{shbyun,viper,dmsul,nsko}@etri.re.kr
ABSTRACT
The NDN Forwarding Deamon (NFD) has been a reference for-
warder implementation of Named Data Networking. Its good mod-
ularity and extensibility make it easy to experiment with new ideas,
but it shows limited forwarding performance even with multi-core
CPUs because its forwarding structure uses only single core. We
present the Multi-Worker NFD (MW-NFD), an NFD-compatible
NDN forwarder with parallel forwarding capability on multi-core
CPUs. Since the NFD’s forwarding architecture is maintained as
is, MW-NFD inherits the advantages (modularity and extensibility)
of NFD, and it is fully compatible with NFD and existing NDN
applications. In this demo, we shows that MW-NFD can yield high
forwarding performance, about 13 times higher than NFD’s perfor-
mance.
CCS CONCEPTS
· Networks → Routers.
KEYWORDS
NDN, NFD, multi-worker forwarding
ACM Reference Format:
Sung Hyuk Byun, Jongseok Lee, Dong Myung Sul and Namseok Ko. 2020.
Multi-Worker NFD : an NFD-compatible High-speed NDN Forwarder. In
7th ACM Conference on Information-Centric Networking (ICN ’20), September
29-October 1, 2020, Virtual Event, Canada. ACM, New York, NY, USA, 3 pages.
https://doi.org/10.1145/3405656.3420233
1 INTRODUCTION
There are many open-source NDN platforms that the NDN research
community have developed to realise the NDN concepts and various
protocols [9]. The NDN Forwarding Daemon (NFD) is the core part
among the NDN platforms, and is used in most NDN researches as
their default forwarder or base forwarder to implement their new
forwarding-related ideas. NFD, however, shows quite low forward-
ing performance [3, 4] because it is not optimized for performance
but is focused on modularity and extensibility. We envision that
high-performance in NDN forwarding can accelerate the develop-
ment of NDN killer applications on the areas that requires high
Permission to make digital or hard copies of part or all of this work for personal or
classroom use is granted without fee provided that copies are not made or distributed
for proft or commercial advantage and that copies bear this notice and the full citation
on the frst page. Copyrights for third-party components of this work must be honored.
For all other uses, contact the owner/author(s).
ICN ’20, September 29-October 1, 2020, Virtual Event, Canada
© 2020 Copyright held by the owner/author(s).
ACM ISBN 978-1-4503-8040-9/20/09.
https://doi.org/10.1145/3405656.3420233
forwarding performance such as CDN, massive video streaming or
big data sciences[3].
We developed a high-speed NDN forwarder which is fully com-
patible with NFD, called as the Multi-Worker NFD (MW-NFD).
MW-NFD was designed with the following goals: (1) high-speed
forwarding, (2) full compatibility with NFD and existing NDN appli-
cations, and (3) maintaining NFD’s forwarding plane architecture
to inherit its advantages of modularity and extensibility. In the
beginning, we analyzed the NFD source code and did performance
profling with Intel VTune Profler[2]. Through the analysis, we
identifed that the main bottleneck comes from the single thread for-
warding scheme of NFD; NFD does not fully utilize the multi-core
processing power of host CPUs. MW-NFD has multiple forward-
ing worker threads and input threads which can be allocated to
diferent cores. An input thread is bound to a physical port and
distributes incoming packets to multiple forwarding workers based
on the packet’s name prefx of pre-confgured length. Due to its par-
allel forwarding architecture, MW-NFD can yield high forwarding
performance, about 13 times higher than NFD’s performance.
NDN-DPDK[6], which is being implemented from scratch for
high-forwarding performance using Data-Plane Development Kit
(DPDK)[1] with C and Go languages, can be a good candidate for
high-speed NDN forwarder. NDN-DPDK may have much better per-
formance than MW-NFD as well. However, porting of any new NFD
features to NDN-DPDK may require signifcant efort. MW-NFD
has a clear advantage over NDN-DPDK on this. As the forwarding
worker of MW-NFD keeps NFD’s packet processing architecture as
is, any new version of NFD can be easily ported to MW-NFD.
Figure 1: Multi-Worker NFD Architecture
166