Design and Verification of An NDN-Based Safety-Critical Application: A Case Study With Smart Healthcare

Download as pdf or txt
Download as pdf or txt
You are on page 1of 15

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 49, NO.

5, MAY 2019 991

Design and Verification of an NDN-Based


Safety-Critical Application: A Case
Study With Smart Healthcare
Divya Saxena, Member, IEEE, and Vaskar Raychoudhury, Senior Member, IEEE

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

Opportunistic in-network caching facilitates efficient


data dissemination in dynamic communication environments
with intermittent connectivity and link diversity. NDN
increases content availability by supporting in-network
caching of ephemeral contents, which can further reduce
power consumption (nodes can sleep as often as possible) and
usage of radio resources. It further supports load balancing
and fault tolerance and thus helps resource-constrained
devices [10], [11].
All these features form the basis of developing NDN-based
NHealthIoT architecture in the subsequent sections.

III. L ITERATURE S URVEY


Application of NDN for IoT is attracting both commu-
nication and pervasive computing researchers as it will be
a boon for the industry to securely and efficiently transport Fig. 1. Interconnection among various components of NHealthIoT.
the vast amount of IoT data through the mobile and resource-
constrained platform. However, so far, there are only a few
theoretical insights on the applicability of NDN over IoT and IV. S YSTEM M ODEL
only handful of experimental analysis. We consider an NDNoT platform for developing the intel-
Most of the research, so far, on applying ICN, content- ligent healthcare system for smart home inhabitants which
centric network, or NDN for developing IoT environment comprises of four components: 1) a set of users U =
or applications is limited to theoretical propositions, such {u1 , u2 , . . . , uN }; 2) a set of healthcare service providers
as, analyzing the possibilities and challenges of developing P = {p1 , p2 , . . . , pN }; 3) a home server (S) with NDN
ICN/NDN-based IoT [10], [11], [22]–[25], proposing a new repository (NDN repo ); and 4) a cloud-based health man-
architecture [26], [27] or a communication overlay [28], dis- agement server (CS). These components are connected
cussing the issue of information freshness in IoT in relation via wired or wireless links and communicate with each other
to NDN caching [29], exploring NDN support for reliable using NDN.
and effective data retrieval from multiple producers in the Fig. 1 shows the interconnection among various compo-
IoT [30], and searching the items augmented with RFIDs nents of NHealthIoT. NHealthIoT at home is the combination
using NDN [31]. of software and hardware which supports the monitoring,
Also, Zhang et al. [22] have proposed an ICN-based searching, and controlling the smart home inhabitant’s health,
IoT architecture with a particular focus on data discovery, objects, and physical components, respectively, using the
data processing, and data distribution. Moreover, IoT prob- NDN communication. At home, it captures the vital signs of
lems studied so far are like security and naming in the domain elderly and ailing individuals, transfer them to the S for local
of smart building automation [20], applying ICN over M2M processing and finds the possibilities of emergency.
communication [32], secured home energy management using Healthcare systems in smart homes must be intelligent
publish-subscribe primitives [33], NDN caching in wireless enough to make the decisions without human intervention
IoT [34], and developing some standalone IoT systems (like, during the emergencies because the PoE is unpredictable.
service platform for future smart city, smart home [17], smart Therefore, to make it inevitable, we use the HMM [37] at
healthcare [35], or smart grid [18]) using NDN overlay on the local server for early detection and diagnosis of critical
IP. Baccelli et al. [36] have carried out experiments using large patient’s health changes using the patient’s vital signs so that
scale deployments of 60 nodes distributed in various rooms in physician, family member(s) (Fmem ), etc., can be extra con-
several buildings and comprising different types of devices. scious during that time. Further, to increase the reliability of
Experimental research to study the applicability of NHealthIoT and to reduce the communication cost, we use
ICN/NDN over IoT is in the nascent state. Developers have the HMM to tune the healthcare data fetching interval. Health
provided piecemeal solutions to individual IoT use cases data is published at the S where CS and Fmem subscribes
or part thereof (only sink-centric data traffic) by applying the data using the NDN-based publish-subscribe (pub/sub)
NDN/ICN techniques to them (except [36]) without consid- paradigm (push-based multicast). We also propose an NDN-
ering the overall evaluation of a complete end-to-end system. based Cdf strategy to forward healthcare emergency traffic
Also, experimenting with mobile adhoc network (MANET) is even in the worst network conditions. CS collects vital signs
not suitable as devices in an MANET are not always resource of patients from the S and supports data analysis and visual-
constraint as in IoT. ization. Then, CS and P closely monitors the previous records
In this paper, we develop a naïve NDN-based complete of the patient and takes required immediate actions. CS uses
smart health IoT system for the elderly and ailing inhabitants. the probabilistic model to predict the possibility of diseases
As a proof-of-concept, we develop a prototype of the system using the periodically updated vital signs of the patient. This
and evaluated it extensively. increases the reliability of real-time healthcare monitoring
994 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 49, NO. 5, MAY 2019

