|
The goal of this project is to develop novel Messaging Oriented
Middleware (MOM) technologies. In a distributed environment, MOM
is particularly important to establish a chain of loosely coupled
components including data producers/consumers, edge severs and back-end
servers.
In this space, we are considering an end-to-end solution where
sensors and actuators can connect through MOM to the IBM Enterprise
Bus and WebSphere Application Server. Our mission is therefore to
bring middleware down to small pervasive devices with very stringent
power requirements.
IBM is developing a MOM solution for pervasive devices based on
two components: a lightweight publish/subscribe protocol called
MQ Telemetry Transport (MQTT) and a small footprint message broker
called the microbroker. Although MQTT is a lightweight protocol,
it is difficult to implement it on low-end devices as it is based
on TCP/IP, while most of these devices cannot afford to have a full
TCP/IP stack.
We are developing a new version of the publish/subscribe protocol,
dubbed MQTT-Direct, which allows MQTT to operate on a multitude
of protocol stacks even very limited ones such that it can be
implemented on very low-end devices. The fundamental idea behind
MQTT-Direct is to provide a set of functional modules (e.g. segmentation
and reassembly, lightweight transport protocol, forward error correction)
that can be used or not depending on the device's Networking
capabilities. This led to the design of a novel Networking subsystem
for the micro-broker based on modular and dynamic networking stacks.
MQTT-Direct is a protocol providing point-to-point connectivity;
clients are directly connected to a broker. In sensor networks
it is very often the case that a subset of sensor nodes has the
additional role of relaying messages on behalf of other sensors.
In such a case, protocols like MQTT-Direct are not adequate. We have
developed two novel publish/subscribe protocols to address the case
of sensor networks. The first protocol, dubbed Messo, is a publish-only
protocol that enables a node to publish data into the microbroker.
The second protocol, dubbed Preso, is a subscribe-only protocol
that enables a node to subscribe to a topic. These protocols have been
prototyped on Crossbow motes using TinyOS.
|