In MQTT, publishers send messages to a hierarchical topic and subscribers subscribe to the topics they care about; a broker in the middle handles delivery. Publisher and subscriber never need to know each other, which keeps systems loosely coupled.
It offers three quality-of-service levels (QoS 0, 1, 2), retained messages, a “Last Will” message published when a client disconnects, and session handling. Versions 3.1.1 and 5.0 are common. The protocol itself defines no data model or topic naming rules; specifications such as Sparkplug and the Unified Namespace approach fill that gap.