with RFID tags and devices in the smart home, respectively,


using NDN.
1) Elderly Healthcare System@Home: NHealthIoT at
home collects a patient’s vital signs using NDN and stores
them at the S for critical health event detection. S pulls the
data at regular intervals (I) which is adaptively controlled
depending on the patient’s health condition (i.e., if the vital
signs are consistently good, the acquisition interval increases,
and vice versa). S supports the short-term analysis by pre-
dicting the patient’s health condition based on the history of
patient’s health observation (vital signs). S keeps track of vari-
ations among patient’s vital signs and detects the PoE at the
early stage.
In principle, a patient’s vital signs comprise time series data
and detecting an emergency event in it can be best achieved
using a stochastic dynamic model. HMMs [37] are a powerful
statistical tool for modeling sequential data and is equivalent
to a stochastic process. Therefore, in this paper, we applied
expectation-maximization (EM) algorithm [38] for modeling
the early emergency event detection from the measured time-
series health data and for estimating the model parameters.
The model also uses inference algorithm to find the most
likely state at any point in time. The model is developed and
evaluated as an HMM framework.
a) Modeling and evaluation: An EM algorithm is the
Fig. 2. NHealthIoT architecture. well-known training algorithm for HMM. EM is an iterative
method for finding maximum likelihood (ML) or maximum
a posteriori estimates of parameters in statistical models
systems and reduces the cost of hospitalization as extra care having hidden variables. To infer the ML, we use the forward-
can be taken at the early stage. backward algorithm [39] to find the conditional distribution
We also extend the WIFA model [21] for verifying the P(X|O) over hidden states X for the given observation O. It
correctness of NHealthIoT during the emergency event. uses the principle of dynamic programming to calculate the
values required for finding the posterior marginal distributions.
V. S YSTEM A RCHITECTURE We collected 50 blood pressure (BP) readings of a par-
ticular person using our BP sensor during September 22,
Fig. 2 shows the proposed NHealthIoT system architecture.
2016–November 10, 2016. We classify a patient’s health con-
NHealthIoT system works in a hierarchical fashion where the
dition into three types: 1) healthy (H) [normal outdoor mobility
lowest layer collects raw data elements from sensors deployed
(High: 120/ Low: 80)]; 2) home-bound (Hb) [limited indoor
in the home and sends to S for local processing. CS pulls the
mobility (High: 120-139/Low: 80-89)]; and 3) bed-ridden (Be)
patient’s vital signs for a closer monitoring and visualization.
[s/he is in bed and has palpitation (High: 140 and above/ Low:
Healthcare service providers can respond to any emergency
90 and above)]. BP data not lying within the specified range
medical events in a collaborative manner while the data ana-
are classified using the lower value of BP.
lysts who operate over the data collected over a large area can
We model the problem using the HMM.
detect pandemics or disease patterns. After the event accuracy
1) A set of N states, {!PoE, PoE}.
is verified, CS informs Fmem of the patient for further actions.
2) A sequence of observations = {H, Hb, Be}.
The functionality of the NHealthIoT system is divided into
3) Initial probability = {!PoE = 0.6, PoE = 0.4}.
three main phases: 1) data collection from different sensors
4) Initially, we set the transition probability matrix
and local data processing at S (Processing@Home); 2) health
 
