Course outcome (Course Skill Set)
At the end of the course, students will be able to,
CO3: Demonstrate the processing in IoT.
CO4: Explain Associated IoT Technologies.
Module 3
IoT Processing Topologies and Types
Module 3
Contents:
• Data Format
• Importance of Processing in IoT
• Processing Topologies
• IoT Device Design and Selection Considerations
• Processing Offloading
Reference
Textbook 1: Chapters 6 – 6.1 to 6.5
Learning Outcomes
• List common data types in IoT applications
• Understand the importance of processing
• Explain the various processing topologies in IoT
• Understand the importance of processing offloading 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.
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 (5.52 billion internet users worldwide, representing about
67.1% of the global population.), 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.
• 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.
Data Format
Various data generating and storage sources connected to the Internet
Data Format
Data can be broadly grouped into two types based on how they can be
accessed and stored:
1. Structured data
2. Unstructured data.
Data Format
1. Structured data
• These are text data that have a pre-defined structure.
• Structured data are associated with relational database management systems (RDBMS).
• RDBMS stands for Relational Database Management System. It is a type of database
management system that stores data in a structured format using rows and columns
within tables. The relationships between the tables are maintained through keys like
primary keys and foreign keys, ensuring data consistency and integrity.
• Primarily created by using length-limited data fields such as phone numbers, social
security numbers, etc.
Data Format
• 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, etc.
• Established languages such as Structured Query Language (SQL) are used to access these data in RDBMS.
• SQL (Structured Query Language) is a programming language designed for managing and manipulating
relational databases. It is widely used in Relational Database Management Systems (RDBMS) to retrieve,
update, insert, and delete data stored in tables.
• In the context of IoT, structured data holds a minor share of the total generated data over the Internet.
Data Format
2. Un Structured data
• All the data on the Internet, which is not structured, is categorized as unstructured.
• These data types have no pre-defined structure and can vary according to applications and data-
generating sources.
Example
• Human-generated unstructured data include text, e-mails, videos, images, phone recordings, and
chats. etc.
• Machine-generated unstructured data include sensor data from traffic, buildings, industries,
satellites, imagery, surveillance videos etc.
• This data type does not have fixed formats, 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.
Importance of Processing in IoT
• The vast amount and types of data flowing through the Internet necessitate intelligent and
resourceful processing techniques.
• It is important to decide W H E N T O P R O C E S S and W H AT T O P R O C E S S .
The data to be processed is categorized into three types based on the urgency of
processing:
1) Very time-critical
2) Time Critical
3) Normal
Importance of Processing in IoT
Very Time-Critical:
Data that must be processed immediately because
delays can have serious consequences.
Example:
A self-driving car detecting an obstacle on the road.
Why: The car must instantly process this data to
decide whether to brake or steer away. Any delay
could result in an accident.
Importance of Processing in IoT
Time-Critical:
Data that needs quick processing, but a small delay
(a few seconds or minutes) is acceptable.
Example:
A smart thermostat adjusting the room temperature
based on a detected change.
Why: The temperature adjustment doesn’t need to
happen instantly, but if it's delayed too long, it might
cause discomfort.
Importance of Processing in IoT
Normal:
Data that can be processed later without immediate
impact.
Example:
A smart fridge analyzing weekly usage patterns to
suggest groceries.
Why: There's no urgency to process this data in
real-time. It can happen overnight or during low
activity times.
Importance of Processing in IoT
Example
Very time-critical: Flight control data, healthcare etc.
Few milliseconds to make a decision.
Time critical: vehicle, traffic, home automation, surveillance:
Few seconds.
Normal: Less data sensitive domains: Agriculture, environmental
monitoring: A few minutes to hours
Importance of Processing in IoT
Recap with a Real-World Scenario: Imagine a Smart Hospital:
Very Time-Critical:
Heart rate monitor alerting doctors about a patient in cardiac arrest.
Time-Critical:
Scheduling and managing appointments when a new patient registers.
Normal:
Analyzing historical patient data to improve hospital efficiency over
months.
Importance of Processing in IoT
Processing Requirements
1) Very time critical: Data Processing requirements are exceptionally high.
2) Time critical: Processing requirements allow for the transmission of data to
be processed to remote locations or through collaborative processing.
3) Normal: Have no particular time requirements for processing the data
urgently.
Processing Topologies
IoT (Internet of Things) processing, topology refers to the arrangement or
structure of interconnected devices, sensors, gateways, and systems within an IoT
network.
It defines how data flows between these components and influences the system's
performance, reliability, and scalability.
Performance: Efficient data flow ensures low latency and quick response
times.
Reliability: Secure and error-free transmission prevents data loss or corruption.
Scalability: Systems must handle increasing data loads as more devices
connect.
•.
Processing Topologies
Types of Latency
•Network Latency: The delay in data transmission over the internet or local networks.
•Processing Latency: The time required for a system to process and respond to a request.
•Storage Latency: The time taken to retrieve data from memory or storage devices.
•Device Latency: The response time of hardware components in IoT and computing
systems.
Choosing an IoT Topology: The choice depends on factors like:
Scalability requirements.
Data processing needs.
Latency tolerance.
Fault tolerance.
Processing Topologies
The identification and intelligent selection of processing requirement of an IoT
application are one of the crucial steps in deciding the architecture of the
deployment.
The various processing solutions are categorized into two large topologies:
1. On-site
2. Off-site
a. Remote processing
b. Collaborative processing
Processing Topologies
On-site processing
The on-site processing topology signifies that the data is processed at the source
itself.
Very time-critical applications that have a very low tolerance for latencies.
Applications associated with healthcare and flight control systems (real-time
systems) have a quick data generation rate.
These show rapid temporal (time) changes, which leads to catastrophic damages if
missed.
The processing infrastructure should be fast and robust enough to handle such
data.
Processing Topologies
On-site processing
Fig: Event detection using an on-site processing topology
Processing Topologies
Off-site processing
The off-site processing allows for latencies (due to processing or network latencies)
It is significantly cheaper than on-site processing topologies.
Difference in cost is mainly due to the low demands and requirements of processing at the
source itself.
Not required to process data on an urgent basis.
Sensor node is responsible for the collection and framing of data that is transmitted to
another location (remote location: server or cloud) for processing.
Off-site topology has a few dedicated high-processing-enabled devices.
Multiple nodes can be used to share their processing power to collaboratively process the
data.
Processing Topologies
Off-site processing
Remote Processing
Most common processing topologies prevalent(widespread) in present-day IoT solutions.
It encompasses sensing 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.
Enabling the deployment of smaller and simpler processing nodes at the site of deployment.
Processing Topologies
Off-site processing
Remote Processing
Fig: Event detection using an off-site remote processing topology
Processing Topologies
•Temperature Sensor (On-Site): Detects unusual heat levels and sends data to
a remote system.
•Off-Site Processing: A high-processing-enabled device or cloud system
analyzes sensor readings to confirm fire risk.
•Alert System: If fire is detected, notifications are sent to emergency
responders or automated suppression systems.
Processing Topologies
Off-site processing
Remote Processing
Event detection using an off-site remote processing topology
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.
Processing Topologies
Off-site processing
Remote Processing
Event detection using an off-site remote processing topology
High Network Bandwidth Usage: Since sensor nodes continuously send raw or
preprocessed data to a remote processing system, a large amount of network bandwidth is
required. If multiple sensors transmit data frequently, it can overwhelm the network,
potentially leading to delays or congestion.
Dependence on Network Connectivity: The system relies on a stable and fast network
connection between the sensors and the remote processing infrastructure. If connectivity is
lost or slow, critical real-time event detection—like identifying a fire—could be delayed or
fail entirely, which is risky in emergencies.
Processing Topologies
Off-site processing
Collaborative processing
• Collaborative processing in IoT refers to a system where multiple IoT
devices work together to process data efficiently. Instead of relying on a
single central server or cloud, devices share computational tasks, optimizing
resource usage and reducing latency.
Processing Topologies
Off-site processing
Collaborative processing
This processing topology is used in scenarios with limited or no network connectivity, especially systems
lacking a network.
This topology is 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 solution is to club together the processing power of nearby processing nodes and
collaboratively process the data.
This approach also reduces latencies due to the transfer of data over the network.
Additionally, it conserves the bandwidth of the network, especially ones connecting to the Internet.
Processing Topologies
Off-site processing
Collaborative processing
This topology is beneficial for
applications such as agriculture,
where an intense and temporally
high frequency of data
processing is not required, as
agricultural data is generally
Fig: Event detection using a collaborative processing topology logged after long intervals.
Processing Topologies
Off-site processing
Collaborative processing
Shared Workload: Devices distribute processing tasks among themselves, reducing the burden on
any single node.
Improved Efficiency: By leveraging nearby devices, data can be processed faster without excessive
reliance on cloud computing.
Reduced Network Dependency: Since processing happens locally or within a cluster, it minimizes
bandwidth usage and network congestion.
Fault Tolerance: If one device fails, others can take over, ensuring system reliability.
Scalability: The system can easily expand by adding more devices to the collaborative network.
IoT Device Design and Selection Considerations
The main consideration for IoT solution is the selection of the PROCESSOR.
The selection is governed by many parameters that affect the usability, design,
and affordability of the designed IoT sensing and processing solution.
The main factor is the processor. Memory
Size Processing Power
Energy I/O rating
Cost Add-ons
IoT Device Design and Selection Considerations
Size
Crucial factors for deciding the form factor(physical dimensions,
shape, and overall design of the device) and the energy
consumption of a sensor node.
The larger the form factor, the larger the hardware’s energy
consumption.
Large form factors are unsuitable for many IoT applications, which
rely on minimal form factor solutions (e.g., wearables).
IoT Device Design and Selection Considerations
Size Cont.,
Wearables (Minimal Form Factor, Low Energy Consumption)
Example: Fitness Trackers (e.g., Fitbit, Xiaomi Mi Band)
Industrial IoT Sensors (Larger Form Factor, Higher Energy Needs)
Example: Smart Vibration Sensors for Machines
Environmental Monitoring (Compact Form Factor, Moderate Energy Needs)
Example: Soil Moisture Sensors in Smart Agriculture
Smart Home Sensors (Moderate Form Factor, Low to Moderate Energy)
Example: Motion Sensors (e.g., Philips Hue, Aqara)
IoT Device Design and Selection Considerations
Energy
The energy requirements of a processor is the most important deciding factor in
designing IoT-based sensing solutions.
The higher the energy requirements, the higher is the energy source (battery)
replacement frequency.
This lowers the long-term sustainability of sensing hardware for IoT-based
applications.
IoT Device Design and Selection Considerations
Cost
Cheaper cost of the hardware enables a much higher density of hardware deployment by
users of an IoT solution.
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) determine the capabilities of
the device.
Features such as local data processing, data storage, data filtering, data formatting, etc. rely
heavily on the memory.
Devices with higher memory tend to be costlier.
IoT Device Design and Selection Considerations
Processing power
Processing power is vital 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.
Applications that handle video and image data require IoT devices with higher processing
power.
IoT Device Design and Selection Considerations
I/O rating
The I/O rating refers to the voltage levels at which a processor or device can send and
receive signals through its input and output pins.
The processor, is the deciding factor in determining the circuit complexity, energy usage,
and support of various sensing solutions and sensor types.
Newer processors have an I/O voltage rating of 3.3 V, as compared to 5 V for the older
processors.
This translates to requiring additional voltage and logic conversion circuitry to interface
legacy technologies and sensors with the newer processors.
The low power consumption due to reduced I/O voltage levels, this additional voltage and
circuitry affects the complexity of the circuits & also the costs.
IoT Device Design and Selection Considerations
Add-ons
The support of various add-ons a processor, an IoT device provides, such as
ADC units, in-built clock circuits, connections to USB and ethernet, inbuilt
wireless access capabilities, etc. helps in defining the robustness and
usability of IoT device in various application scenarios.
The provision for these add-ons also decides how fast a solution can be
developed.
Processing Offloading
• The processing offloading paradigm is important for the
development of densely deployable, energy-conserving,
miniaturized, and cheap IoT-based solutions for sensing tasks.
• 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.
Processing Offloading
• It involves transferring computational tasks from IoT devices to
more capable systems like edge servers, fog nodes, or cloud
platforms.
• This strategy addresses the inherent limitations of IoT devices, such
as limited processing power, memory, and energy capacity, while
optimizing system performance and responsiveness.
Processing Offloading
1. Edge Servers
• These are located close to IoT devices, processing data near its source.
• Used to reduce latency, ensuring real-time processing for applications like
autonomous vehicles or smart cameras.
• Example: A server placed at a factory to analyze sensor data instantly before
sending summaries to the cloud.
2. Fog Nodes
• Think of fog computing as a middle layer between edge devices and cloud
platforms.
• Fog nodes can be local gateways or small servers that distribute processing across
a network.
• Example: A smart city’s traffic management system might have fog nodes analyzing
local traffic patterns before sending aggregated insights to the cloud.
Processing Offloading
3. Cloud Platforms
• These are large-scale, centralized data centers offering massive computing
power and storage.
• Used for big data analysis, AI processing, and long-term storage.
• Example: A wearable health device uploads fitness data to a cloud platform,
where AI models generate personalized recommendations.
Processing Offloading
A Smart Home Temperature Monitoring System
Without Processing Offloading (All Processing On-Site) ????
With Processing Offloading (Remote Processing) ??????????
Key Benefits :
[Link], Cheaper Devices:
1. The sensor doesn’t need a powerful processor, so it can be smaller and more economical.
[Link] Efficiency:
1. The sensor uses less battery because it doesn't perform heavy computations.
[Link]:
1. You can deploy hundreds of these simple sensors without worrying about processing power
limitations.
Processing Offloading
Data offloading is divided into three parts:
1) Offload Location: Outlines where all the processing can be offloaded in the
IoT architecture.
2) Offload Decision Making: How to choose where to offload the processing to
and by how much.
3) Offloading Considerations: Deciding when to offload.
Processing Offloading
The various data generating and storage sources connected to the Internet and the data types contained within it.
Processing Offloading
Data offloading
Example
A Smart Camera detects motion.
If the internet is slow, the camera decides to process the motion
locally and sends only an alert to the homeowner.
If the internet is fast, the video is sent to the cloud for advanced
analysis.
If the camera's battery is low, it skips local processing and directly
offloads to the gateway or cloud.
Processing Offloading
Offload Location
The choice of offload location decides the applicability, cost, and
sustainability of the IoT application and deployment.
The offload locations are categorized into four types
[Link] [Link] Server
[Link] [Link]
Processing Offloading
Offload Location
1. Edge: Data processing is facilitated to a location at or near the
source.
Purpose: Offloading to the edge is done to achieve aggregation,
manipulation, bandwidth reduction, and other data operations directly
on an IoT device.
E.g.: Autonomous Vehicle, Health Care Devices, Security Solutions
Processing Offloading
Offload Location
Offloading to the edge helps with the following:
Aggregation: Combine data from multiple devices.
Manipulation: Perform quick calculations or formatting.
Bandwidth Reduction: Send only important or summarized data to the
cloud, reducing internet usage.
Low Latency: Process data faster without waiting for the cloud.
Processing Offloading
Processing Offloading
Offload location
2. Fog: is a decentralized computing infrastructure.
Purpose: conserve network bandwidth, reduce latencies, restrict the amount of
data 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.
E.g.: Video Surveillance
Processing Offloading
Offload location
Processing Offloading
Offload location
3. Remote Server:
A remote server with good processing power is used with IoT-based
applications to offload the processing from resource-constrained
IoT devices.
Rapid scalability is an issue with remote servers and are costlier and
hard to maintain.
Processing Offloading
Offload location
4. Cloud:
Configurable computer system, access to configurable resources, platforms,
and high-level services through a shared pool, hosted remotely.
Cloud enables massive scalability of solutions as they can enable resource
enhancement in an on-demand manner, without acquiring and configuring new
and costly hardware.
Processing Offloading
Offload location
Offload Decision Making
Where to offload and how much to offload are the major deciding
factors in the deployment of an offsite processing topology.
The decision-making is done considering data generation rate,
network bandwidth, the criticality of applications, processing
resources available at the offload site, etc.
1. Naive Approach
Offload decision-making approaches are;
2. Bargaining-based approach
3. Learning-based approach
Offload Decision Making
1. Naive Approach
It is a rule-based approach in which the data from IoT devices are offloaded to the nearest
location based on the offload criteria.
Statistical measures are used for generating the rules for offload decision-making.
Example:
•An IoT sensor in a smart factory always sends data to a remote cloud for analysis, regardless
of whether local processing could be faster.
•A smart camera uploads every video frame to the cloud instead of performing initial
filtering at the edge.
Offload Decision Making
How It Works
[Link]-Based Decision Making: Offloading follows specific rules, such as:
1. Offload to the nearest fog node if CPU utilization exceeds 80%.
2. Send data to the cloud if the required computation is too complex for local
processing.
3. Use edge servers if latency-sensitive tasks need rapid execution.
[Link] Measures for Rule Generation: Rules are developed based on
patterns in:
1. Latency Analysis: If average response time exceeds a threshold, offloading is
triggered.
2. Network Bandwidth Utilization: When bandwidth usage surpasses a certain level,
offloading is adjusted.
3. Historical Data Trends: Prior system performance metrics help optimize decisions.
Offload Decision Making
2. Bargaining-based approach
The bargaining-based approach in offloading decision-making is a strategy
where IoT devices and computing resources negotiate to optimize Quality of
Service (QoS) parameters like bandwidth, latency, and processing power.
Instead of blindly offloading tasks, this method balances multiple factors
dynamically to achieve the best possible performance.
How It Works
[Link] Between IoT Devices & Servers: Devices assess available
resources and negotiate offloading decisions based on predefined QoS goals.
[Link]-Offs for Optimization: Some parameters (e.g., latency) may be
slightly compromised to improve others (e.g., bandwidth efficiency).
[Link] Decision-Making: The system continuously adjusts offloading
strategies based on real-time conditions.
Offload Decision Making
Example: Smart Traffic Management System
Imagine a smart city where IoT-enabled traffic cameras and sensors monitor congestion.
These devices need to process large amounts of video and sensor data, but instead of
blindly offloading everything to the cloud, they use a bargaining-based approach:
[Link] Between Edge & Cloud Servers:
1. If local edge servers have enough capacity, they process real-time traffic data to reduce latency.
2. If edge resources are overloaded, the system negotiates with cloud servers to offload non-
urgent tasks like historical traffic analysis.
[Link]-Offs for Optimization:
1. The system prioritizes low-latency processing for real-time traffic alerts while offloading long-
term analytics to cloud servers.
2. If network congestion is high, the system may delay non-critical data transfers to optimize
bandwidth usage.
[Link] Adaptability:
1. The system continuously adjusts offloading decisions based on real-time traffic conditions,
network availability, and computational load.
Offload Decision Making
3. Learning based approach:
Rely on past behavior and trends of data flow through the IoT architecture.
The optimization of QoS parameters is done by learning from historical trends
and optimizing previous solutions.
The memory and processing requirements are high during the decision making
stages.
Example of a learning-based approach is machine learning.
Machine Learning is a subfield of artificial intelligence, defined as the capability of a machine to
imitate intelligent human behaviour.
Offload Decision Making
A learning-based approach in offloading decision-making for IoT uses machine
learning (ML) and deep learning (DL) techniques to dynamically optimize where
and when to offload tasks. Unlike rule-based or bargaining-based methods,
learning-based approaches adapt to real-time conditions, improving efficiency
and performance.
How It Works
[Link] Collection: IoT devices gather data on network conditions, device
workload, and latency.
[Link] ML Models: Algorithms learn patterns from historical data to predict
the best offloading strategy.
[Link]-Time Decision Making: The system continuously updates its offloading
decisions based on new data.
[Link]: AI-driven models balance factors like energy consumption,
processing speed, and network congestion.
Offloading Considerations
The parameters need to be considered while deciding on the offloading type.
[Link]
[Link]
[Link]
[Link]
[Link]
Offloading Considerations
1. Bandwidth:
The maximum amount of data that can be transmitted over the network
between two points.
Data-carrying capacity is used to describe the data rate of that network.
2. Latency:
It is the time delay incurred between the start and completion of an operation.
Latency can be due to the network (network latency) or the processor
(processing latency).
Offloading Considerations
3. Criticality:
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.
Example: Detection of fire Vs. Detection of agricultural field parameters.
Offloading Considerations
4. Resources:
Signifies the actual capabilities of an offload location.
The capabilities may be the processing power, analytical algorithms, etc.
5. Data volume:
The amount of data generated by a source that can be handled by the offload
location.
For large and dense IoT deployments, the offload location should be robust
enough to address the processing issues related to huge data volumes.
Exercises
What are the different data formats found in IoT network trac streams?
Depending on the urgency of data processing, how are IoT data classified?
Highlight the pros and cons of on-site and off-site processing.
Differentiate between structured and unstructured data.
How is collaborative processing different from remote processing?
What are the critical factors to consider during IoT device design?
What are the typical data offload locations available in the context of IoT?
What are the various decision-making approaches chosen for offloading data in
IoT?
IoT Device Design and Selection Considerations