Explore chapters and articles related to this topic
Semantic Complex Service Composition within an IoT Ecosystem
Published in Ricardo Armentano, Robin Singh Bhadoria, Parag Chatterjee, Ganesh Chandra Deka, The Internet of Things, 2017
Grigorios Tzortzis, Charilaos Akasiadis, Evaggelos Spyrou
Within the platform, services communicate by publishing messages and/or by subscribing to topics managed by a Message-oriented Middleware (MoM), which is a message broker. Thus, all sensor measurements, processor results, and actuations are encapsulated into messages and communicated via these topics. Once a message is published to a topic, the MoM informs and delivers it to all clients that are subscribed to that topic. The MoM, among others, supports the MQTT protocol (Banks & Gupta, 2014), main role of which is to orchestrate the intercommunication among services in the aforementioned way. Each service incorporates an MQTT client to be connected to the MoM. The MoM is responsible to deliver the messages to subscribed clients. Scalability is facilitated, as new services may be added with almost zero configuration. Moreover, the MQTT is an extremely lightweight protocol, designed to require small code footprint and network bandwidth, while also being available for many heterogeneous devices and programming languages. An example of the interconnection of services using a MoM is depicted in Figure 7.1. A camera is an S-type service that captures RGB video data from the physical world and publishes them to a topic. A Background Subtraction module is a P-type service, which receives the camera-generated data by subscribing at the same topic. Upon processing, it publishes its output using another topic.
Middleware
Published in John Footen, Joey Faust, The Service-Oriented Media Enterprise, 2012
These messaging models are not new. Prior to the advent of the term Enterprise Service Bus to describe an SOA-specific middleware component that handles messaging control, there were middleware implementations known as Message-Oriented Middleware (MOM) that may implement many different models. The simplest (and oldest) model that is still in common usage today is the message queue (MQ). MQ is the bread and butter of MOM systems and still appears in many ESB implementations. The basic idea behind message queuing is that a message is placed on a “queue” in the middleware by the sender system, and it is later retrieved from that queue by the recipient system. This requires both an active sender (who can put messages on the queue) and an active recipient (who can take messages from the queue), but can use a passive middleware (the queue, after all, just sits there). MQ middleware can be made more “active” by implementing algorithms that streamline queuing orders, notify end systems, and manage old messages, but the basic idea is pretty simple. This model has the advantage of being asynchronous, which means that it does not matter if the recipient happens to be unavailable when the message is sent; the message is guaranteed to get to its destination (or sit in the queue forever if that destination no longer exists). MQs are well suited for basic messaging needs, such as sending asset metadata from one DAM system to another.
Middleware
Published in Chandrasekar Vuppalapati, Building Enterprise IoT Applications, 2019
In traditional message processing systems, generally referred to as message-oriented middleware (MOM), you apply simple computations on the messages, in most cases individually per message. Remote Procedure Calls (RPC) and Object Request Broker (ORB) are good examples of MOM. For instance, the computation takes place on RPC call—between RPC client and RPC Server.
Cyber-Physical Systems: a multi-criteria assessment for Internet-of-Things (IoT) systems
Published in Enterprise Information Systems, 2021
Edgar M. Silva, Ricardo Jardim-Goncalves
Data exchange protocol is another area related to communication. Data elements are exchanged to trigger a certain procedure or just to transfer data. Messages between nodes/components are based on mechanisms often called Message-Oriented Middleware (MOM), a specific software class used in distributed environments (Luzuriaga et al. 2015). Well-known standard examples are: Advanced Message Queuing Protocol (AMQP) a binary protocol with service semantics to achieve interoperability among entities (O’Hara 2007); Message Queuing Telemetry Transport (MQTT) (Banks and Gupta 2014), similar to AMQT, is a standard supported by the OASIS organisation, built to be simple, open, lightweight and easy to implement a connection; and Constrained Application Protocol (CoAP) (Shelby, Hartke, and Bormann 2014), specified as RFC 7252 by IETF, presents capability to discover services and resources, focus on specific characteristics of constrained environments (nodes and networks). Regarding the connectivity space they address, CoAP is focussed on interdevice and device–gateway communication. AMQP focusses on gateway–cloud communication, while MQTT covers all scope, i.e. device–cloud communication.