The Message Queuing Telemetry Transport (MQTT) protocol (often pronounced mosquitto) is a protocol designed for low-bandwidth, high-latency environments, which makes it a great fit for IoT projects, especially ones running on limited hardware. It is not solely used for communication between machines: some projects use it to send data for storage purposes.
Let's take a look at how MQTT works and how it implements a PubSub setup for our projects.