Conference PaperPDF Available

Reliability Side-Effects in Internet of Things Application Layer Protocols

Authors:

Abstract and Figures

With the widespread use of IoT devices in safety-critical applications, new constraints should be addressed in designing IoT infrastructures. Reliability is one of the most important characteristics of an IoT system which should be satisfied with high consideration. The way how IoT devices communicate with each other in different layers of architecture, plays an important role in building a reliable IoT infrastructure. Maintaining the desired level of reliability in IoT applications through application layer protocols, imposes a noticeable amount of overhead to different characteristics of IoT systems. In this paper, we are going to investigate these overheads through practical evaluations on a conventional IoT infrastructure. To this end, we will compare two well-known application layer protocols, i.e., MQTT with many reliable features and CoAP with fewer reliability mechanisms, from different aspects. Conducted experiments in Arduino test-beds illustrate while MQTT provides more reliable and predictable infrastructure for IoT devices, on average, it imposes 364uW of more power consumption than CoAP for delivering the same amount of data. Furthermore, utilizing MQTT as a reliable application layer protocol, imposes 4.99x of more latency in comparison with CoAP.
Content may be subject to copyright.
Reliability Side-Effects in Internet of Things
Application Layer Protocols
Bardia Safaei, Amir Mahdi Hosseini Monazzah, Milad Barzegar Bafroeiand Alireza Ejlali§
Department of Computer Engineering
Sharif University of Technology
Email: {bsafaei, ahosseini, mbarzegar}@ce.sharif.edu, §ejlali@sharif.edu
Abstract—With the widespread use of IoT devices in safety-
critical applications, new constraints should be addressed in
designing IoT infrastructures. Reliability is one of the most
important characteristics of an IoT system which should be
satisfied with high consideration. The way how IoT devices
communicate with each other in different layers of architecture,
plays an important role in building a reliable IoT infrastructure.
Maintaining the desired level of reliability in IoT applications
through application layer protocols, imposes a noticeable amount
of overhead to different characteristics of IoT systems. In this
paper, we are going to investigate these overheads through
practical evaluations on a conventional IoT infrastructure. To
this end, we will compare two well-known application layer
protocols, i.e., MQTT with many reliable features and CoAP with
fewer reliability mechanisms, from different aspects. Conducted
experiments in Arduino test-beds illustrate while MQTT provides
more reliable and predictable infrastructure for IoT devices, on
average, it imposes 364uW of more power consumption than
CoAP for delivering the same amount of data. Furthermore,
utilizing MQTT as a reliable application layer protocol, imposes
4.99x of more latency in comparison with CoAP.
KeywordsInternet of Things, Reliability, Power Consumption,
Performance, Protocol, Application, CoAP, MQTT.
I. INTRODUCTION
Internet of Things (IoT) is a system comprising a commu-
nicative infrastructure which connects an enormous amounts of
identified, low-power embedded devices through exploitation
of Internet and communication technologies without human
intervention. The potential applications of IoT are widespread,
starting from smart homes to smart cities, many of them
require real-time and low power communications, e.g., health
care applications.
McKinsey Global Institute R
has estimated that the finan-
cial impact of the IoT market on the global economy may reach
as much as $11.1 trillion by 2025 [1]. On the other hand the
total number of smart connected devices around the world is
rising rapidly, that many institutions such as IHS R
reported
20.3 Billion connected “Things” will Be in Use in 2017 which
would rise up to more than 75 billion at the end of 2025. As
it has been illustrated in Fig. 1, based on the informations on
population and total number of connected devices [2], [3], we
have anticipated that there will be more than 9 smart devices
per person at the end of 2025. This amount of interconnected
devices would raise many challenges.
Considering the rapid growth in number of connected IoT
devices, different international standardization bodies such as
Internet Engineering Task Force (IETF), IEEE, The 3rd Gener-
ation Partnership Project (3GPP) standardized new protocols
to meet the requirements and emerging applications of IoT.
Reliability is one of the most important requirements in IoT
communication protocols. In other words, data transmission in
harsh environments via dynamic and lossy links is inherently
unreliable, leading to excessive re-transmissions, large amount
of energy consumption and long latency in the shared wired
and wireless medium. Therefore, reliability plays an important
role not only in delivering data in IoT infrastructures, but also
due to its side-effects on performance and energy consumption
of IoT devices. To this end, reliable and energy-efficient data
delivery has to be considered as two important aspects of IoT
applications.
The primary goal of an IoT infrastructure is to ensure
effective communication between objects and build a reliable
bond among them using different types of applications. Inter-
connecting billions of smart devices throughout the internet,
necessitates a flexible layered architecture for IoT infrastruc-
tures [4]. Nevertheless, a vast number of provided architectures
has not yet converged to a standard model. However, three
layers i.e., Objects (also known as perception), Network, and
Application Layers are in common among all of the provided
architectures. Indeed, more complicated architectures has just
expanded each of the mentioned three layers in to more layers
to provide more accuracy.
Among these three layers, the application layer is respon-
sible for providing services and determines a set of protocols
for message passing at the application level. These protocols
could reliably transfer data between nodes through exchanging
acknowledgement packets (Ack) or simply refusing Acks to
save other resources, e.g., power and bandwidth with the cost
3.96
ConnectedDevices
9.27
Connected Devices
0
10
20
30
40
50
60
70
80
2010 2015 2020 2025
Billion
Year
World Population
Connected Devices
2.09
1.8
1.83
Connected
Devices Per Person
2.09
Connected
Devices Per Person
Fig. 1: Estimated Number of Connected Devices Per Person
By 2025
of lower reliability.
Message Queue Telemetry Transport (MQTT) [5] and
Constrained Application Protocol (CoAP) [6] are two major
IoT application layer protocols which recently gained atten-
tion. These open source protocols have been designed for
lightweight devices to specifically address the difficult require-
ments of real-world IoT deployment scenarios. These protocols
employ “publish-subscribe” and “client-server” architectures
respectively to transfer data between nodes.
In this paper we are going to investigate the side-effects
of reliability on IoT communication protocols. To this end,
we consider MQTT as our reliable protocol, since it utilizes
acknowledge policy in its transmissions. As our baseline,
we consider CoAP communication protocol which utilizes a
poor level of reliability approaches in its transmissions. We
implement both of these communication protocols in real test-
bed, i.e., Arduino [7]. To evaluate the side effects of providing
reliability on communication protocols, we measure power
consumption and performance of our test-beds during the
transmissions.
In this study, we are going to clarify the existing trade-
offs between reliability and resource constraints in a real IoT
infrastructure. The evaluation results of this study would pave
the way for selecting an appropriate application layer protocol
for a specified IoT application. For example, although MQTT
is a reliable protocol, our evaluation results show that it may
not be an appropriate choice for IoT applications where timing
and power constraints are more important than reliability.
Indeed, for these kinds of applications it has been shown that
CoAP would be a much better choice by providing less power
consumption and node to node latency.
The rest of this paper is organized as follows: Section II
represents a background on the application layer protocols and
their structure in IoT, concentrating on MQTT and CoAP. In
Section III, the system setup and experiment methodology has
been discussed. Experimental results are stated in Section IV.
Finally, this paper is concluded in Section V.
II. IOT APP LI CATI ON PROTOC OL S
Delivered services by IoT infrastructures cover a broad
range of applications from non-critical applications like in-
forming the level of humidity or brightness in a smart green-
house to critical applications like monitoring and analyzing
biological data from patients in real-time health-care services.
In each of these application, there are a number of customers
which require desired services. The way how IoT devices
connect to each other, plays an important role in satisfying
the services. Basically, the IoT architecture consists of three
layers, i.e., object layer, network layer, and application layer.
Among them, the last one is responsible for managing the
IoT connections in level of application via applied protocols.
As it is illustrated in Table I, in a typical IoT architecture,
application protocols act as an interface between network layer
and the services in the application layer. The most widespread
application protocols used in IoT infrastructures are MQTT,
CoAP, Extensible Messaging and Presence Protocol (XMPP)
[8], Advanced Message Queuing Protocol (AMQP) [9] and
Data Distribution Service (DDS) [10].
According to the estimated market share of IoT appli-
cations in 2025, health care, manufacturing and electricity
will dominate other applications with 41%, 33% and 7%
of contributions, respectively [4]. In these applications, the
required application layer connectivity which is delivered via
intended protocols, should be accompanied with reliability, low
energy consumption and low delay to prolong the lifetime of
the sensors and to minimize the probability of disconnection.
Among the mentioned conventional application layer proto-
cols, AMQP with 8 byte header size imposes high network
overhead and power consumption and XMPP does not provide
any Quality of Service (QoS). On the other hand, although
DDS provides many desirable concepts such as reliability, real-
time features and providing 23 kinds of QoS [4], its complexity
of design could make it a low priority for low cost IoT
infrastructures. Therefore MQTT and CoAP could be preferred
against the other protocols. These two protocols are somehow
the two sides of a same coin; both are an application layer
protocol but with different characteristics. In the following,
we will focus on introducing these two protocols more deeply.
A. CoAP
Due to the improperness of HyperText Transfer Protocol
(HTTP) in resource constrained systems such as embedded
devices and IoT applications, the IETF Constraint RESTful
Environment (CoRE) Working Group designed CoAP for
application layer communications [6]. CoAP is a client-server,
web transfer protocol optimized for connecting distributed
nodes in constrained environments. As HTTP, CoAP has the
responsibility to transfer documents but with a lower over-
head and taking into account the resource, power and energy
constraints. This is due to the employment of UDP protocol
instead of TCP protocol in the structure of CoAP and mapping
existing string fields of HTTP into fields with dimensions as
small as a bit. Consequently, CoAP packets are far smaller
than HTTP packets. While CoAP benefits from small packet
sizes, since it is based on UDP protocols, it suffers from
reliability challenges. Indeed, UDP based protocols such as
CoAP, provide less reliable transactions because the loss or
failure of a packet is not important for the transmitter. To over-
come this challenge, CoAP exploits a two layer approach in
its architecture: 1) Transaction Layer and 2) Request/Response
Layer. The Transaction layer is responsible for single message
exchange between end nodes and the Request/Response layer’s
duty is to handle request/response transmissions and also the
TABLE I: Operating layers in an IoT infrastructure
resource management in the system [11].
To improve the reliability challenges for critical applica-
tions which exploit CoAP as their application layer protocol,
CoAP delivers a user controllable reliability flag called, “Con-
firmable”. Indeed, a poor level of reliability in CoAP could be
provided through labeling a message as Confirmable. In this
case, The transmitter tries to send the Confirmable message
up to a maximum number of times, according to a predefined
back-off algorithm for re-transmissions, until the receiver sends
back an Ack packet upon receiving the Confirmable message.
This confirms the message has been received, but still lacks
confirmation on whether its contents has been decoded cor-
rectly or not. On the other hand, there are “Non-Confirmable”
messages which have the same applicability as the “Fire and
Forget” approach in MQTT (which is going to be discussed
later). In this approach, the reception of the Ack packets does
not matter for the transmitter.
Furthermore, CoAP supports multicast features of UDP
to provide node addressing. It exploits a client-server based
architecture in which all the nodes could play as a client,
server or even both. Usually clients send their requests as GET,
POST,PUT and DELETE messages to the server nodes and
wait for them to respond. In conclusion, some of the most
promising features provided by the CoAP protocol include:
1) Resource Observation, 2) Block-wise resource transport, 3)
Resource Discovery, 4) Integration with HTTP, and 5) Security.
Considering the security in CoAP, it should be noticed that
CoAP employs Datagram Transport Layer Security (DTLS)
protocol [12] to secure its communications through message
encryption. DTLS is a protocol based on TLS [13] which
secures UDP.
B. MQTT
MQTT is an open source, application layer, publish-
subscribe messaging protocol, designed for lightweight Ma-
chine to Machine (M2M) and IoT communications. Initially,
MQTT was developed by IBM R
in 1999 and implemented
across a variety of industries. Two examples of well-known
projects which exploited MQTT as an application layer proto-
col are Smart Lab [14] and Flood Net [15]. The architecture of
MQTT is based on a publish-subscribe model and its purpose
is to exchange messages among clients through a common
broker with an inherent reliability.
In a publish-subscribe architecture, there is a UTF-8 string
which is used by the broker to filter messages for each
connected client, known as a “topic”. A client (subscriber)
sets a request with a desired topic of interest to the server
(known as the broker); Immediately after reception of this
request, the node which produces data (publisher) sends the
data (related to the specified topic) towards the broker and
afterwards the broker forwards the gathered information to
the subscriber. In this context, each message is published
under a defined topic (an address) which could be accessed by
all other nodes, subscribed to that topic. It should be noted,
there isn’t any constraints on the number of subscriptions in
defined topics for a single node in the system. All of the
nodes which are subscribed to a topic by the broker, would
be able to receive the related messages. This connection is
being established through transmitting a CONNECT message.
CONNECT messages require an acknowledgment through a
CONNACK message [11]. In publish-subscription, publishers
do not need to have any knowledge about the identity and
even the existence of subscribers and vise versa, so it’s called
a “loosely-coupled” architecture. This decoupling provides the
opportunity for better scalability than traditional clientserver
models.
Providing a reliable transaction is one of the core goals
in MQTT. MQTT provides reliable communications by em-
ploying TCP as its under layer transport protocol. This makes
MQTT a top priority for devices which want to communicate
in harsh operating environment, e.g., IoT and WSNs. Depend-
ing on how reliably messages should be delivered to their
destinations, MQTT provides three levels of QoS:
1) QoS(0): This is the simplest form of QoS provided
in MQTT. In This level of QoS, which is also called
a Fire and Forget mechanism, once the transmitter
sends the message, it will not wait to check the deliv-
ery of the message. Also, in addition to the message
delivery, the integrity of the delivered message does
not matter for the transmitter.
2) QoS(1): This level is suggesting a more reliable
communication. In this case, the sender will (re-
)transmit the packet as long as it receives the Ack
packet. In this level, it is probable for a receiver to
receive duplicates of packets. Accordingly, this QoS
is delivering the message for at least once.
3) QoS(2): The highest degree of reliability is provided
in QoS(2), which ensures not only the reception of the
packets (by receiving Ack packets from the receiver)
but also that they are delivered only once to the
destinations [16]. Delivering only one copy of the
message to the destination will reduce the bit-error-
rate (BER) over the wired or wireless media and
improve the packet delivery probability. Thus, QoS(2)
provides a more reliable communication than QoS(1).
As CoAP’s Non-Confirmable messages, the QoS(0) does
not guarantee any reliability, while MQTT’s QoS(1) could
operate in the same level as CoAP’s Confirmable messages
and guarantee an Ack-based reliability. It should be noted
that MQTT’s QoS(2), which guarantees the non reception of
duplicated packets by the receiver, does not correspond to any
similar QoS levels in the CoAP protocol [11]. The publish-
subscribe architecture in MQTT protocol enables the support
for different types of traffics mainly one-to-one, one-to-many
and many-to-one.
Besides the promising features of MQTT, a major issue
in MQTT is the concept of topic matching. Topic match-
ing will indicate its importance as a node subscribes to a
defined topic. In MQTT, topics are designed as the same
as a file system. In other words, they exploit a hierarchy,
e.g., “kitchen/oven/temperature”. In subscription, wild cards
are allowed to determine the name of the desired topics. In
Table II, a list of allowed wildcards for the topic matching has
been explained briefly with their use-cases. Topic matching
in MQTT, imposes extra processing overhead to the nodes
and thus intensifies the pace of wearing-out of nodes and
consequently reduces the reliability of the entire system.
In addition to the provided levels of reliability (QoS) for
TABLE II: Topic Matching in MQTT
Example
Wildcard Description Topic Match Not Matched
+Employed for single-level topic matching /CE/+/Temperature /CE/Lab1/Temperature /CE/Lab2/Section3/Temperature
#Employed for multi-level topic matching /CE/GroundFloor/# /CE/GroundFloor/Lobby/Temperature /CE/1st-Floor/Room1/Temperature
transmitting messages in MQTT, this protocol also considers
some protective approaches in initializing a connection or
disconnecting the currently connected nods which makes it
a proper protocol for reliable IoT infrastructures. Indeed, at
the beginning of a communication, each of the clients which
want to be connected to the broker, specify a message known
as “Last Will and Testament (LWT)” message and send it to
the broker. This message is being employed to inform all the
other clients about an abrupt disconnection of a client, which
was subscribed to a shared topic with all of them. The LWT
includes the intended topic and is stored by the broker. This
message would not be multicasted until a sudden disconnection
of a node. On the other hand, if a client tries to disconnect
from the network in a graceful manner through transmitting a
“DISCONNECT” message, LWT will be discarded. This fea-
ture would provide a more reliable transaction, because when
a node is lost in the network and other nodes are not informed
about it, they may send data packets to a lost node while there
isn’t any receiver at the opposite side. Furthermore, security is
also another feature provided by the MQTT protocol. Infact,
as TCP is the under layer protocol for MQTT, brokers and
clients can benefit from message encryption via SSL and TLS
protocols.
III. SYS TE M SET UP
In this section, first we will provide a detailed information
about the employed hardwares for setting up the test-bed which
is later used for evaluating the efficiency of the most promising
IoT communication protocols in this study. Then, we will
introduce our experiment methodologies.
A. Test-bed Introduction
Fig. 2 includes the modules that have been used in this
study. We utilize Arduino as our main platform for con-
structing a simple IoT infrastructure. Arduino is an open-
source platform with widespread applications as a development
board. There are many variations of Arduino in the market.
Among them, Arduino Uno has the most popularity for IoT
applications due to its specifications. Fig. 2 (a) represents
the Arduino Uno platform which has been exploited in this
study. The detailed specifications of this platform could be
found in Table III. For programming the Arduino platform, the
provided Integrated Development Environment (IDE) which
comes with the device has been used. As it is illustrated in
Table III, the promising features delivered by Arduino Uno
and the cheep price of this platform, makes it an appropriate
candidate for developing many IoT applications. One of the
interesting characteristics of this platform is its ability to work
with peripheral devices through its USB port.
Wireless communications in the free space is one of the
aspects of IoT infrastructures. Hence, we are going to setup the
test-bed through the WiFi technology. To this end, the Arduino
WiFi module, i.e., ESP8266 has been employed. This module
TABLE III: Technical Specifications of Arduino Uno
Parameter Value
Microcontroller ATmega328P
Operating Voltage 5 v
Digital I/O Pins 14 (of which 6 provide PWM output)
PWM Digital I/O Pins 6
Analog Input Pins 6
DC Current per I/O Pin 20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 32 KB (ATmega328P) of which
0.5 KB used by bootloader
SRAM 2 KB (ATmega328P)
EEPROM 1 KB (ATmega328P)
Clock Speed 16 MHz
Length 68.6 mm
Width 53.4 mm
Weight 25 g
Price 22 $
TABLE IV: Technical Specifications of ESP8266
Parameter Value
Input Voltage 5 v
Frequency 2.4 GHz
Range 100 m
Communication Protocols IEEE 802.11b/g
Wake Up and Transmit Packet <2 ms
Leakage Power <1.0 mW
can be connected to the Arduino platform through its USB
port. Fig. 2 (b) shows the ESP8266 module. This module is
equipped with integrated TCP/IP protocol stack which easily
enables the connection of existing Arduino micro-controllers to
the WiFi network. ESP8266 in addition to providing the ability
to communicate with other processors which run intended
applications, could host an application itself. Table IV shows
the technical specifications of ESP8266.
B. Experiment Methodologies
To investigate the side-effects of CoAP and MQTT proto-
cols, we have established a simple scenario using the platforms
introduced in the previous sub-section. Indeed, we have em-
ployed two Arduino platforms with their WiFi module, acting
as the two end-nodes of the network, i.e., A and B. These
nodes are located at a distance of 1m from each other. We
conduct our experiments in standard room conditions. Note
that the mentioned scenario could be extended to accommodate
multiple nodes. In case of MQTT, A is generating data packets
as a publisher and simultaneously is playing as a subscriber to
(a)
in the measurement science (e.g., MISSENARD index monitoring).
The remainder of the paper is organized as follows. Section 2pro-
vides related works done so far in this field. Section 3presents the
materials used for this experiment. Section 4shows layered archi-
tecture, experimental setup, and determination process which is
followed by Section 5that illustrates results obtained from the
study, whereas Section 6concludes this paper.
2. Related work
At the time of writing, no similar works were found that talk
about the MISSENARD index measurement and monitoring using
IoT and cloud services. But few researches have shown applications
developed to measure environmental and other parameters using
IoT and enabled clouds. Physical activity of a person can be mea-
sured and monitored using Internet of Things based cloud services.
Ray [10] has proposed an architectural framework to handle the
information about the physical activity of a human body by involv-
ing Bluetooth and IEEE 802.15.4 technologies that measures ECG,
number of steps, and dissolved oxygen into the blood. An article
presents the measurement of vitals of elder person by architecting
the H3IoT (Home Health Hub Internet of Things) at homely atmo-
sphere. It uses Bluetooth, Zig Bee, radio frequency (RF), etc. tech-
nologies to monitor ECG, EEG, EMG, tilt, movement, respiration,
blood pressure, blood glucose, thermometer, and dissolved oxygen
in blood using cloud services [11]. A recent research has
proposed to integrate the body of sport person with the sport
equipments to the team management, coach, and even with their
fans through social networking [12]. Visualizations along with
the IoT based cloud services such as injury risk analysis, compact
analysis, and contextual awareness analysis are merged with this
solution. Sebastian and Ray [14] have gone one step above and pro-
posed to connect soccer with the footballer through the use of IoT
and cloud services. IHoH (Internet of Health of Home) architecture
is presented to monitor carbon monoxide, carbon dioxide, humid-
ity, temperature, LPG gas, air pressure, and ambient light at indoor
(home) to inform the inhabitants by alarming, digital spraying,
switch on/off of air cooler, air conditioner and exhaust fan to save
the life of occupants from threats. Here, IoT cloud services are used
to serve visualization, heat energy, and other risk analysis [13].
Few other papers do validate the integration of IoT cloud services
to monitor heat index of environment, air borne particulate matter
of 2.5
l
m size, and wood equilibrium moisture content (EMC) by
[15,21,16] respectively. It is also found that IoT and cloud enabled
agriculture is currently getting its shape to be smarter in near
future [22]. Salamone et al. [9] describes a low-cost and open-
source hardware architecture which is able to detect the indoor
parametric variables necessary for the Indoor Environmental Qual-
ity (IEQ) calculation consisting of some sensors and an Arduino
board. This article presents a nano Environmental Monitoring
System (nEMoS) that is developed based on inexpensiveness and
the consistency of the detected data. AirQualityEgg [23] is a
community led sensor network that comprises of a small electronic
sensing system which sends environmental data about NO
2
and CO
concentration to the internet over WiFi. The data is sent to the
Opensensors.io based IoT cloud platform which both stores and
provides free access to the data to the users. Xively supported visu-
alization and ability to generate triggers for tweets and SMS alerts
allow inhabitants to gather knowledge about their peers. Similar
solution using private IoT cloud platform has been devised by the
Specksensor
TM
[24], a PM2.5 sensor system. It is designed to mea-
sure particulate matter of 2.5
l
m borne in its surrounding air. It
uses WiFi to send the measured data to its private IoT cloudwhere
user can later on analyze the air condition. Real-time local visual-
ization support has also been provided.
3. Material used
The components of the study can be classified into four types
(a) Microcontroller system
It is based on Arduino Uno which is an open source physical
computing platform having following specifications, such as Atmel
ATmega328 microcontroller, 14 digital input/output pins, 6 analog
inputs, a 16 MHz quartz crystal oscillator, 32 kB Flash Memory,
1 kB EEPROM, 2 kB SRAM. It operating voltage is 5 V DC. Ardu-
ino Uno is easily programmed by an IDE (Integrated Development
Environment) that runs on developer’s computer, and can be
uploaded into its physical board. The IDE uses a simplified version
of C++ and the programming is supported by the Wiring language.
The IDE is located on https://www.arduino.cc/en/Main/Software.
Fig. 2 shows the actual Arduino Uno (see left).
(b) Sensor
It is a DHT11 sensor which uses a capacitive relative humidity
sensor and a thermistor to measure the surrounding air (environ-
ment), and spits out a digital signal on the data pin [operating
range: temperature 0–50 °C, relative humidity 20–90%], DHT11
sensor has been considered in this study due to its compatibility
with Arduino Uno, low cost, and low power capabilities, precision
Fig. 2. Arduino Uno (left), DHT11 sensor (right).
P.P. Ray / Measurement 92 (2016) 157–165 159
(b)
and accuracy rates are manageable in laboratory experimental set
up, the other specifications are as follows: 3.3–5 V power and I/O,
2.5 mA max current use during conversion, Good for 20–80%
humidity readings with 5% accuracy, Good for 0–50 °C temperature
readings ±2 °C accuracy, and 1 Hz sampling rate, Fig. 2 presents the
DHT11 sensor (See right), the library is available in GitHub repos-
itory on https://github.com/adafruit/DHT-sensor-library.
(c) Communication protocol
In this study, IEEE 802.11b/g/n protocol based Arduino WiFi
shield has been empowered in the experiment has been used for
ease of installation, compatibility, and mobility purposes. This is
a 2.4 GHz Ultra High Frequency (UHF) connectivity which is most
suitable communicating protocol which caters the connectivity to
a radius around 100 m WiFi access point or router to get accorded
to internet, Fig. 3 shows the physical Arduino WiFi shield. The fol-
lowings are the most important specifications of this shield, such
as operating voltage 5 V which is directly supplied from the Ardu-
ino Uno, supported encryption types: WEP and WPA2 Personal, on-
board micro SD slot, ICSP headers, supported by the HDG204 Wire-
less LAN 802.11b/g System in-Package (SiP), AT32UC3 provides an
Internet Protocol stack which is capable of TCP/UDP, FTDI (Future
Technology Devices International) connection enables serial com-
munication with the 32U for ease of debugging, WiFi library comes
pre-built into the Arduino IDE, and
(d) IoT Cloud interaction
Two cloud platforms have been chosen for this experiment (i)
ThingSpeak and (ii) Plotly. Both the clouds provide Application
Programming Interface (API) based interconnectivity with the
proposed system. API is a set of routines, protocols, and tools for
building software applications especially in cloud platforms. This
helps the developer to correlate the cloud services with the hard-
ware for data visualization, data storage, data analytics, and trig-
gering purposes. Plotly has made the study of graphical plotting
very easy, whereas ThingSpeak provides the plug-in based facility
to monitor the present value of MISSENARD index.
ThingSpeak (https://thingspeak.com) is an open IoT data plat-
form based on public cloud technology. ThingSpeak enables real
time data collection, analysis and actuation with an Open API. With
apps and plugins, data storage, visualization, monitoring and inte-
gration of user’s data with a variety of third party platforms,
including leading IoT platforms such as ioBridge, Arduino, Twilio,
Twitter, ThingHTTP, MATLAB have been made possible. Sensor data
is collected into each channel that has eight fields which can hold
any type of data, three location fields, and one status field. Various
apps such as, TimeControl (automatically perform actions at prede-
termined times with ThingSpeak app), TweetControl (listen to the
Twitterverse and react in real time), React (reacts when channel
data meets some certain condition), TalkBack (queue up command
for user’s device) improve the reaction measures [20].
Plotly (https://plot.ly) is a popular public data visualization
cloud service provider. Plotly provides community, professional
and enterprise data storage, visualization and analytics services
to the ordinary or IoT applications. Excel, CSV and XML data for-
mats are used to upload the data to its cloud servers. Python, R,
MATLAB and Julia based APIs are implemented in Plotly. Graphics
libraries such as, ggplot2, matplotlib, MATLAB chart conversion
techniques empower the visualization. Among many, HDF5, SAS,
SPSS, MS Access and ZIP file formats are used to temporarily store
the data before uploading to cloud. Pdf, svg and eps vector exports
facilities are incorporated into it. LDAP and directory integration
are another pillar of huge popularity behind Plotly. Node.JS sup-
ported 3D chart framing enable user data to get suitably processed
from Arduino, Raspberry Pi and Electric Imp hardware devices [20].
The system model for the experiment is presented in Fig. 4.
Initially, the microcontroller board is attached with DHT11 sensor
and WiFi shield. After giving power to the board, it is connected
via serial port of a desktop computer where Arduino IDE is pre
installed. At the same time, ThingSpeak and Plotly clouds are made
ready with specific APIs for communication with the system. Later
on, an appropriate algorithm (see Fig. 5) is coded on the IDE and
burned into the board. The rest is based on the algorithm and the
communication that is coordinated by the WiFi shield. User sitting
at the local desktop machine or remote location can access the real
time informationfrom the board and the clouds, respectively. Fig. 6
shows the experimental design comprising a laptop, Arduino Uno,
Arduino WiFi, a DHT11 placed over a bread board connected by
wires. Fig. 6 (left) shows the program running on IDE as well as
theserial monitor output to its right side. This resembles to the user
sittingnear the desktop to view serial monitor output in Fig. 4. Sim-
ilarly, Fig. 6. (right) shows the ThingSpeak output resembling the
user sitting on the terminal to view the IoT cloud output in Fig. 4.
4. Determination process
The overall system architecture is shown in Fig. 7, which is
based on a five-layered architecture. The layers have specific tasks
to do;
Fig. 3. Arduino WiFi module.
160 P.P. Ray / Measurement 92 (2016) 157–165
Fig. 2: Test-bed modules, (a) Arduino Uno, and (b) ESP8266
WiFi module
receive required data packets according to the intended topic.
On the other hand, B is acting as a broker which receives
the produced data from the publisher and forwards it to the
subscriber.
In case of CoAP, A is acting as a client which is setting a
request or transmitting data packets, and B is serving the node
A through accomplishing the required task. In this paper, in
order to fairly compare MQTT and CoAP, we have limited the
MQTT evaluations to the communication between the Broker
and the subscriber. More over, in both cases of evaluations
(MQTT and CoAP), the size of the payloads in the packets
has been set to 14 bytes of data.
IV. RES ULTS AND DISCUSSION
In this section, we will discuss the observations which
have been made through the experiments and compare the
performance of MQTT and CoAP in terms of communication
power consumption, latency and the level of predictability
provided by them to determine the costs of their deployment
in real-time IoT applications. Their efficiency has been also
studied. In the following subsections, we have investigated the
side-effects of utilizing a reliable application layer protocol on
power consumption, latency, efficiency and predictability.
A. Power Consumption
Due to the nature of IoT systems, power consumption
plays an important role for the node and in general, for the
system’s life time. Many activities in an IoT system would lead
to power and energy consumption. These activities could be
related to different operating layers, e.g., transceiver modules,
CPU processes, routing functionalities and communication
protocols. In this part, the amount of power consumed in a
communication by the MQTT as a reliable application protocol
and CoAP as a less reliable protocol, has been compared. As
it has been illustrated in Fig. 3, on average, MQTT consumes
nearly 364uW of more power than CoAP. This issue comes
from the reliable nature of MQTT protocol which imposes
extra overhead to the network. Indeed, utilizing TCP as an
under-layer protocol in MQTT, adds flow control mechanism to
the communication. Flow control provides reliable and ordered
delivery of data packets as well as congestion control. Flow
control enables the receiver to advertise its available buffer size
to the transmitter. To this end, in the initialization phase of a
socket connection and before sending any data, TCP requires
three packets to set up the connection. These flow control
transactions impose longer strings of data and consequently
more power consumption to the communication. On the other
hand, CoAP has been built on top of UDP and does not
support any flow control mechanism. In addition, the inherent
acknowledgement and handshaking mechanisms utilized in
MQTT will lead in to more power consumption in MQTT.
B. Latency
According to the observations been made, as it has been
depicted in Fig.4, it takes about 4.99x more time for a client
to receive the contents through MQTT protocol. However
CoAP is serving the requests more quickly. Experiments show
that on average, CoAP is serving the request after 70.4ms
while it takes 351.8ms for MQTT to accomplish the same
0
100
200
300
400
500
600
Power Consumption (uW)
Communication Protocols
CoAP
MQTT
364.79 uW
Fig. 3: Evaluated power consumption in different experiments
for MQTT and CoAP
mission. One of the major reasons for this difference in the
latency of packet delivery in MQTT and CoAP, is the sliding
window mechanism employed by the TCP flow control and
also the three-way handshaking required for initializing the
communication in MQTT. According to the sliding window
characteristics, the transmitting side of a TCP based connec-
tion, must stop sending further packets, until all the packets in
the current sending window are acknowledged by the receiving
system. After reception of data, the receiver should send an
acknowledge accompanied by a new receiving window which
informs the available number of bytes in its buffer. This
mechanism would prevent congestion on the receiving side
and accordingly avoids dropping packets by the receiver. This
will lead to more reliability but with a cost of consuming more
power, and longer response time.
C. Predictability
In IoT systems, the quality of the infrastructures behaviour
not only depends on the functionality of them, but also depends
on how quickly they react to the environment alterations.
Therefore timing and predictability could play an essential
role specially for the IoT applications with timing constraints.
Indeed, in addition to reliability, there are a quite number
of IoT applications which need to be predictable. A suitable
example for such applications is Health-care and avionic ser-
vices. The term predictable refers to systems which guarantee
to provide the output values with the certain amount of delay.
While to the best of our knowledge, communication protocol’s
predictability has not been considered in the previous literature,
we were motivated to compare MQTT and CoAP protocols
from predictability point of view. To this end, the information
1 2 3 4
0
50
100
150
200
250
300
350
400
450
Latency (ms)
Communication Protocols
CoAP
MQTT
281.4 ms
Fig. 4: Evaluated latency in different experiments for MQTT
and CoAP
0
50
100
150
200
250
12345678910
Power Delay Product (uJ)
Number of Experiment
CoAP-Average
MQTT-Average
CoAP
MQTT
7.87 uJ
145.67 uJ
Fig. 5: Evaluated PDP in different experiments for MQTT and
CoAP
gathered by the latency analysis has been exploited to measure
the variance of response times for all the experiments. Ac-
cording to the outcomes, MQTT outperforms CoAP by 80%
improvement in variance of latencies.
D. Efficiency
In addition to the existing trade-off among reliability and
power consumption, there is also a trade-off between latency
and power consumption. How quickly the system acts and
the consumed power, are two building blocks of a systems
efficiency. Hence, in IoT and embedded systems with high
efficiency requirements, both features are equally important
and have to be considered simultaneously. To distinguish such
systems and technologies from their efficiency point of view,
a single parameter known as the power-delay product (PDP),
impressed by both, the power and the latency is being used
for many decades [17]. The goal of minimizing the PDP is to
reach an optimal energy utilization for a system. To this end,
we have conducted experiments to compare the communication
efficiency of the intended application layer protocols via PDP.
In this context, observations illustrated in Fig.5 unveiled that,
on average, CoAP is more efficient with 7.87uJ while MQTT
requires 145.67uJ for its communications.
V. CONCLUSION AND FUTURE WORKS
The impact of IoT applications on different aspects of
human’s daily life is getting bolder. According to estimations,
there will be more than 9 devices per person at the end of
2025. Collaboration of these devices enables IoT to serve
the clients in different applications, including safety-critical
applications. Accordingly, new constraints such as reliability
should be considered in such systems. Providing reliability
in IoT systems could be achieved by employing reliable
mechanisms at different layers of its architecture, including
application layer protocols. Maintaining the desired level of
reliability in IoT applications via application layer protocols,
imposes a noticeable amount of overheads. In this paper,
we have investigated the side-effects of providing such a
reliable application layer connection, by evaluating two well-
known application layer protocols, i.e., MQTT with many
reliable features and CoAP with less reliability mechanisms.
We have conducted our evaluations on a real-world test-bed
composing of reputed Arduino platforms. Our observations
illustrated while MQTT provides more reliable and predictable
infrastructure for IoT devices, on average, it imposes 364uW of
more power consumption than CoAP for delivering the same
amount of data. Furthermore, utilizing MQTT as a reliable
application layer protocol, imposes 4.99x of more latency in
comparison with CoAP. Overall, MQTT protocol is suitable
for IoT systems with substantial reliability requirements were
power and performance issues are not a consideration while
CoAP protocol is an appropriate choice for real-time IoT
systems with high power and performance constraints.
As a future work, due to the nature of IoT which constraint
devices mainly operate on a wireless medium with high loss
rates and low reliability, the concept of Low Power and Lossy
Networks (LLN) is getting more attraction among academic
societies. In this context, the Routing Protocol for Low power
and Lossy Networks (RPL) has emerged as an appropriate
routing mechanism for LLNs. Our goal is to implement RPL
on real-world test beds and evaluate its performance in future
studies.
REFERENCES
[1] J. Manyika, M. Chui, P. Bisson, J. Woetzel, R. Dobbs, J. Bughin, and
D. Aharon, “The internet of things: Mapping the value beyond the
hype,” in McKinsey Global Institute. McKinsey, 2015, p. 3.
[2] IHS R
, “Internet of things (iot) connected devices installed base world-
wide from 2015 to 2025,” 2016.
[3] United Nations R
, “World population prospects: The 2015 revision
population database,” 2016.
[4] A. Al-Fuqaha, M. Guizani, M. Mohammadi, M. Aledhari, and
M. Ayyash, “Internet of things: A survey on enabling technologies, pro-
tocols, and applications,” IEEE Communications Surveys & Tutorials,
vol. 17, no. 4, pp. 2347–2376, 2015.
[5] D. Locke, “Mq telemetry transport (mqtt) v3. 1 protocol spec-
ification,” in IBM developerWorks. IBM, [Online]. Avail-
able: Http://Www.Ibm.Com/Developerworks/ Webservices/Library/Ws-
Mqtt/Index.Html, 2010, pp. 1–42.
[6] Z. Shelby, K. Hartke, C. Bormann, and B. Frank, “Constrained ap-
plication protocol (coap).draft-ietf-core-coap-18,” in Internet Eng. Task
Force (IETF). IETF, 2013, pp. 1–118.
[7] Arduino R
, “Arduino uno development boards,” 2017.
[8] P. Saint-Andre, “Extensible messaging and presence protocol (xmpp):
Core, request for comments: 6120,” in Internet Eng. Task Force (IETF).
IETF, 2011, p. 6120.
[9] Adv. Open Std. Inf. Soc. (OASIS), “Oasis advanced message queuing
protocol (amqp) version 1.0,” 2012.
[10] Object Manage. Group (OMG), Available: http://
www.omg.org/spec/DDS/1.2/, “Data distribution services specification,
v1.2,” 2015.
[11] N. De Caro, W. Colitti, K. Steenhaut, G. Mangino, and G. Reali, “Com-
parison of two lightweight protocols for smartphone-based sensing,”
in Communications and Vehicular Technology in the Benelux (SCVT),
2013 IEEE 20th Symposium on. IEEE, 2013, pp. 1–6.
[12] E. Rescorla and N. Modadugu, “Datagram transport layer security
version 1.2,” 2012.
[13] T. Dierks, “The transport layer security (tls) protocol version 1.2,” 2008.
[14] J. M. Robinson, J. G. Frey, A. J. Stanford-Clark, A. D. Reynolds, and
B. V. Bedi, “Sensor networks and grid middleware for laboratory mon-
itoring,” in e-Science and Grid Computing, 2005. First International
Conference on. IEEE, 2005, pp. 8–pp.
[15] D. DeRoure, “Improving flood warning times using pervasive and grid
computing,” submitted to quarterly of Royal Academy of Engineering,
UK, p. 1, 2005.
[16] U. Hunkeler, H. L. Truong, and A. Stanford-Clark, “Mqtt-sa pub-
lish/subscribe protocol for wireless sensor networks,” in Communication
systems software and middleware and workshops, 2008. comsware
2008. 3rd international conference on. IEEE, 2008, pp. 791–798.
[17] A. P. Chandrakasan, S. Sheng, and R. W. Brodersen, “Low-power cmos
digital design,” IEICE Transactions on Electronics, vol. 75, no. 4, pp.
371–382, 1992.
... In fog computing networks, the communication protocol commonly used for conducting task offloading is the Message Queuing Telemetry Transport (MQTT) protocol. MQTT is a lightweight, publish-subscribe messaging protocol that is well-suited for establishing efficient and reliable communications between devices in IoT and fog computing environments [52]. ...
Article
Full-text available
While the Guarantee Ratio (GR) is critically important in delay-sensitive fog applications, the existing deadline-aware task assignment strategies prioritize the balance of utilization over this criterion. Therefore, this paper introduces FUSION: a fuzzy-based task management policy, which provides a high GR with the least possible makespan. FUSION considers the effect of propagation, uplink/downlink delays, and also the bandwidth between the layers on the tasks’ completion time during offloading. It benefits from a fuzzy offloader, along with a VM-ranking strategy based on a fuzzy quantified proposition. Hence, it uses two simple and efficient fuzzy ranking approaches, i.e., Decomposition and OWA. By employing fuzzy-based models, FUSION can handle uncertainty in rapidly changing fog environments with time-varying task sets with minimal computation complexity against existing meta-heuristic algorithms. FUSION considers tasks’ size with respect to VM’s processing capacity (MIPS), arrival rate, length, deadline, processing time, and execution time. In addition to VMs’ load, and busy time, FUSION considers laxity as one of its VM-ranking objectives. FUSION also conducts load-balancing, but only when it can improve the rankings to not affect the GR. Based on the iFogSim simulations, FUSION provides a higher GR in 63% of the scenarios compared to state-of-the-art. Furthermore, evaluations of the offloader algorithm indicate that FUSION provides higher GR in more than 55% of the scenarios.
... The average household will be steadily transitioning to becoming "smart homes", where traditional appliances such as refrigerators, microwave ovens, thermostats etc., will be Internet enabled, allowing the consumer to access and control them from anywhere. Software platforms for IoT like Samsung SmartThings [2] and Google Nest [3] is expected to drive this growth even further, where the total number of Internet connected "Things" is expected to be around 75 billion by 2025 [4]. Amidst this race to adopt and integrate smart devices into homes and businesses, attacks against such devices have also been on the rise [5], [6] [7]. ...
Conference Paper
Full-text available
The Internet of Things (IoT) paradigm refers to a system of billions of Internet-enabled smart devices interconnected with each other. This study attempts to evaluate access control restrictions in smart devices through a penetration test of a lightweight IoT device such as a smartbulb. Very often, lightweight firmware for such devices become the foundation for other products in the market, and requires careful scrutiny for security weaknesses. Past research has discovered several vulnerabilities in a variety of products linked to the vendor of our study. Hence, this study is also interested in the status quo of security updates to newer products given the knowledge of past vulnerabilities. Based on our 3-stage penetration testing approach, we have discovered several access control violations where an attacker can gain network credentials, cloud service credentials of the operator and create availability issues via denial-of-service attacks. Consumers need to be aware of such vulnerabilities that could lead to the compromise of their organizational security countermeasures since weak access control checks on these devices could make them the weak links in the cyber defense chain. Stricter regulations should also be mandated by all stakeholders to ensure that the IoT ecosystem flourishes and benefits society without compromising the security aspect of networked technology systems.
... : ETX refers to the minimum number of packets expected to be sent to a specific destination node until a packet is successfully delivered [24]. The value of ETX is obtained based on Equations (6), and (7), respectively [12], [45]. According to Equation (6), ET X old indicates the previous value of the link quality between a node and its neighboring node, and β is the learning factor. ...
Article
Full-text available
Resource-limited mobile IoT networks are a dynamic, and uncertain wireless communicating system. In such systems, the standard RPL routing protocol cannot select long-lasting communication links due to not employing mobility-aware metrics, e.g., direction and speed of movements. While several classical heuristic approaches exist to improve PDR in RPL-based mobile networks, their solutions cannot adapt to alterations of the mobile topology. Hence, in this paper, by mapping the routing problem in mobile and resource-limited networks into an infinite-time horizon MDP, an energy-aware and reliable RPL-based routing mechanism based on Q-learning is proposed to improve PDR in mobile IoT networks. This routing mechanism, which is called QUERA, utilizes mobility and quality-aware metrics, including Time-to-Reside (TTR), ETX, and RSSI. Furthermore, QUERA probes and maintains stable candidates based on its neighbor table management policy. These two aspects mitigate the need for retransmissions due to packet loss leading to less energy dissipation. According to evaluations, QUERA improves energy consumption by up to 50% against the state-of-the-art. The efficiency of QUERA is also evaluated in terms of power distribution diagram, which shows significant improvement in the lifetime of IoT devices. It has also been observed that QUERA improves PDR in mobile networks by up to 12%.
Conference Paper
Full-text available
The pervasive adoption of Internet of Things (IoT) has significantly advanced healthcare digitization and modernization. Nevertheless, the sensitive nature of medical data presents security and privacy challenges. On the other hand, resource constraints of IoT devices often necessitates cloud services for data handling, introducing single points of failure, processing delays, and security vulnerabilities. Meanwhile, the blockchain technology offers potential solutions for enhancing security, decentralization, and data ownership. An ideal solution should ensure confidentiality, access control, and data integrity while being scalable, cost-effective, and integrable with the existing systems. However, current blockchain-based studies only address some of these requirements. Accordingly, this paper proposes EdgeLinker; a comprehensive solution incorporating Proof-of-Authority consensus, integrating smart contracts on the Ethereum blockchain for access control, and advanced cryptographic algorithms for secure data communication between IoT edge devices and the fog layer in healthcare fog applications. This novel framework has been implemented in a real-world fog testbed, using COTS fog devices. Based on a comprehensive set of evaluations, EdgeLinker demonstrates significant improvements in security and privacy with reasonable costs, making it an affordable and practical system for healthcare fog applications. Compared with the state-of-the-art, without significant changes in the write-time to the blockchain, EdgeLinker achieves a 35% improvement in data read time. Additionally, it is able to provide better throughput in both reading and writing transactions compared to the existing studies. EdgeLinker has been also examined in terms of energy, resource consumption and channel latency in both secure and non-secure modes, which has shown remarkable improvements.
Preprint
Full-text available
The pervasive adoption of Internet of Things (IoT) has significantly advanced healthcare digitization and modernization. Nevertheless, the sensitive nature of medical data presents security and privacy challenges. On the other hand, resource constraints of IoT devices often necessitates cloud services for data handling, introducing single points of failure, processing delays, and security vulnerabilities. Meanwhile, the blockchain technology offers potential solutions for enhancing security, decentralization, and data ownership. An ideal solution should ensure confidentiality, access control, and data integrity while being scalable, cost-effective, and integrable with the existing systems. However, current blockchain-based studies only address some of these requirements. Accordingly, this paper proposes EdgeLinker; a comprehensive solution incorporating Proof-of-Authority consensus, integrating smart contracts on the Ethereum blockchain for access control, and advanced cryptographic algorithms for secure data communication between IoT edge devices and the fog layer in healthcare fog applications. This novel framework has been implemented in a real-world fog testbed, using COTS fog devices. Based on a comprehensive set of evaluations, EdgeLinker demonstrates significant improvements in security and privacy with reasonable costs, making it an affordable and practical system for healthcare fog applications. Compared with the state-of-the-art, without significant changes in the write-time to the blockchain, EdgeLinker achieves a 35% improvement in data read time. Additionally, it is able to provide better throughput in both reading and writing transactions compared to the existing studies. EdgeLinker has been also examined in terms of energy, resource consumption and channel latency in both secure and non-secure modes, which has shown remarkable improvements.
Article
Full-text available
The Internet of Things (IoT) proposes to transform human civilization so that it is smart, practical, and highly efficient, with enormous potential for commercial as well as social and environmental advantages. Reliability is one of the major problems that must be resolved to enable this revolutionary change. The reliability issues raised with specific supporting technologies for each tier according to the layered IoT reliability are initially described in this research. The research then offers a complete review and assessment of IoT reliability. In this paper, various types of reliability on the IoT have been analyzed with each layer of IoT to solve the issues of failure rates, latency, MTTF, and MTBF. Each parameter has a certain classification and perception as well as enhancement in efficiency, accuracy, precision, timeliness, and completeness. Reliability models provide efficient solutions for different IoT problems, which are mirrored in the proposed study and classified with four types of reliabilities. The field of IoT reliability exploration is still in its initial phases, despite a sizable research record. Furthermore, the recent case study of CHISS is elaborated with discovered behaviors including brand-new aspects such as the multifaceted nature of evolving IoT systems, research opportunities, and difficulties.
Article
Full-text available
The increasing adoption of connected healthcare technologies has transformed the traditional healthcare landscape, offering improved healthcare delivery. The combination of medical devices, sensors, and electronic health records has enabled real-time monitoring, remote care, and data-driven decision-making. However, the connectivity of medical devices to hospital network also introduces a vast array of challenges which include security challenges, scalability issues, and storage and interoperability issues. These challenges can compromise patient data, disrupt clinical workflows, and hinder the effective delivery of healthcare services. This article gives a detailed survey of the challenges and solutions in connected healthcare, with a focus on the technical and practical considerations of integrating medical devices into hospital networks. We explore the current state of connected healthcare, identify key challenges and limitations. Our analysis covers various aspects of connected healthcare, including device security, data privacy, network infrastructure, and standards for interoperability. Our paper also provides a comprehensive examination of the detailed architecture of connected healthcare system, encompassing different layers to facilitate a deeper understanding of connected healthcare system working. Finally, we explored the key research directions to handle the increasing challenges in connected healthcare system.
Thesis
The dawn of the Internet of Things (IoT) represents a monumental shift in the way we connect and interact with devices and the environment around us. One pivotal factor in the rapid growth of IoT is the significant contribution of low-power electronics. These energy-efficient components enable the deployment of IoT devices that can operate on minimal power resources, enhancing their reliability and scalability. As a result, IoT applications have flourished across various sectors, from smart homes and cities to industrial automation and healthcare, ushering in a new era of connectivity and data-driven insights that continue to reshape our world. However, the surge in IoT nodes has exponentially increased the number of wireless, remotely placed "IoT nodes" that should operate independently with minimal maintenance. The dependence on batteries is not feasible for the predicted growth of IoT technologies as it limits its multi-domain expansion. Since sensors are a vital component of IoT node, transforming the passive-energy consuming sensors into active-self powered sensors(or harvesters) provides a suitable solution and creates a transformative shift towards a greener world. Tapping the "always available" mechanical energy in the form of biomechanical and ambient vibrations opens up new avenues for self-powered sensing. The low-frequency (< 200 Hz) vibrational energy can be efficiently harvested using a flexible piezoelectric, and triboelectric harvesters built from a diverse set of materials, including polymer nancomposites and nano-filler combinations. The majority of the published research on piezoelectric or triboelectric harvesters discusses the methodologies that are CMOS incompatible, expensive, complex, single transduction, and restricted to a small area harvesting/sensing. However, there are no reported studies on the development of novel material and their optimization as a CMOS compatible, simple, low-cost, dual transduction, and large area harvester/sensor that is suitable for self-powered IoT nodes. This thesis explores a series of research works associated with dual transduction nanocomposites and their process optimization to develop energy harvesters/sensors for extracting ambient and biomechanical energy. This thesis uncovers the possibility of dual transduction in photopatternable and non-photopatternable nanocomposites with applications in energy harvesting, impact loss compensation, machine learning integrated sensors, etc. This thesis reports the following significant findings: 1. The optimization of photopatternability and piezoelectricity in %weight ratio varying ZnO/SU-8 and BTO/SU-8 nanocomposites. The thesis uncovers the optimum weight ratio value of 15% and 20% for ZnO/SU-8 and BTO/SU-8 nanocomposites, respectively. At these values, they show optimum results with good piezoelectric response and UV transmittance, allowing reliable lithography of the nanocomposites. This optimization allows the development of flexible biomechanical energy harvesters with output power of 223μW and 642μW for ZnO/SU-8 and BTO/SU-8, respectively. 2. The exploration of inherent triboelectric nature of BTO/SU-8 nanocomposites and the effect of %weight ratio on its triboelectric transduction. The performance enhancement techniques on the form of UV exposure and graphene doping are also presented. The 1% graphene doped 20% BTO/SU-8 shows a high triboelectric shift with a charge retention measure of 85mV that enables the design of a dual transduction energy harvester with an power density of 0.65μWcm−2 at 0.75g acceleration amplitude. 3. The development of a novel pixelated tactile pressure sensor with dual transduction capabilities using the optimized 20% BTO/SU-8 composites as the active layer. The sensor shows a sensitivity of 34 mV kPa−1 for deep linear region and 2.7 mV kPa−1 for the linear region over a pressure range of 0–170 kPa. The sensor shows a negligible hysteresis with an average deviation of 2.7%. A sensor-ML integration is also presented that allows effective utilization of this sensor for hind foot deformity detection, activity monitoring and grip strength assessment with 98.5%, 98.3% and 93.75% model accuracy, respectively. 4. The concept of dual transduction in a single thin film is presented as a possible solution to impact losses in impact driven piezoelectric energy harvesters.The proposed impact driven energy harvesters is capable of compensating impact-induced energy loss by a 100% power integral recovery at < 1.5g acceleration amplitude by suitably designing the device that incorporates a dual piezoelectric/triboelectric transduction-based nanocomposite as the active layer. This hybrid design demonstrates 3.3 times power gain and the bandwidth broadening of 5.4Hz at 1g. 5. The exploration of dual transduction in BTO/P(VDF-TrFE) and the effect of %weight ratio on the β-phase as well as triboelectric shift. 15% weight ratio of BTO in 20%P(VDFTrFE) nanocomposites film shows the highest piezoelectric co-efficient of 0.58nm/V. The addition of BTO in 20% P(VDF-TrFE) results in a triboelectric shift from a tribonegative to tribopositive nanocomposite. The surface potential shifts from -382.5mV to 495 mV in 20% P(VDF-TrFE) and 15% BTO/20% P(VDF-TrFE). The charge retention metric ΔV200 also decreases from 150mV to 60mV in 20% P(VDF-TrFE) and 15% BTO/20% P(VDF-TrFE), indicating the improvement in charge retention in 15% BTO/20% P(VDF-TrFE).
Article
Full-text available
This paper provides an overview of the Internet of Things (IoT) with emphasis on enabling technologies, protocols, and application issues. The IoT is enabled by the latest developments in RFID, smart sensors, communication technologies, and Internet protocols. The basic premise is to have smart sensors collaborate directly without human involvement to deliver a new class of applications. The current revolution in Internet, mobile, and machine-to-machine (M2M) technologies can be seen as the first phase of the IoT. In the coming years, the IoT is expected to bridge diverse technologies to enable new applications by connecting physical objects together in support of intelligent decision making. This paper starts by providing a horizontal overview of the IoT. Then, we give an overview of some technical details that pertain to the IoT enabling technologies, protocols, and applications. Compared to other survey papers in the field, our objective is to provide a more thorough summary of the most relevant protocols and application issues to enable researchers and application developers to get up to speed quickly on how the different protocols fit together to deliver desired functionalities without having to go through RFCs and the standards specifications. We also provide an overview of some of the key IoT challenges presented in the recent literature and provide a summary of related research work. Moreover, we explore the relation between the IoT and other emerging technologies including big data analytics and cloud and fog computing. We also present the need for better horizontal integration among IoT services. Finally, we present detailed service use-cases to illustrate how the different protocols presented in the paper fit together to deliver desired IoT services.
Article
Full-text available
We provide an overview of the design of a flood war ning system which uses a set of sensor nodes to collect readings of water level and communicates these via an asynchronous reliable messaging infrastructure to a grid-based flood predictor mode l. The reporting frequency of sensor nodes is influenced by local conditions and also the flood p redictor model. This system is notable both for the adaptive sampling regime and the methodology adopted in the design of the adaptive behaviour, which involved development of simulation tools and very close collaboration with environmental experts.
Conference Paper
Smartphones are equipped with numerous sensors and have become sophisticated sensing platforms. However, several sensing applications running on a smartphone can degrade the device performance. This can be overcome by using lightweight application protocols which improve the smartphone performance in terms of bandwidth consumption, battery lifetime and communication latency. This work focuses on two emerging application protocols: the Message Queuing Telemetry Transport (MQTT) and the Constrained Application Protocol (CoAP). Although both protocols have been designed for highly constrained environments such as sensors, they are also appropriate to be adopted in smartphone applications. We provide a qualitative and quantitative comparison between MQTT and CoAP when used as smartphone application protocols and we give preliminary indications on the application scenarios in which either protocol should be adopted. While MQTT has already been adopted in smartphone applications, CoAP is relatively new and has up to now mainly been considered for sensors and actuators. Our comparison shows that CoAP can be a valid alternative to MQTT for certain application scenarios.
Conference Paper
Wireless sensor networks (WSNs) pose novel challenges compared with traditional networks. To answer such challenges a new communication paradigm, data-centric communication, is emerging. One form of data-centric communication is the publish/subscribe messaging system. Compared with other data-centric variants, publish/subscribe systems are common and wide-spread in distributed computing. Thus, extending publish/subscribe systems intoWSNs will simplify the integration of sensor applications with other distributed applications. This paper describes MQTT-S [1], an extension of the open publish/subscribe protocol message queuing telemetry transport (MQTT) [2] to WSNs. MQTT-S is designed in such a way that it can be run on low-end and battery-operated sensor/actuator devices and operate over bandwidth-constraint WSNs such as ZigBee-based networks. Various protocol design points are discussed and compared. MQTT-S has been implemented and is currently being tested on the IBM wireless sensor networking testbed [3]. Implementation aspects, open challenges and future work are also presented.
Conference Paper
By combining automatic environment sensing and experimental data collection with broker based messaging middleware, a system has been produced far the real-time monitoring of experiments whilst away from the lab. Changes in the laboratory environment are encapsulated as simple messages, which are published using an MQTT compliant broker. Clients subscribe to the MQTT stream, and perform a data transform on the messages; this may be to produce a user display or to change the format of the message for republishing. For example, an MQTT client written for the Java MIDP platform can be run on a smart-phone with a GPRS Internet connection, freeing us from the constraints of the network. We present an overview of the technologies used, and how these are helping chemists make the best use of their time
Article
Motivated by emerging battery-operated applications that demand intensive computation in portable environments, techniques are investigated which reduce power consumption in CMOS digital circuits while maintaining computational throughput. Techniques for low-power operation are shown which use the lowest possible supply voltage coupled with architectural, logic style, circuit, and technology optimizations. An architecturally based scaling strategy is presented which indicates that the optimum voltage is much lower than that determined by other scaling considerations. This optimum is achieved by trading increased silicon area for reduced power consumption
The internet of things: Mapping the value beyond the hype
  • J Manyika
  • M Chui
  • P Bisson
  • J Woetzel
  • R Dobbs
  • J Bughin
  • D Aharon
J. Manyika, M. Chui, P. Bisson, J. Woetzel, R. Dobbs, J. Bughin, and D. Aharon, "The internet of things: Mapping the value beyond the hype," in McKinsey Global Institute. McKinsey, 2015, p. 3.
World population prospects: The 2015 revision population database
United Nations R, "World population prospects: The 2015 revision population database," 2016.
Mq telemetry transport (mqtt) v3. 1 protocol specification
  • D Locke
D. Locke, "Mq telemetry transport (mqtt) v3. 1 protocol specification," in IBM developerWorks. IBM, [Online]. Available: Http://Www.Ibm.Com/Developerworks/ Webservices/Library/Ws-Mqtt/Index.Html, 2010, pp. 1-42.