data forwarding from S to CS (NDN-based data forwarding); !PoE: {!PoE = 0.7 PoE = 0.3}
(A) = .
and 3) remote data processing at CS (processing@Cloud). PoE: {!PoE = 0.4 PoE = 0.6}
We shall discuss these phases sequentially in the next
5) Initially, we set the sequence of observation likelihoods,
sections.
i.e., emission probability (B)
 
A. Processing@Home !PoE: {H = 0.5 Hb = 0.4 Be = 0.1}
= .
PoE: {H = 0.1 Hb = 0.3 Be = 0.6}
The main role of NHealthIoT at home is to collect and
process the vital signs of patient(s) using NDN. Authorized In NHealthIoT, S comprises of a laptop (Intel Core i5
users of the system (mainly, Fmem of the patients) can also 3210M 2.5 GHz CPU 6 GB RAM and 64-bit Ubuntu
search and control remotely the smart objects augmented 14.04 LTS) and code is written in Python3.
SAXENA AND RAYCHOUDHURY: DESIGN AND VERIFICATION OF NDN-BASED SAFETY-CRITICAL APPLICATION 995

TABLE I
R ESULT OF F ORWARD -BACKWARD A LGORITHM

Fig. 4. Probability of true over predicted probability of state PoE.

and location of various smart physical objects are captured


and stored in S periodically. Local data processing at S works
in two steps. First, it maintains the identity and locations of
smart objects and connects them through contextual links.
This can help users to search for any physical object and to
browse through their contextual links (mostly with location
context) [40]. Second, contextual links between smart objects
are periodically updated to maintain their correctness.
Our novel approach is to maintain up-to-date data through
Fig. 3. Probability of state PoE over multiple training steps. a hybrid combination of push and pull-based communication
paradigm [31]. In push-based searching, smart objects keep
b) Finding of PoE and tuning of I: S can adjust I on updating their location to S through broadcasting. Items which
the basis of current patient’s health condition. To do so, we are frequently used in daily life routine are searched using
run the forward-backward algorithm using TensorFlow [40] push-based searching. In pull-based searching, S broadcast the
for inferring the most likely final state from the observa- Ipkts in the network at the time of user query. Objects which
tion sequence. For better understanding, we took an example are not needed immediately and moves less frequently are con-
where patient’s health condition is continuously varying from sidered for the pull-based searching. Moreover, in pull-based
Normal (1)—Healthy (2)—Sick (3)—Normal (4)—Normal (5) searching, content publisher interacts less with the content con-
on dayn , dayn+1 , . . . , dayn+m , respectively, where n > = 1 sumer which allows the consumer to obtain scalability from
and m >= 0. Table I shows the result where most likely final the network.
state for the observation sequence is !PoE as state posteriors 3) Actuation Control: NHealthIoT also supports smart
over all hidden states of !PoE (0.632) is higher than PoE. object control application using NDN in which smart
If according to HMM, S finds that there is a PoE, it sets home users can control smart devices (in an obstruction-
the value of I low (at the interval of 5 min), otherwise high triggered/time-based manner/remote) in an active or passive
(at the interval of 10 min). Moreover, during the emergency S manner (such as, lighting fixtures, TV, smart door, surveil-
informs to CS and Fmem through Ipkt(s). lance, etc.). The obstruction-triggered approach is used on
c) Estimation of model parameters: We train the model the doors, bed, and drug cupboard to track the patient’s
using the EM algorithm for estimating the model parameters pattern of movement and pattern of medicine intake using
A and B for which observed data are the most likely. NDN. Time-based approach automatically controls the devices
The new transition and emission matrix are as follows. at the occurrence of pre-specified time, while devices can be
1) Transition probability controlled remotely by the authorized users.
 
