Краткая история MQTT: протокол обмена сообщениями, который способствует IoT

MQTT (Сообщения Queuing Telemetry Transport) - это легкий протокол обмена сообщениями, который стал краеугольным камнем Интернета вещей (IoT). Известный своей эффективностью и надежностью, MQTT облегчает связь между устройствами в условиях, ограниченных ресурсами. Давайте рассмотрим историю MQTT и то, как она развивалась, чтобы стать ключевым игроком в мире IoT.

Происхождение MQTT

MQTT был создан в 1999 году Энди Стэнфорд-Кларком из IBM и Arlen Nipper of Arcom (ныне Eurotech). Протокол был разработан для удовлетворения необходимости легкой и эффективной системы обмена сообщениями, способной работать над ненадежными или с низкой пропускной способностью. Первоначально он был разработан для нефтегазовой промышленности, где мониторинг дистанционных трубопроводов требовал надежного и низкого протокола связи.

Раннее развитие и усыновление

Первая версия MQTT была разработана так, чтобы быть простой, минимизируя количество накладных расходов и ресурсов, необходимых для общения. Это сделало его идеальным для сценариев, где пропускная способность была ограничена, а эффективность энергии была решающей. Раннее принятие MQTT было в основном в промышленных секторах, где его надежность и эффективность оказались бесценными.

Стандартизация и открытый исходный код

Признавая потенциал MQTT помимо промышленных приложений, IBM выпустила версию протокола без роялти в 2010 году, и вскоре она была внесена вклад в Фонд Eclipse в рамках проекта Eclipse Paho. Этот шаг к развитию с открытым исходным кодом стимулировал более широкие усовершенствования, управляемые сообществом.

В 2013 году MQTT 3.1 был официально стандартизирован OASIS (Организация по продвижению структурированных информационных стандартов), обеспечивая формальную спецификацию, которая еще больше укрепила его роль в IoT. Стандартизация помогла обеспечить совместимость между различными реализациями и устройствами.

Ключевые функции и достижения

Основные особенности MQTT оставались последовательными с момента его создания, подчеркивая простоту, легкую связь и эффективную доставку сообщений. Ключевые характеристики включают:

  1. Опубликовать/подписать модель: MQTT использует шаблон обмена сообщениями публикации/подписки, где устройства (издатели) отправляют сообщения на темы, а другие устройства (подписчики) получают сообщения по этим темам. Это отделяет производителей сообщений от потребителей, повышая масштабируемость и гибкость.

  2. Уровни качества обслуживания (QOS): MQTT поддерживает три уровня QoS для обеспечения надежной доставки сообщений, от «не более одного раза» до «ровно один раз», удовлетворяя различные требования к надежности.

  3. Последняя воля и завещание (LWT): Эта функция позволяет устройствам указать сообщение, которое будет отправлено, если они неожиданно отключаются, обеспечивая осведомленность других устройств о разъединении.

Широко распространенное усыновление

С ростом IoT усыновление MQTT расширилось по различным областям, включая умные дома, автомобильные, здравоохранение и многое другое. Его эффективность и способность работать в ограниченных средах делают его идеальным выбором для устройств с ограниченной мощностью обработки и подключением.

Последние события

Последняя версия, MQTT 5.0, была выпущена в 2019 году, внедряя новые функции для повышения производительности, масштабируемости и отчетности об ошибках. Улучшения, такие как лучшая поддержка крупномасштабных систем, более гибкие варианты подписки и улучшенная диагностика ошибок, сделали MQTT еще более надежной и универсальной.

Заключение

От его скромного начала в нефтегазовой промышленности до его нынешнего статуса в качестве фундаментального протокола для IoT, MQTT оказался своей стоимостью снова и снова. Его легкая, эффективная и надежная конструкция делает его протоколом выбора для соединения множества устройств, которые образуют основу нашего все более связанного мира. По мере того, как IoT продолжает расти, MQTT, несомненно, останется ключевым игроком, что позволяет бесшовному общению и инновациям в разных приложениях.

Вернуться в блог