ble менеджер для смарт часы что это значит

Протокол Bluetooth Low Energy: поддержка устройствами и специфика работы

Способов трансляции данных «по воздуху» создано и используется довольно много. Популярностью обзавелся протокол BLE, который внедрен в электронику различного типа и успешно используется и по сей день. Что из себя представляет данный протокол и в каких сферах применим — рассмотрено в этой статье.

Зачем разработали BLE

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

Если у приемника и передатчика имеется батарейное питание, то наблюдаются проблемы со связью при разрыве постоянной передачи связи для экономии энергии, которые решили с новым протоколом передачи данных BlueTooth Low Energy (BLE).

BLE – это режим низкого энергопотребления, способствующий экономии заряда аккумулятора у сопряженных устройств.

Протокол стал частью Bluetooth 4.0. Операционная система Android поддерживает BLE с версии 4.3. В качестве пары, работающей с BLE, берется телефон с современной ОС, совместно с батарейной малой техникой (например, гарнитура). Но не исключены и взаимодействия иных гаджетов.

Чтобы принимать и передавать данные в необходимом объеме беспроводным способом, в стандарт Bluetooth LE включена скорость передачи информации, равная 1 Мбит/сек. Постоянный обмен данными затрачивает энергию, тем самым расходуя ее запасы. Поэтому протокол подразумевает разрыв постоянного эфира для экономии. Поэтому в протоколе не только важна скорость, а и то, что гаджеты умеют синхронизироваться друг с другом тогда, когда это необходимо.

Около 99% всего времени гаджеты спят и экономят энергию. Потом просыпаются на короткий период для обмена данными и снова засыпают. Но чтобы пребывать в данном режиме, устройства сперва между собой необходимо синхронизировать. Этот режим и называется advertising.

В каких сферах применяется

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

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

Устойчивая работа и низкое энергопотребление протокола BLE позволяют рассматривать его в качестве замены NFC, а именно RFID-меток. Но вариант совмещенной работы BLE + NFC выглядит более привлекательно. BLE дает большой радиус, сопряженный с устойчивой работой, второй отвечает за логическое сопряжение пары, плюс обеспечивает надежную защиту за счет малого радиуса действия.

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

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

Поддерживаемые устройства

Определение поддержки

Множество таких «определителей» находится в Play Market и доступны для использования бесплатно. Модели телефонов, выпущенные до 2015 года включительно, могут не поддерживать данную опцию.

Вопросы безопасности BLE

Защита канала передачи данных между парой устройств в протоколе BLE обусловлена двумя режимами LE Секьюрити мод 1 и LE Секьюрити мод 2. Первый режим работает на Data Link layer (DLL), второй на AT&T.

На DLL в протоколе Bluetooth LE присутствует шифрование и аутентификация с помощью технологии построения аутентификационного кода сообщения из блочного алгоритма шифрования (CCM) и шифра AES-128. При работе CCM и AES-128, добавляется к ним Protocol Data Unit и дополнительное сообщение для идентификации целостности, размером 4-байта, после которого PDU и сообщение шифруются.

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

Различия протоколов Bluetooth

Так как Блютуз с низким энергопотреблением вошел в спецификацию Bluetooth 4.0, то технические сравнения проведены с классической версией.

Классический Блютуз

Bluetooth Low Energy

Частота радиосигнала

Дальность действия

Количество ведомых устройств

Опция зависит от реализации

128-бит AES + Counter Mode

Общее время передачи информации (минимум)

Различия между BR / EDR и BLE-модулями в том, что первый делит полосу пропускания на 79 каналов с разносом в 1 МГц, а второй работает с передатчиком и приемником для разделения полосы на 40 каналов, с разбросом в 2 МГц.

Заключение

Bluetooth Low Energy – это протокол, специально разработанный для устройств с ограниченным источником автономной энергии, нуждающихся в отправке информации на протяжении нескольких дней или недель без подзарядки. Двухрежимными модулями BLE оснащаются смартфоны, планшетные ПК, ноутбуки. Однорежимные модули BLE используются в мелкой электронике и аксессуарах, типа измерителей пульса или бесконтактных ключей.

Источник

Как подключить смарт-часы к телефону

Содержание

Содержание

