A Comprehensive Study of Communication Protocols of Internet of Things
A Comprehensive Study of Communication Protocols of Internet of Things
Things
By
Registration # 2016-GCUF-36954
M.Sc.
in
COMPUTER SCIENCE
April 2021
ABSTRACT
Internet of Things (IoT) is the future of all the present-day devices around the globe.
Giving them internet connectivity makes IoT the next frontier of technology. Possibilities are
limitless as the devices communicate and interact with each other which make it even more
interesting for the global markets. For example, Rolls-Royce announced that it would use the
Microsoft Azure IoT suite and also the Intelligence suite of Cortana to keep track of the fuel
usage, for performance analysis, to optimize the fly routes etc. which improves the airline
efficiency. The devices must communicate with each other, the data from these devices must
be collected by the servers, and the data is then analyzed or provided to the people. For all
this to happen, there is a need for efficient protocols to ensure that the communication is
secure and to avoid loss of data. This research is about the selection and analysis of best
protocol for implementation that can be used for the most efficient communication in IoT.
Various protocols with various capabilities are required for different environments. The
internet today supports hundreds of protocols from which choosing the best would be a great
challenge. But each protocol is different in its own way when we have the specifics like
security, reliability, range of communication etc. This research emphasizes on the best
available protocols and the environments that suit them the most. It provides an
implementation of best protocols and analyzes the protocols according to the results obtained.
The data collected from the sensors/devices through a protocol is also subject to predictive
analysis which improves the scope of the project to performing data analysis on the data
collected through IoT. In this research, we are going to compare the most effective and
efficient protocols on the basis of some facts like range, data rate power and many more. Our
main objective is to identify the most suitable and efficient communication protocol among
all to be implemented on automated systems by comparing these protocols .
Introduction:
Problem Statement:
Different IoT technologies and protocols exist. So it’s become difficult to select which one is
best for practical implementation. There are many properties and characteristics of different
protocols and it’s become very difficult to choose best from them for the automated devices.
So in our research, we will compare different protocols suitable communication and
networking protocol that facilitates best to the device on their work in speed, frequency and
accuracy level. We will try to identify the protocol that can provide environment for devices
to work more efficiently.
Objective:
Our objective is to compare different protocols on the basis of different aspects. We will try
to identify suitable communication protocol that facilitates best to devices on their working
speed, frequency and accuracy level. We will try to identify the protocol that can provide
environment for devices to work more efficiently.
Literature Review:
This section presents some previous works analyzing some communication protocols’
performance in the literature. I'll handle the various data protocols XMPP, CoAP, AMQP,
MQTT, DDS and MQTT-SN in the IoT concept. Authors aim to compare the functionality of
each data protocol with the other data protocols according to performance metrics such as
packet loss rate, message size, bandwidth consumption and latency. Each protocol’s
performance is evaluated depending on the application. Besides, XMPP has better
performance results due to its XML stanza based transmitting for instant messaging
applications over the internet.
I aim to determine which protocol is more suited for different application areas with
constrained devices by comparing XMPP and CoAP. Android O/S and Intel X86 systems are
used to perform protocol’s evaluations. The software technologies for implementation are
‘libcoap’ library for CoAP and ‘Mosquitto’ project for MQTT. Also, Wireshark is used to
analyze the network traffic. Protocols are compared in terms of energy consumption,
bandwidth utilization, and reliability. According to the results, CoAP is better than MQTT
with regard to optimize energy usage.
I perform a comprehensive survey to compare performances of CoAP, MQTT addressing the
bandwidth consumption, latency and packet loss metrics on a real-time, DDS and a custom
UDP-based protocol in medical monitoring application bydata which is collected from
patients. Also, I'll clarify how protocols perform their functions under a constrained, low
quality wireless networks. The hardware technologies are Raspberry Pi model 2, Arduino
Uno revision 3 and Windows laptop ASUS Zenbook. The software technologies for
implementation are “Californium CoAP” for CoAP server and client), “HiveMQ” for MQTT
server implementation, “Mosquitto” for Broker and MQTT clients (both subscriber and
publisher), “OpenDDS” for DDS server and client. Performances of protocols are analyzed
with “TBF”, “NetEM” and “Wireshark” tools. Performance results show that both TCP-
based protocols (DDS and MQTT) are more reliable than UDP-based protocols (Custom-
UDP and CoAP) in low quality wireless networks. However, TCP-based protocols have more
latency than UDP-based protocols in the same network condition. In addition, DDS performs
better than MQTT in poor network conditions.
Sikandar evaluate and compare the performances of MQTT and CoAP protocols in terms of
packet-loss, retransmitting messages delay, data transferred per message. The authors
especially focus on the data transmission between sensors at the gateway node to the back-
end server for CoAP or broker for MQTT. A laptop as a server, a BeagleBoard-xM for
middleware implementation and a netbook for Wide Area Network (WAN) emulator are used
as the hardwaretechnologies. The software technologies are "Wanem” (the wide area network
emulator) to transfer messages, “Mosquitto” project for MQTT Broker, “libcoap” library for
CoAP and “Wireshark” to measure metrics. Results show that MQTT messages have lower
delays than CoAP for lower packet loss. On the other hand, MQTT has higher delays than
CoAP for higher packet loss. Also, CoAP has less traffic when message size is smaller and
packet loss rate is less.
Methodology
In IoT communication, there are many protocols like LoWPAN, ZigBee, BlueTooth LE,
RFID, NFC, SigFox, Cellular, Z-Wave in which we will try to find out which will be best on
the basis of following aspects:
• Standard
• Frequency Bands
• Network
• Topology
• Range
• Security
• Spreading
• Modulation Type
• Features
• Power
Expected Findings
In this paper, we prove that protocols are essentially required for the IoT devices to
collect environmental data in real-time. According to the requirements, we examine the
performance metrics of CoAP, MQTT, and XMPP and by comparing these
performance metrics, we aim to reveal the differences of these protocols in a real-time
communication environment. Protocols are compared by packet creation time, packet
delivery speed metrics to determine the delay differences in the real-time communication
environment. As a result, MQTT has better packet creation and transmission time than
other protocols, although CoAP is UDP-based protocol. Moreover, the MQTT delivers its
packets two times faster than the CoAP. MQTT is better than other protocols due to several
reasons such as the network has wide bandwidth, the packets being transfer are at a
lower size and the COAP is less standardized. When XMPP is examined in such a
network, it has a slowing structure like XML stanza, which causes extra latency when
compared to the other protocols. Our future plan is to measure presented protocols for
different conditions such as low bandwidth, high collision rate and expand the environment
to collect environmental continuous data from different locations.
References