Last week I delivered a session at QCon New York about the emerging trends and techniques powering the next generation IOT platform as a service (PaaS). The session explored the current IOT platform market as well as some of the architectures and technologies that will be foundational to the adoption of IOT in industrial enterprise settings. Based on the great feedback received during the session, I am planning to write a series of blog posts about some of the most important ideas from my presentation. Let’s start with one of the key points of my presentation: centralized and decentralized capabilities in an IOT PaaS.
Most people tend to associate IOT PaaS models with centralized architectures in which a hub (typically powered by the cloud) controls the execution of nodes (smart devices). While this model is certainly essential to implement industrial IOT solutions, is rarely sufficient. Decentralized computing models in which nodes in an IOT interact without the control of a central authority are also fundamental to enable the next generation of IOT enterprise solutions. Let’s explore both models at a high level.
Centralized IOT Platform Capabilities
As mentioned in the previous section, most emerging IOT PaaS are generally associated with cloud architectures in which a central hub provides a series of backend services to smart devices. In this architecture style, smart devices act as a recipient or consumer of data while the central hub enables centralize services and capabilities as illustrated in the following figure:
Some of the key centralized capabilities of an IOT platform
- Event processing
- Enterprise system integration
- Device discovery
- Device management
- Event Notifications
- Real Time Analytics
Cloudfoundry as the Foundation for Centralized IOT
From the different technologies in the market, I believe Cloudfoundry provides a great model for powering centralized IOT PaaS architectures. As a platform, Cloudfoundry provides an open, platform agnostic model that abstract essential backend features of PaaS infrastructures while enables the flexibility of incorporating third party services and infrastructure capabilities. In the same way that Cloudfoundry is currently powering Web and mobile solutions we feel the model can be extended to the IOT space.
Decentralized IOT Platform Capabilities
While centralized services are essential elements in an IOT topology, they are not sufficient for powering industrial IOT solution. In addition to integrating backend services, there are many scenarios that require autonomous communication between smart devices in an IOT topology without the need of a central hub. We like to call that architecture style decentralized IOT as illustrated in the following figure:
From the functional standpoint, decentralized IOT models can help to enable some of the following capabilities:
- Peer-to-Peer Messaging
- Decentralized Auditing
- Decentralized File Sharing
The Block Chain as the Foundation for Decentralized IOT
Implementing decentralized IOT capabilities requires an infrastructure that enables nodes in a distributed topology to perform autonomously. With autonomous computing comes the need to maintain trusted relationship between the nodes without a centralized authority. From the technologies in the market, the Bitcoin Block Chain provides a mechanism to enable this type of distributed model. While Bitcoin is the most famous application built on the block chain is certainly not the only one.
As a platform, the block chain provides the building blocks to enable nodes in a distributed topology to exchange data and perform tasks in a trusted and verifiable manner. I believe the block chain can provide the foundation to enable decentralized capabilities in an IOT topology. IBM Project Adept is attempting to take the first steps to validate this model. More about this in a future post.