Internet of Things application layer protocol analysis over error and delay prone links

Internet of Things (IoT) application layer protocols are gaining popularity in a wide range of scenarios, where low-cost, low-power or resource constrained devices are present. The most diffused protocols are the Constrained Application Protocol (CoAP) and MQTT. In order to ensure message delivery, CoAP features a retransmission mechanism based on exponential back-off and a finite number of retransmissions, while MQTT relies on TCP. In remote areas lacking fixed terrestrial network infrastructure, the only available Internet access technology is often represented by wireless or satellite links, usually affected by losses and significant delay. At this time, there is no information about MQTT and CoAP performance over high delay links in the literature. The goal of this paper is to provide a quantitative performance analysis of the mentioned IoT protocols over various conditions of offered traffic, packet loss probability and delay. Our findings show that, with default protocol parameters, MQTT offers better performance in terms of throughput in any of the considered scenarios. As far as latency is concerned, CoAP slightly outperforms MQTT in case of low offered traffic, low loss probability and high delay. We suggest to tune CoAP parameters in order to cope with high traffic and high loss probability: the new parameters result in improved latency and throughput in those conditions.