Enhanced publish/subscribe in CoAP: describing advanced subscription mechanisms for the observe extension

Abstract

In the current Internet of Things (IoT) all sorts of devices and objects with diverse capabilities are being connected to the Internet and the Web. Consequently, new lightweight network protocols are also being developed to connect resource-constrained devices or networks with each other. One of these protocols is the Constrained Application Protocol, which provides a REST architecture to resource and network-constrained devices. Besides the RESTful client-server paradigm, CoAP supports a publish-subscribe model thanks to its Observe extension which mimics some of MQTT's functionalities. However, this extension has some limitations in the subscription mechanism. Hence, this paper proposes several enhancements that define new CoAP options and response codes for such mechanisms. Furthermore, a theoretical comparison of the current CoAP capabilities against the new possibilities is also provided. For that, an specific use case is proposed, and a comparison in terms of the overhead required to exchange payloads and to subscribe to state change notifications on resources.