Internet of things (IoT) devices and IoT systems are everywhere — from the smartphones we carry with us, to the devices managing our home's temperature or lights, and even pendants we put on our pets' collars to locate them. Further, IoT devices monitor everything from manufacturing equipment status, to geothermic changes in active volcanos, to trends on social media. What all these devices have in common is the exponential amount of data collected every second of every day. However, many organizations struggle when planning for the IoT solutions to fuel their own growth. Read on to discover what IoT architecture is, how it works, and key considerations when developing an IoT solution strategy for your organization.
Table of contents
Internet of Things (IoT) is a reference to a network of connected devices and objects which have the capacity to gather information (e.g., alpha-numeric data, video, sound files, environmental conditions) and share that data over the internet.
There are a variety of IoT devices to consider beyond smartwatches and smartphones. Here are a few examples:
Industrial IoT (IIoT) devices: IIoT devices monitor, control, and optimize manufacturing operations, equipment status, and supply chain/logistics.
Healthcare devices: Healthcare IoT devices enable services such as telemedicine, medication tracking, and remote patient monitoring which can reduce patient time spent in hospitals.
Smart grid devices: These devices monitor, control, and optimize electricity generation, distribution, and consumption. Smart city devices: Usually deployed in urban environments, these devices help with infrastructure monitoring, traffic management, and law enforcement coverage.
Connected vehicle devices: IoT technology enables fleet management (e.g., location vs needs-based routing), real-time vehicle diagnostics, and optimized navigation.
These types of IoT devices are producing trillions of IoT data bytes daily but they have little value if that data isn't able to be efficiently collected, stored, analyzed, and communicated. It's for this reason that having an effective IoT architecture in place to collect, store, and analyze IoT data is critical.
The term IoT architecture refers to the framework which defines how various IoT elements (e.g., devices, networks, sensors, apps) interact within an IoT environment. Typically, IoT architecture consists of several layers and components which perform a variety of functions from physical devices, and data acquisition systems, to network devices communicating IoT data to data processing applications, and IoT data storage.
To understand IoT architecture and determine the right IoT solutions for an organization, it's necessary to understand IoT layer architecture. Here, a five-layer IoT architecture will be used as an example for discussion.
The perception layer interacts with the physical environment to gather raw data. Such IoT connected devices as sensors and cameras passively gather information and images that will be communicated via the transport layer (e.g., network layer), while actuators instruct devices to perform tasks based on sensor data or additional commands within IoT systems. (Actuators are hardware devices that convert energy into motion.)
The transport layer, sometimes called the network layer, is responsible for the data flow and transfer of data between the sensors in the perception layer and the processing layer through various networks (e.g., data transfer between IoT devices and backend systems using WiFi, Bluetooth, etc.).
The data processing layer, sometimes referred to as the middleware layer, stores, analyzes, and pre-processes the data coming from the transport layer. This includes such activities as data aggregation, protocol translation, and security enforcement to ready data for the application layer. In addition, message brokers, IoT platforms, and edge computing nodes may also be included in this layer.
The application layer contains software applications which use the processed data gathered in the perception layer to complete tasks or derive insights through advanced analytics. Databases, data warehouses, and data lakes are all included in the application layer.
The business layer is probably the most commonly encountered IoT architecture layer in that it involves user interfaces, dashboards, and data visualization tools which most business people are accustomed to using daily. It's in the business layer that all the data collected and processed creates value by providing insights and fueling business decisions.
Note: When discussing layers of IoT architecture, it's important to note that the terms "7-layer IoT architecture," "5-layer IoT architecture," or even "3-layer architecture" are commonly used. These different descriptions simply mean that the same key IoT architecture concepts are being described in less detail (e.g., three-layer architecture) or more detail (e.g., five-layer architecture). For example, in the diagram below, the perception layer in the three-layer diagram is split out into “perception” and “transport” in the five-layer diagram.
Another way to describe an IoT solution architecture is using a four-stage approach. This architecture describes the various building blocks that constitute IoT solutions. Note: In this scenario, more emphasis is put on edge computing than the other proposed designs for IoT solutions.
Devices: This stage is about the devices in IoT solutions, including the sensors or actuators in the perception layer. The data produced by these IoT system devices is then transmitted to the internet gateway stage.
Internet gateways: The internet gateway stage receives the raw data from the IoT devices and pre-processes it before sending it to the cloud. The internet gateway receiving the data may be physically attached to the IoT device or a stand-alone device that can communicate with sensors over low power networks and relay the data to the internet. This is where the transport layer of IoT architecture resides.
Edge computing: Once the pre-processed data from the internet gateway is received, the object is to fully process data as quickly as possible. To do this effectively, an IoT system will often employ a process called edge computing. Edge computing involves processing data closer to the source of its generation (e.g., edge of a network vs centralized cloud servers). In the case of an IoT system, this means that processing the data of IoT devices, sensors, and other edge devices locally reduces latency, bandwidth usage, and reliance on cloud data centers. It also enables real-time processing, local decision-making, and faster response times, making it ideal for latency-sensitive and bandwidth-constrained applications. This is where the processing layer resides.
When choosing an IoT solution, there are strategic, operational, and technical questions to consider. Here are a few of the key questions to answer when evaluating potential IoT solutions. For the purposes of this article, MongoDB's Atlas for the Edge will be used as an example.
As with all technical solutions, clearly defining the use case and requirements is critical. Specific questions include: What problem are you trying to solve? What data (e.g., data types, volume) will be collected? How will the data be used (e.g., real-time required or post-analysis)? How will success be measured (e.g., what will the metrics of success be)?
Consider how a potential IoT solution will accommodate future growth, including not only actual data volume and usage, but also the number of IoT devices and types of devices used, as well as the complexity of the applications used and analysis being conducted.
How will existing systems, devices, and protocols work with the potential new IoT solution and how will the solution handle third-party data exchange?
Consider the criticality of the IoT systems and data involved in the potential IoT solution.
Depending upon the industry, regulatory audits run in real-time or compliance audits that cannot be delayed may also be a key consideration.
Assess the internal IT skill set within the organization to determine the level of both deployment and ongoing management skill necessary for each potential IoT solution.
What will the opportunity cost be to acquire necessary talent and build internally vs initial outsourcing (e.g., market leader vs catch up) with ongoing internal management after deployment?
Does software as a service (SaaS) or a ready platform subscription make more sense if internal skill sets aren't available (e.g., payroll costs, in-demand skill sets are scarce)?
The answers to these questions will be unique to each organization as market position, strategic goals, and bench strength will vary widely.
From the business perspective, it's also important to consider how advanced the potential user base is in terms of technical skills and programming language familiarity. Is a basic, intuitive user interface critical (requiring dashboarding and easy-to-use visualization tools) or is the user base at a skill level where the use of Python and other programming languages is common when analyzing data?
Consider how the IoT solution handles data management, storage, processing, and analytics. Evaluate the scalability, performance, and flexibility of the data storage and analytics components to derive actionable insights, make informed decisions, and optimize processes based on IoT data.
Security is a critical consideration for IoT solutions to protect data, devices, and networks from cyber threats, unauthorized access, and privacy breaches. Evaluate the security features and protocols implemented in the solution, including encryption, authentication, access control, secure bootstrapping, and firmware updates.
Ready to learn more about IoT solutions and edge computing? Start with the resources.
Internet of things (IoT) architecture refers to the framework which defines how various IoT elements (e.g., devices, networks, sensors, apps) interact within an IoT environment.