The Convergence of Internet of Things and Cloud For Smart Computing
The Convergence of Internet of Things and Cloud For Smart Computing
Internet of Things
and Cloud for Smart
Computing
Intelligent Signal Processing and Data
Analysis
SERIES EDITOR
Nilanjan Dey, Department of Information Technology, Techno India
College of Technology, Kolkata, India
Proposals for the series should be sent directly to one of the series
editors above, or submitted to:
Chapman & Hall/CRC
Taylor and Francis Group
3 Park Square, Milton Park
Abingdon, OX14 4RN, UK
VANET
Challenges and Opportunities
Sonali P. Botkar, Sachin P. Godse, Parikshit N. Mahalle and
Gitanjali Shinde
Authors ix
Preface xii
Acknowledgments xv
1 Introduction 1
1.1 Overview of IoT 1
1.1.1 Technical Building Blocks 2
1.1.2 IoT in Business 5
1.2 IoT Architecture: Layered Perspective 15
1.3 Smart Computing 16
1.4 IoT Design: Issues and Challenges 17
1.4.1 Design Issues 17
1.4.2 Challenges 19
3 IoT–Cloud Convergence 41
3.1 Introduction 41
3.1.1 Five Quintessential Characteristics of
Cloud Computing 42
3.1.2 Cloud Computing Service Models 43
3.1.3 Cloud Computing Deployment Models 43
3.2 Opportunities and Challenges 44
3.2.1 IoT Requirements to Meet the Future
Market Potential 44
3.2.2 How Cloud Comes in Handy? 46
3.2.3 Application Areas for IoT–Cloud
Convergence 46
3.2.4 Challenges That Come with
Convergence 48
3.3 Architecture for Convergence 51
3.3.1 An Overview of Cloud-based IoT
Services 51
3.3.2 State of the Art: Convergence
Architectures 55
3.3.3 A Simplified Convergence Model 58
3.4 Data Offloading and Computation 59
3.4.1 Data Offloading and Computation:
An IoT Perspective 59
3.4.2 Edge Computing Technologies for an
IoT Network Infrastructure 60
3.4.3 Data Offloading and Computations 63
3.4.4 Offloading Considerations and
Challenges 65
3.5 Dynamic Resource Provisioning 67
3.5.1 The Resource Provisioning Activity
and Requirements for IoT 67
3.5.2 Dynamic Resource Provisioning 70
Contents vii
5 Conclusion 113
5.1 Summary 113
5.2 Issues and Challenges 115
5.3 Future Outlook 116
Index 119
A UT HO R S
are Cloud security and the Future Internet. She has about three
years of experience in the software engineering field and 3.5 years
of experience in teaching and research. She has published research
articles in international journals and conferences. She is a reviewer
for the Springer journal Wireless Personal Communications.
A CKNO W LEDGM EN T S
Parikshit N. Mahalle
Nancy Ambritta P.
Gitanjali Rahul Shinde
Arvind Vinayak Deshpande
1
INTR O D UCT I O N
1
2 Introduction
• Uniqueness of address
• Reliability
• Persistence
• Scalability
Every “thing” that is connected in the system and those that are going
to join should have a unique address, location, identity, and func-
tionality. Currently the IPV4 addressing scheme is being used, but
as the number of the devices increases, it becomes impossible for
IPV4 to give unique ID’s to each and every device. The solution to
this problem is the IPV6 addressing scheme. However, this will only
solve the problem to some extent. The heterogeneity of the devices,
4 Introduction
their associated data types, and the operations on them still remains
a major concern. In order to channel the data traffic ubiquitously and
relentlessly, persistent network functioning can be used. Even if the
TCP/IP is taking care of the efficient delivery from source to destin-
ation, IoT is still facing a bottleneck at the interface of the gateway
and the sensors. Scalability of the available address should be sustain-
able. If at all another network is required to join in, then the perform-
ance of the existing network should not be hampered in any way. To
solve these problems, Uniform Resource Name (URN) system was
developed, which is being considered as the base of the development
in IoT. This system creates replicas or mirror images of the devices
that is more easily accessible through the URL. As large volumes of
data are being created, the metadata can help in the transfer of this
data. IPV6 is also a good option to be able to uniquely identify things
and monitor and control them. Another important task is the develop-
ment of lightweight IPV6 for home appliances.
1.1.1.6 Security
Security is very important in any domain. In IoT the sensors, their
connecting interfaces, communication among them, infrastructure for
the system, Cloud processing, and storage require security at every
step. When IoT products were being developed, security was not the
biggest concern at the time. Because of this flaw many companies
still haven’t implemented the IoT measures. As time progressed, it
became evident that security in the system needs to be strengthened.
As hackers are tampering with vehicle control systems, for example,
more stringent security measures are needed to be implemented.
Hence many companies are asking for IoT products that have strong
security systems that will be difficult to breach.
1.1.1.7 Visualization
Visualization is a very important milestone in the creation of an IoT
application. This visualization helps users to easily communicate
with the environment. The displays (phones, tablets) nowadays are
designed to be more intuitive so that users will be able to reap full
benefit from it. For a layman, it is very important to get the infor-
mation needed in a more precise, compact, and easily understand-
able format. That is why visualization is very critical. As displays
are evolving from 2D to 3D versions, more information can be made
available to the user. This will in turn help policymakers to transform
data into meaningful knowledge. This consists of visualization and
detection of the associated raw data.
1 . 1 . 2 Io T i n Busin ess
IoT can change the perspective of business approach by providing IoT
connectivity. IoT will help businesses track and effectively monitor
assets in real time with the help of sensors [4]. Various industries
are shifting from manual working toward IoT due to automation and
smart applications.
6 Introduction
1.1.2.7 Education
At present, internet access is easily available to a majority of the popu-
lation around the world. Students and academicians around the world
can now easily access each other’s work. Internet has provided the
world with a wide platform on which experts can deliver the sessions
and brainstorming of ideas has become possible and fruitful. Beyond
that, experts are asked to deliver lessons on the respective fields
they are working on. With massive open online courses (MOOCs),
majority of the population is able to receive online education. The
idea of “flipped classrooms” is gaining popularity. In this, students
will learn the concepts outside the classroom so that during the
physical lecture innovative ideas can be discussed. The MOOCs are
turning out to be a saviors for people in developing countries where
many cannot afford the fees for higher education.
1. Physical layer
In the physical layer, object and things are identified. The
physical layer contributes functional components to the IoT,
that is, technologies that connect objects and carry data like
RFID, Zigbee, and Bluetooth.
2. Gateway layer
In the gateway layer, there are layers that act as a mediator
between connected devices and host management systems.
3. Application layer
Application layer sends user information or functional data
to the connected devices through gateway layer to support
applications and services.
1.1.2.12 BUTLER
BUTLER is the EU project with the aim of providing a set of
guidelines and principles to build IoT systems [8]. BUTLER effect-
ively performs integration of platforms and is extensible to add new
functional components to the architecture. BUTLER facilitates to
add value-added services such as localization, context capturing,
and security management to build effective context- aware infor-
mation systems, which seamlessly operate across various scenarios
in the smart life environment. The major challenges are to provide
privacy and security in heterogeneous systems. It provides a service-
oriented architecture for dynamic, interoperability, and complex event
processing.
BUTLER systems are deployed using three entities: smartObject,
smartServer, and smartMobile. BUTLER architecture has identified
four layers for all functionalities to fulfill requirements such as con-
text management, communication, services and device management,
depicted in Figure 1.4.
REFERENCES
1. Gubbi, J., Buyya, R., Marusic, S., and Palaniswami, M. (2013).
Internet of Things (IoT): A vision, architectural elements, and
future directions. Future Generation Computer Systems, 29(7),
1645–1660.
2. Lee, I., and Lee, K. (2015). The Internet of Things (IoT):
Applications, investments, and challenges for enterprises. Business
Horizons, 58(4), 431–440.
3. Serbanati, A., Medaglia, C. M., Ceipidor, U. B., and Turcu, C.
(2011). Building blocks of the Internet of Things: State of the art
Introduction 21
INT ER NET O F T HI N GS
APPLICATIO N DEVELO PM EN T
2 . 1 . 1 Pri nciples
In this section, a brief description of the main principles to be taken
into consideration before developing IoT applications is given. These
principles cover issues like secure and real-time data collection, data
management, IoT platforms, and IoT–Cloud convergence and they
are discussed below:
23
24 Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t
2 . 1 . 2 C Mode l
This section presents IoT application development phases using
a novel C model. With reference to the layered perspective of IoT
architecture presented in Chapter 1, there are mainly three layers
in IoT: device layer, access layer, and application layer. The 10 C
model proposed in this book will help the reader understand various
phases and operational steps to be taken care during IoT application
development.
(a) Category
Before we start developing any IoT application, it is
important to decide whether the underlying IoT application
is representing an indoor or outdoor use case, as there are
different design issues for these use cases and they also have
different sets of requirement and challenges.
(b) Component
The finalization of category and requirements of the use case
helps to decide the components that are required for develop-
ment. The major IoT components include smartphones, RFID,
Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t 25
2 . 2 . 2 Zi g b ee
Zigbee is built on the top of IEEE 802.15.4 and is mainly used in
the wireless personal area network (WPAN) [2]. It consists of two
key layers: (i) physical layer and (ii) medium access control sub-
layer. Router, end device, and coordinator are three main actors
in Zigbee. The coordinator acts as a responsible device for data
transmission activities and storage. End devices are generally tiny
devices with resource constraints like limited power, memory, and
computational power and have the ability to communicate with the
parent device. Zigbee is suitable for indoor use cases like smart
home or smart shop for monitoring and controlling purposes.
Zigbee operates at frequencies of 868 MHz, 902–928 MHz, and
2.4 GHz and the data rate for communication is 250 kbps. The typ-
ical communication range is 30 meters for indoor and 100 meters
line of site for outdoor applications. Each Zigbee network can have
64Knodes.
2 . 2 . 3 Wi Fi
WiFi is a widely used wireless communication technology used
in both indoor and outdoor use cases. It is based on 802.11, which
represents the widely known standards for wireless local area
networks. Access points or hotspots are used to connect devices to the
internet providing a data rate of 54 Mbps. The operating frequencies
used by WiFi is 2.4 and 5 GHz in ISM band and provides commu-
nication range of 20 meters and 100 meters for indoor and outdoor
use cases, respectively. It provides interoperability for various WiFi
devices, is cost effective, and integrated with all widely used devices
ranging from laptops to TV. WiFi functions in star topology where
internet gateway is the center node and consists of a physical layer and
medium access control layer [3]. The main specifications of 802.11
are 802.11a (operating frequency: 5 GHz, speed: 54 Mbps), 802.11b
(operating frequency: 2.4 GHz, speed: 11 Mbps), and 802.11g (oper-
ating frequency: 2.4 GHz, speed: 20 Mbps).
28 Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t
2 . 2 . 4 6 L o wPA N
Due to the emergence of IoT-enabled applications where resource
constraints are the main challenge, low-power and lossy networks
become a good candidate. The objective of these networks is to save
energy by managing other constraints like memory and duty cycle.
IPv6 over low-power wireless personal area network (6LoWPAN)
[4] is a key option to meet the requirements of resource constraints.
Energy saving can be carried out by optimizing the amount of data
transmission. In resource-constrained networks like IoT, requirement
of data transmission is less than 1280 bytes, which is the transmission
rate of IPV6.These networks use IEEE 802.15.4 physical layer where
the rate is 178 bytes per frame. In view of this, 6LoWPAN header
compression is required using IPV6 packets over 802.15.4.
2 . 2 . 5 3 G/4 G/5 G
The internet is getting faster and cost is becoming cheaper gradually,
the credit for which goes to advancements in broadband technology.
3G/4G/5G represent the generations of wireless technology that are
related to the speed of internet and are dependent on the incoming
signal strength. This wireless communication technology is mainly
used in outdoor IoT use cases and 2G is the first generation in this
family, which is almost obsolete now. The detailed specifications of
these generations are as follows [5]:
2 . 2 . 6 L o RAWA N
Low- power wide area network (LPWAN) [6] uses LoRaWAN
protocol, which support requirements for IoT applications with
mobility, less power, and two-way communication. An improved net-
work capacity and optimized energy consumption are key features of
LoRaWAN supporting a data rate of 0.3–50 kbps. LoRaWAN operates
in the band of 2.4–5 GHz and uses star topology. For IoT applications,
this protocol is also supported by three types of unique keys: network,
application, and device keys for security purposes.
2 . 2 . 7 S i g fox
Sigfox is a unique service provider solution for IoT applications
offering software-based Cloud-centric communication solutions with
optimized energy consumption and less cost. Lightweight protocol,
small payload, star topology, and ultra-narrow band radio modulations
make this solution a better choice for IoT applications. It is also reported
that Sigfox is more scalable as compared to other solutions [7].
2 . 3 . 1 Co AP
Constrained application protocol (CoAP) is an application layer
protocol developed by IETF intended to be used in resource-
constrained IoT devices [8]. It is designed for “machine to machine
communication” type of applications such as automated smart
30 Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t
2 . 3 . 2 MQTT
Message queuing telemetry transport (MQTT) is a publish/subscribe
lightweight messaging protocol [11]. It is used in applications where
devices are power constrained and low network bandwidth is avail-
able. It is designed for unreliable networks and high-latency devices.
It was designed to handle a large amount of remote measurement data
in low-bandwidth networks. MQTT has three components: publisher,
subscriber, and a broker, as depicted in Figure 2.3. MQTT is a publish/
subscribe model type of protocol, where every device, for example,
temperature sensor, humidity sensor, or the light sensor is a publisher.
32 Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t
2 . 3 . 3 AMQP
Advanced message queuing protocol (AMQP) is an open standard
message-oriented, publish/subscribe, reliable, and secure protocol for
“machine to machine” (M2M) communication. AMQP runs over the
transport layer protocol. AMQP works similar to the email server and
follows the store and forward architecture [14].
In AMQP, the publisher sends a message to the subscriber through
a broker. The broker is divided into two parts: exchange and message
queue, as depicted in Figure 2.4. The exchange has the same function
as a transfer agent in the email server and message queue as a mailbox.
The exchange is responsible for receiving published messages by
different publishers and to distribute the received published messages
Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t 33
2 . 3 . 4 X MPP
Extensible messaging and presence protocol (XMPP) is an open and
XML-based protocol [15]. It was designed for chatting and sending
small instant messages that are delivered immediately to the user. It
uses both client/server and publish/subscribe architecture, wherein it
wholly depends upon the application to choose suitable architecture for
its application. It is designed for real-time applications and it supports
small memory footprint as well as low-latency message exchange. The
XMPP architecture is similar to an email server, where anyone can run
their own XMPP server enabling to take individual control. XMPP
is secure using simple authentication and security layer (SASL) for
authentication and transport layer security (TLS) for a secure channel.
It adds end-to-end encryption to raise the security bar even further.
XMPP runs over TCP/IP network. An XML message can create a lot
of overhead to the network due to the headers, which increases power
consumption, making it unsuitable for IoT applications.
2 . 4 . 1 Ard u in o
Arduino is an 8-bit microcontroller board based on the ATmega3280P
chip from the Microchip family. Arduino is an open source device
platform used for building small electronics boards. Arduino
supports software programming languages like C, C++, Python,
and JavaScript. Arduino hardware board is available for a price of
$20. The typical Flash code size is 32 kb and the RAM size is 2 kb.
The power consumption of an Arduino is typically 20 mA. Arduino
operates on 16 MHz clock frequency. Arduino does not have enough
memory to build large embedded systems. Arduino boards are suit-
able for the projects where cost and power consumption are the pri-
mary factors. Different Arduino hardware boards are available with
varying numbers of General-Purpose Input/Output (GPIO) pins and
communication media such as Bluetooth, WiFi, and Controller Area
Network (CAN).
Arduino is used in small projects like automatic room temperature
control using temperature and humidity sensors, detecting motion,
and controlling an automated soldering robot. Arduino boards are
used to read various sensor data and controlling relay-based action or
sending sensor data to the Cloud using the WiFi or Bluetooth module.
There are various applications that can be implemented on Arduino
boards. Typical IoT Applications on Arduino boards are automatic
36 Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t
2 . 4 . 2 Ra sp berr y Pi
Raspberry Pi is a 32- bit microcontroller board based on the
ARM1176JZF-S architecture. It consists of BCM2835 system on
chip (SOC) from the Broadcom family and it is a multimedia chip.
A low-cost single-board computer (SBC) board is used in Raspberry
Pi and it is mounted on a Linux operating system. It uses an open
source operating system called Raspbian, which runs a pool of open
source software and is available for a price of $35.
The typical onboard storage for Raspberry Pi board is SD, MMC,
and SDIO card slot and 256 Mb SDRAM memory. The power con-
sumption of the Raspberry Pi board is typically 700 mA. Raspberry Pi
operates on 700 MHz clock frequency. Raspberry Pi board does have
Ethernet, USB 2.0, High Definition Multimedia Interface (HDMI)
video output, audio output, and dual-core multimedia coprocessor.
Raspberry Pi boards are tiny and portable in size, making them suit-
able for projects based on embedded architecture. They are also a
good option for projects where high interactivity is a priority. In the
academic field, Raspberry Pi is more popular for designing innova-
tive projects in learning, bringing novelty in content delivery, and
schooling projects. While Gbit Ethernet and WiFi connectivity
make the Pi an ideal solution in an industrial IoT environment, the
Raspberry Pi board is used in IoT-based intensive care unit (ICU)
patient monitoring systems, automatic door control based on lighting,
industrial automation, motion video, and a Web server.
One of the limitations of Raspberry Pi models is that they don’t
have a built-in real-time clock. Raspberry Pi board lacks interfaces
including RS-485/232 serial ports, CAN, and economical 1-wire buses,
and digital and analog inputs and outputs. The Raspberry Pi board
being used in harsh industrial environments with high temperatures
and strong vibrations leads to performance losses and damage to the
board. The microSD cards can only retain a limited amount of infor-
mation, making them unsuitable for industrial applications involving
the storage of large amounts of data.
Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t 37
TABLE 2.2
Comparison of Development Boards
S. No Parameter Arduino Raspberry Pi BeagleBone
1 Example controller 8 bit 32 bit 32 bit
2 Flash code 32 kb SD,MMC card 4GB e-MMC
3 RAM size 2 kb 256 Mb 512 Mb
4 Microcontroller Atmega3280P BCM2835 AM335x
chip
5 Clock 16 MHz 700 MHz 1 GHz
6 Operating system None Linux Linux,
Android
7 Price 20$ $35 $50
38 Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t
REFERENCES
1. Snellma Henrik, Savolainen Mikko, Knaappila Jere, and Rahikkala
Pasi, Bluetooth ® 5,Refined for the IoT. Available online: www.
silabs.com/documents/public/white-papers/bluetooth-5-refined-
for-the-IoT.pdf, 2019.
2. Zigbee Alliance, Zigbee Specification. Available online: https://
people.ece.cornell.edu/ l and/ c ourses/ e ce4760/ F inalProjects/
s2011/kjb79_ajm232/pmeter/ZigBee Specification.pdf, 2008.
3. EnGenius Technologies, Wi- Fi Beacon Frames Simplified.
Available Online: www.engeniustech.com/wi-fi-beacon-frames-
simplified/, 2017.
4. RFC 8025: IPv6 over Low-Power Wireless Personal Area Network
(6LoWPAN). Available online: https://tools.ietf.org/html/rfc8025.
5. R. Zeqiri, F. Idrizi, and H. Halimi, 2019. “Comparison of
Algorithms and Technologies 2G, 3G, 4G and 5G,” 3rd
International Symposium on Multidisciplinary Studies and
Innovative Technologies (ISMSIT), Ankara, Turkey, pp. 1–4.
6. LoRaWAN Alliance. Available online: https://lora-alliance.org/
about-lorawan.
7. A. Lavric, A. I. Petrariu, and V. Popa. “Long Range SigFox
Communication Protocol Scalability Analysis Under Large-Scale,
High-Density Conditions,” IEEE Access, 7, 35816–35825, 2019.
8. R. Jain, “Constrained Application Protocol for Internet of Things,”
International Journal of Engineering and Technology, 857, 1–
12, 2014.
9. C. Cho, J. Kim, Y. Joo, and J. Shin, “An Approach for CoAP-
based Notification Service in IoT Environment.” International
Conference on Information and Communication Technology
Convergence (ICTC), Jeju Island, Korea, 2016, pp. 440–445.
10. D. Ugrenovic and G. Gardasevic, “CoAP protocol for Web-
based monitoring in IoT healthcare applications,” 23rd
Telecommunications Forum Telfor (TELFOR), Belgrade, Serbia,
2015, pp. 79–82.
11. “MQTT.” Available online: http://mqtt.org/.
12. P. Dhar and P. Gupta, “Intelligent Parking Cloud Services Based
on IoT Using MQTT Protocol,” in International Conference
on Automatic Control and Dynamic Optimization Techniques
(ICACDOT), Pune, India, 2016, pp. 30–34.
13. D.-H. Kang et al., “Room Temperature Control and Fire Alarm/
Suppression IoT Service Using MQTT on AWS,” in International
Conference on Platform Technology and Service (PlatCon), 2017,
pp. 1–5.
Internet of T h i n g s A pp l ica t i o n D e v e l o p m e n t 39
3.1 INTRODUCTION
Chapters 1 and 2 have given us a vivid picture about IoT and the
associated design issues and challenges. The chapters have also given
us an insight into the IoT application development process, key tech-
nologies used, and the platforms available that support in the actual
development of the applications. They have built a strong founda-
tion for the rest of chapters in this book in which we will discuss
about the importance of Cloud in IoT and the various approaches and
techniques that can be applied in real-time scenarios encountered
when developing an IoT application.
In this chapter, we primarily discuss how Cloud plays a vital
role in realizing IoT to its full potential. The chapter is organized as
follows. Section 3.1 discusses the opportunities and challenges that
are encountered when the IoT–Cloud convergence comes into pic-
ture. Section 3.2 provides a bird’s eye view on the architecture for
convergence. Section 3.3 elaborates on data offloading and computing
from the IoT perspective. Section 3.4 explains the concept of dynamic
resource provisioning for IoT. Section 3.5 introduces the various test
beds and technologies with respect to IoT–Cloud Convergence.
The topic under discussion being IoT–Cloud Convergence cannot
be well explained without providing an insight into the basics of the
Cloud technology in brief. The National Institute of Standards and
Technology (NIST) defines Cloud computing as “a model for enab-
ling ubiquitous, convenient, on-demand network access to a shared
pool of configurable computing resources (e.g., networks, servers,
storage, applications, and services) that can be rapidly provisioned
and released with minimal management effort or service provider
interaction” [1]. In simple terms, Cloud computing is on-demand
delivery of scalable computing resources (storage, servers, etc.)
provided as a service to the users over the internet, thereby allowing
41
42 I o T- C l o u d C o n v e r g e n c e
A simple scenario can help the reader gain good understanding of the
above-mentioned requirements. Consider a multi-specialty hospital
handling thousands of inpatients and outpatients in a day. A person
looking for consultation/ treatment books a time slot to visit the
hospital. The application basically requires consent from the user
enabling the hospital authorities to access his medical records and
photo ID. The app also records the user’s registered phone number.
This collection of user-sensitive information must be done without
affecting the privacy of the user. Also, the collected information,
being highly sensitive user medical records, need to be stored with
utmost security measures in place.
When the user enters the premises, the CCTV at the entrance
recognizes him and gives him real-time guidance and notifications
on his registered mobile device. Following the instructions, the user
is dynamically assigned to an available doctor for consultation. Any
further tests that are recommended are uploaded in the app and the
user is dynamically directed to the appropriate labs for the tests. The
results are made available to the consulting doctor through the app.
The doctor then analyzes the reports and specifies the medication in
the app itself. The user then goes to the pharmacy and authenticates
him with the registered phone number. Upon successful authen-
tication, the medical prescription alone is made available to the
pharmacist who provides him with required medicines and leaves
the hospital.
The entire scenario that has been narrated from the context of
a single user it has to be done for thousands of users per day. The
data collected from all such users can be huge and needs a separate
dedicated secure space for storage. Also, the processing of lab results
and assignment of doctors to users based upon the availability must
be done dynamically, which will amount to significant computational
overhead. Also, the number of users who enroll for a visit will vary
hugely with respect to time. During the day, we might have many
users visiting the hospital and the number decreases at night. There is
no point in keeping all the instances (storage, processor, and virtual
machines) up and running when the demand is low. To minimize the
cost and use the resources effectively, the resources should be scal-
able according to the needs.
46 I o T- C l o u d C o n v e r g e n c e
[GPU]) that are too costly, then public Cloud comes in handy. In such
a situation the organization must find a balance between the private
and public Cloud (hybrid Cloud) such that it achieves cost effective-
ness without any compromise in terms of security and performance.
The Cloud service provider, being the aggregator of information/
data, should be accountable for the data and abide by the privacy
terms and conditions. Organizations must make a careful choice of
the service providers based on the service providers’ reliability and
efficiency in providing services.
Virtualization of resources: Advanced and specialized hardware
resources such as GPUs should be effectively virtualized such that
many virtual machines share one physical GPU (cost-effective). The
inverse of this situation is also possible wherein multiple virtual
GPUs are allocated to a single virtual machine that executes highly
demanding workloads. Also, with the hugely changing demands in
an IoT application, the need for resources can increase suddenly and
fall sharply. Under such situations dynamic allocation of resources
must be done in order to ensure uninterrupted services. Virtualization
enables the Cloud to maintain a pool of resources and allocate the
resources as per the changing demand.
A seamless transition of resources is crucial considering the ubi-
quitous nature of participating devices. When a device moves from
one location to another, resources might have to be reallocated in
order to felicitate better user experience in terms by reducing the
latency involved. Also, if a particular resource (e.g., server) in a geo-
graphical location goes down, the services should be continued with
fall back resources.
Considering the huge number of devices that will be connected
over the internet to the Cloud (devices can also span across geo-
graphical locations), and the huge volumes of data that they gen-
erate from various sources, the Cloud should be equipped to handle
the demand that might arise in terms of storage and computational
power. The Cloud should be capable of decentralized monitoring and
maintenance of resources. The Cloud should also be able to handle
and organize the data coming in from multiple devices mostly in an
unstructured or semistructured format. Whenever any computation or
even simple storage of the data is required, it should be converted
into a structured format to enable further analysis via application of
algorithms and logic.
Resource-intensive computations when encountered in an IoT
application can leverage the Cloud resources to complete the task
I o T- C l o u d C o n v e r g e n c e 51
Device Software
The device software enables provides the users with hassle-free experi-
ence in connecting the devices/things to the Cloud and equips the
devices (also called as edge nodes) to be able to perform a number of
critical computations. The two services offered under this category are:
3 . 3 . 2 S ta te of th e A r t: Con ve rge n ce
Archi tectures
In recent times, there has been an ever-increasing demand for IoT
applications. However, the real-time challenges that are being faced
in realizing the IoT to its full potential have led way to a consider-
able research in the area. With advancements in Cloud computing,
researchers have started to see the great benefits that can be obtained
by bringing IoT and Cloud together. Much research has been done in
developing an apt architecture that would put Cloud to a better use in
IoT applications.
In reference [2], the authors have proposed a simple architecture to
depict the future Internet of Things. The Cloud has been incorporated
into the system to function as a storage platform to store all the infor-
mation collected/generated by the devices. It also functions as a medi-
ator/managing authority that protects stored data by implementing
access control rules and policies. Also, it serves as a computa-
tional platform wherein all the huge power-consuming calculations
related to access management are done. Also, the paper discusses a
decentralized mechanism to help in the registry and monitoring and
management of devices/things that are connected to the Cloud.
In reference [3], the authors have proposed a generalized IoT–
Cloud architecture to meet the demands of IoT applications. With
millions of devices being connected over the internet and demanding
application-specific services, it becomes difficult to manage and serve
all such requests. The IoT Cloud proposed in this paper emphasizes
the virtualization of resources in order to ensure full utilization of
physical machines (improved resource utilization) and scalability
of servers. A virtual resource pool (virtualization technique using
hypervisors) is established on numerous physical machines with all
the required hardware resources. Based on the demand, the resources
from the pool can be assigned to the virtual machines dynamically.
56 I o T- C l o u d C o n v e r g e n c e
using the Thread, WiFi, and the Long Range (LoRa) communication
protocols that help in establishing the connection among the partici-
pating devices and gateways. The Cloud platform is implemented
using the Azure Cloud platform services (discussed in Section 3.2.1)
enabling provisioning and management of devices/things, storage,
analytics, and visualization.
In reference [8], the authors have presented a novel IoT–Cloud
architecture for “Big Stream” applications that have many data
sources, higher rates of information exchange, and greater need for
real-time processing. It aims at minimizing latency and improving the
resource allocation process with the help of a listener-oriented com-
munication model. The services or applications that are interested in
specific data from a data source (edge devices) register themselves
and wait upon them for any input. Based on the application’s specific
needs mentioned as rules, certain specific Cloud services work upon
the data (normalize the data) in converting it into a format applicable/
desirable to the consumer application/service.
In reference [9] the authors have proposed an edge-based IoT
Cloud architecture with the aim of reducing latency and improving
the security and efficiency of the system. To enhance the security
aspect in the Cloud and enable IoT, the authors have adopted the trad-
itional trust-based evaluation mechanism. A large part of the heavy
resource-consuming trust calculations is done at the edge networks.
This helps in reducing the latency and cost incurred in transferring the
information back and forth between the Cloud and devices.
In reference [10], the authors have presented an architecture
called the Internet of Things edge Cloud federation. The architec-
ture addresses the problem faced in the transfer of data between the
devices and Cloud due to the different protocol stacks and hetero-
geneity of devices. The model also uses the apache kafka publish/
subscribe platform for fault tolerance and Kubernetes that provides a
pipeline for data processing.
In reference [11], the authors have presented a first of its kind
IoT architecture using osmotic computing. This computing tech-
nique involves a mechanism to manage the various resources, data,
and services as the elements move across various infrastructures that
are heterogeneous in nature. In order to orchestrate or manage such
resource movements, the system has to be trained using an Artificial
Intelligence module.
58 I o T- C l o u d C o n v e r g e n c e
3 . 4 . 3 Da ta Of f loadin g an d Compu t at io n s
With the recent increase in usage of IoT applications that collaborates
with the Cloud for many resource-intensive computations, of huge
volumes of data collected at the edges are transferred to remote sites
for processing. Although offloading is important in order to perform
computations and storage at a larger scale, it incurs significant cost,
causes latency, and lowers the bandwidth due to the transportation of
data to and from the Cloud. Is also poses security and privacy threats
to the data in transit. A considerable amount of research is being
done in this area in order to suggest efficient and optimal offloading
techniques to improve the system performance and reliability.
In reference [13], the authors have proposed prediction- based
offloading schemes that predicts any available opportunities for
transferring data in future between mobile nodes in a terminal to ter-
minal (T2T) network based on the topology varying with time, node
mobility pattern, and the temporal contacts. The proposed system
has been verified to provide results with improved delivery ratio and
reduced latency overhead in comparison to other methods.
In reference [14], the authors have proposed a genetic algorithm
based adaptive offloading (GS-OA) for efficient communication in
the IoT–Cloud Infrastructure. The mechanism serves to improve the
response rate to requests with the help of the fitness process that is
distributed among the gateways and other devices in the infrastruc-
ture. This in turn leads to lesser delay and processing time in the
system, leading to better performance and improved throughput.
In reference [15], the authors have proposed a fog- based data
offloading mechanism to provide a reliable means of data collection
64 I o T- C l o u d C o n v e r g e n c e
• User mobility can be traced with the edge device monitoring the
user movement and credentials of the users and devices.
Firewall policies that are defined by the IoT application are translated
into flow policies. These flow policies are revisited to rule out any
conflicts after which the policies become a set of firewall rules
that are installed at the edge. All incoming and outgoing traffic are
then scrutinized against these set of rules. Examples of firewall-
based security at the edge layer include FLOWGAURD [32] and
a distributed firewall architecture [33], which use software-defined
networks (SDN) and virtual network function (VNF) respectively.
Intrusion detection system at the edge layer: In 2016, a successful
distributed denial of service (DDoS) attack was launched by attackers
by compromising a great number of IoT end devices. This disrupted
internet services in a wide range of areas. The presence of an effi-
cient intrusion detection system would have helped address the issue,
thereby minimizing the loss incurred. Designing an intrusion detec-
tion system at the edge layer would be more efficient considering the
availability of huge data/information that is transferred from mul-
tiple end devices/sources. This data can then be run against machine
learning algorithms to identify any intrusions and adapt to changes
in attack patterns. A typical design of the intrusion detection at the
edge layer as shown in reference [34] consists of a distributed traffic
monitoring system that collects the network traffic in real time. The
data is then run against the intrusion detection algorithm locally at
the edge device. The collective data from multiple edge devices are
also collaboratively monitored for any intrusion. Finally, the network
controllers installed at the edge devices impose the detection outcome
for further action.
Edge-based authentication and authorization: Authentication and
authorization play a major role in security that helps prevent many
attacks such as unauthorized access and the DDoS attacks. However,
the huge number of devices and heterogenous nature of platforms and
protocols make it difficult to establish a strong security mechanism.
Also, standard security aspects such as the digital signatures cannot
be applied to the IoT ecosystem. These problems can be resolved
by the edge layer that acts as a middleman between the end devices
and the Cloud. The authentication process can be broken down into
multiple segments with the edge being the pivot. The first segment
involves the authentication between the end device and the edge, and
the second segment includes the authentication between the edge and
the Cloud/user/other end devices. Authentication protocols can be
78 I o T- C l o u d C o n v e r g e n c e
IoT tier: This tier is responsible for sensing the data of interest
like temperature, chemical composition of atmosphere,
I o T- C l o u d C o n v e r g e n c e 79
Server tier: The server tier is the entry point for users to access
the test bed and perform operations on it. All the back-end
components and its functionalities are hosted in the server tier.
Gateway tier: The gateway tier is the backbone of the test infra-
structure. It connects the server tier and the IoT tier via WiFi
or Ethernet. Gateway tier is also known as an embedded
gateway (GW).
IoT tier: As the name suggests, IoT tier consists of IoT sensor nodes.
It also comprises consumer electronics such as smartphones
and smart displays. IoT nodes can be connected in two ways.
The first way is wireless communication that includes WiFi and
Bluetooth. Second, a USB connection, which is wired, is used
for management of gateway.
80 I o T- C l o u d C o n v e r g e n c e
REFERENCES
1. https://csrc.nist.gov/publications/detail/sp/800-145/final.
2. Nancy Ambritta P., Poonam N. Railkar, and Parikshit N. Mahalle.
Proposed Identity and Access Management in Future Internet
(IAMFI): A Behavioral Modeling Approach, Journal of ICT, 2(1),
1–36, 2014.
3. Lu Hou, Shaohang Zhao, Xiong Xiong, Kan Zheng, Periklis
Chatzimisios, M. Shamim Hossain, and Wei Xiang. Internet of Things
Cloud: Architecture and Implementation, IEEE Communications
Magazine —Communications Standards Supplement, 54, 32–39,
2016.
82 I o T- C l o u d C o n v e r g e n c e
SMA RT CO M PUT I N G
O VER IO T –CLO UD
4.1 INTRODUCTION
Smart computing in general refers to the mechanism of empowering
devices and utilities that we use in our day-to-day lives with com-
puting capabilities. On similar lines, smart computing over the
IoT–Cloud refers to confluence of hardware, software, and network
technologies that empower the IoT–Cloud application with real-time
awareness of the environment and enhanced analytics that can assist
humans in better decision making and optimizations, thereby driving
the business to success.
This chapter discusses smart computing technologies that are
involved in driving the IoT–Cloud applications to success. Section
4.1 provides an overview of big data analytics and cognitive com-
puting from an IoT–Cloud perspective. Section 4.2 provides a brief
explanation of a few deep learning approaches. Section 4.3 discusses
the techniques, algorithms, and methods and Section 4.4 includes a
few case studies pertaining to smart computing over IoT–Cloud.
85
86 Smart Computing over IoT–Cloud
4 . 2 . 3 Em p owerin g A n alytic s
In the introduction of this chapter, we had presented an apt defin-
ition for big data and cognitive computing. The huge volumes of the
big data pose huge problems too. Industries and businesses today are
overwhelmed with the amount of information that is accumulated for
analysis. However, the talent that is required to handle such data and
retrieve meaningful information for businesses is scarcely available.
The number of data scientists and analysts are not enough to keep
up with the ever-increasing data volumes. Experienced specialists are
required in order to handle the available platforms and put them to
effective use.
A solution to this problem would be to increase the supply of
specialists by increasing the training programs offered to interested
people. On these grounds, an even more effective solution would be
to utilize the existing technologies and train machines/computers
rather than human beings to manage the tools. This is made possible
with advancements in cognitive computing. The confluence of cogni-
tive computing, artificial intelligence, and machine learning can aid
both experienced and inexperienced staff to handle complex analytic
operations using the available tools and platforms. It also helps in
improving the accuracy and quality of the results. This accelerates the
process of analysis in real-time and near real-time data, thereby enab-
ling businesses to make real-time decisions.
The capabilities that cognitive computing can empower big data
with are countless and very promising. The argument presented
above about the lack of sufficient talent with knowledge to handle
the big data platforms can be overcome with advancements in NLP.
With NLP in picture, employees who are not proficient in data/infor-
mation processing and data languages that is required for analytics
activities can simply work on the platforms and tools with normal
interactions just as we do with other human beings. The platforms
can be equipped with the capability to transform normal language
into data queries and requests and respond with solutions or answers
in the same way as a natural language, enabling easy understanding.
This brings in much more flexibility into big data analytics.
Big data analytics empowered by cognitive computing has
accelerated the decision-making process, accuracy, and productivity
Smart Computing over IoT–Cloud 95
of many businesses with its tools and platforms. A few of them are
DeepMind, Watson, and Zeroth Cognitive Computing Platform,
which we have already discussed in Section 4.1.1. Following are a
few more tools that drive the analytics process in many businesses.
IBM Watson has partnered with an Indian health care organization’s
oncology department based in Manipal. It aids in making better
decisions in cancer treatment based on the previous knowledge that
it has acquired by going through a vast number of medical records,
patient history, and journals to arrive at an accurate diagnosis and
recommended treatments.
Wipro’s Holmes Platform mentioned in Section 4.1.1 is an artifi-
cial intelligence based platform. It has been adopted in the financial
sector in order to study, examine, and analyze a variety of structured
and unstructured data and support the decision-making process of
an analyst. Tasks such as know your customer (KYC) and appraisal
pertaining to credit risk are automated with the help of Wipro Holmes.
The government of Andhra Pradesh has sought the predictive ser-
vices offered by Azure in order to identify students with a high prob-
ability of dropout from schools. The platform enables the collection
and analysis of data for specific information such as school infrastruc-
ture, teacher quality, training methodology, and also the social and
economic background. This enables the government in making better
decisions and allocate resources where in need.
4. Calculate the step size for every feature as step size = gradient
* learning rate. Learning rate should be kept to a minimum so
that on its journey down the slope we do not want to miss out
the minimum point by taking larger strides.
5. Determine new parameter values as new parameter value = old
value –step size.
6. Continue the process by repeating steps 3–5 until the gradient
reaches a value 0 or close.
TABLE 4.1
Naïve Bayes Data Set
Weather Class Label
Sunny No
Sunny No
Rainy Yes
Rainy No
Sunny Yes
TABLE 4.2
Naïve Bayes Frequency Table
Weather No Yes
Sunny 2 1
Rainy 1 1
TABLE 4.3
Naïve Bayes Prior Probability
Weather Yes No
Sunny 2 1 =3/5=0
Rainy 1 1 =2/5=0.4
Total 3/5=0.6 2/5=0.4
TABLE 4.4
Naïve Bayes Posterior Probability
Weather Yes No Posterior Probability Posterior Probability
(Yes) (No)
Sunny 2 1 2/3=0.67 ½=0.5
Rainy 1 1 1/3=0.35 ½=0.5
Total 3 2
106 Smart Computing over IoT–Cloud
Figure 4.7. Support vectors are nothing but data points themselves that
are closer to the hyperplane whose removal can cause a great change or
shift in position of the hyperplane. The success of SVMs is determined
from the distance that exists between the hyperplane and the nearest
data point, which is called as the margin (greater distance means
effective classification). When a clear hyperplane cannot be identified,
a 3D view of the data points can help in obtaining the hyperplane,
which is done through a mechanism called kernelling. SVM finds its
application in many areas such as in the cancer and neurological dis-
ease diagnosis and many other research related to health care.
For further understanding, readers can refer to the example in refer-
ence [14], which shows the implementation of support vector machine
in Python using scikit-learn. The data set used for the implementation
is the caner data set, which can be downloaded from the UCI Machine
Learning Library. The data set comprising 30 features classifies cancer
into two classes (target), namely malignant and benign.
Following are a few machine learning techniques that are used
commonly in cognitive computing [15].
Random Forest as the name suggests is a collection of decision
trees that when presented with an entity for classification performs an
analysis and presents a class to which the entity might belong. Each
tree votes for a class independently and a unanimous decision is made
Smart Computing over IoT–Cloud 107
by choosing the class that has the largest number of votes. The deci-
sion trees are implemented as a forest in the following steps.
4 . 5 . 2 S m a r t Home
Like in health care, cognitive computing plays a key role in smart
homes. Applying machine learning enables smart homes to scale
effectively and efficiently. Predictive maintenance is the first key
benefit of Cognitive Smart Homes. It can provide critical informa-
tion to the building owners about equipment failure well ahead in
time. Nest Labs’ thermostat can also help lessen energy expenses
by using sensors that identify the number of occupants in a room by
automatically adjusting the temperature. Philips smart light bulbs can
turn on and off by detecting occupants in the room. Smart building is
connected to smart grid/city and they can listen or talk to each other,
thereby making it self-aware. Voice-activated systems contain vir-
tual assistants that can learn and personalize the smart home to their
occupants. Smart TVs access content through internet along with
voice and gesture support. Yale Smart locks and garage door openers
can grant or deny access to visitors. It can automatically unlock the
door for its occupants. Smart security cameras enable residents to
observe their homes while they are away. Smart sensors can recognize
the difference between residents, pets, visitors, and burglars and alert
the authorities. Automation of pet care can be done with connected
feeders. Plants at home and gardens can be watered by attached
timers. Monitors of household systems can detect an electric surge,
failures in water system, or freezing pipes and immediately turn off
appliances so that the homes are safe. Smart refrigerators monitor the
expiry date, make a shopping list, or suggest a recipe based on the
contents of the fridge. Smart coffee makers can prepare a fresh cup of
coffee. The next logical step of improving the accuracy and capability
of IoT sensor driven systems is infusing human awareness via cogni-
tive computing and infuse intelligence into these devices.
4 . 5 . 3 Ma nuf ac turin g
Industrial firms are constantly seeking to bring down operational
costs and machine downtime. Cognitive computing offers predictive
110 Smart Computing over IoT–Cloud
REFERENCES
1. Danish Contractor and Aaditya Telang, Applications of Cognitive
Computing Systems and IBM Watson, Springer 2017.
2. M. Filgueiras L. Damas N. Moreira, and A. P. Tomás, “Natural
Language Processing,” EAIA ‘90, 2nd Advanced School in
Artificial Intelligence Guarda, Portugal, October 8–12, 1990.
3. Chun-Wei Tsai, Chin-Feng Lai, Ming-Chao Chiang, and Laurence
T. Yang, “Data Mining for Internet of Things: A Survey,” IEEE
Communications Surveys & Tutorials, 16, 77–97, 2014.
112 Smart Computing over IoT–Cloud
CO N CLUS I O N
5.1 SUMMARY
This section concludes the book and proposes the future outlook,
which can be explored further to initiate new research avenues. This
book intended to cover requirements, challenges, technologies, and
methods to be adapted in order to bring about the convergence of
IoT and Cloud for smart computing. The main topics covered in this
book are overview of IoT in terms of architecture and use cases, IoT
application development and protocol requirements, opportunities
and techniques for IoT–Cloud convergence, and smart computing
requirements through learning techniques. The chapter-wise details
are summarized below.
The advancements in tiny smart devices, IoT, and Cloud com-
puting have laid the basis for a converged service network called IoT.
The seamless communication and contextual services are provided by
IoT using smart objects. An overview of IoT covering the technical
building blocks and the usage of IoT in business have been presented
in Chapter 1. It also presents the IoT layered architecture. The chapter
proceeds further by providing an overview of smart computing and
discusses a few use cases. The chapter concludes with a discussion on
the IoT design issues and challenges.
Due to rapid advancements in e-commerce and m-Commerce as
well as availability of Internet at faster and cheaper rate, the use of
mobile applications and IoT-enabled applications is increasing at
faster rate. IoT solutions have become an integral part of everyday
life and IoT application development is becoming a potential business
proposition. Smartphones, sensors, cameras, and RFID are the major
components in all IoT use cases. Minimum human intervention for
the exchange of information and interconnecting devices using wired
and wireless communication medium are the key steps in building
IoT applications. Chapter 2 begins with a brief description about the
113
114 Conclusion
system. A few major case studies under various domains where smart
computing over IoT–Cloud is used have been elaborated in the chapter
enabling the readers acquire a clear and vivid picture of the usage of
smart computing over IoT–Cloud.
The revolution in different technologies like Cloud computing,
IoT, cognitive computing, big data analytics and deep learning has
led to the emergence of smart application and efficient services with
less human intervention. This convergence of different technologies,
especially Cloud computing, has accelerated and eventually opened
up many personal and business opportunities. This chapter provides
a summary of each chapter. The chapter also discusses the issues and
challenges involved in developing an IoT–Cloud application. It fur-
ther provides future outlook of Cloud and IoT in several domains,
thereby laying a foundation for further research.
REFERENCES
1. P. N. Mahalle and P. N. Railkar. Identity Management for Internet of
Things. River Publishers, Wharton, TX, 2015.
2. P. Mahalle, “Identity Management Framework for Internet of
Things.” PhD Dissertation. Aalborg University, Denmark, 2013.
3. M. S. Hossain, C. Xu, Y. Li, A.-S. K. Pathan, J. Bilbao, W. Zeng,
and A. El Saddik, “Impact of Next-Generation Mobile Technologies
on IoT-Cloud Convergence,” Communications Magazine, 55(1),
18–19, 2017.
I N D EX