Сегодня 25 декабря 2024
18+
MWC 2018 2018 Computex IFA 2018
реклама
Сети и коммуникации

Технология беспроводных сетей Bluetooth

⇣ Содержание

Установка соединения

Оказавшись рядом, Bluetooth устройства могут устанавливать не только соединения типа точка-к-точка, когда имеется только два устройства, но и точка-к-многоточек, когда одно устройство одновременно работает с несколькими другими. При соединении одного устройства с несколькими другими, устройство которое обслуживает несколько соединений называется master, а подключенные устройства - slave. К одному master’у может быть подключено до семи активных slave. Кроме активных slave (то есть, устройств которые активно обмениваются данными), может существовать множество неактивных slave, которые не могут обмениваться данными с master пока заняты все каналы, но, тем не менее, остаются синхронизированы с ним. Такая структура называется piconet.

В одной piconet может быть только один master, однако каждый slave может одновременно являться master’ом для других устройств, и образовывать свой piconet. Несколько piconet объединенных таким образом образуют scatternet. В рамках scatternet разные устройства могут не только быть одновременно master и slave одновременно для различных piconet, но и просто slave для разных piconet. Более наглядно с этой структурой можно ознакомиться на представленном ниже рисунке.

Более того, в случае необходимости любой slave в piconet может стать master. Естественно, старый master при этом становится slave.
Таким образом, в scatternet могут объединяться столько Bluetooth устройств, сколько необходимо, логические связи могут образовываться так, как это требуется, и могут изменяться как угодно, в случае необходимости. Единственное условие, различные piconet входящие в один scatternet должны иметь разные каналы связи, то есть работать на различных частотах и иметь различные hopping channel. Hopping - это регулярная смена частот, определяемая параметрами hopping sequence. Всего спецификация предусматривает 10 вариантов hopping sequence, 5 с циклом в 79 смен и 5 с циклом в 23 смены. С любым hopping sequence частоты сменяются 1600 hops/sec. Используется hopping для того, что бы бороться с затуханием радиосигнала и интерференцией.

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

Discoverable mode. Находящиеся в этом режиме устройства всегда отвечают на все полученные ими запросы.
Limited discoverable mode. В этом режиме находятся устройства которые могут отвечать на запросы только ограниченное время, или должны отвечать только при соблюдении определённых условий.
Non-discoverable mode. Находящиеся в этом режиме устройства, как видно из названия режима, не отвечают на новые запросы.

Но это ещё не всё. Даже если удаётся обнаружить устройство, оно может быть в connectable mode или в non-connectable mode. В non-connectable mode устройство не позволяет настроить некоторые важные параметры соединения, и, таким образом, оно хоть и может быть обнаружено, обмениваться данными с ним не удастся. Если устройство находится в connectable mode, то на этом этапе Bluetooth устройства договариваются между собой об используемом диапазоне частот, размере страниц, количестве и порядке hop’ов, и других физических параметрах соединения.

Если процесс обнаружения устройств прошёл нормально, то новое Bluetooth устройство получает набор адресов доступных Bluetooth устройств, и за этим следует device name discovery, когда новое устройство выясняет имена всех доступных Bluetooth устройств из списка. Каждое Bluetooth устройство должно иметь свой глобально уникальный адрес (вроде как MAC-адреса у сетевых плат), но на уровне пользователя обычно используется не этот адрес, а имя устройства, которое может быть любым, и ему не обязательно быть глобально уникальным. Имя Bluetooth устройства может быть длиной до 248 байт, и использовать кодовую страницу в соответствии с Unicode UTF-8 (при использовании UCS-2, имя может быть укорочено до 82 символов). Спецификация предусматривает, что Bluetooth устройства не обязаны принимать больше первых 40 символов имени другого Bluetooth устройства. Если же Bluetooth устройство обладает экраном ограниченного размера, и ограниченной вычислительной мощью, то количество символов, которое оно примет может быть уменьшено до 20.

Ещё одной из важнейших особенностей Bluetooth является автоматическое подключение Bluetooth устройств к службам предоставляемым другими Bluetooth устройствами. Поэтому, после того как имеется список имён и адресов, выполняется service discovery, поиск доступных услуг, предоставляемых доступными устройствами. Получение или предоставление каких либо услуг - это то, ради чего всё собственно и затевалось, поэтому для поиска возможных услуг используется специальный протокол, называемый, как несложно догадаться, Service Discovery Protocol (SDP), более подробно он будет описан ниже.

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

Security mode 1 (non secure), устройство не может самостоятельно инициировать защитные процедуры.

Security mode 2 (service level enforced security), устройство не инициирует защитные процедуры пока не установлено и не настроено соединение. После того как соединение установлено, процедуры защиты обязательны, и определяются типом и требованиями используемых служб.

Security mode 3 (link level enforced security), защитные процедуры инициируются в процессе установления и настройки соединения. Если удалённое устройство не может пройти требований защиты, то соединение не устанавливается.

Естественно, что Security mode 3 и 2 могут использоваться вместе, то есть сначала устанавливается защищённое соединение, а потом оно ещё защищается в соответствии с требованиями и возможностями конкретной службы.

Основой системы безопасности Bluetooth, используемой в Security mode 3, является понятие сеансового ключа, или Bond. Сеансовый ключ генерится в процессе соединения двух устройств, и используется для идентификации и шифрования передаваемых данных. Для генерации ключа могут использоваться самые различные составляющие, от заранее известных обоим устройствам значений, до физических адресов устройств. Комбинируя защиту на уровне соединения с защитой на уровне приложений (где может использоваться абсолютно любая из существующая на сегодня систем защиты данных) можно создавать достаточно надёжно защищённые соединения. Но всё равно, очевидной слабостью Bluetooth соединений с точки зрения построения защищённых соединений остаётся возможность перехвата трафика, причём для этого даже не придётся использовать какое либо специфическое оборудование. Впрочем, эта проблема не нова, и в настоящее время часто приходится использовать открытые сети, вроде Интернет, где возможен перехват трафика, для передачи закрытых данных. Противодействие "брони и снаряда" продолжается.

Следующая страница → ← Предыдущая страница
⇣ Содержание
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
Вечерний 3DNews
Каждый будний вечер мы рассылаем сводку новостей без белиберды и рекламы. Две минуты на чтение — и вы в курсе главных событий.

window-new
Soft
Hard
Тренды 🔥
Новая реальность: успех S.T.A.L.K.E.R. 2: Heart of Chornobyl позволит GSC добавить в игру вырезанный контент 31 мин.
«Недостаточно слов, чтобы выразить благодарность за такой подарок»: неофициальная русская озвучка трейлера The Witcher 4 привела фанатов в восторг 2 ч.
ИИ научили генерировать тысячи модификаций вирусов, которые легко обходят антивирусы 3 ч.
В Epic Games Store стартовала новая раздача Control — для тех, кто дважды не успел забрать в 2021 году 3 ч.
За 2024 год в Steam вышло на 30 % больше игр, чем за прошлый — это новый рекорд 4 ч.
«Яндекс» закрыл почти все международные стартапы в сфере ИИ 4 ч.
Создатели Escape from Tarkov приступили к тестированию временного решения проблем с подключением у игроков из России — некоторым уже помогло 5 ч.
Веб-поиск ChatGPT оказался беззащитен перед манипуляциями и обманом 6 ч.
Инвесторы готовы потратить $60 млрд на развитие ИИ в Юго-Восточной Азии, но местным стартапам достанутся крохи от общего пирога 7 ч.
Selectel объявил о спецпредложении на бесплатный перенос IT-инфраструктуры в облачные сервисы 8 ч.