As the Internet of Things continues to grow exponentially, it’s important to build the IoT architecture that will keep up with tomorrow’s connectivity demands.
The Internet of Things (IoT) is a topic of great interest among both the technology and business community. This interest is justified as there is plenty of evidence to support the explosive business potential of IoT applications in the coming years. Indeed, as the number of connected devices increases, IoT is going to become an important part of our future.
To develop a successful IoT application requires the proper architecture be defined before setting up the infrastructure. There are four primary interrelated and mutually reinforcing layers that transmit the data from the sensors to the IT system, which is designed to perform the analysis on the data and carry out a set of decisions based on that data.
Four layers of IoT architecture
As shown in Figure 1, the four primary layers of IoT architecture include:
- Layer Sensors or Actuators
- Layer 2: Internet Gateways
- Layer 3: Edge IT
- Layer 4: Datacenter/Cloud
Figure 1. The four Layers of an IoT Architecture
To see how the four layers fit together, let’s consider an example of IoT at home.
Imagine your alarm clock wakes you up at 7 am every day to go to work. That is, until something goes wrong, such as your train is canceled, and you have to drive to work instead. The only problem is that it takes longer to drive, and you should have woken up at 6:45 am to avoid being late. Oh, and it’s pouring with rain, so you’ll need to drive slower than usual, which makes you even later.
An IoT-enabled alarm clock would have avoided this scenario, by resetting itself to ensure you got to work on time. It would know that your usual train was canceled and check the weather to calculate the slower-than-usual travel time due to the heavy rain. Taking these factors into account, it would calculate the alarm time to wake you up, so you’re not late. If it’s super-smart, it might even turn on your IoT-enabled coffee maker earlier, to ensure your morning brew is ready to go when you get up.
Now let’s consider how the four layers of the IoT architecture perform in this IoT home intelligent system.
Layer 1: Sensors and Actuators
In our example, it is up to you to place sensors on both the alarm clock and coffeemaker maker so they can respond to incoming data.
Sensors are a set of components—including memory, compute and receive and transmit communications—that together with RFID tags form wireless sensor networks (WSNs). Sensors are active, which means that real-time information is collected and processed. One of the most important aspects of IoT is context awareness, which is not possible without sensor technology.
It is possible to do some data processing at the sensor level. For example, with medical IoT devices, data processing at the sensor level is essential to send alerts during a medical emergency.
Fitting sensors into our IoT at home example, there could be real-time processing at the sensor level such as the alarm clock that connects with the train schedule data and determines when the next available train arrives at your station so it can set the wake-up time accordingly. If the coffee-maker is connected to the alarm clock, it can determine how much coffee to make depending on how much time you’ll have before leaving home. This kind of processing can be managed at the sensor level.
For deeper insights, we need to move the data into the cloud where we can do more complex data processing to provide richer solutions.
Layer 2: Internet Gateway
While the alarm clock and coffee maker can do some sensor-based processing, other decisions require data generated from different sensors on your body, such as location, temperature and heart rate, and in and around your home such as water, climate control and lights. For example, if you go for a run first thing in the morning, what is your body temperature when you return home? What is the ideal temperature setting for the shower? For these in-depth decisions, the data needs to be transmitted to the cloud. Some sensor data will be digital, but some will be analog, such as sine waves for voltage. This all happens at the gateway level.
Gateways are responsible for routing the data coming from the sensors, connectivity and network layers and passing it along to the next layer. But before passing it along, analog data needs to be converted to digital form so it can be understandable by the other layers.
Layer 3: Edge IT
Once the data has been digitized and aggregated, it can be moved to the cloud for further processing. But wait, don’t send all the data to the cloud. IoT data can be huge and easily take up all the network’s bandwidth. So we need to perform an initial analysis on the data to reduce the burden on the core infrastructure. This is where Edge IT processing comes into play.
By running the data through an analytics algorithm as it is created at the edge of a corporate network, companies can set parameters to specify what information is worth sending to the cloud or stored on-premises for later use.
At the edge of the network, we can also make decisions about where to process data based on the need to decrease the latency in the decision-making process. For example, in our IoT home example, if sensor data from a fire safety system points to the possibility of an electrical system failure which could result in a fire, a machine learning (ML) capabilities at the edge can detect the anomaly and automatically shut off the power to the home and send an alert to the fire department and electric company. The time saving from performing the processing the decision at the edge, instead of transmitting the data to a central cloud location for processing might just save lives.
Edge IT also helps in scalability. Pushing analytics to local sensors or network devices helps to reduce the strain on core infrastructure thereby reducing the cost of analytics system in the cloud.
Layer 4: Datacenter/Cloud
Data that needs more in-depth processing—and where feedback (latency) doesn’t have to be immediate—gets forwarded to a physical datacenter or cloud-based system, where more powerful IT resources can analyze, manage and securely store the data.
For example, in our IoT home, the data needs to be collected from all the connected devices and then used for comprehensive analysis to make complex decisions. For example, by analyzing the actual train times from your smartphone, changing weather conditions, and other factors, the datacenter or cloud services can send the appropriate wake-up time to the alarm-clock and adjust the coffee maker accordingly. Typically, complex calculations and analysis that relies on large quantities of data cannot be carried out efficiently at the edge but instead must be carried in the cloud.
Also, the cloud can be used to record certain IoT events and data over a long period of time, whereas edge devices can only store information for a short period as the old data is overwritten automatically. To retain all information at an edge is not possible given the limited storage capacities of the IoT devices. Also, for in-depth analysis we often need historical data as well, which means all data must be centrally stored and available.
The true value of IoT will be achieved once the insights gained from the data analytics are applied to a company’s business models and process. Analysis achieved with predictive failure and data-driven diagnostics can reduce unplanned downtime. Insight gained as the system gathers and processes more intelligence can be used to help improve business processes and product development. IoT is the instrument that will enable organizations to connect intelligent technologies to the data-rich universe of objects. The implications for the future of IT infrastructure that will be driven by IoT are just as far-reaching.
About the Author
Senior Tech Lead
Varun is a Senior Tech Lead with 11 years of Experience in web technologies. He has specialization in creating highly scalable websites using AWS, .NET, Jenkins, TeamCity etc. Currently, he is focused on Machine learning and AI to get the best web experience for the users.