5. Adopt a Web-oriented Communications Strategy
Many middleware solutions are staking their claim to be the information exchange backbone of the IoT. Competing consortia, such as AllSeen and Open Interconnect Consortium, and the myriad of protocol choices – MQTT, XMPP, AMQP, COAP, DDS – present a confusing alphabet soup for Thing developers.
Factors to consider include the communications model (pubsub, peer-to-peer, client-server), service discovery model, data representation, overwrite vs. queue, dependence upon reliable transport (TCP), quality of service (QoS) capabilities, and more.
A comprehensive discussion of these options is beyond the scope of this article. Ultimately, however, most devices will use the lingua franca of the web, RESTful web services via HTTP and COAP (for constrained wireless devices), because they enable Things to more quickly and seamlessly integrate into the Web.
Bringing it all together: Many partitioned components
Figure 2 brings together the entire IoT firmware stack into picture, including the concept of multiple securely partitioned web services components, Linux guest operating systems, and real-time and security-critical components.
We find ourselves in the midst of an exciting time, when the number of objects has recently eclipsed the number of people (Personal Computers, smartphones) on the web.
Yet this is just the beginning of a new world in which the Internet will be dominated by smart objects making our lives better and yielding incredible business opportunities for developers of devices for the Internet of Things, especially those that approach their craft with an effective, future-proof strategy. // FG
* * David Kleidermacher is the Chief Technology Officer of Green Hills Software.