Interoperability Challenges in IoT
The Internet of Things will be instrumental in shaping the future evolution of the Internet by enabling linkages between heterogeneous things/machines/smart objects not only amongst themselves but also with the Internet, resulting in creation of value-added open and interoperable services/applications. The Institute of Electrical and Electronics Engineers (IEEE), defines interoperability as “the ability of two or more systems or components to exchange data and use information”. McKinsey asserts that interoperability enables 40 percent of the total potential economic value from IoT. A risk of non-interoperability is loss of key information which can be catastrophic for users/ applications in the health and emergency domain.
According to the European Commission - fostering a consistent, interoperable and accessible Internet of Things remains one of the biggest challenges. This is due to following idiosyncrasies of IoT :
• Co-existence of multifarious systems (devices, sensors, equipment, etc.) that interchange location/ time dependent information in varied data formats, languages, data models/ constructs, data quality and complex interrelationships.
• Multi-version systems designed by manufacturers over time for varied application domains making formulation of global agreements and commonly accepted specifications very difficult.
• New “Things” that get introduced and which support new unanticipated structures and protocols.
• Existence of low-powered devices which need to exchange data over “lossy” networks and may have minimal likelihood/ accessibility for a power recharge in months/ years.
• Heterogeneous, multi-vendor and dispersed characteristics of IoT networks.
A recent study by the International Standards Organization (ISO) revealed 400+ standards that were related to IoT. This plethora of standards intensifies the constant dilemma faced by a CIO working with IoT implementations. A vendor’s view is usually biased toward their offerings. Micro controller vendors focus on device level protocols, microprocessor vendors emphasize on protocols at the router level, and cloud-offering vendors focus on higher level application protocols. To facilitate the CIO, the section below provides a ready reckoner on the leading standards/ protocols available at various layers of the Open System Interconnection model, i.e., at the Link Layer, Network Layer, Transport Layer and Application Layer.
1. Link Layer: Link Layer protocols determine how the data is physically sent over the network’s physical layer or medium (e.g – copper wire, radio wave). Some of the relevant Link Layer standards are IEEE 802.3 (wired Ethernet), IEEE 802.11 (wireless LAN), IEEE 802.16 (wireless broadband), IEEE 802.15.4 (low-rate wireless networks for power constrained devices) and 2G/ 3G/ 4G (mobile communication).
2. Network Layer: The network layers perform the host addressing and packet routing. This is done using IP addressing schemes such as Internet Protocol version 4 (IPv4), Internet Protocol version 6 (IPv6) and IPv6 over low power wireless personal area networks (6LoWPAN). IPv6 uses a 128-bit address scheme that allows 2128 addresses compared to IPv4 which uses a 32-bit address scheme allows 232 addresses.
3. Transport Layer: Transmission control protocol (TCP) and User datagram protocol (UDP) are two prevalent transport layer protocols. TCP ensures reliable/ orderly transmission of packets, error detection and flow/ congestion control capability. UDP is used for time-sensitive applications where packet dropping is preferable to delayed packets. UDP applications have no overhead of connection setups nor have requirements for message ordering, duplication elimination & congestion control.
4. Application Layer: Application layer protocols define how the applications interface with the lower layer protocols to send data over the network. Some of the IoT relevant application layer protocols are Hypertext Transfer Protocol (HTTP), Advanced Message Queuing Protocol (AMQP), Extensible Messaging and Presence Protocol (XMPP), Message Queuing Telemetry Transport (MQTT), Constrained Application Protocol (CoAP), and Data Distribution Service (DDS). MQTT is well suited for constrained environments where devices have limited processing/ memory resources and low network bandwidth. DDS is a device-to-device standard for real-time, high-performance data exchange. CoAP is another device-to-device standard for environments with constrained devices and low power/ lossy networks.
While standardization should be driven by Standards Developing Organizations - collaboration is essential with Open Source communities, Special Interest Groups & Certification forums. We should also leverage learning from the mobile devices industry where interoperability was achieved not only by instituting global standards but also via the Global Certification forum comprising handset manufacturers, test equipment manufacturers, and network operators.