Подключение смарт-часов к смартфону необходмо для полноценной работы устройства и доступа к целому ряду функций: получение уведомлений о звонках, смс, почте, управление плеером и камерой, блокировка или поиск смартфона, отслеживание действий на детском телефоне и многое дургое. Настроить подключение нужно только один раз. В дальнейшем соединение и синхронизация осуществляются в автоматическом режиме. Рассмотрим, как выполнить подключение устройств под iOS и Android.

Перед подключением на обоих устройствах должен быть активирован Bluetooth, а смартфон подключен к интернету. Устройства на протяжении процесса настройки подключения должны располагаться рядом.

Как подключить Apple Watch к iPhone

Предварительно нужно включить на айфоне Bluetooth. Также необходимо подключение к Wi-Fi или сотовой сети.

1. Часы включить и поднести к смартфону. На его экране появится окно подключения с кнопкой «Продолжить», на которую следует нажать. Если сообщение не появится автоматически, откройте приложение Apple Watch и выберите пункт «Создать пару».

2. Навести тыловую камеру телефона на циферблат часов, чтобы он оказался по центру видоискателя, и дождаться сообщения о создании пары. Если воспользоваться камерой по каким-то причинам не получилось, нужно нажать «Создать пару с Apple Watch вручную» и следовать инструкциям на дисплее смартфона.

3. Если у вас это первые смарт-часы Apple, следует нажать «Настроить как новые Apple Watch». В противном случае выбрать резервную копию и следовать появившимся на экране инструкциям.

4. Затем нажать «Левая» или «Правая», чтобы выбрать руку, на которой будут располагаться часы.

5. При появлении соответствующего запроса, нужно ввести пароль Apple ID. Если запрос не появится, осуществите вход через приложение Apple Watch, выбрав в нем «Основные» — «Apple ID».

6. Если на айфоне настроено приложение «Локатор», вам будет предложено включить функцию «Блокировка активации». Отобразившееся окно «Блокировка активации» будет означать, что привязка смарт-часов к идентификатору Apple ID уже имеется. Для продолжения настройки в этом случае потребуется ввести логин и пароль учетной записи Apple ID.

7. Этап создания код-пароля можно пропустить, нажав «Не добавлять код-пароль», однако, в дальнейшем он может потребоваться для некоторых функций (например, для Apple Pay).

8. На следующем этапе можно выбрать и настроить некоторые функции Apple Watch, следуя инструкциям, а также установить доступные приложения.

9. Завершится процедура подключения синхронизацией устройств, которые может занять некоторое время в зависимости от объема имеющихся данных. О завершении синхронизации часы дадут знать звуковым сигналом и легкой пульсацией. После этого необходимо нажать на колесико Digital Crown с правой стороны часов.

Как подключить Apple Watch к Android-смартфону

1. Для подключения часов Apple к смартфону под Android необходимо установить на смартфон приложение Aerlink: Wear Connect for iOS, а на часы — BLE Utility, используя для этого айфон.

2. Установленное приложение нужно запустить на смартфоне и включить iOS Service.

3. На часах запустить BLE Utility и открыть вкладку Peripheral. После этого на смартфоне появится уведомление об обнаруженных часах. Нужно на него нажать и дождаться соединения.

В процессе подключения нужно дать часам ряд разрешений на доступ: к календарю, к уведомлениям, к контактам и к геолокации. Но даже после подключения Apple Watch к андроид-устройству будут работать не все функции. Например, голосовой ассистент окажется недоступен. Уведомления о звонках, смс и прочем приходить будут, но ответить на звонок с часов уже не получится.

Как подключить любые часы к iPhone

1. Чтобы подключить смарт-часы с ОС Google Wear и другими операционными системами (кроме Apple Watch) к айфону, нужно установить на часы приложение Aerlink: Wear Connect for iOS, используя для этого андроид-смартфон, на iPhone установить утилиту BLE Utility.

2. На часах активировать Aerlink в меню «Пуск», на смартфоне запустить BLE Utility и открыть вкладку Peripheral.

3. После того как устройства обнаружат друг друга, на дисплее смарт-часов отобразится код для сопряжения, который нужно будет ввести в окне создания пары на смартфоне.

Как подключить любые часы к Android-смартфону

1. Для подключения смарт-часов (любых, кроме Apple Watch) к смартфону под Android потребуется установить на него гугловское приложение Wear OS, которое подходит для подавляющего большинства моделей (версия Android должна быть 4.4 или выше).

