For successful implementation of Internet of Things (IoT), the basics are (a) Dynamic resource demand (b) Real
time needs (c) Exponential increase of demand (d) accessibility of applications
(e) Data guard and user privacy (f) Efficient power consumptions of
applications (g) Execution of the applications near to end users (h) Access to
an open and inter operable cloud system. According to another author, there are
three components, which required for seamless Internet of Things (IoT)
computing (a) Hardware—composed of sensors, actuators, IP cameras, CCTV and
embedded communication hardware (b) Middleware—on demand storage and computing
tools for data analytics with cloud and Big Data Analytics (c)
Presentation—easy to understand revelation and understanding tools that can be
designed for the different applications
I. ARCHITECTURE OF IoT
There is no single consensus on
architecture for IoT, which is agreed universally. special architectures have
been planned by different researchers.
2.1. Three- and
Five-Layer Architectures. The most basic architecture is a three-layer
Figure 1. It
has 3 layers, namely, the perception, network, and application layers.
The perception layer is the physical layer, which has sensors for
sensing and collecting information about the environment. It mind some physical
parameters or identifies other smart objects in the environment.
The network layer is in charge for connecting to other smart things,
network devices, and servers. Its features are also used for transmit and handing
out sensor data.
The application layer is responsible for deliver application specific
services to the user. It define various applications in which the Internet of
Things can be deploy, for example, smart homes, smart cities, and smart health.
The three-layer architecture defines the main idea of
the Internet of Things, but it is not sufficient for research on IoT because
research often focuses on finer aspects of the Internet of Things. That is why,
we have many more layered architectures proposed in the literature.Another One
is the five-layer architecture, which additionally includes the processing and
business layers 3–6. The five layers are perception,
transport, processing, application, and business layers (see Figure 1). The
role of the perception and application layers is the same as the architecture
with three layers. We outline the function of the remaining three layers.
The transport layer transfer the sensor data from the perception layer
to the processing layer and vice versa through networks such as wireless, 3G,
LAN, Bluetooth, RFID, and NFC.
The processing layer stores, analyze, and processes huge amounts of
data that comes from the transport layer. It can manage and provide a diverse
set of services to the lower layers. It employs many technologies such as
databases, cloud computing, and big data processing modules.
The business layer manages the whole IoT system, including
applications, business and profit models, and users’ privacy. The business
layer is out of the scope of this paper. Hence, we do not discuss it further.
Another architecture proposed by Ning and Wang inspired by the layers of processing in the
human brain. It is inspired by the intelligence and ability of human beings to
think, feel, remember, make decisions, and react to the physical environment.
It is constituted of three parts. First is the human brain, which is analogous
to the processing and data management unit or the data center. Second is the
spinal cord, which is analogous to the distributed network of data processing
nodes and smart gateways. Third is the network of nerves, which corresponds to
the networking components and sensors.
2.2. Cloud and Fog Based
Architectures. Let us now discuss two kinds of systems architectures:
cloud and fog computing. Note that this classification is different from the
classification in Section 2.1, which was done on the
basis of protocols.
In particular, we have been somewhat unclear about the
nature of data generated by IoT devices, and the nature of data processing. In
some system architectures the data processing is done in a large centralized
fashion by cloud computers. Such a cloud centric architecture keeps the cloud
at the center, applications above it, and the network of smart things below it..Cloud
computing is given dominance because it provides great flexibility and
scalability. It offers services such as the core infrastructure, platform,
software, and storage. Developers can provide their storage tools, software
tools, data mining, and machine learning tools, and visualization tools through