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

Давайте посмотрим, как выглядит архитектура интернета вещей и разберемся в средствах и технологиях передачи данных в IoT.

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

Упрощенно можно сказать, что IoT-системы — это специализированные сети, объединяющие устройства, шлюзы и системы данных, где эти данные потом хранятся, обрабатываются и анализируются. Данные в такой сети собираются и передаются с помощью протоколов передачи данных. Для общения между устройствами и шлюзами часто используют специальные протоколы, обеспечивающие низкое потребление энергии.

Сеть IoT чем-то похожа на сеть Wi-Fi, которая объединяет компьютеры в квартире и позволяет обмениваться данными с интернетом с помощью роутера, или на сотовую сеть, в которой сотовые телефоны подключаются к вышкам.

Разберем подробнее, как работает такая система.

Устройства собирают данные от пользователей, иногда обмениваются ими друг с другом, потом передают дальше, обычно к шлюзам. Шлюзы — это еще один тип устройств, чем-то похожих на домашние роутеры, они могут собирать данные с устройств, а потом отправлять их в дата-центр или облако. Также там может производиться некая обработка данных, что позволяет сэкономить на их передаче.

Устройства передают данные к шлюзам, оттуда они могут отправиться в дата-центр или облако. Источник

Cуществует модель OSI (The Open Systems Interconnection model), на ее основе протоколы интернета вещей делят по группам в соответствии с уровнем архитектуры системы, на котором будут передаваться данные.

Уровень модели OSIФункции
Уровень приложений (Application)Передача данных от устройств к пользователям. Примеры протоколов: MQTT, DDS, WebSocket, AMQP, DTLS, Eddystone, HTTP, iBeacon, CoAP, PJON, STOMP, XMPP.
Уровень представления (Presentation)Представление и шифрование данных.
Сеансовый уровень (Session)Управление сеансом связи.
Уровень транспортировки (Transport)Обмен данными между различными архитектурными уровнями. Примеры протоколов: TCP, UDP.
Сетевой уровень (Network)Определение маршрута и логическая адресация. Примеры протоколов: IPv6, IPv4, 6LoWPAN.
Канальный уровень (Data link)Физическая адресация. Примеры протоколов: IEEE 802.22, LPWAN.
Физический уровень (Physical)Работа со средой передачи. Bluetooth, Ethernet, LTE, NFC, RFID, Wi-Fi.

Основные виды беспроводных сетей в IoT и стандарты передачи данных

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

Протоколы передачи данных — основа любой радиосвязи. От них зависит, какая у сети будет топология, маршрутизация, адресация, безопасность данных.

В системах интернета вещей используют:

  1. Локальные и персональные сети (WLAN — Wireless Local Area Network, и WPAN — Wireless Personal Area Network). Сюда относят сети ближнего (малого и среднего) радиуса действия, такие протоколы, как: Wi-Fi, 6LoWPAN, Thread, ZigBee IP, Z-Wave, ZigBee, BLE 4.2 (Bluetooth Mesh), WirelessHart, MiWi.
  2. Энергоэффективные глобальные сети (LPWAN — Low-power Wide Area Network). Сюда относят технологии для передачи небольших данных на дальние расстояния: LoRaWAN, SIGFOX, CIoT, 4G LTE, 5G, NB-IoT и некоторые другие.

Прикладные протоколы передачи данных в IoT

При построении IoT-систем могут использоваться специфичные протоколы: MQTT, AMQP, CoAP, DDS, XMPP, JMS и другие, а также стандартные для обычного интернета протоколы, например HTTP. Выбор протокола зависит от решаемой задачи.

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

То есть протоколы интернета вещей различаются между собой по принципам работы и сценариям использования.

Как мы уже говорили, DDS применяют для систем реального времени, это базовая модель для реализации интернета вещей, принцип работы построен на обмене сообщениями напрямую, а не через сервер-брокер.

Протоколы MQTT, XMPP, AMQP и JMS работают по другому принципу. В основе лежит идея переноса ресурсозатратной части системы на один элемент с большим количеством ресурсов. То есть сообщения передаются не напрямую, а через сервер-брокер, который берет на себя всю обработку сообщений. Его можно развернуть на сервере в дата-центре или в облаке.

Из протоколов такого типа популярность набирает MQTT, так как он разработан специально для интернета вещей, не требует постоянного и стабильного интернет-соединения, не перегружает каналы связи.

Упрощенная схема работы протокола MQTT

Еще один популярный протокол — Modbus. Он поддерживается почти всеми производителями промышленного оборудования. Используют такой протокол для мониторинга, сбора данных с датчиков, управления контроллерам. Принцип работы основан на концепции «ведущий-ведомый». Обычно в сети есть только одно ведущее устройство, которое передает запросы другим — подчиненным — устройствам.

Протокол CoAP — аналог HTTP, но предназначен специально для IoT-оборудования. Принцип работы простой: он ориентирован на взаимодействие точка-точка (клиент-сервер). Клиент обращается к серверу и посылает ему простые команды, как это происходит и в HTTP.

CoAP ориентирован на взаимодействие между точками

Для выбора нужного протокола стоит ориентироваться на количество устройств, потребление ресурсов, объем передаваемых данных и расстояние, на которое их нужно передать.

На облачной платформе интернета вещей Mail.ru Cloud Solutions реализована встроенная поддержка современных протоколов сети интернета вещей Modbus и MQTT. Кроме того, доступна возможность интегрировать любые используемые вами протоколы IoT по запросу.