Coap Based Congestion Control Mechanisms For Internet of Things
Date
2022
Authors
Jitendrakumar, Rathod Vishal
Journal Title
Journal ISSN
Volume Title
Publisher
National Institute of Technology Karnataka, Surathkal
Abstract
Internet of Things (IoT) is a network where physical objects with Internet connectivity
can interact and exchange information with other connected objects. IoT devices are con-
strained in terms of power and memory, and have limited communication capabilities. A
large number of IoT devices are characterized by small memory and low processing speeds
that lead to congestion in the network when many such devices try to communicate with
each other. Typically, TCP is responsible for end-to-end congestion control and reliability.
However, in a constrained network, this can cause performance problems because most of
the communication happens over wireless links that are known to be challenging for TCP.
Consequently, the responsibility for controlling congestion is entrusted to the application
layer protocols. Among several IoT application layer protocols, only the Constrained
Application Protocol (CoAP) has a built-in congestion control mechanism and has been
standardized by the IETF.
CoAP is a lightweight messaging protocol which is widely used by various IoT appli-
cations in low power and lossy wireless networks. CoAP provides reliability and minimal
congestion control via a fixed Retransmission TimeOut (RTO) and Binary Exponential
Backoff(BEB). It does not maintain end-to-end connection information and therefore,
cannot adapt RTO based on the network conditions. CoAP Simple Congestion Con-
trol/Advanced (CoCoA) is an improved congestion control mechanism for CoAP which
adapts RTO based on the network conditions. Congestion control mechanisms for CoAP
can be classified into non-RTT and RTT based mechanisms. Non-RTT based mechanisms
(e.g., CoAP) are advantageous for applications that require a low memory footprint and
do not maintain the state information. RTT based mechanisms (e.g., CoCoA) are useful
for applications wherein memory footprint is not a major concern and maintaining the
state information is desirable.
Recently, it has been shown that the congestion control techniques in CoAP and Co-
CoA require further optimizations. In this work, we thoroughly evaluate the congestion
control mechanisms in CoAP and CoCoA, and subsequently propose one non-RTT and
i
three RTT based optimizations: (i) Geometric Sequence Technique for Effective RTO
Estimation in CoAP (GST-CoAP), (ii) Effective RTO estimation using Eifel Retransmis-
sion Timer in CoAP (CoAP-Eifel), (iii) Geometric Series based effective RTO estimation
Technique for CoCoA (GSRTC), and (iv) CoCoA++.
GST-CoAP is a non-RTT based mechanism to improve RTO estimation in CoAP by
using geometric sequence. CoAP-Eifel, GSRTC and CoCoA++ are RTT based mech-
anisms. CoAP-Eifel integrates the Eifel Retransmission Timer with CoAP to improve
RTO estimations and control congestion. GSRTC is a simple enhancement which adapts
the weight used in the Strong RTO estimator instead of using the fixed weight (0.5).
CoCoA++ uses delay gradients to get a better measure of network congestion, and im-
plement a probabilistic backoffto deal with congestion. A common characteristic in the
proposed mechanisms is that they are easy to deploy and do not add user configurable
parameters. All the four proposed mechanisms are extensively evaluated in a wide variety
of network environments using the Cooja simulator and a real testbed at FIT/IoT-LAB.
The performance metrics used for evaluation are Flow Completion Times (FCT), number
of retransmissions, throughput, RTO, delay and packet sending rate. We observe that the
proposed mechanisms offer a notable improvement in network performance compared to
the existing mechanisms.
Description
Keywords
Internet of Things, Congestion Control, CoAP, CoCoA