Over a million developers have joined DZone.

Expanding the Frontiers of Connectivity: Scaling Your Architecture for IoT

DZone 's Guide to

Expanding the Frontiers of Connectivity: Scaling Your Architecture for IoT

Ross Mason, founder of MuleSoft, discusses the changing role architecture plays in the Internet of Things and how the new 'edge' layer will change IoT development.

· IoT Zone ·
Free Resource

This article is featured in the new DZone Guide to The Internet of Things,Volume III. Get your free copy for more insightful articles, industry statistics, and more.

A company’s success is now directly linked to how well it connects applications, data and devices. The way organizations compete today depends upon how efficiently they can do this. But the notion of what a “device” is has changed radically. Today, the term “device” means anything connected that isn’t a traditional web client. Sensors, connected machinery, street lighting, and appliances, among other things, are all now becoming connected devices. This shift to smart, connected devices is referred to as IoT, or the Internet of Things. We now wear devices, we use them for every daily activity, and they interact with our environment at home, at work and everywhere in between. They are becoming an increasingly important part of the fabric of everyday life.

The value that the enterprise gets out of these devices isn’t contained within the devices themselves. Rather, their value to the enterprise is the data they collect and the way the enterprise either reacts to that data or uses it to create new services and products.

Because the notion of connected devices is infiltrating many areas of our lives that we do see and many more that we don’t, the conversations on IoT come from different angles, different spaces, and solutions for different things. There is a large spectrum of connected items ranging from the consumer through to enterprise to industrial use.





Wearables, home devices, stuff you can back on Kickstarter and Indiegogo

Commercial machines like cars, medical devices, billboards, vending machines

‘Internet of Things that spin’ – jet engines, oil pumps, turbines, industrial site management


Value is in the device itself. The value to the consumer is in the Insights it provides (e.g. your fitness) and the experiences it enables (e.g comfortable temperatures at all times at home)

Value is in the digital services that device enables for better customer experiences such as loyalty programs or safety alerts for medical devices or for management/ maintenance such as equipment failures and auto refill order for vending machines

Value is in the instrumentation and analytics to reduce costs. In the industrial space, the cost of unscheduled downtime and manual maintenance checks runs into the hundreds of millions of dollars per year


Subscription service model (e.g. preemptive maintenance) or consumer engagement (e.g loyalty programs)

Subscription service model (e.g. preemptive maintenance) or consumer engagement (e.g loyalty programs)

Platform solutions for running industry verticals i.e. factory management, pipeline monitoring

IoT Represents an Architectural Shift

IoT is changing the computer hardware model that we’ve had for the past 40-plus years. Consider all the different phases of hardware models that have existed: green screen to mini-computer to PC, and today to cloud and mobile. The computer architecture has been consistent—Client and Server. What’s changed over the years are the clients. For IoT, however, there’s a difference. There is actually a third hardware layer which breaks the traditional client-server model. Developers and architects are used to building software systems across two physical tiers. But for non-traditional web clients, there’s a new notion of a third tier. This is an emerging concept, spearheaded by research at Princeton University, and it’s called the Fog Layer or the Edge Layer. It is responsible for being the first line of connectivity for these devices to connect to before they go to the back-end systems—the server.

Image title

The New Edge Layer

The Edge Layer is responsible for connecting devices locally, and manages the data collection and connection to the server. The benefits of this approach are:

  • Data filtration: First pass data filtering reduces the amount data transmitted but retains the meaning of the data.

  • Connectivity protection: Device connectivity doesn’t fail if the network fails or there is an intermittent connection. The Edge Layer is responsible for handling outages and store and forward data.

  • Site level management: Enables site level orchestration across devices from different vendors using different protocols.

  • Device agnostic control: Site abstraction allowing server/cloud application to be agnostic to the device implementation it controls.

The Edge Layer has three main components in a typical IoT deployment.

  1. The device or sensor itself. In IoT, this is the client that generates data and/or receives commands to execute.

  2. Most devices will connect to a gateway that enables access to the Internet or a private network. Typically these gateways speak a proprietary protocol between the connected devices and then allow connectivity through the gateway using a standard protocol such as HTTP.

  3. The Edge Controller is responsible for connecting to all the gateways and independent devices in a physical location. The Edge control collects and collates data from all the devices, transmits data, and accepts commands from the server to execute across some or all the devices.

Image title

The server layer is similar to what we already see in other client-server architectures, such as mobile. Many of the boxes in the Server layer will seem familiar because most of these components may already exist in your enterprise. The key pieces are:

  • The API Layer is leveraged by IoT architecture to connect to the server layer. This provides consistency, control, governance, security and an analytics-based model for connecting external sites.

  • Device Management is responsible for knowing what devices are within the IoT network and sometimes is part of the authentication chain. Device management is also responsible for upgrading sof tware on the Edge controller and possibly the gateways too.

  • The Data Plane provides the event streaming, transformation orchestration and connectivity to the applications and systems that at can use the data coming from the Edge layer.

  • SaaS applications, Enterprise applications, Big Data and BI are typically the consumers of the data coming from the Edge Layer; they make it actionable through analytics, dashboards, and application processing.


At its heart, IoT is about capturing and leveraging data being generated by connected devices; they create the physical Web, blurring the lines between how we interact between the physical and digital. The future for IoT seems promising with many IoT networks already connecting elements of the physical world. In the architecture I just described, the Edge Layer of the network will be responsible for performing collation of data and real-time event processing to allow automated tasks. This IoT architecture reduces the amount of data sent to back-end systems and provides a control interface that can access and manage local devices and sensors. The role of APIs at this Edge Layer is critical to providing easy access to connected devices, either through a hub or directly.

This is an abridged extract from Ross Mason’s new book ‘First, Break IT’, available for free download.

ROSS MASON is the founder of MuleSoft. Ross founded MuleSoft in 2006 on the idea that connecting applications should be easy, building on the open source Mule project he created three years earlier. He is responsible for MuleSoft’s product strategy, open source leadership, engineering alignment and direct engagement with customers.

For more insights on IoT, get your free copy of the new DZone Guide to The Internet of Things, Volume III!

iot ,architecture ,scalability ,dzone guide ,edge layer

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}