About the IoT Connectivity Protocols

Besides HTTP, other protocols that are optimal and suitable for communication in IoT are Message Queue Telemetry Transport (MQTT), Constrained Application Protocol (CoAP), WebSocket, Extensible Messaging and Presence Protocol (XMPP), and Advanced Message Queuing Protocol (AMQP).

REST connectivity over the internet is used as the communication architecture for the IoT devices. Typically, the IoT devices are resource constrained, and there may be data loss or a high memory requirement in this type of communication. Alternatively, a few protocols that are effective are MQTT, CoAP, XMPP, WebSocket, and AMQP.

Description and Application of the IoT Protocols

Name Description Security Use Case
MQTT Simple and lightweight IoT protocol designed for constrained devices and low network bandwidth. See mqtt.org. In an MQTT packet, you can pass an user name and password, but it doesn't support additional security. You can use SSL in the network for encryption, independent from the MQTT protocol. Small medical devices with limited network connectivity, mobile apps in mobile devices, sensors in remote locations that communicate with a gateway.
CoAP Protocol based on the REST model and is suitable for constrained devices such as a microcontroller or a constrained network because it functions with minimum resources in the device or the network. CoAP applies datagram transport layer security (DTLS) that's equivalent to 3072-bit RSA keys. Smart energy applications and building automation applications.
WebSocket A full-duplex communication channel over a TCP connection. WebSocket protocol defines a ws:// and wss:// prefixes indicate a WebSocket and a WebSocket secure connection, respectively. Implement WebSocket in runtime environments or libraries that act as servers or clients. You can apply WebSockets in an IoT network where chunks of data are transmitted continuously within multiple devices.
XMPP Uses the XML text format for communication and runs over TCP. It's not fast and uses polling to check for updates when needed. See https://xmpp.org XMPP uses a security mechanism based on Transport Layer Security (TLS) and Simple Authentication and Security Layer (SASL). Use XMPP to connect your home thermostat to a web server so that you can access it from your phone. It's used in consumer-oriented IoT applications.
AMQP The message queue asynchronous protocol is for communication of transactional messages between servers. See https://www.amqp.org/ AMQP provides TLS/SSL and SASL for security. AMQP is best used in sever-based analytical functions. It's effectively used in the banking industry.

Oracle IoT Cloud Service supports HTTP and MQTT.