STOMP Architecture basics | STOMP protocol in IoT
This page covers STOMP Protocol architecture basics. STOMP is a text based protocol used with message oriented middleware in IoT (Internet of Things). STOMP stands for Simple Text Oriented Messaging Protocol.
• STOMP is text based protocol.
• It is developed to work with message oriented middleware.
• It uses interoperable wire format.
• This format enables clients to communicate with message broker to
enable easy and widespread messaging interoperability.
This communication is irrespective of languages, platforms and brokers used
in the architecture.
• STOMP protocol provides message header with properties and frame body like AMQP.
• It is a simple and light weight with wide range of language bindings.
Some transactional semantics are also provided by it.
STOMP Architecture working operation
Figure: STOMP Architecture
Like other broker based protocols, STOMP specifies publish-subscribe mechanism. Here clients subscribe to topics (compare to a path in HTTP) and they will be notified whenever messages have been sent to that particular topic by broker.
• STOMP does not require use of queues and topics.
Instead, it uses "SEND" semantic with "destination" string.
• STOMP is a bi-directional protocol which uses textual headers similar to HTTP.
• The broker must map "destination" string onto something which it understands
internally e.g. topic, queue or exchange.
• Consumers subscribe to these destinations.
• Different brokers can support different flavors of destinations as
they are not mandatory in the specifications. Hence care need to be taken while porting
code between different brokers as it is not straightforward.
EXAMPLE: Generic broker services e.g. RabbitMQ or ActiveMQ use STOMP/AMQP protocols to ease and scale the deployment of modern cloud services. Websockets help to use queuing protocols e.g. STOMP/AMQP directly from web browsers.
AMQP and MQTT Related Links
AMQP vs JMS
MQTT protocol basics
MQTT vs HTTP
MQTT vs REST
What is difference between
MQTT vs HTTP Difference between OSI and TCPIP layers Difference between TCP UDP FTP vs HTTP FTP vs SMTP FTP vs TFTP ARP vs RARP NAT vs PAT RIP vs OSPF SLIP vs PPP IMAP4 vs POP3 IPV4 vs IPV6
IoT Wireless Technologies
➤WLAN
➤THREAD
➤EnOcean
➤LoRa
➤SIGFOX
➤WHDI
➤Zigbee
➤6LoWPAN
➤Zigbee RF4CE
➤Z-Wave
➤NFC
➤RFID
➤INSTEON