Нажмите "Enter" для перехода к содержанию

MQTT (Message Queuing Telemetry Transport)

MQTT (Message Queuing Telemetry Transport) — это лёгкий протокол обмена сообщениями по принципу «издатель-подписчик» (publish-subscribe), специально разработанный для устройств с ограниченными ресурсами и сетей с низкой пропускной способностью или высокой задержкой. Широко используется в IIoT и IoT.

🎯 Ключевые особенности MQTT:

  • Минимальный оверхед: Заголовок сообщения всего 2 байта
  • Publish-Subscribe архитектура: Издатели и подписчики не знают друг о друге, общение через брокер
  • Три уровня QoS (Quality of Service):
    • QoS 0: At most once (отправил и забыл)
    • QoS 1: At least once (гарантированная доставка, возможны дубли)
    • QoS 2: Exactly once (гарантированная доставка без дублей)
  • Работа поверх TCP/IP: Но может использоваться и поверх других транспортов
  • Поддержка постоянных сессий: Брокер запоминает подписки клиента
  • Will Message: Предсмертное сообщение, которое брокер отправит, если клиент неожиданно отключится

🏗️ Архитектура MQTT:

  • MQTT Брокер (Broker): Центральный хаб, который принимает сообщения от издателей и распределяет их подписчикам (Mosquitto, HiveMQ, EMQX)
  • MQTT Клиент (Client): Устройство или приложение, которое может быть издателем, подписчиком или и тем и другим
  • Топик (Topic): Иерархическая строка, по которой фильтруются сообщения (например, «factory/machine1/temperature»)
  • Сообщение (Message): Полезная нагрузка (payload), которая передаётся через топик

🏭 Применение в промышленности:

  • Удалённый мониторинг оборудования через сотовые сети с ограниченным трафиком
  • Сбор данных с распределённых датчиков на большой территории
  • Мобильные приложения для операторов (получение уведомлений в реальном времени)
  • Интеграция с облачными IIoT-платформами (AWS IoT, Azure IoT Hub используют MQTT)
  • Обмен данными между цехами и офисом через существующую IT-инфраструктуру

🔒 Безопасность MQTT:

  • TLS/SSL шифрование: Для защиты данных в transit (MQTTS)
  • Аутентификация: Логин/пароль, клиентские сертификаты
  • Авторизация: Контроль доступа к топикам (ACL)
  • Изоляция брокера: Размещение в DMZ, VPN для доступа

⚖️ Сравнение с другими протоколами:

  • vs HTTP: MQTT легче, поддерживает push-уведомления, лучше для связи «машина-машина»
  • vs OPC UA: MQTT проще и легче, но OPC UA имеет семантическую модель и встроенную безопасность
  • vs Modbus: MQTT более гибкий, не привязан к master-slave архитектуре

📚 Практическое руководство: IIoT: промышленный интернет вещей

📖 Все термины: Глоссарий «Алгоритм»