Изменения

Перейти к: навигация, поиск

Wireless networks - PAN

3539 байт добавлено, 21:58, 12 декабря 2016
Нет описания правки
'''Стек протоколов Bluetooth'''
[[Файл: bluetooth_protocolbtsprotocol.jpg|right]]*''Physical(PHY) Layer'' - контролирует передачу/получение радиосигналов на частоте 2.4 ГГц по каналам связи Bluetooth. BR/EDR предоставляет больше каналов с более узкой полосой пропускания, в то время как LE использует меньше каналов, но более широкую полосу пропускания.*''Link Layer'' - определяет структуру пакетов, процедуры обнаружение и соединения, а также передаёт и получает данные.*''Direct Test Mode'' - позволят при тестировании передавать инструкции для PHY Layer, тем самым явно задавать последовательность пакетов, которую необходимо передать или получить.*''Host to Controller Interface(HCI)'' - разделяет между собой Host и Controller, что позволяет заменять одну из частей, не оказывая воздействия на вторую.*''Logical Link Control and Adaptation Protocol(L2CAP) Layer'' - протокол, который передаёт пакеты в HCI или напрямую в Link Manager при отсутствии HCI. Поддерживает высокоуровневое мультиплексирование протоколов, сегментацию и повторную сборку пакетов и передачу информации о качестве сервиса на более высокие уровни.*''Attribute Protocol(ATT)'' - определяет коммуникационные сообщения между двумя устройствами, выступающими в контексте данного протокола в качестве клиента и сервера. Сервер поддерживает набор атрибутов, представляющих собой структуру данных, позволяющую получать доступ к информации, управляемой протоколом GATT. Роли клиента и сервера определяются протоколом GATT и не зависят от роли устройства в соединении (ведущий/ведомый).*''Security Manager'' - определяет протокол, который отвечает за целостность соединения, аутентификацию и шифрование между Bluetooth-устройствам, и предоставляет панель управления функциями безопасности, которую другие компоненты используют для обеспечения необходимого уровня безопасности.*''Generic Attribute Profile(GATT)'Module' - определяет среду исполнения, используемую ATT для обнаружения сервисов и обмена характеристиками между устройствами. Характеристика в данном случае представляет собой набор данных, включающих в себя значения и свойства. Данные, относящиеся к сервисам и характеристикам, сохраняются в атрибутах.*''Generic Access Profile(GAP)'' - работает в связке с GATT, определяет роли устройств, режимы и процедуры обнаружения устройств и сервисов, управление установлением соединения и безопасностью.
'''''Baseband''''' - существует два основным типа соединения, которые могут быть установлены между ведущим и ведомым:
*''Synchronous Connection Oriented''(SCO) - предоставляет симметричное соединение между ведущим и ведомым для регулярного периодического обмена данными в виде зарезервированных слотов. Подобное соединение предназначено для ограниченных по времени типов данных (например, аудио). Ведущее устройство может поддерживать до трёх SCO-соединений с одним или разными ведомыми устройствами.
* ''Asynchronous Connection-Less''(ACL) - предоставляет соединение один-ко-многим между ведущим устройством и всеми ведомыми устройствами в сети. Может использовать все слоты канала, не занятые SCO-соединениями. Предоставляется соединение с коммутацией пакетов, обмен данными с помощью которого происходит эпизодически. Весь трафик полностью контролируется ведущим устройством.
Каждое Bluetooth-устройство имеет 48-битный IEEE MAC-адрес, который используется для создания ''кода доступа''. Код доступа имеет псевдо-случайные свойства и включает в себя идентификатор ведущего устройства в сети. Все пакеты, передаваемые по каналу, распознаются с помощью этого идентификатора. Это предотвращает возможность попадания пакетов из одной сети в другую. Все пакеты имеют одинаковый формат, начинаются с кода доступа, после него идёт заголовок, а далее - существенные данные.
[[Файл: bt_packet.jpg|center]]
Код доступа используется, чтобы доставить пакет до определённого устройства, заголовок содержит всю контрольную информацию, связанную с пакетом и соединением. Пакет может быть размером в 1, 3 или 5 слотов.
 
'''''Link Controller''''' - отвечает за обнаружение устройства, установление соединение и его поддержку. В Bluetooth существуют три элемента для поддержки установления соединения: ''scan'', ''page'' и ''inquiry''.
 
[[Файл: bt_inquiry.jpg|right]]
''Inquiry'' - процесс, когда устройства пытается обнаружить все другие устройства с включенным Bluetooth на некоторой площади. Устройство, которое хочет установить соединение, передаёт запрос, который побуждает получателей вернуть их адреса. Устройство, которое получает запрос, возвращает FHS-пакет, который включает, помимо всего, идентификатор этого устройства. Для возвращения FHS-пакетов используется случайный механизм отката для предотвращение коллизий.
 
Устройство в режиме ожидание должно "спать" большую часть времени для сохранения энергии, но время от времени оно также должно "слушать", не хотят ли другие устройства подключиться (''Page scan''). Необходим компромисс между энергопотреблением в режиме ожидания и временем отклика. Устройство, которое хочет подключиться, сталкивается с неопределенностью частоты и времени: оно не знает, когда устройство в режиме ожидания "проснётся" и на какой частоте. По этой причине устройство передаёт код доступа неоднократно на разных частотах: каждые 1.25 мс устройство передаёт два кода доступа и дважды "слушает" ответ. Таким образом, за 10 мс передаётся 16 запросов. Если устройство в режиме ожидания "проснулось" на одной из этих 16 частот, оно получит код доступа и начнёт процедуру установления соединения.
 
'''''Link Manager''''' - ''Host'' управляет Bluetooth с помощью команд HCI, и ''Link Manager'' существует для трансляции этих команд в операции на ''Baseband''-уровне. Его главные функции - управление сетью(установление и разрывание соединения, смена ролей), конфигурация соединения, безопасность и QoS(''Quality of Service'')-функции.
 
''Link Manager'' обменивается информацией со своими "коллегами" на других устройствах, используя ''Link Manager Protocol''(LMP). Каждое LMP-сообщение начинается с флага, который равен 0, если ведущее устройство является инициатором транзакции, и 1 - если ведомое. После флага следуют 7 бит кода операции, а после - параметры сообщения.
[[Файл: bt_lmp.jpg|center]]
LMP также предоставляет механизм для "переговоров" по поводу режимов шифрования и координирования ключей шифрования, которые используют устройства на обоих концах соединения. Кроме этого LMP поддерживает сообщения для конфигурации качества обслуживания соединения. Типы пакетов могут быть автоматически изменены в соответствии с качеством канала, и соответственно скорость передачи данных может возрастать при повышении качества канала.
 
'''''Bluetooth Host'''''
===Безопасность===
18
правок

Навигация