@vtucode - in 21CS735 Module 3 Textbook
@vtucode - in 21CS735 Module 3 Textbook
MODULE 3
Chapter 6
IoT Processing Topologies and
Types
Learning Outcomes
After reading this chapter, the reader will be able to:
• List common data types in IoT applications
• Understand the importance of processing
• Explain the various processing topologies in IoT
• Understand the importance of processing off-loading toward achieving scalability
and cost-effectiveness of IoT solutions
• Determine the importance of choosing the right processing topologies and
associated considerations while designing IoT applications
• Determine the requirements that are associated with IoT-based processing of
sensed and communicated data.
i i
i i
i i
based on how they can be accessed and stored: 1) Structured data and 2) unstructured
data.
Databases Cloud
Internet
Figure 6.1 The various data generating and storage sources connected to the Internet and the
plethora of data types contained within it
i i
i i
i i
Check yourself
i i
i i
i i
On-site
processing
i i
i i
i i
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
scenarios, the simplest solution is to club together the processing power of nearby
i i
i i
i i
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
i i
i i
i i
designed IoT sensing and processing solution. In this chapter, we mainly focus on the
deciding factors for selecting a processor for the design of a sensor node. The main
factor governing the IoT device design and selection for various applications is the
processor. However, the other important considerations are as follows.
• 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.
• 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.
i i
i i
i i
• 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.
Check yourself
i i
i i
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
Fog processing
Event: Fire
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
i i
• 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].
i i
i i
i i
i i
i i
i i
Summary
This chapter started with an overview of the various data formats available on
the Internet and to which various IoT solutions are exposed. The complexities in
handling the numerous data formats available present a significant challenge to the
design of IoT-based solutions. In order to address these challenges, the importance
of processing in IoT is discussed. This discussion is followed by an introduction
to various processing topologies, which can be chosen to address the challenges of
IoT processing. These topologies are broadly made up of two categories: 1) On-site
processing and 2) Off-site processing. The off-site processing is typically composed
of approaches to offload data to locations which are not the same as the one from
which the data was generated. A discussion on processing offloading follows these
topologies. Various offload location types, means of deciding offload location and
quantity are explained. Finally, the various parameters to be considered for offloading
are discussed to enable the reader to grasp the nuances of processing in IoT.
Exercises
(i) What are the different data formats found in IoT network traffic streams?
(ii) Depending on the urgency of data processing, how are IoT data classified?
(iii) Highlight the pros and cons of on-site and off-site processing.
(iv) Differentiate between structured and unstructured data.
(v) How is collaborative processing different from remote processing?
(vi) What are the critical factors to be considered during the design of IoT devices?
(vii) What are the typical data offload locations available in the context of IoT?
(viii) What are the various decision making approaches chosen for offloading data in
IoT?
i i
i i