While some M2M solutions can be relatively simple, with a single application operating upon data from a single type of device over one type of communications system, many solutions are becoming more complex as devices proliferate through the world in the age of the Internet of Things (IoT). Advanced M2M solutions may have multiple services on the edge node, several different connectivity requirements, various data consumers, and geographically diverse services and devices. These distributed systems require an intermediary system, also called an M2M integration platform, to connect them seamlessly to business applications.
Some Machine to Machine (M2M) solutions look fairly simple, with a single business application, one connectivity option, one type of service gateway, and one device or sensor on the other end (Figure 1). However, these simple M2M systems are being replaced by more complex systems as devices are quickly added to the Internet of Things (IoT).
Today M2M applications and cloud computing are combining to create significant new capabilities in which input – from machines, people, sensors, video streams, maps, newsfeeds, and more – is digitized and placed onto networks. These inputs are integrated into systems that connect devices, people, processes, and knowledge to enable collective awareness, efficiencies, and better decision-making in the Enterprise. As a result, M2M applications are much more complex, with multiple services on the edge node, various connectivity options and customer specific business logic not only in the data center but also embedded into edge devices. Plus, the services may be geographically dispersed and have several device data consumers (Figure 2).
Thus far, the M2M marketplace has been full of hundreds of “piecemeal” technologies that can be cobbled together from disparate vendors that have, for the most part, never really spoken, communicated or learned from each other. Industry tools with open protocols that support interoperability over long application development lifecycles are necessary to unite these diverse technologies.
An M2M integration platform designed to act as an intermediary system between the distributed devices and the applications making use of the data can reconcile the varied technologies found in complex M2M projects. An effective M2M integration platform must do several things:
- Act as an operating system for the IoT, enabling the transfer of device data independent of any programming language, platform, or operating system
- Offer the means to perform effective lifecycle management of the devices in the field
- Integrate seamlessly with the Enterprise IT world, using IT best practice and architecture approaches while implementing optimal M2M technologies
Integration platform as a service
In the enterprise IT world, IT research and advisory firm Gartner has introduced the concept of integration Platform as a Service (iPaaS, Figure 3 on following page) as a specific category within the PaaS offerings, using the following definition:
An iPaaS offering provides users with a combination of cloud services – collectively called integration platform services to develop, execute, and manage integration flows. Integration flows running on iPaaS can connect, in a many-to-many fashion, any combination of on-premises and off-premises applications, services, processes, and data. (Source: Gartner, Inc. Enterprise Application & Architecture Summit, “Cloud Services Integration: How to Get Greater Business Value From Your Cloud Investments,” Massimo Pezzini, March 2013)
iPaaS offerings usually combine cloud services for protocol bridging, messaging transports, transformation, routing, service virtualization, adapters, orchestration, partner community management, managed file transfer, registry/repository, development tools, and others.
An iPaaS connects M2M solutions to the distributed systems in the field and the enterprise application and IT management world. The distributed device “network” is one end of an integration flow, the enterprise application is the other.
iPaaS offerings are superior to previous methods such as when data from embedded devices is downloaded manually or through some proprietary means within a dedicated infrastructure. Without an iPaas it can take weeks, months, and even years to plan, procure, and deploy IT infrastructure to connect embedded devices to the network and capture valuable data. An integration platform, on the other hand, simplifies the project and shortens the development lifecycle by quickly connecting devices to the cloud.
An operating system for the Internet of Things
The ideal M2M integration platform is middleware that functions like an operating system for the Internet of Things – an intermediate system between the distributed devices and the applications making use of the data coming from these devices. Any communication must be two-way in nature, allowing those applications to control and manage the devices where required. The system must enable the transfer of device data independent of any other language, platform, or operating system to accommodate the complex nature of M2M projects.
Developers can think of this middleware partly as an Enterprise Service Bus (ESB) for machines. An ESB is a software architecture model used for designing and implementing the interaction and communication between mutually interacting software applications in a Service-Oriented Architecture (SOA) manner using a lightweight, ubiquitous integration backbone. ESB solutions hide complexity, simplify access, and allow developers to access and interact with other software components in a generic way, while handling complex details in the background. An “ESB for Machines” can be implemented to connect distributed systems to business applications while effectively separating the consumers and producers of data.
With this type of unifying platform, M2M solutions can provide easy integration of different device data systems and applications to enable the delivery of data to the enterprise.
Devices and applications publish data onto the bus depending on local conditions and business logic. Data consumers receive it in real time, based on prior selections of topics of interest, while concurrently the data is stored in a self-configuring database. This basic functionality is exposed via a set of standard web service APIs providing a set of connectors with the ability to quickly add more as new services and technologies emerge.
On the device side, the platform provides tools for device management including software, firmware, and configuration. Managing the devices is just as important as managing the data, and the ability to achieve this across a geographically dispersed device population without the need for site visits by skilled engineers produces potentially thousands of dollars per month in the ongoing cost of running and maintaining the system.
Eurotech’s Everyware Cloud is an iPaaS specifically designed to provide “the glue” for IoT or M2M solutions and remote systems.
Increasing M2M integration efficiency
Without a unifying platform in an M2M solution, systems have multiple integration methods that lead to inconsistency and higher costs of management and change. No matter which solution is adopted, an integration platform is essential to solving the complex M2M application issues customers face today.