Главное меню
Услуги
Протокол MQTT
MQTT (Message Queue Telemetry Transport) - лёгкий сетевой протокол работающий поверх TCP/IP. Используется для обмена сообщения между устройствами по принципу издатель-подписчик (publish–subscribe).
История создания
Первая версия протокола была разработан доктором Энди Станфорд-Кларком (IBM) и Арлен Ниппер (Arcom) в 1999 и опубликована под роялти-фри лицензией. Спецификация MQTT 3.1.1 была стандартизирована консорциумом OASIS в 2014 году.
Возможности
В конце девяностых, когда разрабатывался MQTT, каналы связи имели низкую пропускную способность. В результате упор был сделан на минимальную вес сообщения и высокую надежность доставки.
- Прост в использования. Протокол представляет собой программный блок без лишней функциональности, который может быть легко встроен в любую сложную систему;
- Паттерн проектирования издатель-подписчик удобен для большинства решений с датчиками. Дает возможность устройствам выходить на связь и публиковать сообщения, которые не были бы заранее известны или предопределены;
- Легок в администрировании;
- Снижена нагрузку на канал связи. Сообщения, насколько это возможно, несут в себе только полезную нагрузку;
- Работа в условиях постоянной потери связи или других проблем на линии;
- Нет ограничений на формат передаваемого контента.
Реализация
Брокер
Mosquitto - платформа, реализующая возможность обмена сообщениями между компонентами системы на базе стандартов протокола MQTT версии 3.1 и 3.1.1
Mosquitto написан на C и распространяется под лицензией BSD.
Устанавливаем и запускаем
$ apt-get install mosquitto
$ mosquitto
Брокеры могут быть сконфигурированы мостом. Например брокер A может перенаправлять сообщения, пришедшие на определенный канал, брокеру B. Таким образом вы можете масштабировать ваше решение.