Cap 14 - IoT Architecture PDF
Cap 14 - IoT Architecture PDF
IoT ARCHITECTURE
14.1 INTRODUCTION
Internet of Things (IoT) is an emerging area where multiple vendors are developing
their offerings, either as IoT Platform or specific part of the stack. According to the
Gartner’s Hype Cycle of Emerging Technologies, while IoT remains at the peak of
the hype curve, IoT Platform is on the emerging side or as Gartner calls it “Innovation
Trigger” [1]. Since IoT brings together several different technologies, such as sensor
technologies, data collection, connectivity, data store, analytics, visualization,
business logic, and mobile, IoT Architecture provides a “glue” to align the different
pieces within an IoT Platform. At a high level, the physical world converges with
the computing hardware, software, and the interconnecting systems. To derive the
business value from the IoT systems, people have to be connected to consume the
information and monetize it. Hence, any IoT application cannot ignore the User
Experience (UX). IoT Platforms should account for the UX aspects, as well.
Software design patterns have been used to provide reusable solutions for generic
problems, to guide the software engineers. An example of such a software pattern can
be a sorting algorithm. As a resource, it allows the software engineer to get jump‐
started with the coding in a specific programming language. Likewise, an architecture
pattern helps to jump‐start the software architecture of the proposed solution, without
ERP
User Portals
Staging DW
Data
Integration/ KPI’s,
CRM Extract, Dash-
Transform boards, Laptop
& Load Reports
Others
Data Cube Workstation
Figure 14.1 Reference architecture of data warehouse. Reproduced with permission from
Object Mgt Group/llC.
the need to reinvent the wheel. While the architecture pattern is a concept, the IoT
Architecture can be used as a reference for the application architecture. Such refer-
ence architecture provides a common terminology and concepts, to ensure that the
different stakeholders are communicating at the same level.
Let us start with simple reference architecture from a well‐understood area, such
as data warehousing. At a glance, we can see in Figure 14.1 that a data warehousing
and Business Intelligence solution would generally have three main parts. The
starting point is the source system(s). This stage would be similar to the devices or
the “Things” in the IoT space. The next phase is the data processing or the transfor-
mation phase which determines how the data needs to be stored. The final stage is
where the human users consume the information.
Most IoT systems have a similar purpose, namely:
We will briefly look at the area of Enterprise Architecture (EA) here which has been
around for 25–30 years now. The four well‐respected EA Methodologies are as follows:
A detailed comparison of these EA approaches has been provided at this site [2].
The reason we bring up the existence of the different EA approaches for last two to
three decades is that same problems can be dealt in many ways. Likewise, there will
be a flurry of IoT Reference Architectures as it is an emerging field. Each of these
ARCHITECTURAL APPROACHES 241
IoT
Applications
Architectural
Implementation
Reference
Architecture
Figure 14.3 Hierarchy of IoT architecture. Reproduced with permission from Object Mgt
Group/llC.
IoT Architectures will try to address the same class of problem with a slightly differ-
ent perspective. This does not undermine one approach versus the other (Figure 14.2).
The previous table clearly shows that there are several efforts to self‐organize into
different groups and consortiums to bring some degree of “regulation” in the field of
IoT and Industrial Internet. It is interesting to note that some of the prominent vendors
are part of multiple such groups. As a result of these movements, we will see several
IoT Reference Architectures emerge representing different perspective. For instance,
the Industrial Internet Consortium (IIC), where AT&T, Cisco, GE, IBM, and Intel are
at the driving seat, will primarily focus on the use IoT for industrial use cases. The
consumer use cases such as wearables to monitor a human body or commercial use
cases such as connected cars will not be the front and center of IIC’s reference
architecture. However, on a positive note, several such efforts to bring standards and
regulation to the broader IoT space will invite a lot of investments and attentions and
provide guidelines to emerging vendors and potential consumers of IoT.
Figure 14.3 shows the hierarchic view of the IoT Architectures. The reference
architecture is a reusable concept that is used to create the architecture for a specific
company or line of IoT solutions. While the reference architecture is independent of
the IoT Platform, the final IoT solution may be based on use of a specific IoT Platform
for deployment. Using the architecture implementation, the specific project of
specific application may create a solution. It is important for the IoT reference
242IoT ARCHITECTURE
architectures and the IoT Platform providers to ensure that there is sufficient degree
of interoperability between the IoT Platforms, to allow hybrid solutions. The end
customers may choose the best‐of‐breed components for their solution. In some
cases, the expertise may be spread among different IoT Platform providers, and the
fastest way to implement a specific solution may be by interoperating two or more
such IoT Platforms. The IIC recognizes the need for such cooperation among the
different stakeholders and encourages creation of test beds with multiple contribu-
tors. Most details of the test beds are provided here [3]. Cutting edge and emerging
concepts like blockchain [4] will impact the IoT architectures at the device level,
very soon. However, for the current book chapter, it is out of scope.
Analytics
Industrial data lake
Connectivity
Industrial
machines
Figure 14.4 Conceptual view of IoT Cloud. Reproduced with permission from Object
Mgt Group/llC.
APPLICATION ARCHITECTURE 243
The functional IoT architecture is a model that helps to map the subsystem functions,
stakeholders, interactions between them, and corresponding technology needs. Such
a functional architecture can be used by the different experts such as the business
subject matter experts (SMEs); software engineers and IoT architects are able to
create the blueprint of the IoT architecture solution. This is the big picture stage that
helps to model the functional landscape (Figure 14.5).
The previous visual shows a functional view from the health IT Federal domain.
Such functional view of business could be a starting point for the development of the
IoT functional architecture for a health IT‐related IoT solution such as Connected
Care. The next stage would be the application architecture.
There are three different commonly used patterns for IoT (Figures 14.6 and 14.7):
The Cloud or the Data‐Centric pattern relies heavily on the use of Cloud environ-
ment or private Data Center for majority of the IoT data and analytics processing.
The device data and any other external data sources are persisted in the Cloud tier.
Data Integration
AVIATION
ECOSYSTEM
High Speed M2Mi IoT Platform DATA & Custom
SERVICE Baggage
Connectivity
API Application
Testbed Device Privacy Management
Manager
GE Predix Platform
Data InStream Baggage
Aviation Handling, Flight
Open Handler Analytics
Data Asset/ Planning, Fuel &
Communications Services Analytics
Protocols others Systems
Edge Devices Connect Services
Cyber
and Gateway Manager Security
Data Shaping/Persistence
Biz
Predix User
Connected Bags, Transport Inter-Operability of Enterprise Systems
Cloud
Telematics, Airport Vendor Platforms and IT infrastructure
Baggage Handling Devices
Figure 14.6 IoT application architecture. Reproduced with permission from Object Mgt Group/llC.
Edge Tier Platform Tier Enterprise Tier
Proximity Network
Operations
Edge Gateway
Rulers & Controls
Figure 14.7 Industrial Internet Consortium’s Industrial Internet Reference Architecture (IIRA). http://www.iicon-
sortium.org/IIRA‐1‐7‐ajs.pdf. Reproduced with permission from Object Mgt Group/llC.
246IoT ARCHITECTURE
The amount of data storage and processing is minimal at the Edge tier. The Edge
devices may often communicate directly to send the data to the Cloud tier.
In the Edge + Gateway with Cloud Computing pattern, several edge devices may
be connected via one or more Gateways to connect to the Cloud. While the Gateway
devices could do some lightweight processing, majority of Data and Analytics
processing is in the Cloud tier.
In the Edge intelligence + Cloud Computing pattern, there is a certain degree of
processing logic in the Edge tier and is often referred as fog computing [6]. An example
of such a pattern would be that smoke detector starts the audible alarm and turns on the
water sprinkler system as soon as the building temperature turns over a high threshold.
At the same time it sends the sensor data to the Cloud system which in turn can analyze
the data with a larger perspective of all the buildings in certain geography.
At this stage, the data persistence strategy is determined. In IoT systems, we often
deal with time series data and other forms of structured and unstructured data. The
variety and the volume of the data types may determine the strategy for persistence
data. The IoT architecture should allow for the commonly used data stores such as:
•• Relational databases like MySQL, Oracle, SQL Server, etc.
•• NoSQL Databases such as Cassandra or MongoDB
•• Time series databases such as OpenTSDB
•• Hadoop framework
The value from IoT data is often derived by applying analytics or workflow of
analytics. The IoT architecture should allow flexibility in use of analytics and work-
flows. Organizations may have existing analytics written in a variety of languages
such as MATLAB, Python, Java, C/C++, or other propriety tools. To prevent rewriting
of the analytics, ideally the IoT platform should allow use of multiple of these
languages for analytics. This implies multiple analytics in different languages have
to be chained together to develop the end‐to‐end workflow.
At this stage the technology components are selected for the implementation of the
instantiation of the IoT application. The following is an example of the IoT
Technology Architecture using the Predix Platform. GE’s Predix Platform is an
example of Cloud Computing‐based instantiation of the IoT Architecture. The
Platform tier is based on Cloud Foundry. This is an example of Platform as a Service
(PaaS) that in turn requires Infrastructure as a Service (IaaS) as the underlying tier.
The Predix Platform provides the Data Services, Asset Services, Analytics
Orchestration, and other supporting constructs like end‐to‐end security services.
Such Platforms can help to build IoT solutions using reference architecture in a rapid
and repeatable fashion. Each application does not have to solve the scale and security
problem, rather the Platform incorporates the best practices from the IoT Reference
Architecture (Figure 14.8).
Connectivity Services Industries
Energy
Assets Analytics Data Security Operations
UI/Mobile
Applications
Predix Machine
Software/Analytics Cloud Foundry Healthcare
Data Infrastructure
Transportation
Enterprise Systems
The Predix Cloud
Asset Optimization
Figure 14.8 Predix—technology view of the architecture. Reproduced with permission from Object Mgt Group/llC.
248IoT ARCHITECTURE
IoT is an emerging area where machines are connected to the network in ways it
was never done before. As a result the consumers are paranoid about security till
this area fully matures. Figure 14.9 shows the survey results about the top pro-
grammer concerns related to IoT. Several organizations are emerging to address
the related topics like Standards, Interoperability, Security, and Governance
around IoT as shown in Figure 14.2. It will take some time before this landscape
stabilizes. Till then consumers and providers of IoT‐related services will have to
use current best practices such as multilayered security or security at each layer
to minimize the threats. The IoT architectures help to list all the attack vectors
within the full‐solution stack. This in turn helps to document how the risks to the
different system vulnerabilities are being minimized in a given instantiation of the
IoT system.
25%
20%
15%
10%
5%
0%
ds
a
q
d
s
y
er
t
ce
rm
re
an
ac
t
it
da
da
ar
th
ur
vi
iv
m
fo
nd
O
ee
of
c
of
de
Pr
de
Se
at
ta
tm
ty
nt
pl
of
s
s
ie
ed
ou
nt
no
of
n
ar
ie
ce
tio
V
n
do
fic
A
ex
io
ta
uf
s
at
en
ch
ol
t
s
en
m
To
In
Te
ag
m
ag
Fr
Fr
REFERENCES