Module 3 IOT 7th sem vtu
Module 3 IOT 7th sem vtu
MODULE 3
Chapter 6
IoT Processing Topologies and Types
After reading this chapter, the reader will be able to:
21CS735_Internet of Things
based on how they can be accessed and stored: 1) Structured data and 2) unstructured
data.
Figure 6.1 The various data generating and storage sources connected to the Internet and the
plethora of data types contained within it
21CS735_Internet of Things
to applications and data-generating sources. Some of the common examples of
human-generated unstructured data include text, e-mails, videos, images, phone
recordings, chats, and others [2]. Some common examples of machine-generated
unstructured data include sensor data from traffic, buildings, industries, satellite
imagery, surveillance videos, and others. As already evident from its examples, this
data type does not have fixed formats associated with it, which makes it very difficult
for querying algorithms to perform a look-up. Querying languages such as NoSQL
are generally used for this data type.
21CS735_Internet of Things
On-site
processing
21CS735_Internet of Things
Remote processing
This is one of the most common processing topologies prevalent in present-day IoT
solutions. It encompasses sensing of data by various sensor nodes; the data is then
forwarded to a remote server or a cloud-based infrastructure for further processing
and analytics. The processing of data from hundreds and thousands of sensor nodes
can be simultaneously offloaded to a single, powerful computing platform; this results
in massive cost and energy savings by enabling the reuse and reallocation of the
same processing resource while also enabling the deployment of smaller and simpler
processing nodes at the site of deployment [4]. This setup also ensures massive
scalability of solutions, without significantly affecting the cost of the deployment.
Figure 6.3 shows the outline of one such paradigm, where the sensing of an event is
performed locally, and the decision making is outsourced to a remote processor (here,
cloud). However, this paradigm tends to use up a lot of network bandwidth and relies
heavily on the presence of network connectivity between the sensor nodes and the
remote processing infrastructure.
Collaborative processing
This processing topology typically finds use in scenarios with limited or no network
connectivity, especially systems lacking a backbone network. Additionally, this
topology can be quite economical for large-scale deployments spread over vast areas,
where providing networked access to a remote infrastructure is not viable. In such
21CS735_Internet of Things
scenarios, the simplest solution is to club together the processing power of nearby
Environment Sensing Network Remote
processing
processing nodes and collaboratively process the data in the vicinity of the data
source itself. This approach also reduces latencies due to the transfer of data over
the network. Additionally, it conserves bandwidth of the network, especially ones
connecting to the Internet. Figure 6.4 shows the collaborative processing topology
for collaboratively processing data locally. This topology can be quite beneficial for
applications such as agriculture, where an intense and temporally high frequency
of data processing is not required as agricultural data is generally logged after
significantly long intervals (in the range of hours). One important point to mention
about this topology is the preference of mesh networks for easy implementation of
this topology.
Environment Sensing
Collaborative
network/mesh
21CS735_Internet of Things
• Size: This is one of the crucial factors for deciding the form factor and the
energy consumption of a sensor node. It has been observed that larger the form
factor, larger is the energy consumption of the hardware. Additionally, large form
factors are not suitable for a significant bulk of IoT applications, which rely on
minimal form factor solutions (e.g., wearables).
• Energy: The energy requirements of a processor is the most important
deciding factor in designing IoT-based sensing solutions. Higher the energy
requirements, higher is the energy source (battery) replacement frequency. This
principle automatically lowers the long-term sustainability of sensing hardware,
especially for IoT-based applications.
• Cost: The cost of a processor, besides the cost of sensors, is the driving force
in deciding the density of deployment of sensor nodes for IoT-based solutions.
Cheaper cost of the hardware enables a much higher density of hardware
deployment by users of an IoT solution. For example, cheaper gas and fire
detection solutions would enable users to include much more sensing hardware
for a lesser cost.
• Memory: The memory requirements (both volatile and non-volatile memory) of
IoT devices determines the capabilities the device can be armed with. Features
such as local data processing, data storage, data filtering, data formatting, and
a host of other features rely heavily on the memory capabilities of devices.
However, devices with higher memory tend to be costlier for obvious reasons.
• Processing power: As covered in earlier sections, processing power is vital
(comparable to memory) in deciding what type of sensors can be accommodated
with the IoT device/node, and what processing features can integrate on-site
with the IoT device. The processing power also decides the type of applications
the device can be associated with. Typically, applications that handle video and
image data require IoT devices with higher processing power as compared to
applications requiring simple sensing of the environment.
21CS735_Internet of Things
• I/O rating: The input–output (I/O) rating of IoT device, primarily the processor,
is the deciding factor in determining the circuit complexity, energy usage, and
requirements for support of various sensing solutions and sensor types. Newer
processors have a meager I/O voltage rating of 3.3 V, as compared to 5 V for the
somewhat older processors. This translates to requiring additional voltage and
logic conversion circuitry to interface legacy technologies and sensors with the
newer processors. Despite low power consumption due to reduced I/O voltage
levels, this additional voltage and circuitry not only affects the complexity of the
circuits but also affects the costs.
• Add-ons: The support of various add-ons a processor or for that matter, an IoT
device provides, such as analog to digital conversion (ADC) units, in-built clock
circuits, connections to USB and ethernet, inbuilt wireless access capabilities, and
others helps in defining the robustness and usability of a processor or IoT device
in various application scenarios. Additionally, the provision for these add-ons
also decides how fast a solution can be developed, especially the hardware part
of the whole IoT application. As interfacing and integration of systems at the
circuit level can be daunting to the uninitiated, the prior presence of these options
with the processor makes the processor or device highly lucrative to the users/
developers.
21CS735_Internet of Things
the sensed data, an on-site processing topology is followed, similar to the one in Figure
6.2. However, for the majority of IoT applications, the bulk of the processing is carried
out remotely in order to keep the on-site devices simple, small, and economical.
Typically, for off-site processing, data from the sensing layer can be forwarded to
the fog or cloud or can be contained within the edge layer [6]. The edge layer makes
use of devices within the local network to process data that which is similar to the
collaborative processing topology shown in Figure 6.4. The devices within the local
network, till the fog, generally communicate using short-range wireless connections.
In case the data needs to be sent further up the chain to the cloud, long-range wireless
connection enabling access to a backbone network is essential. Fog-based processing is
still considered local because the fog nodes are typically localized within a geographic
area and serve the IoT nodes within a much smaller coverage area as compared to the
cloud. Fog nodes, which are at the level of gateways, may or may not be accessed by
the IoT devices through the Internet.
Environment
Temperature
sensor Database
Server
Cloud processing
Local processing
Edge processing
Event: Fire
Fog processing
Local
Sensing
network
clusters
Camera
Environment sensor Sensor Internet Server
node
Event: Surveillance
Temperature Server
sensor Database
Wired/
Communication
wireless Short
range
wireless Long range wireless/backbone
Backbone
Figure 6.5 The various data generating and storage sources connected to the Internet and the
plethora of data types contained within it
21CS735_Internet of Things
• Edge: Offloading processing to the edge implies that the data processing is
facilitated to a location at or near the source of data generation itself. Offloading
to the edge is done to achieve aggregation, manipulation, bandwidth reduction,
and other data operations directly on an IoT device [7].
• Fog: Fog computing is a decentralized computing infrastructure that is utilized
to conserve network bandwidth, reduce latencies, restrict the amount of data
unnecessarily flowing through the Internet, and enable rapid mobility support
for IoT devices. The data, computing, storage and applications are shifted to a
place between the data source and the cloud resulting in significantly reduced
latencies and network bandwidth usage [8].
• Remote Server: A simple remote server with good processing power may
be used with IoT-based applications to offload the processing from resource-
constrained IoT devices. Rapid scalability may be an issue with remote servers,
and they may be costlier and hard to maintain in comparison to solutions such
as the cloud [4].
• Cloud: Cloud computing is a configurable computer system, which can get
access to configurable resources, platforms, and high-level services through a
shared pool hosted remotely. A cloud is provisioned for processing offloading
so that processing resources can be rapidly provisioned with minimal effort over
the Internet, which can be accessed globally. Cloud enables massive scalability of
solutions as they can enable resource enhancement allocated to a user or solution
in an on-demand manner, without the user having to go through the pains of
acquiring and configuring new and costly hardware [9].
21CS735_Internet of Things
6.5.2 Offload decision making
The choice of where to offload and how much to offload is one of the major deciding
factors in the deployment of an offsite-processing topology-based IoT deployment
architecture. The decision making is generally addressed considering data generation
rate, network bandwidth, the criticality of applications, processing resource available
at the offload site, and other factors. Some of these approaches are as follows.
• Naive Approach: This approach is typically a hard approach, without too much
decision making. It can be considered as a rule-based approach in which the data
from IoT devices are offloaded to the nearest location based on the achievement
of certain offload criteria. Although easy to implement, this approach is never
recommended, especially for dense deployments, or deployments where the
data generation rate is high or the data being offloaded in complex to handle
(multimedia or hybrid data types). Generally, statistical measures are consulted
for generating the rules for offload decision making.
• Bargaining based approach: This approach, although a bit processing-intensive
during the decision making stages, enables the alleviation of network traffic
congestion, enhances service QoS (quality of service) parameters such as
bandwidth, latencies, and others. At times, while trying to maximize multiple
parameters for the whole IoT implementation, in order to provide the most
optimal solution or QoS, not all parameters can be treated with equal importance.
Bargaining based solutions try to maximize the QoS by trying to reach a point
where the qualities of certain parameters are reduced, while the others are
enhanced. This measure is undertaken so that the achieved QoS is collaboratively
better for the full implementation rather than a select few devices enjoying very
high QoS. Game theory is a common example of the bargaining based approach.
This approach does not need to depend on historical data for decision making
purposes.
• Learning based approach: Unlike the bargaining based approaches, the learning
based approaches generally rely on past behavior and trends of data flow
through the IoT architecture. The optimization of QoS parameters is pursued by
learning from historical trends and trying to optimize previous solutions further
and enhance the collective behavior of the IoT implementation. The memory
requirements and processing requirements are high during the decision making
stages. The most common example of a learning based approach is machine
learning.
21CS735_Internet of Things
• Bandwidth: The maximum amount of data that can be simultaneously
transmitted over the network between two points is the bandwidth of that
network. The bandwidth of a wired or wireless network is also considered to
be its data-carrying capacity and often used to describe the data rate of that
network.
• Latency: It is the time delay incurred between the start and completion of an
operation. In the present context, latency can be due to the network (network
latency) or the processor (processing latency). In either case, latency arises due
to the physical limitations of the infrastructure, which is associated with an
operation. The operation can be data transfer over a network or processing of
a data at a processor.
• Criticality: It defines the importance of a task being pursued by an IoT
application. The more critical a task is, the lesser latency is expected from the
IoT solution. For example, detection of fires using an IoT solution has higher
criticality than detection of agricultural field parameters. The former requires a
response time in the tune of milliseconds, whereas the latter can be addressed
within hours or even days.