Published on 12/27/2016 | Technology
IoT has become a buzzword these days and almost 70% of technology fraternity is talking about it. IoT shows lot of potential to create impact in the form of smart city solutions, smart home, industrial automation, connected automobiles, connected office, wearable, smart agriculture, etc. In case you are not familiar with IoT then I recommend first read through few of the articles: Explaining IoT to a Layman: Machines are like Child; IoT Business Models; Managing road accidents using IOT solutions; IoT: Food, Clothing & Shelter; Designing Smart Villages;
at the bottom most layer composed of sensors, actuators and embedded modules. Layer on top of it is connectivity bracket which enables these devices to transport the captured data from devices to the internet. Also the same layer supports various communication protocols used to communicate in the world of IOT such as MQTT, COAP, Thread, etc. Then we have layer of application development and enablement platforms which support standards for building end user applications and then finally the end user interfaces and analytics. In this article I will touch basics of various communication protocols and their relevant architecture but with no deep dive.
IoT architecture below created by Human Connect (@_HumanConnect) describes that IOT starts with hardware
We should now look at the various communication patterns which enable the communication and discussions between machines. Pattern support a particular requirement such as status update, request - response, control and commands and finally notifications. Figure below depicts the various communication patterns.
MQTT (Message Queue Telemetry Protocol) is a machine-to-machine (M2M)/"Internet of Things" connectivity protocol. It was designed as an extremely lightweight publish/subscribe messaging transport. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium.
MQTT is an Open Source Protocol with Lightweight support in form smallest packet size of 2 bytes. Reliable with quality of service and patterns to avoid packet loss on client disconnection.
It is simple, TCP based, asynchronous, uses few verbs and is payload agnostic. The most important aspect is that it is based on published subscribed model.
The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with constrained nodes and constrained networks in the Internet of Things. Like HTTP, CoAP is based on the wildly successful REST model: Servers make resources available under a URL, and clients access these resources using methods such as GET, PUT, POST, and DELETE.
From a developer point of view, CoAP feels very much like HTTP. Obtaining a value from a sensor is not much different from obtaining a value from a Web API. CoAP is designed to use minimal resources, both on the device and on the network. Instead of a complex transport stack, it gets by with UDP on IP.
CoAP Features
- Embedded web transfer protocol (coap://)
- Asynchronous transaction model
- UDP binding with reliability and multicast support
- GET, POST,PUT,DELETE methods
- URI support
- Small, sinple 4 byte header
- DTLS based PSK, RPK and Certificate security
- Subset of MIME types and HTTP response codes
- Built-in discovery
- Optional observation and block transfer
THREAD
The Thread is an open standard for reliable, cost effective, low power, wireless D2D(Device-to-Device)communication. Thread was designed with one goal in mind to create the best way to connect and control products in home. It is designed specifically for Connected Home applications where IP based networking is desired and a variety of application layers can be used on the stack.
General characteristics:
Low power: Devices can operate for several years with even AA type of batteries
Mesh network: Thread protocol designed to work efficiently by using mesh topology. Using mesh topology, one can overcome from the problem of single point of failure
Ipv6 supported: Growing the future network and more IP addresses demand, thread has choses default Ipv6 network protocol.
Reliable, Secure and scalable: All thread networks are encrypted. They use smart phone era authentication scheme & AES encryption to close the security holes that exist in other wireless protocol. Due the mesh supported network protocol, its scalable at any point of time
RPMA
San Diego-based Ingenu (formerly On-Ramp Wireless) “bring[s] connectivity exclusively to machines.” The company says that its proprietary random phase multiple access (RPMA) technology enables wide area connectivity using unlicensed devices in the globally-available 2.4 GHz band. An RPMA access point can cover 30 to 200 square miles, depending on terrain, communicating with devices that can run for years without having to replace their batteries. Ingenu says it can serve devices that individually consume less than 3 MB of data per month. The company claims 38 private networks operational in 20 countries. Ingenu provides the technology -- operators build their own networks and choose their own business models.
#IOT; @_HumanConnect; #MQTT; Credit to Bhupendra Mishra for Thread Content
This article was originally posted on LinkedIn.