Design and Verification of An NDN-Based Safety-Critical Application: A Case Study With Smart Healthcare
Design and Verification of An NDN-Based Safety-Critical Application: A Case Study With Smart Healthcare
Design and Verification of An NDN-Based Safety-Critical Application: A Case Study With Smart Healthcare
Abstract—Internet of Things (IoT) is an emerging networking objects/environment with sensor nodes [1] which facilitate
paradigm where smart devices generate, aggregate, and seam- remote device control over the Internet for more meaningful
lessly exchange data over the predominantly wireless medium. interaction between the physical and the cyber worlds. In
The Internet, so far, has played a significant role in connecting the
world, but still, IoT-based solutions are suffering from two pri- recent years, several IoT-based solutions have been introduced
mary challenges: 1) how to secure the sensors data and 2) how to for various application domains [2]–[7], such as healthcare,
provide efficient local and global communication among various home, etc. Given the aging of society, elderly healthcare
heterogeneous devices. Recently, named data networking (NDN), has become a major IoT application where researchers
a future Internet paradigm is proposed to improve and sim- have developed IoT-driven round-the-clock remote health
plify such IoT communication issues. NDN allowed users to fetch
data by names irrespective of the actual hosting entity connected monitoring systems for elderly and ailing individuals which
through a host-specific IP address. NDN well suits the content- can inform caregivers in case of an emergency. However,
centric pattern of machine-to-machine (M2M) communications robustness, privacy, security, and reliability always remain
predominantly used in IoT. In this paper, we leverage the basic foremost concerns of healthcare systems because of the
feats of NDN architecture for designing and verification of an sensitivity of the data collected, managed, and exchanged.
NDN-based smart health IoT (NHealthIoT) system. NHealthIoT
uses pure-NDN-based M2M communication for capturing and In the last decade, the Internet has played a significant
transmission of raw sensor data to the home server which can role in connecting the world. But, the novel IoT applications
detect emergency healthcare events using Hidden Markov Model. are constrained by the following Internet-related problems.
Emergency events are notified to the cloud server using a novel The Internet secures the communication channel [8], [9] or
context-aware adaptive forwarding (Cdf) strategy. Post emer- session which does not deal with data integrity, reliability,
gency notifications, and user health information is periodically
pulled by the cloud server and by other interested parties using data provenance, and trust management [10], [11] (which are
NDN-based publish/subscribe paradigm. The cloud server carries key parameters for developing robust IoT applications). The
out long-term decision making using probabilistic modeling for Internet requires a middleware to map the application-level
detecting the possibility of chronic diseases at the early stage. We names to/from network addresses. In the Internet, applications
extend the workflows intuitive formal approach model for veri- used for local communication and middleware do not support
fying the correctness of NHealthIoT during the emergency. We
evaluate the cdf strategy using ndnSIM. Moreover, to validate broadcast nature of wireless media which is mainly preferred
and to show the usability of NHealthIoT, we develop a proof- for IoT communications.
of-concept prototype testbed and evaluate it extensively. We also Briefly, current IoT-based solutions are suffering from two
identify some research challenges of the NDN-IoT for researchers. primary challenges [10]: first is, how to secure the sensors
data and the second is, how to provide efficient local and
Index Terms—Context-aware data forwarding strategy, health- global communication among various heterogeneous devices.
care, Internet of Things (IoT), named data networking of things, Alternatively, the use of IoT-oriented communication pro-
NDN, NDNoT. tocols, such as 6LoWPAN [12], RPL [13], DTLS [14], and
CoAP [15] standard for developing the IoT applications in
I. I NTRODUCTION resource-constrained environments have gained popularity.
NTERNET-OF-THINGS (IoT) is an emerging
I paradigm which aims to augment surrounding physical
These standards support naming, request-response messages
and caching at the application layer, while the underlying
layers use host-to-host communication to interconnect par-
Manuscript received February 2, 2017; revised April 28, 2017; accepted ticipating devices over a secure channel. The inconsistency
June 27, 2017. Date of publication July 25, 2017; date of current version
April 15, 2019. This work was supported by the Alexander von Humboldt between application and network layer requires mapping of
Foundation through the Post-Doctoral Research Fellow Dr. V. Raychoudhury. a host to name which makes the system implementation
This paper was recommended by Associate Editor Y. Hata. (Corresponding complex.
author: Divya Saxena.)
The authors are with the Department of Computer Science and Engineering, To handle the aforementioned challenges, named
Indian Institute of Technology Roorkee, Roorkee 247667, India (e-mail: data networking (NDN) can be applied to improve and
[email protected]; [email protected]). simplify such IoT communication. NDN is a future Internet
Color versions of one or more of the figures in this paper are available
online at http://ieeexplore.ieee.org. paradigm evolved from information-centric networking (ICN)
Digital Object Identifier 10.1109/TSMC.2017.2723843 and allowed users to fetch and distribute contents directly
2168-2216 c 2017 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
992 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 49, NO. 5, MAY 2019
using their application-assigned names [11], [16]. Several by thorough analyses are discussed in Section VIII. Section IX
types of research have been done to analyze the performance discusses the limitations of NDN-IoT which are not addressed
of NDN-IoT for the various application domains, such as yet. Finally, Section X concludes this paper with future
home [17], grid [18], building automation system [19], [20], directions.
etc. Most of the systems either have tested the performance
through simulation or have not performed the evaluation of II. BACKGROUND AND M OTIVATION
a complete end-to-end system. We first introduce NDN architecture and its functionalities.
In this paper, we explore the basic NDN architecture Then, we discuss why NDN is proposed as the solution for
to develop the NDN-IoT platform for the smart health- handling the challenges raised by IoT systems.
care (named NHealthIoT) system. In NHealthIoT, the home
server (S) uses the NDN communication for collecting, pro- A. NDN Overview
cessing, and then publishing the vital signs of the patient
at regular interval which is adaptively controlled using the NDN supports the pull-based delivery model where the
Hidden Markov Model (HMM). Cloud server (CS) and other content requester (U) initiates the communication using a con-
interested parties can subscribe the data through NDN-based tent name (CN) [11], [16]. NDN uses two types of packets:
publish and subscribe paradigm using push-based multicast. S 1) interest packet (Ipkt) and 2) data packet (Dpkt). When U
and CS also detect the possibility of emergency (PoE) at the issues an Ipkt for a content, a node having the valid content
early stage using the HMM and classification, respectively. issues a Dpkt which traces the path of Ipkt in reverse. Each
A novel NDN-based context-aware adaptive forwarding (Cdf) NDN router maintains three data structures: 1) content store;
strategy is used for forwarding the healthcare emergency traf- 2) pending interest table (PIT); and 3) forwarding information
fic in the worst network conditions. We evaluate the Cdf base (FIB) [11], [16] for forwarding packets. Content store is
using ndnSIM. As a proof-of-concept, we develop a complete used as a temporary cache for Dpkt(s) to fulfill future requests
prototype of the system. We extend the workflows intuitive for already fetched contents. For stateful forwarding, NDN
formal approach (WIFA) [21] model to analyze and verify the uses PIT which stores Ipkt details until they are satisfied. FIB
correctness of NHealthIoT workflow during the emergency. maintains information about the next-hops and forwards Ipkt
Our experimental results obtained through prototype testbed using longest prefix match.
validate the usability of NHealthIoT.
To the best of our knowledge, we are the first to develop B. Why NDN Is Proposed As Solution?
an interactive and intelligent real-time healthcare system from NDN is proposed as a potential alternative networking
scratch using the NDN-IoT. solution for the IoT [10], [11]. NDN address several IoT
The main contributions of this paper are as follows. requirements by providing several functionalities, such as nam-
1) We leverage the basic feats of NDN architecture to ing, data aggregation, security, trust, etc., at the network layer.
develop the NDN-IoT platform for the smart health There are many benefits of using NDN for IoT.
applications for elderly and ailing inhabitants. As NDN uses CNs which is directly used for communication
a proof-of-concept, we develop a complete prototype of and remains consistent across facilities and installations (over
the system in real-time. network setup and maintenance). Naming data provides inher-
2) NDN-based publish and subscribe paradigm based on ent support for delay-tolerant networking (handles intermittent
push-based multicast (NDN-over-IP communication) is connectivity), fast local recovery from losses, and hop-by-
used to communicate health data between S and CS. hop congestion control unlike the Internet [10], [11]. It also
For emergency notifications, we design and implement reduces the complexity of auto-configuration mechanisms as
an NDN-based Cdf strategy that specifies a simple there is no need to configure IP addresses for each and every
and coarse-grained mechanism for classifying and for- interface of any device. In NDN, a node can itself adver-
warding healthcare emergency traffic even in the worst tise and discover application names at the network layer [10].
network conditions. Moreover, in IoT, as heterogeneous devices are being used,
3) We extend the WIFA model to analyze and verify NDN naming can support access restrictions instead of having
the correctness of NHealthIoT workflow during the a separate policy language for individual devices [11], [16].
emergency. Our real-time experimental results obtained NDN does not face address exhaustion, address assign-
through prototype testbed validate the usability of ment, and management problems because it uses unbounded
NHealthIoT. Moreover, we evaluate the NDN-based Cdf namespaces. In NDN, data packets are self-contained and inde-
strategy on ndnSIM. We also identify some research pendent from where they are retrieved and where they can
challenges of the NDN-IoT for the researchers. be forwarded [11], [16]. In NDN, all Dpkts are signed by its
This paper organization is as follows. Section II dis- producer and verified by the consumer [11], [16]. NDN inher-
cusses the NDN background and why NDN is proposed for ently provides confidentiality, authenticity, and integrity by
IoT. Section III discusses the related works of NDN-IoT. The signing each content. These features allow in-network caching
system model is introduced in Section IV and system archi- of contents for fulfilling future requests and inherently sup-
tecture is discussed in Section V. In Section VI, we elaborate port consumer mobility. NDN can limit the flow of traffic
the case study of NHealthIoT. Section VII shows the system in local networks using name-based forwarding and signature
setup and implementation while performance results supported verification.
SAXENA AND RAYCHOUDHURY: DESIGN AND VERIFICATION OF NDN-BASED SAFETY-CRITICAL APPLICATION 993
TABLE I
R ESULT OF F ORWARD -BACKWARD A LGORITHM
TABLE II
C ONTEXT I TEMS the network (rule 4). To handle this situation, an emergency
packet can be transferred to any Yellow status interface of the
prefix using hop-by-hop reliability. It is an energy-efficient
solution because it requires less number of data transmissions
due to shorter hop distances [42]. In hop-by-hop reliability,
each data transfer is acknowledged by the receiving node.
TABLE III Moreover, hop-by-hop reliability uses the concept of store-
C ONDITION ATTRIBUTES AT E ACH NDN N ODE and-forward in which packet is stored by the transferring node
until acknowledgment arrives.
Cdf uses the multipath forwarding which provides much
sought-after communication reliability for safety-critical
systems. Moreover, it also utilizes the benefits of NDN state-
ful forwarding plane where each node detects failures (node,
link, or packet) and performs recoveries.
C. Processing@Cloud
The CS supports data processing, long-term data analysis,
and visualization of data for analyzing the patient’s condi-
changes. But it generates a large number of Ipkts and Dpkts
tion in a more effective way. In the case of emergency, CS
which consumes high bandwidth, has high delay and is not an
interfaces between the application users, such as patient and
energy efficient solution. Therefore, we propose Cdf strategy
his physician(s), caregiver(s), ambulance driver(s), and Fmem .
to forward emergency notification with high reliability.
Also, application users can interact with the CS to take nec-
The purpose of Cdf is to integrate the dynamic context into
essary actions required for the patient’s support and care. The
the computation and apply it for data forwarding at the router
decision-making algorithm at the CS studies patient’s vital
level. We consider three parameters, such as: 1) packet (traffic)
signs and decides on the pattern of some chronic diseases
type; 2) SQ; and 3) prefix forwarding status for making the
and selects the action priorities customized for the particular
packet forwarding decision at the router. The SQ represents
patient.
the availability of resources for data forwarding. For the SQ,
Detection of a possibility of particular disease at the early
we use signal-to-noise ratio (SNR) which range from 5 dB to
stage allows patients, physicians, and patient’s Fmem to be
more than 40 dB. We consider that if SNR is greater than or
extra conscious and provides them adequate time to take care
equal to 25 dB, SQ is good. But if SNR is less than 25 dB,
of that. This enhances the reliability of the remote monitoring
then SQ is low. Moreover, in NDN, each FIB prefix maintains
healthcare systems and reduces the risk of hospital admission.
three statuses [prefix forwarding status: 1) Yellow (average
To find whether a patient’s vital signs are signifying any par-
performance); 2) Green (good performance); and 3) Red (no
ticular disease or not is a classification problem. Therefore,
performance)] of each interface for data retrieval, based on
at the CS, we use classification technique for developing the
the round trip time calculated from the PIT entries [11]. FIB
probabilistic model for identifying the possibility of a disease
periodically checks and updates the status of each interface
in a patient using his/her vital signs.
associated with a router through the interface probing [11].
Table II shows the context item and their possible values. In
this scheme, network context items, such as packet type (C1 ), D. Classification
SQ (C2 ), and prefix forwarding status (C3 ) are the condition When the prediction model predicts that patient’s current
attributes C = {C1 , C2 , C3 } while packet is forwarded or not vital signs are not prone to any disease, then the physician can
is the decision attribute D = {Dforward }. Table III shows the learn easily that the patient’s having these vital signs had not
rules to be executed based on condition attributes and their been diagnosed with the given diseases and will not be diag-
values at each NDN node. nosed in future. Otherwise, the physician will get to know that
These rules can be reduced where reduced set (res) is equal patient’s vital signs are prone to given disease(s). These kinds
to res = {C2 , C3 } as C1 is common for all rules. When C2 of interpretations from the model will be useful for making
is high, and the C3 is Green (i.e., Green status interface for the decisions, estimating the health risk during the emergencies
that prefix is available), a packet will be forwarded to any and will able to reduce the number of patients visit a hospital.
interface having the Green status for that prefix (rule 1). If We use the datasets [43] containing the 400 number of
C2 is low and the C3 is Green, then to ensure that emer- observations of different patients. Each observation of the
gency packet reached to the destination, a packet will be patient has 24 attributes with the decision whether a patient
forwarded to all interfaces having the Green status for that has been diagnosed either suffering from chronic kidney dis-
prefix (rule 2). If C2 is high and the C3 is Yellow (i.e., Green ease (ckd) or not (notckd). First of all, we preprocess the
status interface for that prefix is not available), a packet will be dataset and then used it to build predictive models. The distri-
forwarded to any (high-ranked) interface having Yellow status bution of the dataset shows that 62.50% patients are suffering
for that prefix (rule 3). When C2 is low and the C3 is Yellow, from ckd while 37.50% do not. Before the classification,
there are high chances of packet loss due to congestion in dataset is divided into two parts: 1) the training (60%) and
SAXENA AND RAYCHOUDHURY: DESIGN AND VERIFICATION OF NDN-BASED SAFETY-CRITICAL APPLICATION 997
TABLE IV
C LASSIFICATION R ESULTS
VI. C ASE S TUDY AND D ISCUSSION we extend WIFA to analyze the flexibility, intuitiveness,
In this section, we illustrate the need and functionalities of to detect semantic errors and for modeling and verify-
our proposed NHealthIoT system for older adults. We assume ing workflow correctness of NHealthIoT. The key fea-
80-year-old Mr. Smith lives alone in his smart home. He has ture of WIFA over other formal methods, such as Petri-
common old-age ailments such as, dizziness, nausea, loss of nets, is that WIFA can be easily modified as per the
balance, etc. We assume that the NHealthIoT is deployed in requirements of different systems. A workflow consists of
his home to monitor his location and vital signs round-the- processes and activities which are represented by well-defined
clock. One evening, Mr. Smith has shortness of breath and his tasks [21].
BP and quintessential biological signal—the heartbeat became A workflow is WF = (T, P, C, A, S0 ).
very low. He fell down in the bathroom floor unconscious, 1) T = {T1 , T2 , . . . , Tm } is a set of tasks, where m = 1.
and the impact with the floor is detected by the accelerom- 2) P = (Pij )m∗m is precedence matrix of T. If Ti is the direct
eter. His vital signs are recorded by the health sensors and predecessor of Tj , then Pij = 1; otherwise, Pij = 0.
processed by the S. S finds this event as an emergency where 3) C = (Cij )m∗m is the conflict matrix of T. Cij ∈ {0, 1} for
immediate medication is necessary for Mr. Smith. S also inti- i = 1, 2, . . . , m and j = 1, 2, . . . , m.
mates the CS so that some necessary steps, such as inform 4) A = (A(T1 ), A(T2 ), . . . , A(Tm )) defines the precondition
the physician, Fmem , etc., can be taken as early as possible. set for each task. ∀Tk ∈ T, A(Tk ) : ∗ T1 → 2∗ Tk . Let
Therefore, it can be said that the best and immediate med- set A ∈ A(Tk ). Then, Ti ∈ A implies Pik = 1.
ication for Mr. Smith depends on how efficiently S and CS 5) S0 ∈ {0, 1, 2, 3}m are initial state of the WF.
collaborate during the emergency event and take the necessary Denote a state of the WF by S = (S(T1 ), S(T2 ), . . . , S(Tm )),
decisions. where S(Ti ) ∈ {0, 1, 2, 3}.
In NHealthIoT, S and CS maintains a set of rules to follow 1) S(Ti ) = 0 means Ti is not executable at state S and not
during the emergency events. NHealthIoT has subsequent rules executed previously.
to follow during the emergency. 2) S(Ti ) = 1 means Ti is executable at state S and not
T1 S periodically fetches data from healthcare sensors executed previously.
for short-term analysis and detects the PoE and send 3) S(Ti ) = 2 means Ti is not executable at state S and
notification of an emergency to CS. executed previously.
T2 The patient waits to be treated. 4) S(Ti ) = 3 means Ti is executable at state S and executed
T3 CS sends the request to S and patient for emergency con- previously.
dition verification, and it checks availability of necessary The dynamics of a WF is captured by state transitions,
resources at the hospital, such as ambulance, etc. Sa (Ti )Sb , i.e., during the execution task Ti , state changes from
T4 The patient gives no response due to unconsciousness. Sa to Sb . The state transitions rules are as follows.
CS keeps waiting for a prespecified time period. If Sa (Ti )Sb , then ∀T j ∈ T.
T5 The patient asks for immediate medication. 1) If Tj = Ti , then Sb (Tj ) = 2.
T6 False detection of emergency, inform the current situa- 2) If Tj = Ti , then the state value of Tj at new state Sb
tion to the patient, physician(s), and Fmem . depends on its state value at state Sa . We consider the
T7 CS ask to another hospital(s). following four cases.
T8 Inform the physician(s), caregiver or hospital authority, Case A) Sa (Tj ) = 0
and Fmem about the emergency situation and send an If Pij = 1 and ∃A ∈ A(Tj ) such that Sb (Tk ) =
ambulance to patient’s home. 2 for any Tk ∈ A, then Sb (Tj ) = 1; otherwise,
T9 Ambulance reaches to patient’s home, and a Fmem Sb (Tj ) = 0.
remotely opens the door after temporarily sharing the Case B) Sa (Tj ) = 1
necessary credentials with the hospital authorities (shar- If Cij = 0, then Sa (Tj ) = 1; otherwise,
ing of the secret key). Sb (Tj ) = 0.
T10 S senses the presence and turns on the porch light. Case C) Sa (Tj ) = 2
T11 Fmem remotely searches patient’s insurance smart card If Pij = 1 and ∃A ∈ A(Tj ) such that Sb (Tk ) =
and other necessary items and share search result with 2 for any Tk ∈ A, then Sb (Tj ) = 3; otherwise,
the hospital authorities. Sb (Tj ) = 2.
T12 Caregiver or hospital authority checks the present health Case D) Sa (Tj ) = 3
condition of the patient and gives instant medication to If Cij = 0, then Sb (Tj ) = 3; otherwise,
that patient, if necessary. Sb (Tj ) = 2.
T13 Do not take that patient to hospital. The main characteristics of WIFA are that it supports
T14 Take that patient to hospital. sequential execution, concurrency, conflict, synchronization,
T15 An Ambulance leaves home for the hospital, and smart and loops (some tasks are executed repeatedly, etc.). A loop
home is locked remotely by the Fmem . with atleast one entry task and one exit task is called a healthy
Another most important factor is that the response work- loop. Otherwise, the loop is called an unhealthy loop. To
flow for handling the emergency must be flexible, intu- handle the unhealthy loops, we extend the WIFA model for
itive, and should be free from semantic errors. Therefore, NHealthIoT workflow.
SAXENA AND RAYCHOUDHURY: DESIGN AND VERIFICATION OF NDN-BASED SAFETY-CRITICAL APPLICATION 999
Fig. 14. Vital sign sensor subsystem (a) Health sensors sub-
system. (b) Healthcare data collection interface and plot of sensor data.
Fig. 12. Floor plan to setup different sensors. PyNDN, and NDN client library for providing the NDN
communication [61], [62]. Further, NDN-Cxx library [63] is
VII. S YSTEM S ETUP AND I MPLEMENTATION installed to support the basic NDN primitives. For forwarding
support, NDN forwarding Daemon (NFD) [60] and NDN rout-
We develop the complete NHealthIoT system in and around ing Daemon (NRD) [64] are used. NFD supports the essential
the Information Security Laboratory of the Department of features of NDN to forward the packets, while NRD is used to
Computer Science and Engineering, IIT Roorkee, India. Being build the forwarding table. We use the Repo-ng [65] to imple-
a big room, we have logically divided the laboratory area as ment NDN repo . It uses the repo protocol to insert, delete, and
per the following plan (see Fig. 12). retrieve data objects from data repository nodes. It is using
SQLite [66] for database implementation.
A. System Setup E-health sensor shield periodically captures vital signs of
To setup the communication from home-to-room and then to the user and send the readings to the Arduino microcontroller.
table-level, we arrange S, Raspberry Pi, Arduinos and sensors Arduinos at the room level remains attached to RFID read-
in a hierarchical manner (see Fig. 13). ers. Moreover, items are attached with the RFID tags. All
In NHealthIoT, S is attached to a Raspberry Pi Model sensors periodically update their values and send to the micro-
B+ [53], [54]. We have written Python scripts on Raspberry Pi controller. Smart entities associated with the Arduinos can be
which is then connected to Arduino using a Pyserial library in controlled by the S and can perform specific action(s) during
serial connection through USB. Through this, Raspberry Pi can an event occurrence. A sketch on Arduino is written using
access analog and digital ports of Arduino and can command C/C++ which is customizable according to the hardware char-
to Arduino. Tenda Wi-Fi USB Dongle is used to provide Wi-Fi acteristics. Moreover, messages are cached in the 4 GB SD
connection to Raspberry Pi. Each Arduino (a programmable card attached to the Arduino wireless SD shield.
microcontroller board based on ATMEGA 328) [55], have For better visualization, we have shown NHealthIoT system
XBee Radio module (IEEE 802.15.4 protocol) [56], XBee setup individually in Figs. 14–16.
wireless shield, and XBee Explorer for the communication. CS comprises of a desktop computer (Intel Core i7 3770
At the end, e-Health sensor shield V2.0 [57] has the fol- 3.4 GHz CPU 8 GB RAM and 64-bit Ubuntu 14.04 LTS),
lowing sensors—accelerometer, glucometer, body temperature, ndn-cxx, NFD and ndn-traffic-generator [67]. NHealthIoT is
BP, pulse, and oxygen in blood (SPO2), airflow (breathing), residing in the same wireless LAN.
galvanic skin response (sweating), ECG, and EMG, etc. Other
sensors used for actuation control and smart items search B. System Implementation
are LED, infrared (IR) sensor, and RFID tags and readers, In Raspberry Pi, many virtual nodes can be created. There is
respectively. a need to setup an NDN network by creating the set of nodes
First of all, a laptop is connected to Raspberry Pi [54] where one node acts as a controller. Controller responsibility
remotely using the Xming [59] and Putty [58]. We also use is to issue certificates to nodes (takes public key information of
SAXENA AND RAYCHOUDHURY: DESIGN AND VERIFICATION OF NDN-BASED SAFETY-CRITICAL APPLICATION 1001
C. Naming Scheme
CN used for collecting vital signs from deployed healthcare
sensors through S is “/health/patientID/CVS/*/I” where I is
Fig. 16. Remotely searching objects in the smart home using the data fetching interval calculated via HMM.
NDN. (a) Bedroom drawer. (b) Drawing room drawer. (c) Interface for object When a request is issued to search the smart
access. card, the application interface generates an Ipkt
“/health/op/search/SmartCard” to S. Then, S maps the
object to its id and searches the requested object in its
nodes) of the same network. Controller also maintains a list of updated database, NDN repo and returns the corresponding
nodes available in the same network with their possible capa- location in human understandable form. If no information is
bilities (services). Whenever a new node joins the network, available in S, then Ipkt is broadcasted to all the room level
that node must be paired with the controller to exhibit node smart entities augmented with RFID. In response to the Ipkt,
capabilities to the rest of the network. A node creates differ- the corresponding item replies.
ent commands and periodically updates them to the controller. The Co-node issues Ipkt “/health/op/control/action” to
A node provides a response to incoming command Ipkts if they home devices at the occurrences of triggers, such as sensor
are verifiable (coming from authorized user). It also sends cer- readings or user commands or time where an action is the
tificate signing request to the controller. Initially, NDN allows available services (on, off, dim, etc.) with the fixtures.
devices to connect without any name or address. Naming and
trust schemes play an important role for initial configuration VIII. P ERFORMANCE R ESULTS AND A NALYSIS
data. After the establishment of trust with the root node(s)
and getting the name, service discovery and node(s) capabil- We have tested the performance of our proposed
ities can be accessed through the exchange of node-to-node NHealthIoT system using prototype testbed, and we evaluate
metadata. the performance of Cdf using ndnSIM [68].
Nodes attached to a controller can be further used either In the following section, we shall discuss the results of our
for collecting data from sensors or for sending commands to prototype testbed and ndnSIM simulation.
fixtures, such as TV, lights, microwave, etc. There is another
class base-node which provides security to the network using A. Simulation Experiments
PyNDN. It contains policy manager which provides methods To evaluate the performance of Cdf, we simulate it on
for creating certificates for signing the Ipkt-Dpkt. Moreover, ndnSIM for the metrics: packet delivery ratio (PDR), and
policy manager also provides the hierarchical trust model to Latency (L). PDR is necessary to find true performance of the
verify the trust in certificates. Both controller and node inherit forwarding scheme while L shows the efficacy of the content
the base-node for getting the certificates to sign the Ipkts delivery. We formally define the performance metrics.
and/or Dpkts. 1) Packet Delivery Ratio: It is the ratio of the number of
We assigned “/health” name to the controller, i.e., a name Dpkts successfully reached to the requesting node to the
of the network. Further, we created a set of nodes for total number of Ipkts generated.
performing all operations of NHealthIoT, one for collecting 2) Latency: It is the interval between the Ipkt(s) to reach the
the vital signs of patient (C-node), second to search the smart destination node and returning of corresponding Dpkt to
objects (S-node), and third to control the lights and/or fixtures the requester.
(Co-node) and the fourth node for the user (U-node). C-node, For the simulation scenario, we consider a 500 m2 grid
S-node, and Co-node directly control the Raspberry Pi which topology for 100 nodes with constant mobility. The packet size
then sends messages to the Arduino. As discussed above, is set to a constant value of 1024 bytes. The time to live field
information of C-node, S-node, and Co-node are maintained is set to 5 in order to guarantee a maximum 6-hop transmis-
in the controller with their capabilities. A U-node requests sion. The Interest rate is 50 Ipkts/s. We run the simulation for
list of available nodes and their capabilities from controller 600 s. Furthermore, we run the simulation 100 times to reduce
and then directly sends signed command (request certificate the hardware dependency and plot the average. We consider
from the controller) to those nodes for getting the required multiple simultaneous multihop Adhoc communication where,
1002 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 49, NO. 5, MAY 2019
source and sink nodes are randomly selected from node id B. Prototype Testbed Experiments
ranges (0–49) and (50–99), respectively. A scheme is robust For testbed evaluation, we measure the latency (L) and PDR
and reliable if it can perform all its operations under worst cir- for different scenarios using NDN-based communication. We
cumstances. For the worst-case scenario, we consider no node have already defined them in Section VIII-A. In the following
in the simulation has the Green status interface for any prefix, section, we discuss the testbed evaluation.
and SQ is always low in the network. To analyze the prototype performance, we have arranged
In ndnSIM, three forwarding strategies, flooding, smart- all communicating nodes in the line topology (represents the
flooding, and best-route strategy are defined. In flooding, hierarchy) in which the first node is acting as a source node,
packets are forwarded to all available Green and Yellow while end node of the topology is acting as a sink node con-
interfaces. In smart-flooding, a packet is forwarded to only nected to sensors. Moreover, all nodes are static. In a static
one Green interface or all yellow interfaces while in best-route environment, no packet is lost; therefore, we consider only L
strategy, a packet is forwarded to high-ranked Green interface as the performance metric.
or high ranked Yellow interface. We skipped the implemen- Fig. 19 shows the L between the sink node and S with
tation of smart-flooding, since in a wireless setting, under respect to number of intermediate nodes in which one end is
the worst-case scenario, smart-flooding strategy performance S while the other is a patient monitoring healthcare sensors.
reduces to flooding. Moreover, in the worst case scenario, Healthcare sensors keep generating vital signs of the patient(s).
best-route strategy performs equal to Cdf (but Cdf is more S sends an Ipkt to healthcare sensors in a fixed interval (calcu-
reliable because of the use of hop-to-hop reliability scheme). lated using HMM as discussed above) to fetch the data. Then,
Therefore, we compare the Cdf performance with Flooding sensors send Dpkt with valid content in response. It can be
for finding the reliability with respect to the varying number observed that each intermediate node between S and sink is
of consumers. adding some extra cost because of overhead to add a PIT
Fig. 17 shows the PDR of Cdf and flooding schemes for entry and time to search the FIB for forwarding the Ipkt(s)
the varying number of consumers. Fig. 18 shows the com- upward.
parison of latency for Cdf and flooding schemes. The result Fig. 20 shows the L to control the actuator remotely from
shows that Cdf manages to maintain high PDR as compared the S. For this, topology’s one end is the S while another
to flooding while at the same time Cdf is achieving low L end is an actuator attached with sensors. We increased the
(Fig. 18). As the network becomes more congested, the nega- number of nodes between the S and actuator one-by-one and
tive effects of broadcast storm [69] problem cause flooding to then computed the L. As the numbers of nodes are increasing,
require more time to deliver the Ipkt notifications. On the other L is also increasing as each intermediate node consumes time
hand, Cdf manages to counterbalance the effect of broadcast to join the network, and time to forward Ipkts/Dpkts, etc.
storm problem by maintaining almost constant latency values Fig. 21 shows the L to search the smart items from S using
as the number of consumer increases. pull and push-based communication. We searched six items
Flooding scheme is reliable as there are high chances of get- and repeated the procedure for ten times, and an average is
ting the data, but it does not guarantee good performance under taken to mitigate the effect of hardware dependency. After the
the worst circumstances, such as network congestion. The first round of collection, L reduced to its half as intermediate
main reason behind the poor performance of flooding is that nodes cache the content.
SAXENA AND RAYCHOUDHURY: DESIGN AND VERIFICATION OF NDN-BASED SAFETY-CRITICAL APPLICATION 1003
Fig. 20. Latency between the S and actuator (remote access). Fig. 23. Impact of caching on L.
is decreasing with the increase in the number of intermediate ndnSIM for the reliability and robustness. We have also devel-
nodes. In Dpkt-R, a rate of packet loss is increasing as neigh- oped an NHealthIoT prototype and evaluated it extensively to
bor nodes are continuously changing, i.e., nodes density does prove the usability of NHealthIoT. In the future, we will opti-
not affect the network performance. mize the performance of NHealthIoT on a wider scale, under
different scenarios and applications.
IX. F URTHER D ISCUSSION
NDN uses CNs to organize data access, identity and ACKNOWLEDGMENT
trust management and access control. Moreover, NDN deals The authors would like to thank Prof. C. Becker from
directly with the CNs which supports the content secu- Universität Mannheim for his valuable suggestions.
rity instead of channel security. NDN provides intrinsic
data caching, multicast, multipath forwarding and disruption
recovery mechanisms. Applications built on NDN should not R EFERENCES
need to address these at the application layer, which gives them [1] G. Kortuem, F. Kawsar, V. Sundramoorthy, and D. Fitton, “Smart objects
the potential of being more efficient and robust than those built as building blocks for the Internet of Things,” IEEE Internet Comput.,
on IP. Content caching increases the content availability and vol. 14, no. 1, pp. 44–51, Jan./Feb. 2010.
[2] P. Wang, Z. Ding, C. Jiang, and M. Zhou, “Design and implementation of
makes caching more beneficial by the use of persistent in- a Web-service-based public-oriented personalized health care platform,”
network storage [11], [16]. As NDN is an emerging area of IEEE Trans. Syst., Man, Cybern., Syst., vol. 43, no. 4, pp. 941–957,
research, it offers several novel features which might be bene- Jul. 2013.
[3] K. A. Sidek, I. Khalil, and H. F. Jelinek, “ECG biometric with abnormal
ficial for IoT as discussed earlier but still it has plenty of open cardiac conditions in remote monitoring system,” IEEE Trans. Syst.,
research challenges. Man, Cybern., Syst., vol. 44, no. 11, pp. 1498–1509, Nov. 2014.
The use of CNs in IoT environment increases the bur- [4] A. Pandharipande and D. Caicedo, “Adaptive illumination rendering in
LED lighting systems,” IEEE Trans. Syst., Man, Cybern., Syst., vol. 43,
den on the already resource-constrained nodes. So, naming no. 5, pp. 1052–1062, Sep. 2013.
contents in IoT will have prohibitive demand on already con- [5] G. Aloi et al., “Enabling IoT interoperability through opportunistic
strained memory resources. Adopting NDN-type security in smartphone-based mobile gateways,” J. Netw. Comput. Appl., vol. 81,
pp. 74–84, Mar. 2017.
IoT requires securing each Dpkt which puts the overhead at [6] F. Cicirelli et al., “On the design of smart homes: A framework for
the content producer which might be resource-constrained. activity recognition in home environment,” J. Med. Syst., vol. 40, no. 9,
Contents in IoT are sometimes produced and consumed by p. 200, Sep. 2016.
[7] G. Fortino and R. Gravina, “Fall-MobileGuard: A smart real-time fall
a single fixed pair of nodes in which case, caching will not detection system,” in Proc. Body Area Netw., Sydney, NSW, Australia,
be of much (or, any) help even if the resource-constrained IoT Sep. 2015, pp. 44–50.
nodes at all support it. Also, caching requires refreshing the [8] G. Suciu et al., “Big data, Internet of Things and cloud convergence—
cached copies along with the original. If the frequency of orig- An architecture for secure e-health applications,” J. Med. Syst., vol. 39,
no. 11, p. 141, Nov. 2015.
inal data production is high, high cache replacement time may [9] S. R. Moosavi et al., “End-to-end security scheme for mobility enabled
slow down data access. Moreover, it is not preferable for the healthcare Internet of Things,” Future Gener. Comput. Syst., vol. 64,
resource-constrained as it consumes high memory. pp. 108–124, Nov. 2016.
[10] W. Shang et al., “Named data networking of things,” in Proc. IEEE
Existing NDN solutions on Internet work mostly as NDN Internet Things Design Implement. (IoTDI), Apr. 2016, pp. 117–128.
overlay on top of IP. But, edge devices of IoT network are [11] D. Saxena, V. Raychoudhury, N. Suri, C. Becker, and J. Cao, “Named
severely resource-constrained compared to that in the Internet data networking: A survey,” Comput. Sci. Rev., vol. 19, pp. 15–55,
Feb. 2016.
(edge devices in the Internet are still home or office PCs [12] G. Montenegro, N. Kushalnagar, J. Hui, and D. Culler, “Transmission of
or smart handheld devices). It is already very challenging to IPv6 packets over IEEE 802.15.4 networks,” Internet Eng. Task Force,
deploy an IP stack on an IoT device. So, supporting an NDN Fremont, CA, USA, RFC 4944, Sep. 2007.
[13] T. Winter, “RPL: IPv6 routing protocol for low-power and lossy
overlay on top of IP is even more difficult for an IoT device. networks,” Internet Eng. Task Force, Fremont, CA, USA, RFC 6550,
Mar. 2012.
X. C ONCLUSION [14] E. Rescorla and N. Modadugu, “Datagram transport layer security ver-
sion 1.2,” Internet Eng. Task Force, Fremont, CA, USA, RFC 6347,
In this paper, we presented NHealthIoT which is a human Jan. 2012.
and data-centric smart system that uses NDN for naming, boot- [15] Z. Shelby, K. Hartke, and C. Bormann, “The constrained application pro-
tocol (CoAP),” Internet Eng. Task Force, Fremont, CA, USA, RFC 7252,
strapping and service discovery, device registration, securely Jun. 2014.
pub/sub data, caching, scalable forwarding, etc. NHealthIoT [16] L. Zhang et al., “Named data networking (NDN) project,” Xerox PARC,
collects vital signs of smart home inhabitants and transfers Palo Alto, CA, USA, Tech. Rep. NDN-0001, Oct. 2010.
[17] M. Amadeo, C. Campolo, A. Iera, and A. Molinaro, “Information centric
them to S for early detection and diagnosis of critical health networking in IoT scenarios: The case of a smart home,” in Proc. IEEE
condition changes using HMM. Regular health data is pub- Int. Conf. Commun. (ICC), Jun. 2015, pp. 648–653.
lished by S and is subscribed by the CS and Fmem . Emergency [18] V. K. Katsaros et al., “Information-centric networking for machine-to-
notifications are sent to CS using a novel Cdf. CS collects the machine data delivery: A case study in smart grid applications,” IEEE
Netw., vol. 28, no. 3, pp. 58–64, May/Jun. 2014.
vital signs and uses the probabilistic modeling to predict [19] J. Burke, P. Gasti, N. Nathan, and G. Tsudik, “Securing instrumented
the possibility of chronic diseases based on irregularities in environments over content-centric networking: The case of lighting con-
the patient’s vital signs. We extended the WIFA model for trol and NDN,” in Proc. IEEE INFOCOM NOMEN, 2013, pp. 394–398.
[20] W. Shang, Q. Ding, A. Marianantoni, J. Burke, and L. Zhang, “Securing
verifying the correctness of NHealthIoT system during an building management systems using named data networking,” IEEE
emergency. We evaluated the data forwarding strategy using Netw., vol. 28, no. 3, pp. 50–56, May/Jun. 2014.
SAXENA AND RAYCHOUDHURY: DESIGN AND VERIFICATION OF NDN-BASED SAFETY-CRITICAL APPLICATION 1005
[21] J. Wang, D. Rosca, W. Tepfenhart, A. Milewski, and M. Stoute, [48] W. R. Klecka, Discriminant Analysis, vol. 19. Beverly Hills, CA, USA:
“Dynamic workflow modeling and analysis in incident command Sage, Aug. 1980.
systems,” IEEE Trans. Syst., Man, Cybern. A, Syst., Humans, vol. 38, [49] D. W. Hosmer and L. Stanley, “Introduction to the logistic regression
no. 5, pp. 1041–1055, Sep. 2008. model,” in Applied Logistic Regression. New York, NY, USA: Wiley,
[22] Y. Zhang et al., “Requirements and challenges for IoT over ICN 2000, pp. 1–30.
based architecture for IoT-requirements and challenges,” Internet-Draft, [50] R. Rastogi and K. Shim, “PUBLIC: A decision tree classifier that
Apr. 2016. integrates building and pruning,” in Proc. VLDB, vol. 98. 1998,
[23] G. C. Polyzos and N. Fotiou, “Building a reliable Internet of Things pp. 404–415.
using information-centric networking,” J. Rel. Intell. Environ., vol. 1, [51] Y. Freund and R. E. Schapire, “A decision-theoretic generalization of
no. 1, pp. 47–58, 2015. on-line learning and an application to boosting,” in Proc. Eur. Conf.
[24] D. Perino and M. Varvello, “A reality check for content centric Comput. Learn. Theory, 1995, pp. 23–37.
networking,” in Proc. ACM ICN WS, Toronto, ON, Canada, 2011, [52] L. Breiman, “Bagging predictors,” Mach. Learn., vol. 24, no. 2,
pp. 44–49. pp. 123–140, 1996.
[25] W. Shang, Y. Yu, R. Droms, and L. Zhang, “Challenges in IoT [53] Raspberry Pi. Accessed on Jan. 15, 2016. [Online]. Available:
networking via TCP/IP architecture,” Tech. Rep. NDN-0038, Feb. 2016. https://www.raspberrypi.org
[26] M. Amadeo, C. Campolo, A. Iera, and A. Molinaro, “Named [54] NDN Pi. Accessed on Jan. 15, 2016. [Online]. Available:
data networking for IoT: An architectural perspective,” in Proc. Eur. https://github.com/remap/ndn-pi
Conf. Netw. Commun. (EuCNC), Bologna, Italy, 2014, pp. 1–5. [55] Arduino. Accessed on Jan. 15, 2016. [Online]. Available:
[27] R. Ravindran, T. Biswas, X. Zhang, A. Chakraborti, and G. Wang, https://www.arduino.cc
“Information-centric networking based homenet,” in Proc. IFIP/IEEE [56] XBee. Accessed on Jan. 20, 2016. [Online]. Available:
ManFI Workshop, Ghent, Belgium, 2013, pp. 1102–1108. https://www.digi.com/xbee
[28] D. Saxena, V. Raychoudhury, and N. SriMahathi, “SmartHealth-NDNoT: [57] E-Health Sensor Kit. Accessed on Apr. 30, 2015. [Online]. Available:
Named data network of things for healthcare services,” in Proc. ACM https://www.cooking-hacks.com/ehealth-sensors-complete-kit-biometric
MobiHoc MobileHealth, 2015, pp. 45–50. -medical-arduino-raspberry-pi
[29] J. Quevedo, D. Corujo, and R. Aguiar, “Consumer driven informa- [58] Putty. Accessed on Jan. 20, 2016. [Online]. Available:
tion freshness approach for content centric networking,” in Proc. IEEE http://www.putty.org
INFOCOM NOM WS, Toronto, ON, Canada, 2014, pp. 482–487. [59] Xming. Accessed on Jan. 20, 2016. [Online]. Available:
[30] M. Amadeo, C. Campolo, and A. Molinaro, “Multi-source data retrieval http://sourceforge.net/projects/xming
in IoT via named data networking,” in Proc. ACM Inf. Centric [60] NFD Repository. Accessed on Apr. 30, 2015. [Online]. Available:
Netw. (ICN), Paris, France, 2014, pp. 67–76. https://github.com/named-data/NFD
[31] D. Saxena, V. Raychoudhury, and C. Becker, “An NDNoT based efficient [61] PyNDN2 Repository. Accessed on Jan. 15, 2016. [Online]. Available:
object searching scheme for smart home using RFIDs,” in Proc. ACM https://github.com/named-data/PyNDN2
Int. Conf. Distrib. Comput. Netw. (ICDCN), Hyderabad, India, Jan. 2017, [62] ndnx. Accessed on May 10, 2015. [Online]. Available:
pp. 29–34. https://github.com/named-data/ndnx
[32] M. Amadeo, O. Briante, C. Campolo, A. Molinaro, and G. Ruggeri, [63] ndn-cxx. Accessed on May 10, 2015. [Online]. Available:
“Information-centric networking for M2M communications: Design and https://github.com/named-data/ndn-cxx
deployment,” Comput. Commun., vols. 89–90, pp. 105–116, Sep. 2016. [64] NDN Routing Daemon. Accessed on Apr. 30, 2015. [Online]. Available:
[33] J. Zhang, Q. Li, and E. M. Schooler, “iHEMS: An information- https://github.com/named-data/NRD
centric approach to secure home energy management,” in Proc. IEEE [65] NDN repo-ng. Accessed on Feb. 10, 2016. [Online]. Available:
Smart Grid Commun. (SmartGridComm), Tainan, Taiwan, Nov. 2012, https://github.com/named-data/repo-ng
pp. 217–222. [66] SQLite. Accessed on Feb. 10, 2016. [Online]. Available: https://sqlite.org
[34] M. A. Halil, M. Amadeo, A. Molinaro, and S. Fischer, “Caching in [67] NDN-Traffic-Generator. Accessed on Apr. 30, 2015. [Online]. Available:
named data networking for the wireless Internet of Things,” in Proc. https://github.com/named-data/ndntraffic-generator
Recent Adv. Internet Things (RIoT), Apr. 2015, pp. 1–6. [68] ndnSIM. Accessed on Apr. 30, 2015. [Online]. Available:
[35] M. Chen, “NDNC-BAN: Supporting rich media healthcare ser- https://github.com/named-data-ndnSIM/ ndnSIM
vices via named data networking in cloud-assisted wireless body [69] Y.-C. Tseng, S.-Y. Ni, Y.-S. Chen, and J.-P. Sheu, “The broadcast storm
area networks,” Inf. Sci., vol. 284, pp. 142–156, Nov. 2014. problem in a mobile ad hoc network,” Wireless Netw., vol. 8, nos. 2–3,
[36] E. Baccelli, C. Mehlis, O. Hahm, T. C. Schmidt, and M. Wählisch, pp. 153–67, 2002.
“Information centric networking in the IoT: Experiments with NDN in [70] Freescale StarterTRAK Development Kit. Accessed on May 30, 2015.
the wild,” in Proc. ACM ICN, Paris, France, 2014, pp. 77–86. [Online]. Available: https://www.element14.com/community/docs/
[37] S. R. Eddy, “Hidden Markov models,” Current Opin. Struct. Biol., vol. 6, DOC-48719/l/freescale-trk-mpc5604b-mpc5604b-startertrak-
no. 3, pp. 361–365, 1996. development-kit
[38] Z. Wang et al., “Modeling throughput of emergency departments
via time series: An expectation maximization algorithm,” ACM Trans. Divya Saxena (M’14) is currently pursuing the
Manag. Inf. Syst., vol. 4, no. 4, p. 16, 2013. Ph.D. degree with the Department of Computer
[39] K. Wael, E. Granger, A. Miri, and R. Sabourin, “On the memory com- Science and Engineering, Indian Institute of
plexity of the forward–backward algorithm,” Pattern Recognit. Lett., Technology Roorkee, Roorkee, India.
vol. 31, no. 2, pp. 91–99, Jan. 2010. Her current research interests include named
[40] TensorFlow. Accessed on Apr. 30, 2015. [Online]. Available: data networking, Internet of Things, and mobile
https://www.tensorflow.org/ computing.
[41] V. Raychoudhury, J. Cao, W. Zhu, and A. D. Kshemkalyani, “Context
map for navigating the physical world,” in Proc. Parallel Distrib. Netw.
Based Comput. (PDP), Munich, Germany, Feb. 2012, pp. 146–153.
[42] S. Banerjee and A. Misra, “Energy efficient reliable communication for
multi-hop wireless networks,” J. Wireless Netw., pp. 1–23, 2004.
[43] (2016). UCI Machine Learning Repository Dataset. [Online]. Available:
http://mlr.cs.u-mass.edu/ml/datasets/Chronic_Kidney_Disease Vaskar Raychoudhury (SM’07) received the
[44] K. Fukushima, “Neocognitron: A self-organizing neural network model Ph.D. degree in computing from the Hong Kong
for a mechanism of pattern recognition unaffected by shift in position,” Polytechnic University, Hong Kong, in 2010.
Biol. Cybern., vol. 36, no. 4, pp. 193–202, 1980. He is currently an Alexander von Humboldt
[45] S. R. Gunn, “Support vector machines for classification and regression,” Post-Doctoral Research Fellow with the Universität
Image Speech Intell. Syst. Group, Univ. at Southampton, Southampton, Mannheim, Mannheim, Germany. In 2011, he
U.K., ISIS Tech. Rep., May 1998. joined the Department of Computer Science and
[46] K. P. Murphy, Naive Bayes Classifiers, Univ. British Columbia, Engineering, IIT Roorkee, Roorkee, India, as an
Vancouver, BC, Canada, 2006. Assistant Professor. His current research interests
[47] T. Cover and P. Hart, “Nearest neighbor pattern classification,” IEEE include mobile and pervasive computing and
Trans. Inf. Theory, vol. 13, no. 1, pp. 21–27, Jan. 1967. networking, IoT, and WSN.