IOT Standards and Protocols: IOT Part 3 EngineersGarage
Close or Esc Key

Arduino Projects   |   Raspberry Pi   |   Electronic Circuits   |   AVR   |   PIC   |   8051   |   Electronic Projects

IOT Standards and Protocols: IOT Part 3

Written By: 

Priya
In the previous tutorial, a basic architecture of an IOT system was discussed. From the discussions in the previous tutorial, it must be clear that communication network is the backbone of any IOT system. It is only the (internet) network that enables IOT devices (boards) and cloud based services and applications to communicate with each other. Without internet network, IOT is nothing. Data communication on an internet network is not as straight forward. There are myriad of heterogeneous devices connected over internet and these plethora of unique devices need to communicate in a secure, reliable and routed fashion. Also, the devices may be running unique applications or services that would have their own framework and domain. With such diversity at ends, the internet manages to establish connection and communication between or among devices by implementation of standard protocols at different stages or layers.   
 
Any internet network is a stack of technologies. There are technologies to connect devices physically (to co-located devices or routers), assign them logical addresses, route data through the network and manage data exchange at the client ends. 
 
For standardization and sake of implementation of protocols, these technologies are arranged in different layers. Typical internet networks follow Open Systems Interconnection (OSI) model which is an ISO standard model for internet. The OSI model architectures the internet into seven layers - Physical, Data Link, Network, Transport, Session, Presentation and Application. Though the actual implementation of OSI model is done through TCP-IP model which simplifies the seven-layer OSI model to four-layer internet protocol suite. In TCP-IP model (realistic implementation of OSI Model), the physical and data link layer are merged to form physical and network access layer and the session, presentation and application layers of OSI model are merged to a single application layer. 
 
 Comparison of OSI and TCP-IP Model Layers
Comparison of OSI and TCP-IP Model Layers
 
The stack transverse from both client ends connecting through the physical transmission medium and in-between networks/servers on internet. 
 
Device to Device Communication over Internet
Device to Device Communication over Internet
 
The cloud networks for IOT ecosystems practically do not have any standard architecture as these networks are highly customized environments with variable complexities. Though, various architecture models for IOT systems can be compared with typical OSI or TCP-IP models due to similar implementation of architecture layers. Generalizing various architecture models deployed or recommended by standard organizations, a cloud or IOT network architecture would have the following four layers - 
 
1) Infrastructure layer
2) Service Discovery/Service Management/Discovery Layer
3) Application Layer
4) Business Layer
 
IOT Reference Architecture Compared to OSI and TCP-IP Models
 
IOT Reference Architecture Compared to OSI and TCP-IP Models
 
Each layer has various protocols for handling data transfer. The protocols are set of rules which are predefined and the devices must follow them to communicate with each other or communicate over network. Let us discuss each layer and protocols involved at them - 
Infrastructure layer - In this layer, IOT devices (including sensor networks) and technologies physically connecting co-located devices, or devices to standard internet network, are included. Compared to OSI model, this layer merges physical, data link, network and transport layers of typical internet network. On comparing with TCP-IP model, this layer merges physical and network access, internet and transport layers. So, in general, this layer can be divided into following sub-layers - 
 
1) Physical and Link/ MAC/ Network Access Layer - In physical layer, the individual bits are encoded and arranged in data link layer frames  and the encoded data arranged in protocol defined frames is pushed to the wired or wireless data communication link. In case the data link is wireless, it is the physical layer which determines frequency and data transfer rate. Similarly, the physical layer also decodes the incoming bits and bytes and transfer them to the sitting processor or controller of the IOT device. The data link layer is responsible for encapsulating data packets into frames, access data link through Media Access Control (MAC) protocol and deliver or receive data over the communication link. Some of the standard protocols defined for physical and network access layers are as follow - 
Ethernet
Bluetooth Low Energy
Wireless HART
Zigbee
Z-wave
RFID
IEEE 802.11.ah
IEEE 802.15.4e
LoRaWAN
DASH7
Weightless
HomePlug
G.9959
LTE-A
DECT/ULE
ISA 100.11a
ANT
NFC
EPC Global
EddyStone
EnOcean
WiMax
NB-IOT
EC-GSM-IOT (Extended Coverage GSM-IOT)
RPMA
LTE-MTC (LTE-Machine Type Communication)
Cellular (GPRS/2G/3G/4G/5G)
CDMA
Thread
INSTEON
DigiMesh
 
