EventLast call on early bird discount! Get your ticket to MongoDB.local London. Register now >>

IoT Architecture Explained

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

What is Internet of Things (IoT)?

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.


Types of IoT devices

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.

What is IoT architecture?

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.


Layers of IoT architecture

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.


Perception layer

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.)


Transport layer

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.).


Processing layer

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.


Application 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.


Business 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.


Image showing three layer architecture and five-layer architecture.

The stages of IoT architecture

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.


Four boxes representing the stages used in IoT architecture: "Devices", "Internet Gateway", "Edge/Fog IT" and "Cloud"

4 stages of IoT architecture

  • 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.

An illustration of internet of IoT edge computing using MongoDB Atlas for the Edge.

  • Cloud or data centers: In this final stage, the data is stored for later processing. The application layer and business layers reside in this stage, where dashboards and management software can be fed through the data stored in the cloud. Deep analysis and resource-intensive operations such as the creation of machine learning algorithms happen at this stage.

Considerations when choosing an IoT solution

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.


An illustration of a comprehensive IoT solution (MongoDB Atlas for the Edge).

Use case and requirements

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)?


Scalability

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.

  • Example: In the case of Atlas for the Edge, organizations can easily scale operations with one-to-many synchronization, ensuring consistent updates across multiple locations in a distributed system.

Interoperability

How will existing systems, devices, and protocols work with the potential new IoT solution and how will the solution handle third-party data exchange?

  • Example: MongoDB Atlas for the Edge data is synchronized in a unified platform with other leading cloud providers, consultants, and system integrators, allowing Atlas for the Edge to run anywhere.

Reliability and resilience

Consider the criticality of the IoT systems and data involved in the potential IoT solution.

  • Is the functionality of the IoT solution operationally necessary?
  • What are the income, customer, and brand impacts if the solution is unavailable?
  • What level of downtime, if any, is an acceptable risk?
  • What level of redundancy, failover, and disaster recovery capabilities are required?

Depending upon the industry, regulatory audits run in real-time or compliance audits that cannot be delayed may also be a key consideration.

  • Example: Atlas for the Edge's Edge Server runs on-premises and handles sync between local devices and bi-directional sync between the Edge Server and Atlas. This means that Edge clients can sync and access essential data independently, even when disconnected from the central database. Further, applications and devices in a connected infrastructure continue to function seamlessly, despite intermittent connectivity.

Ease of deployment and ongoing management

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.

  • Example: MongoDB Atlas takes care of the infrastructure operations you need for performance at scale, from always-on security to point-in-time recovery. Developers who deploy from the Atlas UI will be able to choose between two onboarding flows to ensure that their configuration is tailored to their needs. This includes both developers who want to connect their edge server with a MongoDB driver or client, and those who want to support connecting to the Edge Server via Device Sync.

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?


Data management and analytics

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.

  • Example: MongoDB's Atlas developer data platform provides a unified data layer with access to advanced features including real-time analytics and full-text search. Further, Atlas for the Edge gives your distributed architecture a reliable and real-time source of truth, in addition to advanced features like triggers, search, and charts.

Security and privacy

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.

  • Example: MongoDB's Atlas for the Edge offers a wide array of software development kits (SDKs) with out-of-the-box encryption, built-in identity, access management, and fine-grained, role-based access to ensure security and PCI/SOC compliance.

Ready to learn more about IoT solutions and edge computing? Start with the resources.

FAQs

What is internet of things (IoT)?

Internet of Things (IoT) is a reference to a network of connected devices and objects which have the capacity to gather and share data over the internet.

What is internet of things (IoT) architecture?

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.

What are the five layers of IoT architecture?

  • Perception layer
  • Transport layer
  • Processing layer
  • Application layer
  • Business layer

What are the 4 stages of IoT architecture?

  • Devices
  • Internet gateways
  • Edge computing
  • Cloud or data centers