MQTT

Материал из Поле цифровой дидактики


Описание MQTT (Message Queue Telemetry Transport) – это основанный на стандартах протокол, или набор правил, обмена сообщениями, используемый для взаимодействия между компьютерами. Интеллектуальные датчики, носимые устройства и другие устройства Интернета вещей (IoT) обычно передают и получают данные по сетям с ограниченными ресурсами и пропускной способностью. Эти устройства IoT используют MQTT для передачи данных, поскольку он прост в реализации и может эффективно передавать данные IoT. MQTT поддерживает передачу сообщений от устройств в облако и в обратном направлении.
Область знаний NetSci, Интернет вещей
Авторы Стэнфорд-Кларк
Поясняющее видео
Близкие понятия Интернет вещей
Среды и средства для освоения понятия MQTT4Snap!, MQTT Explore

MQTT - Аббревиатура наименования данного протокола расшифровывается как Message Queuing Telemetry Transport (MQTT). Если перевести дословно, то получится Транспорт телеметрии очереди сообщений.

MQTT — это облегчённый протокол с невысокой нагрузкой на каналы связи, работу в условиях постоянной потери связи и лёгкую встраиваемость в любую систему. В наше время данный протокол активно используется в системах умного дома (IoT) для передачи данных от различных датчиков, для управления лампами, розетками и т.д.


Основные термины и понятия

Message
Сообщения (message) содержат в себе информацию, которую один участник сети на базе протокола MQTT хочет передать другим. Взаимодействие между участниками сети осуществляется через Брокера. То есть, если мне, как устройству, нужно передать сообщение о том что я что-то сделал или сообщить о том, как у меня дела, я передаю сообщение брокеру публикуя во всеуслышание что "я что-то сделал"
Publish
Это процесс передачи сообщения брокеру. То есть простым языком, я подошел к брокеру и сказал "something". Брокер гипотетически должен услышать это сообщение и записать его к себе в блокнотик
Subscribe
Bсеми сообщениями от всех устройств владеет исключительно брокер. Актанты подписываемся на рассылку от брокера для получения проходящих через него сообщений. Чтобы читать какие-то конкретные сообщения используется механизм Topic
Topic
Формат топика может быть разным и абсолютно любым. Главное чтобы получатель был подписан на этот топик и знал что делать с информацией полученной из сообщений.
QoS
Retain

MQTT — это протокол обмена сообщениями по шаблону издатель-подписчик (pub/sub). Первоначальную версию в 1999 году опубликовали Энди Стэнфорд-Кларк из IBM и Арлен Ниппер из Cirrus Link. Они рассматривали MQTT как способ поддержания связи между машинами в сетях с ограниченной пропускной способностью или непредсказуемой связью. Одним из первых вариантов его использования было обеспечение контакта фрагментов нефтепровода друг с другом и с центральными звеньями через спутники.

Участники

  • MQTT-клиент – это устройство, оснащенное микроконтроллером, поддерживающим стек TCP/IP. Клиентские библиотеки MQTT доступны для большого числа языков программирования, например Android, Arduino, C, C++, C#, Go, iOS, Java, JavaScript, NET.
  • Брокер является основным элементом системы "издатель-подписчик" - Mosquitto

Схемы UML