В цикле статей ранее мы рассмотрели технологии ячеистых сетей и их применение на практике на примере 6LoWPAN и MQTT. Последнее время всю большую известность приобретает Thread относящийся к следующему поколению ячеистых сетей. Рассмотрим данную технологию подробнее.
Базовые принципы ячеистых сетей остаются неизменными. Это легко объяснимо, так как Thread в значительной части основан на 6LoWPAN. О чём прямо указывается на странице описания технологии. Основные усовершенствования коснулись взаимодействия с конечным пользователей, а также упрощения процесса разработки. Доработке подверглись процедуры первоначальной конфигурации сети (задание ролей, добавление устройств в сеть), а также такие аспекты, как повышение надёжности и снижение энергопотребления. Также значительно упростился процесс разработки для производителей устройств. За счёт добавления дополнительной прослойки с улучшенной документацией (относительно Contiki-OS) и большим количеством примеров. Практически всё это является заслугой Thread Group, которая регулирует спецификацию технологии, а также объединяет всех заинтересованных в ней. По сути озвученные выше особенности составляли основные сложности при эксплуатации известных ранее ячеистых сетей. Thread Group выявила недостатки, определила основные задачи и применения, определила программные и аппаратные требования к решения, и в дальнейшем стандартизировала это в виде документа. В свою очередь компании-члены группы на основе спецификации представили свои реализации под различные аппаратные платформы. Особо стоит отметить открытую реализацию от Google (бывшей Nest) — OpenThread. Она интересна тем, что является кроссплатформенной и работает на решениях от 9 производителей полупроводниковых компонентов. Также можно запустить OpenThread в виртуальной машине, что очень удобно с точки зрения отладки и разработки базовых приложений. В результате технология стала гораздо более дружелюбной и готовой к эксплуатации конечными пользователями.
Рассмотрим основные особенности технологии Thread. Тезисно:
- технология была разработана специально для умного дома:
- поддерживаются профили управления бытовой техникой, системами контроля доступа и безопасности, климат-контролем, энергопотреблением, освещением,
- надёжная самоорганизующаяся сеть,
- нет единой точки отказа
- До 250+ устройств в одной сети
- динамическое задание ролей в сети:
- если сеть разделилась и пропал координатор, то в каждом сегменте появляется свой координатор,
- если сеть потом объединилась обратно, то координатором назначается наиболее молодой из двух,
- динамическое задание ролей в сети:
- Основана на проверенных стандартах : IPv6 и 6LoWPAN
- Работает на существующих на рынке решениях IEEE 802.15.4
С точки зрения пользователя данное решение имеет ряд существенных преимуществ:
- Простая установка при помощи смартфона, планшета или ПК
- Код для установки и добавления устройства к существующей сети (генерируемый предварительно на заводе)
- Человек сканирует QR код при помощи телефона с устройства, которое нужно добавить в сеть.
- Телефон, авторизован в сети Thread и имеет право добавлять новых членов в сеть,
- Через приложение на телефоне вносятся первоначальные настройки устройства,
- Устройство подключено и далее работает независимо от телефона
- Динамическое задание ролей в сети быстро и незаметно для пользователя
- Безопасность:
- Шифрование на сетевом и прикладном уровнях (3 и 7 модели OSI)
- Криптография с открытыми ключами уровня банковских систем
- Низкое энергопотребление
- спящие узлы работают годами от одной батарейки AA,
- Короткие сообщения экономят энергии и не занимают радио-канал
- Оптимизированная маршрутизация снижает задержки и издержки в сети
- Разработана для работы на доступных на рынке беспроводных СнК
Главные преимущества, которые можно подвести в итоге:
- Низкое потребление
- Сеть самоорганизующаяся незаметно для пользователя,
- Удобный интерфейс безопасного добавления устройств в сеть,
- Шифрование на 2 уровнях по умолчанию,
- Удобные инструменты для разработки,
- Решение готово как аппаратно, так и программно!
В следующей статье мы рассмотрим пример запуска сети на основе открытой реализации OpenThread от Google.
Интересная технология, спасибо.
НравитсяНравится