!PoE: {!PoE = 0.933390 PoE = 0.066609} In Section VII, we have shown how our NHealthIoT system
(A) = .
PoE: {!PoE = 0.103016 PoE = 0.896983} implements and uses these features.
2) Emission probability
  B. NDN-Based Data Forwarding
!PoE: {H = 0.724848 Hb = 0.232603 Be = 0.042547}
(B) = . When there is no emergency event detection; S, CS, and
PoE: {H = 0.077290 Hb = 0.087874 Be = 0.834834}
Fmem communicate through the simple pub/sub mechanism
Furthermore, we compute the probability of the PoE state (a push-based multicast feature) where health data is published
over multiple training steps (see Fig. 3) and compare the true by S and is subscribed by CS and Fmem .
over predicted probability of state PoE (see Fig. 4). We also When an emergency healthcare event occurs, S intimates
calculated the accuracy of the model for finding the state PoE the CS through an Ipkt with emergency flag bit enabled. For
which is 98.6%. healthcare systems, reliability is of primary concern; therefore,
2) Searching for Smart Objects: NHealthIoT allows smart data forwarding strategy must be adaptive to the network con-
home inhabitants to search RFID/sensor-augmented objects, dition which refers to traffic type, content priority, network
such as key rings, medicine, books, furniture, etc., in the status, such as signal quality (SQ), availability of forwarding
smart home environment using NDN communication. The interfaces. The most reliable forwarding strategy is to for-
object search returns the relative position of a smart object ward the Ipkts to all the available interfaces. This strategy is
w.r.to its surrounding reference objects. In this, information resilient to network failure and adaptive to network condition
996 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 49, NO. 5, MAY 2019

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

Fig. 6. AUC for TB.

Fig. 7. Correlation among different predictors of the dataset.

Fig. 5. Confusion matrix of various classifiers.

2) the test set (40%). We apply cross-validation (holdout) on


the training set and performance of classification algorithms
is calculated on the test set.
a) Classification algorithms and their performance:
We consider the most popular nine statistical classifi-
cation algorithms and then evaluate and compare their
performance on the test set. Classification algorithms are neu- Fig. 8. Out-of-bag feature importance.
ral network (NN) [44], support vector machine (SVM) [45],
Naïve Bayes (NB) [46], K-nearest neighbor (KNN) [47],
discriminant analysis (DA) [48], generalized linear model
[logistic regression (LR)] [49], decision tree (DT) [50], and
ensembles (AdaBoost (Ada) [51] and TreeBagger (TB) [52]).
All algorithms have some pros and cons which are consid-
erable according to the data being analyzed and thus have
a relative importance.
Table IV shows the performance of these nine algorithms
for the accuracy, precision (positive predictive value), recall Fig. 9. AUC for TB_r.
(actual positives that are predicted positives), F-score, and
false alarm rate. Fig. 5 shows the comparison of confusion how or why that prediction was made. Therefore, we select
matrix of all selected algorithms where Yes represents the TB to model the patient’s vital signs at the CS. Fig. 6 shows
true positive, misclassified within Yes is false negative (type the ROC curve for the TB (24 attributes) in which area under
II error), No represents the true negative while misclassified curve (AUC) is 0.99817.
within No is false positive (type I error). The performance of TB is better among others for cor-
The performance of a remote health monitoring systems rectly predicting the disease. But the false alarm rate (Type I
depends upon the accuracy of the correctly identifying the error) is still present. To reduce this, it is important to select
possibility of patient’s hospitalization (i.e., high recall) with only most important features from the dataset. First of all, we
reduced number of false detection (alarm) of an emergency calculate the correlation among different predictors as shown
case (i.e., high precision). From a healthcare system perspec- in Fig. 7, where a higher value indicates highly correlated
tive, it is more important to classify yes correctly than a no. pairs of predictors. But the results do not show any strong
According to this, TB and SVM have the best performance relationship between any two predictors. Therefore, we use
[there is no error for detecting the disease (type II error (false the out-of-bag for estimating the importance of the features
negative) is 0) which makes the system more reliable] among (see Fig. 8) and then select the features of importance greater
other algorithms. But SVM is a black-box classifier [45], i.e., than 0.3. We again train and test the TB for reduced fea-
it is not possible to know the derivation of classification results. tures set (17 attributes). The confusion matrix result of reduced
While predicting the pattern of diseases, it is not only impor- TB (TB_r) is shown in Table IV. Fig. 9 shows the ROC curve
tant to achieve correct prediction, but we require interpreting for TB_r in which AUC is 0.99991.
998 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 49, NO. 5, MAY 2019

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