У отдельных брендов могут быть собственные аналогичные программы (например, Galaxy Wearable, Huawei Wear, MiFit и другие — указано в инструкции к часам), но Wear OS тоже подойдет. Wear OS добавляет смарт-часам определенные функции и поддерживает гугл-ассистента.

2. Включить Bluetooth и интернет на смартфоне и приблизить к нему часы. Если Bluetooth не включен, Wear OS предложит сделать это прямо в нем. Также нужно предоставить часам доступ к геолокации, нажав кнопку «Далее».

3. После запуска Wear OS и обнаружения смартфоном часов приложение предложит выбрать модель из списка. Если нужные часы в списке отсутствуют, можно нажать «Часов в списке нет» и почитать подробную инструкцию с перечислением причин и способов решения.

4. Ввести пин-код, если приложение его потребует.

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

6. Выбрать нужный аккаунт Google для синхронизации.

7. Произвести настройки часов, следуя инструкциям на экране.

Как подключить детские смарт-часы

У большинства моделей детских смарт-часов, в отличие от «взрослых», имеется слот для СИМ-карты, необходимой для отслеживания местоположения ребенка и возможности связаться с ним в любой момент. Тариф лучше выбрать с безлимитным интернетом. Работоспособность СИМ-карты рекомендуется предварительно проверить на телефоне и только после этого установить ее в часы. Также желательно проверить баланс и отключить проверку ПИН-кода.

1. Вставить SIM-карту в часы и включить их.

2. Включить Bluetooth на обоих устройствах.

3. Установить на смартфон приложение SeTracker, SeTracker2 или аналогичное.

4. После запуска приложения нужно пройти регистрацию. Для этого необходимо указать код лицензии (на задней стороне часов), номер телефона на случай необходимости восстановления пароля, e-mail в качестве логина и пароль, имя ребенка и проч.

5. Запустить привязку, дождаться подключения и синхронизации.

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

Что делать, если смарт-часы не подключаются

1. Если осуществить подключение умных часов к смартфону не получается, первым делом проверьте совместимость устройств, ознакомившись с инструкцией или поискав информацию в интернете.

2. Убедитесь, что часы заряжены и включены, а Bluetooth активирован на обоих устройствах.

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

4. Установите последние доступные обновления операционной системы для смартфона и часов.

5. Проверьте в настройках смартфона, включено ли разрешение отправлять уведомления на сопряженных часах.

6. Подключение может не происходить из-за того, что уже имеется коннект с другим гаджетом. В этом случае нужно удалить все текущие соединения в настройках или путем перезагрузки, после чего попытаться подключиться вновь.

7. Следует учесть также, что подключить часы к двум смартфонам сразу не получится. Перед подключением часов к новому телефону, их нужно отключить от предыдущего.

Источник

Bluetooth Low Energy: подробный гайд для начинающих. Bluetooth Mesh

Это пятая и последняя часть перевода книги Мохаммада Афане “Intro to Bluetooth Low Energy”. Сегодня мы завершим чтение книги ознакомлением с Bluetooth Mesh. Эта технология нашла свое применение в приложениях, требующих распределенной сети малопотребляющих датчиков или иных устройств. Наиболее полно раскрыть возможности Bluetooth Mesh можно, например, при создании ценников с E-Ink дисплеями для торгового зала. Использование ценников как Low-Power Nodes и некоего хаба как Friendly Node не только позволяет с минимальными затратами поддерживать актуальность ценников в течении нескольких лет без их замены и задействования персонала, но и проводить кратковременные «счастливые часы», быстро меняя информацию на дисплее.

Предыдущие части перевода:

9. Введение в Bluetooth Mesh

Внедрение стандарта BLE в 2010 году привело к быстрому росту вариантов использования устройств интернета вещей, таких как сенсоры, носимые устройства, портативные медицинские инструменты и прочие. В то же время, большим недостатком BLE, существующим с момента его внедрения, была невозможность организации ячеистых сетей, когда множество устройств могут посылать друг другу сообщения и ретранслировать их при необходимости на другие устройства в сети. Ситуация изменилась в июле 2017 года, когда Bluetooth SIG выпустила стандарт Bluetooth Mesh.

В этой главе мы рассмотрим наиболее важные основные понятия, чтобы облегчить начало вашего пути в изучении Bluetooth Mesh.