2) Network or Network Encapsulation or Adaption Layer - This layer is responsible for addressing of data packets over internet. The incoming data grams from transport layer contain source and destination addresses. At network layer, the packets are encapsulated with unique addresses which are called IP addresses. Earlier IPv4 was used for addressing at network layer but its IP addresses have already exhausted. So, a new network layer protocol IPv6 has been specified which will have 128 bit addresses. The IPv6 has address space for 1038  addresses. 6LoWPAN is another network layer protocol for low power wireless personal area networks. It is an IPv6 protocol developed for wireless sensor networks and home area networks. So, the popular network layer protocols are as follow - 
 
IPv4
IPv6
6LoWPAN
6Lo
6TiSCH
IPv6 over Bluetooth Low Energy
IPv6 over G.9959
 
3) Transport or Routing Layer - This layer is responsible for routing of data packets. At this layer, ordering of packets, error detection and correction in delivery of data packets is performed. Some of the popular protocols specified for Transport layer are as follow - 
 
TCP
UDP
DTLS
TLS
RPL
CARP
CORPL
QUIC
uIP
ROLL
Aeron
CCN (Content Centric Networking)
NanoIP
TSMP (Time Synchronized Mesh Protocol)
 
Service Discovery or Service Management Layer - This layers differentiates the IOT networks or cloud networks with typical internet networks. The IOT devices need to find other devices, services and resources over internet. So, there is a need for resource management and registration process on cloud networks. For this purpose, service discovery and management protocols are specified. Some of the popular protocols for service discovery on IOT systems are as follow - 
 
DNS-SD (DNS-Service Discovery)
mDNS (Multicast Domain Name System)
uPnP
Simple Discovery Service Protocol
 
Some of the currently available service discovery platforms and technologies are as follow - 
 
HyperCat
Physical Web
Wi-Fi Aware
Bluetooth Beacons
Shazam
Open Hybrid
Chirp
 
Application Layer - This is the highest layer within communication network. It is the interface between the (IOT) devices and the network. This layer is implemented through a dedicated application at the device end. Like for a computer, application layer is implemented by the browser. It is the browser which implements application layer protocols like HTTP, HTTPS, SMTP and FTP. Same way, there are application layer protocols specified in context to IOT as follow - 
 
MQTT
SMQTT
CoAP
DDS
XMPP
AMQP
RESTful HTTP
MQTT-SN
STOMP
SMCP
LLAP
SSI
LWM2M
M3DA
XMPP-IOT
ONS 2.0
SOAP
Websocket
Reactive Streams
HTTP/2
JavaScript IOT
 
Business Layer - This layer actually is not part of communication network. It lies at the IOT end point. It can be a cloud or server implementing dedicated applications or providing specific business or industrial solutions within the IOT system. Like it may be interconnecting various IOT devices to Enterprise Resource Planning (ERP) or Knowledge Management (KM) solution. This layer is actually responsible for integrating devices, services and solutions seamlessly and integrating cloud and devices for vertical specific (Health, Transport, Energy, Education etc) implementation. 
 
In addition to protocols specified for different network layers, an IOT system may be utilizing additional protocols for device management, device identification, context awareness or semantics and data security. Some of the device management protocols are as follow - 
 
OMA-DM
TR-069
OMA-CP
 
Some of the data security protocols are as follow - 
 
Open Trust Protocol (OTrP)
X.509
 
Some of the popular Semantic Protocols are as follow - 
 
SensorML
IOTDB
RAML
SENML
Semantic Sensor Net Ontology
LsDL
Wolfram Language Connected Devices
 
In the next tutorial, the physical and network access layer protocols and standards will be discussed. 
]]>]]>