logo
Зачетик

2. Структура пакета. Работа Bluetooth (процедура установки соединения, режимы). Структура пакета Работа Bluetooth

Есть два основных состояния для устройств Bluetooth: Соединение (Connection) и Режим ожидания (Standby). Предусмотрено семь субсостояний, которые используются для добавления клиента или подключения к пикосети: page, page scan, inquiry, inquiry scan, master response, slave response и inquiry response.

Рис6. Состояния соединений

Состояние Standby по умолчанию является режимом с пониженным энергопотреблением, работает только внутренний задающий генератор. В состоянии Соединения основной узел (master) и подчиненный (slave) могут обмениваться пакетами, используя код доступа к каналу.

Соединение между устройствами присходит так — если об удаленном устройстве ничего не известно, то используются прцедуры inquiry и page. Если некоторая информация о устройстве все-таки есть, то достаточно процедуры page.

Этап 1

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

1.1 Посылаются пакеты inquiry и получаются отклики.

1.2 Если адресат, получивший пакет inquiry, находится в состоянии inquiry scan, тогда он способен принимать такие пакеты

1.3 Получатель переходит в состояние inquiry response и посылает отправителю пакетотклик.

После того как процедура inquiry завершена, соединение может быть установлено с помощью процедуры paging.

Этап 2

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

2.1 Посылается пакет paging

2.2 Адресат получет этот пакет (находится в состоянии page Scan)

2.3 Получатель посылает отправителю пакет-отклик (находится в состоянии Slave Response)

2.4 Инициатор посылает адресату пакет FHS (находится в состоянии Master Response).

2.5 Получатель посылает отправителю второй пакет-отклик (находится в состоянии Slave Response)

2.6 Получатель и отправитель устанавливают параметры канала заданные инициатором (находятся в состоянии Master Response & Slave Response)

После установления соединения основной узел (master) посылает пакет POLL, чтобы проверить, синхронизовал ли клиент свои часы и настроился ли на коммутацию частот. Клиент при этом может откликнуться любым пакетом. После успешного обнаружения устройств новое Bluetooth устройство получает набор адресов доступных Bluetooth устройств, после чего выясняет имена всех доступных Bluetooth устройств из списка. У каждого Bluetooth устройства есть свой глобально уникальный адрес, но на уровне пользователя обычно используется не этот адрес, а имя устройства, которое может быть любым, и ему не обязательно быть глобально уникальным. Имя Bluetooth устройства может быть длиной до 248 байт, и использовать кодовую страницу в соответствии с Unicode UTF-8 (при использовании UCS-2, имя может быть укорочено до 82 символов). Также у Bluetooth есть возможность автоматического подключения Bluetooth устройств к службам, предоставляемым другими Bluetooth устройствами. Поэтому, после того как имеется список имён и адресов, выполняется

поиск доступных услуг, предоставляемых различными устройствами. Для поиска возможных услуг используется специальный протокол обнаружения услуг (Service Discovery Protocol — SDP).

Устройство Bluetooth при установлении соединения может работать в четырех режимах: Active (активный),Hold (удержание), Sniff (прослушивание) и Park (пассивный).

Название режима

Описание

Active

В активном режиме устройство Bluetooth участвует в работе канала. Основной узел (master) диспетчеризует обмены на основе запросов трафика, поступающих от участников. Кроме того, этот режим предусматривает регулярные обмены с целью синхронизации клиентов. Активные клиенты прослушивают домены master-to-slave пакетов. Если к активному клиенту нет обращений, он может пребывать в пассивном состоянии (sleep) до очередной передачи со стороны главного узла

Sniff

Устройства синхронизованные в рамках пикосети могут перейти в режим экономного расходования энергии, когда их активность понижается. В режиме SNIFF, подчиненное устройство прослушивает пикосеть с пониженной частотой. Этот режим имеет наивысшую скважность рабочего цикла (наименьшая экономия энергии) из 3 экономичных режимов (sniff, hold и park )

Hold

Устройства синхронизованные в рамках пикосети могут перейти в режим экономного расходования энергии, когда их активность понижается. Основной узел пикосети может перевести клиента в режим HOLD, когда работает только внутренний таймер. Подчиненное устройство может запросить перевода в режим HOLD. Передача данных возобновляется мгновенно, когда устройство выходит из режима HOLD. Клиент имеет промежуточную скважность (промежуточный уровень экономии энергии) из указанных 3 режимов (sniff, hold и park)

Park

В режиме PARK, устройство еще синхронизовано в рамках пикосети, но не принимает участия в обменах. Пассивные устройства отказываются от своих МАС-адресов, прослушивают трафик главного модуля с целью ресинхронизации и отслеживают широковещательные сообщения. Данный режим имеет минимально возможную скважность (максимальная экономия энергии) из указанных 3 режимов (sniff, hold и park). Устройства, находящиеся в режиме park, должны посылать пакеты широковещательно, так как лишены собственного активного адреса.

Таблица1. Режима работы Bluetooth.