9.1 Базовые понятия Bluetooth Mesh

До выпуска Bluetooth Mesh, BLE поддерживал только две топологии сети:

Точка-точка: когда два устройства подключены друг к другу.

Точка-многоточка: когда устройства остаются в состоянии адвертайзинга, как маячки.

С Bluetooth Mesh была добавлена новая топология для сетей BLE: устройства теперь могут работать в ячеистой топологии “многие к многим”.

Рис. 25: Топологии BLE

Топология mesh-сети дает два важных преимущества:

Увеличенная дальность связи

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

Способность к самовосстановлению

Если один из элементов сети выйдет из строя, остальные останутся в строю и смогут передавать сообщения друг другу. К сожалению, это лишь отчасти применимо к Bluetooth Mesh, так как существуют некоторые типы устройств в сети, от которых могут зависеть другие. Мы рассмотрим их позднее в этой главе.

Несколько важных примечаний касательно Bluetooth Mesh:

Bluetooth Mesh это отдельный стандарт с отдельной спецификацией, которая находится здесь.

Bluetooth Mesh версии 1.0 не поддерживает ни одной особенности Bluetooth 5, например расширений адвертайзинга или кодированного PHY. Скорее всего, ситуация изменится в следующих версиях.

9.2 Архитектура Bluetooth Mesh

Bluetooth Mesh является надстройкой над BLE. Он особым образом использует состояние адвертайзинга устройств с BLE. Устройства в сети Bluetooth Mesh не соединяются с другими так, как это делают классические устройства с BLE. Вместо этого они используют состояния адвертайзинга и сканирования для ретрансляции сообщений от одного устройства к другому. Существует только одно исключение из этого правила, устройство-прокси, которое может быть частью mesh-сети (мы рассмотрим его в секции “типы устройств”).

Рис.26: Архитектура Bluetooth Mesh

Ниже представлено описание каждого из уровней архитектуры Bluetooth Mesh, в порядке возрастания:

Уровень Bluetooth Low Energy

Как мы упоминали ранее, Bluetooth Mesh является надстройкой над BLE, и таким образом, он требует полного стека BLE, работающего на устройстве. Он использует состояния сканирования и адвертайзинга для отправки и получения сообщений между устройствами в mesh-сети. Также он поддерживает подключенное состояние и GATT для специальных устройств, называемых прокси-устройствами.

Несущий уровень

Несущий уровень определяет то, как различные mesh-пакеты обрабатываются. Существует два вида передающих сред в Bluetooth Mesh:

Передача через адвертайзинг: используются состояния сканирования и адвертайзинга.

Передача через GATT: используется подключенное состояние устройств. Оно позволяет устройствам, не поддерживающим работу в mesh-сети, взаимодействовать с составляющими этой сети. Этот режим используется в прокси-устройствах.

Нижний транспортный уровень

Этот уровень решает две основные задачи: сегментация пакетов, пришедших с верхнего транспортного уровня и восстановление пакетов, пришедших с несущего уровня.

Верхний транспортный уровень

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

Уровень доступа

Этот уровень определяет, как приложение использует верхний транспортный уровень и решает задачи форматирования данных приложения, шифрование и расшифровку а также проверку данных.

Уровень фундаментальных моделей

Этот уровень решает задачу конфигурации сети и модели управления сетью.

Уровень моделей сети

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

9.3 Основные понятия и термины

Рассмотрим основные понятия и термины Bluetooth Mesh.

9.3.1 Узлы

Устройства, являющиеся частью mesh-сети, называются ее узлами. Устройства, ещё не являющиеся частью сети, называются неидентифицированными устройствами. После того, как неидентифицированное устройство становится идентифицированным, оно становится частью сети, т.е. ее узлом.

9.3.2 Элементы

Узел может состоять из нескольких частей, каждая из которых может управляться независимо. Например, светильник может состоять из нескольких лампочек, каждая из которых может включаться и выключаться независимо от других. Эти части одного узла называются его элементами.

Рис. 27: Элементы узлов в Bluetooth Mesh

9.3.3 Состояния

Элементы могут находиться в различных условиях, описываемых как состояния. Например, “включен” и ”выключен” являются состояниями лампочки светильника. Переход из одного состояния в другое называется сменой состояния. Смена состояния может происходить моментально или занимать некоторое время, называемое временем перехода. Смена состояния зачастую вызывает смену поведения элемента.