A(T6 ) = {{T3 , T4 }} A(T7 ) = {{T3 }}


A(T8 ) = {{T4 , T5 }} A(T9 ) = {{T8 }} A(T10 ) = {{T9 }}
A(T11 ) = {{T9 }} A(T12 ) = {{T2 , T10 }}
A(T13 ) = {{T12 }} A(T14 ) = {{T12 , T11 }}
A(T15 ) = {{T13 , T14 }}.
Fig. 10. Precedence graph of a 15-task workflow. ⎡ ⎤ ⎡ ⎤
0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
⎢ ⎥ ⎢ ⎥
⎢0 0⎥ ⎢0 0 0 0 0 0 1 0 0 0 0 0 0 0 0⎥
⎢ 0 0 0 0 0 0 0 0 0 0 1 0 0 ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎢2 0⎥ ⎢0 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥
A. Extended WIFA Model for NHealthIoT ⎢ 0 0 1 1 1 0 0 0 0 0 1 0 0 ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎢3 0 0 0 0 1 0 1 0 0 0 0 0 0 0⎥⎥ ⎢0 0 0 0 0 1 0 0 0 0 0 0 0 0 0⎥
⎢ ⎢ ⎥
In any workflow, there can be a possibility of self-loop ⎢
⎢0



⎢0 0 0 1 0 1

⎢ 0 0 0 0 0 0 1 0 0 0 1 0 0 0⎥ ⎢ 0 0 0 0 0 0 0 0 0⎥

where a task Ti is a predecessor of itself while in another ⎢
⎢0



⎢0 1 0 1 1 0

⎢ 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥ ⎢ 0 0 0 0 0 0 0 0 0⎥

case, a task Ti is a predecessor of Tj and Tj is a prede- ⎢
⎢0



⎢0 0 0 0 0 0

⎢ 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥ ⎢ 1 0 0 0 0 0 0 0 0⎥

cessor of task Ti (closed loop). We assume that closed and ⎢
p = ⎢ 0
⎥  ⎢
, =

0 0 0 0 0 0 0 1 0 0 0 0 0 0⎥ c ⎢0 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥
self-loops are executed only once. To consider the situations ⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎢0 0 0 0 0 0 0 0 0 1 1 0 0 0 0⎥ ⎢0 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥
where there are needs to check any condition more than once, ⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎢0 0 0 0 0 0 0 0 0 0 0 1 0 0 0⎥ ⎢0 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥
then either number of counts or a timestamp can be added to ⎢ ⎥ ⎢ ⎥
⎢0 ⎥ ⎢0 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥
⎢ 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥ ⎢ ⎥
WIFA model. ⎢ ⎥ ⎢ ⎥
⎢0 ⎥ ⎢0 0 0 0 0 0 0 0 0 0 0 0 0 0 0⎥
⎢ 0 0 0 0 0 0 0 0 0 0 0 1 1 0⎥ ⎢ ⎥
To find the new precedence matrix P of T for detecting the ⎢ ⎥ ⎢ ⎥
⎢0 0 0 0 0 0 0 0 0 0 0 0 0 0 1⎥⎥ ⎢0 0 0 0 0 0 0 0 0 0 0 0 0 1 0⎥
⎢ ⎢ ⎥
condition of self and closed loops, we reduce P to P . ⎢
⎢0



