Internet of Things BETCK105H - Module - 2
Internet of Things BETCK105H - Module - 2
Course objectives
Understand about the fundamentals of Internet of Things and
its building blocks along with their characteristics.
life.
Gain insights about the current trends of Associated IOT
technologies and IOT Analytics.
Module-3 (8- Hours Pedagogy)
Data Format
Processing Topologies
Processing Offloading
Data Format:-
The Internet is a vast space where huge quantities and varieties of
data are generated regularly and flow freely. As of January 2018, there
are a reported 4.021 billion Internet users worldwide.
The massive volume of data generated by this huge number of
users is further enhanced by the multiple devices utilized by most users.
In addition to these data-generating sources, non human data
generation sources such as sensor nodes and automated monitoring
systems further add to the data load on the Internet.
This huge data volume is composed of a variety of data such as
E-mails, text documents (Word docs, PDFs, and others), social media
posts, videos, audio files, and images, as shown in below figure.
These data can be broadly grouped into two types based on how
they can be accessed and stored:
1) Structured data
2) Unstructured data
Figure: The various data generating and storage sources connected to the Internet and the
plethora of data types contained within it
Structured data:
These are typically text data that have a pre-defined structure.
Structured data are associated with Relational DataBase
Management Systems (RDBMS).
These are primarily created by using length-limited data fields
such as phone numbers, social security numbers, and other such
information.
Even if the data is human or machine generated, these data are
easily searchable by querying algorithms as well as human generated
queries.
Common usage of this type of data is associated with flight or
train reservation systems, banking systems, inventory controls, and other
similar systems.
Established languages such as Structured Query Language (SQL)
are used for accessing these data in RDBMS.
Unstructured data :-
The vast amount and types of data flowing through the Internet
necessitate the need for intelligent and resourceful processing techniques.
This necessity has become even more crucial with the rapid
advancements in IoT, which is laying enormous pressure on the existing
network infrastructure globally.
Given these urgencies, it is important to decide—when to
process and what to process? Before deciding upon the processing to
pursue,
we first divide the data to be processed into three types based
on the urgency of processing:
1) Very time critical
2) Time critical and
3) Normal
Example for: very critical Time -
Data from sources such as flight control systems, healthcare, and
other such sources, which need immediate decision support, are
deemed as very critical. These data have a very low threshold of
processing latency, typically in the range of a few milliseconds.
Example for: Time critical -
Data from sources that can tolerate normal processing latency are
deemed as time critical data. These data, generally associated with
sources such as vehicles, traffic, machine systems, smart home
systems, surveillance systems, and others, which can tolerate a latency
of a few seconds fall in this category.
Example for: Normal -
The last category of data, normal data, can tolerate a
processing latency of a few minutes to a few hours and are
typically associated with less data-sensitive domains such as
agriculture, environmental monitoring, and others.
Considering the requirements of data processing, the processing
requirements of data from very time-critical sources are exceptionally
high. Here, the need for processing the data in place or almost nearer to
the source is crucial in achieving the deployment success of such
domains.
In the off-site topology, the data from these sensor nodes (data
generating sources) is transmitted either to a remote location (which can
either be a server or a cloud) or to multiple processing nodes.
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 (high energy consumption) 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.
Processing power
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.
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.
Processing offloading :
• 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.
• Remote Server :
A simple remote server with good processing power may be used
with IoT-based applications.
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.
• 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.
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.
It is 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.
For Your Information:
(The game theory converts the interaction between two IoT devices into a
game where the conflict is resolved by utilizing the game's equilibrium
conditions)
• Learning based approach :
• 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 farmer
requires a response time in the tune of milliseconds, whereas the latter
can be addressed within hours or even days.
• Resources:
It signifies the actual capabilities of an offload location. These
capabilities may be the processing power, the suite of analytical
algorithms, and others.
For example, it is futile (incapable of producing useful results)
and wasteful to allocate processing resources reserved for real-time
multimedia processing (which are highly energy-intensive and can
process and analyze huge volumes of data in a short duration) to scalar
data (which can be addressed using nominal resources without wasting
much energy).
• Data volume:
The amount of data generated by a source or sources that can be
simultaneously handled by the offload location is referred to as its data
volume handling capacity. Typically, for large and dense IoT
deployments, the offload location should be robust enough to address the
processing issues related to massive data volumes.
Knowledge is Power….