Некоторые из состояний могут быть привязаны к другим, в том смысле, что смена одного состояния вызывает смену другого. Два или большее количество состояний могут быть привязаны друг к другу. Возьмем в качестве примера диммер светильника: он может иметь состояние уровня и состояние вкл/выкл. Если значение текущего уровня станет равно нулю, это вызовет смену состояния вкл/выкл на “выключено”. Если значение уровня перестанет быть равно нулю, это вызовет смену состояния с “выключено” на “включено”.

9.3.4 Свойства

Свойства содержат дополнительную информацию о текущем состоянии. Например, значение температуры может иметь свойства “в помещении” и “на улице”. Существует два типа свойств:

Заданные производителем: предоставляют только права на чтение.

Заданные администратором: предоставляют права как на чтение, так и на запись.

9.3.5 Сообщения

В Bluetooth Mesh существует три типа сообщений, каждый из которых определен при помощи уникального кода операции:

Сообщение запроса (GET): сообщение с запросом на получение состояния одного или нескольких узлов.

Сообщение установки (SET): указание изменить значение какого-либо параметра.

Сообщение о статусе (STATUS): статусное сообщение используется в нескольких ситуациях:

Отправляется в ответ на сообщение запроса и содержит значение требуемого параметра.

Отправляется в качестве подтверждения получения сообщения установки.

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

Отправка некоторых сообщений требует от получателя отправки подтверждающего сообщения, решающего следующие задачи:

Подтверждение получения сообщения.

Передача данных, относящихся к полученному сообщению.

В случае, когда ответ на сообщение не получен отправителем, или пришел некорректный ответ, отправитель может переотправить сообщение. Получение множественных подтверждающих сообщений не нарушают работу получателя (такая ситуация расценивается как получение единичного подтверждающего сообщения).

9.3.6. Адреса

Сообщения в mesh-сети должны в обязательном порядке адресовываться. Существует три типа адресов:

Индивидуальный адрес: однозначно определяет конкретный узел, которому этот адрес был присвоен в процессе формирования сети (рассмотрим кратко чуть позднее).

Групповой адрес: используется при обращении к группе узлов. Групповой адрес обычно отображает физическое группирование узлов по определенному признаку, например, узлы, расположенные в одной комнате. Групповой адрес может быть:

Определен Bluetooth SIG и использоваться в случае обращения ко всем без исключения устройствам, принадлежащим к одному типу: прокси-узлам, дружественным устройствам, ретрансляторам или же ко всем устройствам, независимо от их типа.

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

Виртуальные адреса: Адреса, которые могут быть назначены одному или нескольким элементам и могут охватывать один или несколько узлов. Этот адрес действует как метка и принимает форму 128-битного UUID, с которым может быть связан любой элемент. Обычно виртуальные адреса конфигурируются во время производства устройств.

9.3.7 “Издатель-подписчик”

Передача сообщений в Bluetooth Mesh сети ведется в соответствии с шаблоном проектирования “издатель-подписчик”. Суть шаблона хорошо описана в Википедии:

“Издатель-подписчик (англ. publisher-subscriber или англ. pub/sub) — поведенческий шаблон проектирования передачи сообщений, в котором отправители сообщений, именуемые издателями (англ. publishers), напрямую не привязаны программным кодом отправки сообщений к подписчикам (англ. subscribers). Вместо этого сообщения делятся на классы и не содержат сведений о своих подписчиках, если таковые есть. Аналогичным образом подписчики имеют дело с одним или несколькими классами сообщений, абстрагируясь от конкретных издателей.”

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

На рисунке ниже представлен пример домашней mesh-сети, состоящей из 6 выключателей и 9 светильников. Сеть использует шаблон “издатель-подписчик” для того, чтобы позволить узлам посылать сообщения друг другу.

Узлы могут подписываться на несколько адресов. В этом примере светильник №3 подписан на групповые адреса “кухня” и “столовая”. Также множество узлов может публиковать сообщения на один адрес, как выключатели №5 и №6 в этом примере. Два этих выключателя контролируют одну и ту же группу светильников, расположенных в саду.

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

9.3.8 Управляемый поток

