LwM2M v1.2 — протокол управления устройствами M2M и IoT, добавляет поддержку шлюзов HTTP и MQTT, LwM2M


Облегченный M2M (LwM2M) — это протокол на основе REST от Open Mobile Alliance (OMA) для управления устройствами M2M и IoT, который определяет протокол связи на уровне приложений между сервером LwM2M и клиентом LwM2M, работающим на IoT / встроенном устройстве.

Несмотря на то, что LwM2M v1.0 был официально представлен в начале 2017 года, мы впервые рассмотрели новый протокол годом ранее, когда Imagination Technologies выпустила исходный код для стека LwM2M, работающего на плате разработки MIPS Creator Ci40. С тех пор мы в основном видели протокол LwM2M, поддерживаемый в модулях LTE IoT, включая Quectel BC66 и u-Blox Sara-R410M, а также в уже не функционирующих модулях Samsung Artik WiFi IoT.

За LwM2M v1.0 последовали v1.0.1 и v1.0.2 с исправленными ошибками и v1.1, но теперь OMA анонсировала протокол LwM2M v1.2, который добавляет следующие новые функции:

  • Новые транспортные протоколы для LwM2M: MQTT и HTTP
  • Оптимизация интерфейсов начальной загрузки и регистрации для уменьшения объема данных, передаваемых при обмене загрузкой и регистрации, соответственно.
  • Атрибуты наблюдения теперь могут быть включены в операцию наблюдения.
  • Функциональность шлюза LwM2M — позволяет устройствам IoT без LwM2M, а также устройствам LwM2M за шлюзом подключаться к экосистеме LwM2M и управлять этими устройствами удаленно.
  • Новый, высоко оптимизированный формат кодирования, основанный на CBOR (краткое представление двоичных объектов) под названием LwM2M CBOR.
  • Расширенная функциональность для обновлений прошивки.
  • Определение новых атрибутов уведомлений:
    • Edge позволяет запускать уведомления при нарастании и спаде фронта.
    • Подтверждаемые уведомления позволяют контролировать надежную передачу уведомлений.
    • Максимальная историческая очередь позволяет контролировать использование данных временных рядов.
  • Разъяснение правил управления версиями объектов.
  • Обновления для использования последних протоколов безопасности связи на основе TLS и DTLS 1.3 (а также использования идентификатора подключения).
  • Гибкость управления использованием TLS и DTLS 1.3 с помощью информации о конфигурации.
  • Распутывание взаимосвязи учетных данных безопасности и их конфигурации сервера.

Многие из новых функций и оптимизаций призваны сделать LwM2M более эффективным, а добавление транспортных протоколов MQTT и HTTP и функциональности шлюза позволит ему работать с гораздо более широким спектром устройств IoT и M2M.

Но тогда возникает вопрос: если LwM2M не поддерживал HTTP и MQTT, какие транспортные протоколы он использовал раньше? Ответ кроется в спецификациях транспортных протоколов:

LwM2M версии 1.0 поддерживает несколько транспортных протоколов, а именно CoAP через UDP и через SMS. Транспортные протоколы UDP и SMS могут использоваться с DTLS или без него. Эта спецификация, LwM2M версии 1.1, добавляет поддержку CoAP через TCP/TLS и CoAP по Non-IP, а именно 3GPP CIoT и LoRaWAN. CoAP через TCP / TLS, как определено в [CoAP_TCP], предлагает лучший обход брандмауэра, как описано в Разделе 1 [CoAP_TCP].

Это объясняет, почему мы чаще всего видим, как это реализовано в  IoT модулях. Несмотря на поддержку LoRaWAN в версии 1.1, мы еще не встречали модули LoRaWAN с поддержкой LwM2M. CoAP через TCP/TLS в основном предназначен для корпоративных сетей.

Что касается программного обеспечения, вы найдете LwM2M в проекте Eclipse Leshan, в котором была создана реализация сервера LwM2M на основе Java, и несколько клиентов LwM2M с открытым исходным кодом, включая Wakaama, Mbed Client и реализацию клиента Zephyr LwM2M. Мы не уверены, что они были обновлены для поддержки LwM2M v1.2.

Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

0 0 vote
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Inline Feedbacks
View all comments