The Industrial IoT could be left with dozens of platforms and a huge device and systems integration headache. IOTech’s Keith Steele and Andrew Foster write that an open-source platform with industry partnerships may overcome that challenge.
The growth in the Internet of Things is being driven by the unprecedented amounts of data being generated by a combination of people, machines and things. Cisco estimates that 600 ZB of data will be generated in 2020 by all people, machines, and things, up from 145 ZB generated in 2015.
For companies to benefit from the data generated by billions of new smart sensors and devices, they must be able to analyze the right data, at the right location in the network, and at the right time. Doing so helps a company gain the insights to increase productivity, improve operational efficiency, and generate new business value.
Right now, most of this data management and analysis is performed in the cloud or in enterprise data centers. It is becoming clear that the current generation of cloud-centric architectures have limitations that are forcing the industry to re-think the design on the next generation of industrial IoT (IIoT) systems. These limitations include the following:
- Increasing costs of shipping the large volumes of data to the cloud for processing and storage.
- Data governance and security — many organizations have sensitive data that they don’t want to leave their premises under any circumstances.
- For applications that require real-time decision making — for the IIoT that’s currently measured in milliseconds to seconds — the latencies involved in shipping the data to the cloud for analytics are unacceptable.
- The possibility of intermittent cloud connectivity is a serious concern for mission-critical IoT applications such as a connected vehicle or other types of autonomous systems.
These factors are driving major players within industry to promote a complementary approach called “edge computing” or “fog computing” for the Industrial IoT.
From the edge to the fog
According to the OpenFog Consortium, whose work focuses on influencing standards development and promoting innovation and industry interest in fog computing, “the growth in IoT is explosive, impressive – and unsustainable under current architectural approaches.”
They add: “Many IoT deployments face challenges related to latency, network bandwidth, reliability and security, which cannot be addressed in cloud-only models. Fog computing adds a hierarchy of elements between the cloud and endpoint devices, and between devices and gateways, to meet these challenges in a high performance, open and interoperable way.”
In an edge computing model, sensors and connected devices transmit data to a nearby edge computing device, such as a gateway device that processes or analyzes the data locally, instead of sending it back to the cloud or a remote data center.
Edge computing challenges in the Industrial IoT
Edge computing offers a promising way to address some of the limitations of cloud-centric design; however the problem is compounded by the fact the Industrial IoT is not a homogeneous thing, but rather a fragmented collection of technologies based on embedded systems and machine-to-machine communications across different vertical applications.
Current Industrial IoT systems rely on a myriad of proprietary and open-source software platforms, using a vast range of communication technologies to connect endpoints and applications in both greenfield and brownfield (legacy) deployments. IIoT designers are forced to become familiar with a plethora of tool sets, application development environments, operating systems, connectivity types — including both standard and proprietary protocols — cybersecurity defence and industry-specific standards.
The current landscape is adds to the complexity for users trying to build end-to-end systems, as IIoT designs often require the integration of multiple systems and technologies, making it necessary for a diverse set of system integrators (SIs) and partners to work together. The current fragmented landscape has resulted in a patchwork of custom solutions that hinder time to ROI and is inhibiting the overall growth of the IoT industry. Learn more: Why the Industrial IoT needs semantic standards
These technical and business issues underscore a challenge with delivering value with the Industrial IoT. Can the barriers to IoT innovation, adoption and deployment be lowered ,or are we just creating a new and huge systems integration problem?
[ Related: IoT interoperability: an Internet of broken things? ]
The problem with platforms
The OpenFog Consortium, Industrial Internet Consortium and others are focused on platform standards definition and evolution, use cases, testbeds, architectures and demos. Sounds good, but where are the implementations? And how do we avoid ending up with another 300 platforms for the edge and a huge systems integration problem, which would slow down IoT adoption and market scale?
It’s hardly surprising, therefore, that we are hearing from industry insiders about the slow pace of IIoT adoption, with many projects stalling at proof-of-concept stage. We have market fragmentation, multiple standards, and a diverse set of technologies that need to be brought together into an end-to-end platform to support this new breed of applications.
We also have commercial issues. Corporations want the safety of large IoT company endorsement versus the obvious benefits of small company innovation and entrepreneurship. And with such a high growth market, how can any modern technology become pervasive quickly enough to make an impact?
The way forward
Partnership is an overused word, but in this diverse market, it’s fundamental. We need a partnership not only to deliver the right technology but also a business execution model that can offer the potential to accelerate market adoption and scale. An open-source approach seems the most likely to succeed, and one new project in particular seems to have all the right ingredients. The Linux Foundation’s EdgeX Foundry Project is a major new initiative launched in April 2017 at Hannover Messe with 50 launch partners. Its goal is to tackle head-on the problem described above.
The project is aligned around a common goal: the simplification and standardization of the foundation for edge computing architectures in the IIoT market, while still allowing the ecosystem to add significant value. What’s more this isn’t slideware — there is an implementation. The core of the new project is over 125,000 lines of code donated by Dell as part of a CTO-funded project called FUSE, developed with feedback from its partners, customers, and even competitors.
The EdgeX Foundry technology vision is to be a flexible, platform-independent, highly scalable, and industrial-grade open-source edge software platform — one supported by a rich partner ecosystem adding value with components that can quickly and easily deliver interoperability between things, applications and services, across a wide range of use cases.
The loosely coupled architecture allows for independent microservices to be distributed across discrete hardware devices, written in different code bases (e.g. Java, JavaScript, Python, C/C++, Golang), and communicate with sensors, each other, and with other computing infrastructures via HTTP-REST/MQTT, and other protocols.
The Core Services and Deployment Framework has been architected to be as agnostic as possible when it comes to both hardware (e.g. x86, ARM) and operating systems (e.g. various flavors of Linux and Windows), while also recognizing that drivers for physical hardware I/O and certain functionality such as deep security and system management are reliant on the host platform and OS. For these functions, the EdgeX Foundry Platform can simply be tailored to the hardware and OS of choice. The EdgeX Foundry platform is available under an Apache 2.0 open source license.
Key tenets for the EdgeX Foundry Project include the following:
- Provide a flexible microservices architecture that can support the use of any combination of heterogeneous ingredients plugged into a common interoperability foundation.
- Be agnostic to hardware CPUs (e.g., x86, ARM), OS (e.g., Linux, Windows, Mac OS), and application environment (e.g., Java, JavaScript, Python, Golang, C/C++) to support customer preferences for differentiation.
- Allow services to scale up and down based on device capability and use case.
- Enable support for any combination of device interfaces to normalize connectivity protocols (both existing standards and proprietary) into a common API.
- Allow functionality to be distributed across multiple edge hardware nodes or across processors within a given node.
- Enable reference microservices (e.g., northbound message bus, rules engine, database) to be quickly replaced with preferred open-source or proprietary alternatives.
- Support best-in-class industrial-grade security, manageability, performance, and reliability while still maintaining extensibility.
- Support drop-in replacements of microservices or entire subsections with more performant versions without requiring architectural changes (e.g., enabling a developer to replace a Java-based microservice with one written in C while not having to replace the entire solution).
- Allow for additional community improvements that enable performance metrics (e.g., to support hard real-time operation).
EdgeX Foundry has already gained a broad partner ecosystem of IIoT supporting companies (both large and small) that is continuing the development of the architecture, code base, and community ecosystem. A vibrant open-source community of vendors and users focused around a common set of objectives is key to addressing IIoT market fragmentation in a significant way.
The EdgeX Foundry business model also provides an opportunity for new IIoT players to enter the market with innovative products and services leveraging the collective community effort and building on the open-source core.
The EdgeX Foundry is collaborating with numerous other standards bodies and consortia including OpenFog and the IIC. The EdgeX Foundry architecture was designed to be well-aligned with the OpenFog reference architecture with the intent of the EdgeX code acting as a baseline ingredient for OpenFog test beds that prove out scalable fog computing deployments. The intended collaboration with the IIC is to take this a step further by focusing on test beds for specific industrial markets and use cases.