Многие mesh-сети используют маршрутизирующие механизмы для передачи сообщений по сети. Другой подход заключается в заполнении сети сообщениями без учета оптимальных маршрутов, которыми следовало бы пользоваться. Bluetooth Mesh использует компромиссный подход, называемый управляемым потоком.

Управляемый поток означает широковещательную передачу сообщений всем узлам в пределах видимости отправителя с несколькими оптимизациями:

Сообщения имеют присвоенное им “время жизни” (TTL, “time-to-live”)

Каждое сообщение может передаваться между узлами ограниченное число раз, ограниченное “временем жизни”. Нулевое значение “времени жизни” указывает, что сообщение не было передано и не должно быть передано. Это означает, что узел может отправить это сообщение другим узлам в пределах его видимости и что принимающие узлы не должны ретранслировать это сообщение.

Если сообщение отправляется с TTL ≥ 2, то при каждой последующей передаче значение TTL будет декрементироваться. Значение TTL равное единице означает, что сообщение может быть ретранслировано только один раз.

Сообщения кэшируются

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

Периодически посылаются уведомления об активности

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

Дружба – это понятие, применимое к отношениям между двумя узлами. Эти узлы имеют следующие типы:

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

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

9.3.9 Модели

Другим важным термином, определенным в Bluetooth Mesh, является понятие модели. Модель определяет функциональность устройства, или часть ее. Существует три категории моделей:

Серверная модель: набор состояний, смен состояний, связей состояний и сообщений, которые может передавать или принимать узел, соответствующий этой модели.

Клиентская модель: не определяет никаких состояний. Вместо этого она определяет только тип сообщений (GET, SET, STATUS), отправляемых узлу с серверной моделью.

Контролирующая модель: содержит в себе как серверную, так и клиентскую модель, осуществляя коммуникации с другими серверными и клиентскими моделями.

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

9.3.10. Сцены

Последнее понятие, которое мы бы хотели рассмотреть, это понятие о сценах в сети Bluetooth Mesh. Сцена – это сохраненный набор состояний, который определяется 16-битным номером, уникальным в пределах этой сети.

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

9.4. Типы узлов

Все типы узлов могут принимать и передавать сообщения. Тем не менее, дополнительные функции дают определенным узлам специальные возможности. Ниже представлены различные типы узлов с их дополнительными возможностями:

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

9.4.1 Узлы-ретрансляторы

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

9.4.2 Прокси-узлы

Для того, чтобы позволить обмен сообщениями между mesh-сетью и не поддерживающим mesh BLE-устройством (например, смартфоном), используются специальные прокси-узлы. Прокси-узел действует как посредник и использует GATT-сервер для коммуникации с не поддерживающими mesh устройствами.

В этом случае используется прокси-протокол, предназначенный для связи с устройством, имеющим возможность установить соединение (используя GATT).

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

Это позволяет смартфону без поддержки mesh взаимодействовать с mesh-сетью при помощи прокси-узла, используя его GATT.

Рис. 29: Прокси-узел

9.4.3 Дружественные и малопотребляющие узлы

Дружественные и малопотребляющие узлы тесно связаны друг с другом. Необходимым условием участия малопотребляющего узла в mesh-сети является наличие дружественных отношений с другим узлом, называемым дружественным.

Ниже представлен принцип их взаимодействия:

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

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

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

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

Взаимоотношения между дружественным и малопотребляющим узлом называются “дружбой”.

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

Рис. 30: Дружественный и малопотребляющий узел

9.5. Процесс обеспечения сети

9.5.1 Шаг 1: Рассылка маячков

Шаг 1 включает в себя то, что называется рассылкой маячков: когда необеспеченное устройство заявляет о своей готовности к обеспечению при помощи рассылки mesh-маячков в пакетах адвертайзинга. Это новый тип данных адвертайзинга, внедренный в стандарте Bluetooth Mesh. Обычно этот процесс запускается путем определенной последовательности нажатия кнопок на необеспеченном устройстве.

9.5.2 Шаг 2: Приглашение

Когда обеспечитель обнаруживает необеспеченное устройство по рассылаемым им маячкам, он отправляет приглашение на необеспеченное устройство. На данном шаге используется новый тип пакетов, внедренных в Bluetooth Mesh и называемых пакетами приглашения к обеспечению.

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

Количество элементов, поддерживаемых устройством.

Набор поддерживаемых алгоритмов безопасности.

