MusQraTT

An MQTT-SN Broker in Rust on Composite OS

About Section

MQTT-SN is a publisher-subscriber communication protocol designed primarily for Internet of Things (IoT) and cyber-physical systems. These can vary from smart home hubs and smart refrigerators to smart vehicles in smart cities, sensor networks, and even has some aerospace implications.

Today, computational workloads for these cyber-physical systems and IoT devices are becoming increasingly sensitive to latency, a time measurement of delay for network communications. For mission critical applications, this could be a difference in avoiding a collision for autonomous vehicles or precise motion control for industrial equipment. We are moving towards a future that is more interconnected and reliant on near-instananeous communication.

The current industry standard for MQTT is Mosquitto and its companion MQTT-SN gateway Paho. Some larger technology companies have also developed their own implementations for their smart devices, such as Amazon AWS and Microsoft Azure, which run on their cloud infrastructure. However, those systems are too memory intensive or have too much network or transmission latency and are not suitable for real-time systems. In addition, the future of these IoT and cyber-physical systems is moving towards the Edge of the network; Mosquitto, Microsoft, and Amazon do not provide suitable support for realtime systems at the Edge and have higher transmission latencies.

Our project is MusQraTT, an MQTT-SN broker built in Rust on CompositeOS. By building the Broker in Rust, we guarantee memory safety and performant code from the language. CompositeOS, a research operating system built at GW allows MusQraTT to have competitive transmission latencies. We have removed any added transmission and processing latencies from industry standard systems to provide an optimal solution for real-time and latency sensitive applications.

Features