## 4 Emergent Configurations in the IIoT
### Revolutionary Communication Technologies for Facilitating EC in Oil and Gas Explorations
#### 4.5.2 Communication Routing Protocols for Realising EC in Oil and Gas Explorations  
Application layer messaging protocols such as message queue telemetry transport (MQTT), constrained application protocol (CoAP), advanced message queuing protocol (AMQP) and extensible messaging and presence protocol (XMPP) can be adopted to aid the transportation of the sensed data across the marine communication network for meaningful decision making. Communication protocols constitute the backbone of IoT systems as they enable the coupling and connectivity of IoT networks to the ubiquitous computing-assisted SDN-based EC network architecture and its applications while allowing data devices to exchange information over the communication network. Data exchange formats and encoding are defined using communication protocols including routing of packets from the transmitter to the receiver. In addition, flow control, sequence control, and lost packet re-transmission are other functions performed by communication protocols. Table 6 presents a brief comparison of the aforementioned application layer protocols for IoT including CoAP, MQTT, XMPP, XMPP and WebSocket which are further discussed and classified in [25; 76] and may be deployed for communication in any suitable application of the propounded EC architecture. The security provided by these protocols are presented in [77; 78]. These protocols are deployed in constrained environments such as the described smart oceanic domains where the devices operate under constrained conditions including low memory and processing power situations. In [3], a classification of low-end (constrained) IoT devices is presented. CoAP on the other hand is an alternative application layer protocol to the hypertext transfer protocol (HTTP) [79] which is not suitable in resource-constrained environments. The CoAP uses the efficient extensible markup language interchange binary data format while supporting features such as automatic configuration, asynchronous message exchanges, congestion control and support for multicast message [1]. More so, four kinds of messages make up the CoAP namely; confirmable, nonconfirmable, reset and acknowledgment message [1; 76]. MQTT is a lightweight international business machines (IBM) created publish-subscribe message protocol that uses transmission control protocol/internet protocol (TCP/IP) in constrained environments such as low memory devices with limited processing capabilities. According to [76; 77], three QoS modes namely _fire and forget mode_, _acknowledge delivery_ (or _at least once_) and _assured delivery_ (or _exactly once_) are provided for message delivery according to the MQTT specification. It is documented in [79] that MQTT protocol outperforms CoAP in situations of high traffic networks. It is note worthy to mention that some sets of open technologies deployed for instant messaging, chat and voice calls as standardized by the Internet engineering task force (IETF) is the XMPP where the exchange of data is made possible by the use of small pieces of extensible markup language (XML) structured data named _XML stanzas_[77] whose architecture is based on the client-server concept. Abstract layering of the XMPP is based on TCP, transport later security (TSLS) and simple authentication and application layer (SASL) [77]. Other application layer protocols are data distribution service (which is a publish-subscribe) protocol adopted to enhance the operation of high-performance device-to-device (D2D) communication), advanced message queuing protocol (AMQP) and WebSocket. In [80], the performance of three application layer protocols namely CoAP, WebSocket and MQTT is documented in a LAN and IoT scenario using simple and affordable devices. The performance is evaluated in terms of protocol efficiency and average round trip time (RTT) in LAN and IoT scenario. Results obtained show that the protocol's efficiency does not change as the network changes; however, RTT increases by a factor of two to three times in an IoT scenario as compared to LAN scenario.