Возможность передачи публичного ключа с использованием ООВ-технологии (out-of-band, передача вне основной полосы).

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

Возможность этого устройства принимать какие-то значения от пользователя.

Рис. 31: Шаг приглашения в процессе обеспечения.

9.5.3. Шаг 3: Обмен публичными ключами

Обеспечение безопасности в Bluetooth Mesh основано на использовании комбинации симметричных и асимметричных ключей, как в алгоритме эллиптических ключей Диффи-Хеллмана (ECDH). В ECDH обмен публичными ключами производится между обеспечивающим и обеспечиваемым устройствами. Обмен может происходить как с использованием Bluetooth, так и по другим каналам (например NFC).

Рис. 32: Обмен публичными ключами на этапе обеспечения

9.5.4. Шаг 4: Аутентификация

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

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

Независимо от используемого метода аутентификации аутентификация также включает в себя этап генерирования значения подтверждения и этап проверки подтверждения.

9.5.5. Шаг 5: Распространение данных обеспечения

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

9.6. Безопасность в Bluetooth Mesh

Первая важная заметка касательно безопасности в Bluetooth Mesh заключается в том, что обеспечение безопасности является обязательным для всех элементов сети, в отличии от BLE, где решение о необходимости обеспечения безопасности принимается разработчиком.

Ниже приведены основы безопасности в Bluetooth Mesh:

Все сообщения внутри сети зашифрованы и аутентифицированы.

Безопасность сети, безопасность приложения и безопасность устройства обеспечиваются независимо друг от друга.

Ключи безопасности могут меняться в течении времени жизни сети.

Из-за разделения безопасности между уровнями сети, приложений и устройств существует три типа ключей безопасности (каждый из которых решает определенную проблему):

Сетевой ключ

Владение этим общим ключом делает устройство частью сети (то есть узлом). Из сетевого ключа извлекаются два других ключа: сетевой ключ шифрования и ключ конфиденциальности. Владение сетевым ключом позволяет узлу дешифровать и аутентифицировать данные, передаваемые на сетевом уровне, то есть позволяет ретранслировать сообщения, но не позволяет расшифровывать данные приложения.

Ключ приложения

Это ключ, который обычно распределяется внутри набора узлов mesh-сети, выполняющих общую задачу. Например, ключ приложения, управляющего освещением, будет распространен среди выключателей и светильников, но не будет передан термостатам или датчикам движения.

Ключ приложения используется для расшифровки и аутентификации сообщений на уровне приложения, но будет действителен только внутри одной сети.

Ключ устройства

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

9.6.1. Удаление узла

Одна из основных проблем mesh-сети – это возможность получения доступа к сети через выброшенное или удаленное устройство, которое раньше было частью сети. Доступ к сети может быть получен путем получения физического доступа к ключам, хранящимся на выброшенном устройстве (также этот способ известен как “атака из мусорного бака”).

Для защиты от такого рода атак, Bluetooth Mesh определяет процедуру удаления узла из сети, которая заключается в добавлении узла в черный список и обновлении ключей. Результатом процедуры является распространение новых сетевых ключей и ключей приложений, а также других данных, относящихся к узлам сети, за исключением внесенных в черный список.

9.6.2 Приватность

Другой задачей Bluetooth mesh является обеспечение приватности. Приватность обеспечивается путем использования ключа конфиденциальности для обфускации заголовка сообщения. Например, адрес источника обфусцируется для защиты от отслеживания устройства по его адресу. Ключ конфиденциальности получается из сетевого ключа.

9.6.3. Атаки повторением

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

Bluetooth Mesh обеспечивает защиту от такого рода атак следующим путем:

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

Используется инкремент дополнительного параметра безопасности, так называемого IV индекса, который является дополнительным параметром, проверяющимся у принятого сообщения.

9.7 Заключение

В этой главе мы рассмотрели наиболее важные понятия Bluetooth Mesh, что позволило вкратце познакомиться с новым стандартом Bluetooth. Для того, чтобы узнать больше о Bluetooth Mesh, обратитесь к спецификациям, которые могут быть найдены здесь.

На этом всё. Спасибо всем, кто читал и задавал вопросы в комментариях и в личке. Отдельную благодарность за правку и вычитку перевода хочу выразить команде notAnotherOne и @laviol.

Источник

Читайте также:  при какой температуре включают отопление в квартирах
Сказочный портал