⎢0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 1⎦ 0 0 0 0 0 0 1 0 0⎥
P = (Pij )m∗m is precedence matrix of T. ⎣ ⎣ ⎦
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1) If Pij = 1 where i = j, then Pij = 2.
2) If Pij = 1 and Pji = 1, i < j, then Pij = 2 and Pij = 1. For example, P [1], [2] and P [1], [3] are 1 in P , i.e., T1
In NHealthIoT, we also consider that if a task Ti is conflict is direct predecessor of T2 and T3 ; C [1], [6] is 1 in C , i.e.,
to Tj and Tk then it is not necessary that Tk is also conflict to Ti . T1 conflicts with T6 ; A(T1 ) = ∅ in precondition set shows that
Therefore, the state transitions rules for extended WIFA model T1 is executable when the workflow is started while A(T2 ) =
are as follows. {{T1 }} shows T2 is executable when T1 is executed.
If Sa (Ti )Sb , then ∀Tj ∈ T. Now, to examine the execution of this workflow, T1 is only
1) If Tj = Ti , we consider the following two cases. executable task. So, state S0 = (1 0 0 0 0 0 0 0 0 0 0 0 0 0 0).
Case A) If Pij = 0 then Sb (Tj ) = 2. Let S0 (T1 )S1 , then based on the state transition rule, we have
Case B) If Pij = 2 then Sb (Tj ) = 2.
2) If Tj = Ti , then the state value of Tj at new state Sb
S1 (T1 ) = 2 (Rule 1A)
depends on its state value at state Sa . We consider the
following four cases. S1 (T2 ) = S1 (T3 ) = 1 (Rule 2A)
Case A) Sa (Tj ) = 0 S1 (T4 ) = S1 (T5 ) = S1 (T6 ) = S1 (T7 )
If Pij = 1 and ∃A ∈ A(Tj ) such that = S1 (T8 ) = S1 (T9 ) = S1 (T10 )
Sb (Tk ) = 2 for any Tk ∈ A, then Sb (Tj ) = 1;
= S1 (T11 ) = S1 (T12 ) = S1 (T13 ) = S1 (T14 )
otherwise, Sb (Tj ) = 0.
Case B) Sa (Tj ) = 1 = S1 (T15 ) = 0
If Cij = 0, then Sa (Tj ) = 1; otherwise, Thus, state S1 = (2 1 1 0 0 0 0 0 0 0 0 0 0 0 0).
Sb (Tj ) = 0.
Case C) Sa (Tj ) = 2 For the remaining steps, we follow the state transitions rules
If Pij = 1 and ∃A ∈ A (Tj ) such that Sb (Tk ) = of extended WIFA model till no more tasks are executable in
2 for any Tk ∈ A, then Sb (Tj ) = 3; otherwise, the executed state. For example, we consider the execution of
Sb (Tj ) = 2. tasks of an emergency WF of NHealthIoT. Fig. 11 shows the
If Pij = 2, then Sb (Tj ) = 2; flow of task execution for one possible case
Case D) Sa (Tj ) = 3
If Cij = 0, then Sb (Tj ) = 3; otherwise, T1 → T3 → T4 → T8 → T9 → T2 → T7 → T10 → T11 →
Sb (Tj ) = 2. T12 → T13 → T15
A precedence graph of NHealthIoT for handling the emer-
gency WF as T = {T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , where state S15 is (2 2 2 2 0 0 2 2 2 2 2 2 2 0 2) has no
T11 , T12 , T13 , T14 , T15 } is shown in Fig. 10. The precedence more executable task.
matrix P , conflict matrix C, and precondition set of each task NHealthIoT workflow model shows that S and CS are coor-
A are as follows: dinating, and synchronizing their tasks efficiently for handling
the emergency event. Moreover, it is adaptive to new possible
A(T1 ) = ∅, A(T2 ) = {{T1 }}, A(T3 ) = {{T1 }} changes on the existing workflow as it requires changes only
A(T4 ) = {{T3 , T4 }}, A(T5 ) = {{T3 }} in the task and the relationship among them.
1000 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 49, NO. 5, MAY 2019

Fig. 13. System setup using NDN-IoT.


Fig. 11. State transition diagram of the example workflow.

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

service(s). Signed version of a command includes name pre-


fix, command name, and security parameters. Moreover, each
node has a function update_capabilities () to update available
capabilities to the controller. For example, to show the working
of light control, three capabilities are added to Co-node, such
as “switch on light” (remote or time-based), “switch off light”
Fig. 15. System setup for customized device control using NDN. (remote or time-based), and “monitor” (for the occurrence
of a particular event). Whenever Co-node receives any Ipkt,
it extracts the information of required operation to perform.
Moreover, CS is using NDNrepo [65], [66] to store the fetched
data using the fields patient name, patientID, and timestamp.

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

Fig. 19. Latency between the sink node and S.


Fig. 17. Packet delivery ratio.

flooding generates lots of redundant messages which waste


network capacity and increases network contention and packet
collisions. On the other hand, Cdf is reducing the generation
of a number of messages (forwards to only selected interfaces)
by exploiting the benefits of NDN stateful plane and multipath
forwarding. Cdf outperforms flooding and showing that Cdf is
more suitable for forwarding emergency notifications even in
worst situations.
Fig. 18. Latency.

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.

Fig. 21. Latency for pull and push-based search.


Fig. 24. Min. and Max. L (caching enabled).

Fig. 22. TRK-MPC5604B free-scale motor car.

When all nodes in the network are in fixed position (static),


we can say through results that caching plays an important Fig. 25. Packet delivery ratio.
role as it increases the data availability and reduces the L
(content retrieval delay). But the L can increase when node
are mobiles. If an intermediate node is switched off or moved for ten times to mitigate the effect of hardware dependency.
after the Ipkt transfer, then Dpkt will not reach to a destination Then, an average is taken. Cars are going near to RSUs in
node as in NDN, Dpkt follows the corresponding Ipkt path in a random manner, and they are sparsely connected. Moreover,
reverse. This shows that the routing of Ipkts and Dpkts in the we increased the number of nodes (cars and RSUs alike) one-
resource-constrained IoT also plays a significant role in reduc- by-one to analyze the impact of the number of nodes on the
ing the L which is not addressed yet. Therefore, to analyze the network.
impact of NDN routing on caching for efficiently retrieving Fig. 23 shows the impact of caching on L during data col-
the requested content in a mobile resource-constrained envi- lection. We used three mobile and six static nodes in which
ronment, we develop a scenario in which smart vehicles are one mobile node acted as a consumer and another mobile node
moving in a specified area and communicating with each other as a producer. In the first round, with-caching case consumes
and to the stationary road side units (RSU) (Fig. 22). In order higher delay than without-caching case because caching adds
to strengthen our experimental analysis, we further carry out some extra data storage and data retrieval time in the delay.
experiments with three moving and six static vehicles inter- Once data is spread in the network, the delay is decreasing
mittently communicating with each other and facing frequent over time and is almost constant in rounds 8–10. Fig. 24 shows
disconnection. the variation of the L (minimum and maximum value) when
The proposed mobile scenario consists of three TRK- caching is done on the intermediate nodes of the network.
MPC5604B Freescale [70] motor cars and six desktop com- When a Dpkt can choose any path to reach the request-
puters (acting as RSUs) intercommunicating through IEEE ing node (!Dpkt-R), packet loss decreases with the increase of
802.15.4. Each motor car and RSU is enabled with the nodes density. On the other hand, when a Dpkt follows the cor-
programmed Freeduino board with Arduino wireless SD shield responding Ipkt path in reverse (Dpkt-R), chances of packet
Xbee. The messages are stored in the 4 GB SD card attached loss increases as intermediate nodes can be switched off or
to the Arduino wireless SD shield. has moved after the transfer of Ipkt. Fig. 25 shows the impact
We placed all three cars in such a way that they are not in of the Dpkt-R and !Dpkt-R schemes on the PDR (requesting
communication ranges of each other initially (run for 600 s.). node is generating 5 Ipkts/s). In !Dpkt-R, packet loss is high
First, we started with only two cars and repeated the procedure when the numbers of nodes are less in the network, while it
1004 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 49, NO. 5, MAY 2019

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.

You might also like