- •Раздел 1. Введение 6
- •Раздел 2. Технические требования 30
- •Раздел 5. Заключение 184
- •Раздел 1
- •1.7. Видео по Bluetooth
- •1.14. Infrared
- •1.15. Infrared и Bluetooth
- •1.16. Отличия в скорости
- •1.17. Проводная и беспроводная сеть
- •1.20. Сети HomeRf
- •1.22. Внедрение технологии
- •1.23. Проблемы Bluetooth
- •1.24. Программа квалификации Bluetooth
- •1.25. Рынок для Bluetooth
- •Раздел 2
- •2.2. Ядро
- •2.2.1. Радио
- •2.2.2. Baseband
- •2.2.3. Протокол управления связью
- •2.2.4. L2cap
- •2.2.5. Протокол обнаружения услуг
- •2.2.6. Rfcomm
- •2.2.7. Взаимодействие с IrDa
- •2.2.8. Протокол управления телефонией
- •2.2.9. Требования к взаимодействию для использования Bluetooth в качестве wap Bearer
- •2.2.11. Транспортный уровень hci usb
- •2.2.12. Транспортный уровень hci rs232
- •2.2.13. Транспортный уровень hci uart
- •2.2.14. Тестирование
- •2.2.15. Требования на соответствие стандартам
- •2.3.2. Tcp/udp/ip
- •2.3.3. Овех
- •2.3.4. Wap
- •VCalendar
- •2.4. Профили
- •2.4.1. Профиль общего доступа
- •2.4.2. Профиль последовательного порта
- •2.4.3. Профиль приложения обнаружения услуг
- •2.4.5. Профиль внутренней связи
- •2.4.6. Профиль беспроводной телефонии
- •2.4.8. Профиль коммутируемого выхода в сеть
- •2.4.9. Профиль факса
- •2.4.10. Профиль доступа к локальной сети
- •2.4.11- Профиль передачи файлов
- •2.4.12. Профиль помещения объекта в стек
- •2.4.13. Профиль синхронизации
- •Раздел 3
- •3.1. Обзор технологии и архитектуры построения Bluetooth систем
- •3.2. Архитектура аппаратного модуля
- •3.4.1. Модуль Bluetooth rok 101 007
- •3.4.2. Радио модуль рва 313 02
- •Раздел 3
- •3.5. Bluetooth модули компании Mitsumi
- •3.7. Антенны для устройств Bluetooth
- •3.10. Электромагнитная совместимость сетей Bluetooth и других технологий
- •Раздел 4
- •4.1. Мобильный офис
- •4.2. Организация презентаций
- •4.8. Bluetooth в медицине
- •4.9. Bluetooth в доме
- •4.12. Ограничение использования мобильных телефонов
- •4.13. Мобильная электронная коммерция
- •Раздел 5
- •XDsl, isdn точки доступа. Беспроводные модемы. Беспроводная телефония.
- •Inventel
- •Isdn ism
- •Iso itu jtag l2cap
2.2.3. Протокол управления связью
Протокол управления связью (Link Manager Protocol — LMP) описывает процедуры, использующиеся для установления, защиты и управления линией связи между устройствами Bluetooth. Пакеты LMP не содержат данных пользователя. Раздел LMP включает семь подразделов:
Общий обзор
Формат LMP сообщений
Процедуры и протокольные единицы обмена
Установка соединения
Описание PDU
Режимы тестирования
Обработка ошибок
Общий обзор
LMP сообщения используются для установления, защиты и управления линией связи. Они передаются в полезной информации вместо L2CAP и различаются с помощью зарезервированного значения в поле L_CH заголовка полезной информации. LMP сообщения отфильтровываются и не распространяются на высшие уровни.
LMP сообщения имеют приоритет над данными пользователя. Это значит, что если LM посылает сообщение, Ь2САР-трафик не будет задерживать это сообщение, хотя оно может задерживаться многочисленными повторными передачами baseband-пакетов.
LC не отвечает ни за время, необходимое для доставки сообщения на удаленное устройство, ни за задержки между доставкой сообщения на удаленное устройство и получением отправителем соответствующего уведомления.
Основным содержанием этого раздела является описание установления сеанса связи между парой LM, а не непосредственно LM (рис. 2.22).
Физический уровень i
Рис. 2.22. Роль LMP в процессе установки соединения
Формат LMP сообщений
Протокольные единицы обмена (Protocol Data Units — PDU) LM всегда посылаются как однослотовые пакеты, а заголовок полезной информации занимает 1 байт. Два наименее значимых бита в заголовке полезной информации определяют логический канал. Для протокольных единиц обмена LM этим битам присвоено определенное значение.
Поле Поток в заголовке полезной информации (см. раздел Baseband, Пакеты) всегда состоит из одного бита и игнорируется на принимающей стороне. Каждой
PDU назначен 7-битный код операции, который используется для того, чтобы однозначно определить различные типы PDU. Код операции и однобитный идентификатор транзакции расположены в первом байте тела полезной информации (рис. 2.23). Идентификатор транзакции расположен в наименее значимом бите (LSB). Он равен 0, если PDU принадлежит транзакции, инициированной подчиненным устройством. Если PDU содержит один или более параметров, они расположены в полезной информации, начиная со второго байта тела полезной информации. Количество используемых байтов зависит от длины параметров. Если SCO линия связи представлена с использованием пакетов HV1 и длина содержимого менее 9 байт, PDU могут передаваться в пакетах DV. В противном случае должны использоваться пакеты DM1. Все параметры имеют формат с прямым порядком байт, т.е. первым передается наименее значимый байт.
Источник/пункт назначения PDU определены адресом AM_ADDR в заголовке пакета.
Рис. 2.23. Тело полезной нагрузки при передаче LM PDU
Каждая PDU может быть либо обязательной, либо дополнительной. Администратор связи должен распознавать все дополнительные PDU, которые он принимает, и если требуется, посылать соответствующий ответ. Если принятая дополнительная PDU не требует ответа, ответ не посылается.
Процедуры и протокольные единицы обмена
Этот раздел является ключевым для специалистов, реализующих нижние уровни протокола Bluetooth. В нем подробно объясняется механизм работы устройства в пикосети. В таблице 2.17 описаны все процедуры.
Таблица 2.17
Процедура |
Функция |
Общие ответные сообщения |
Используются для того, чтобы сообщить инициатору запроса или команды, была ли команда принята — и возможно, выполнена |
Аутентификация |
Процедура аутентификации, основанная на схеме вызов-ответ, необходима для подтверждения присутствия потенциальных членов пикосети |
Сопряжение |
Используется, когда два устройства не имеют общего ключа связи или ключа инициализации. Эта процедура создает ключ, основанный на персональном опознавательном номере (Personal Identification Number — PIN) и случайном числе (RAND) |
Изменение ключа связи |
Если два устройства соединены, и ключ связи получен из комбинации ключей, линия связи может быть изменена в целях повышения ее защищенности |
Изменение текущего ключа связи |
Текущий ключ связи может быть полупостоянным ключом связи или временным ключом связи. Замена на временный ключ связи необходима, если пикосеть должна поддерживать зашифрованную радиопередачу, которая в этом случае позволила бы иметь общий ключ связи для всех членов пикосети |
Кодирование |
Начинает процесс кодирования. Кодирование может использоваться, если была выполнена хотя бы одна аутентификация |
Запрос смещения часов |
Если подчиненное устройство получает FHS пакет, то всегда вычисляется разница между его собственными часами и часами мастера. Этот запрос заставляет подчиненное устройство включить эту разницу в полезную информацию FHS пакета, таким образом, мастер знает на каком частотном канале подчиненное устройство «просыпается» в режиме Ожидание вызова после того, как оно покинуло пикосеть |
Информация о смещении слота |
Ответ на Запрос смещения часов |
Запрос информации 0 точности синхронизации |
Возвращенные параметры точности синхронизации — это долговременный дрейф, измеренный в ррш и длительные колебания, измеренные в миллисекундах. Они используются в режимах Пауза (Hold), Внимание (Sniff) и Парковка (Park). Эти параметры фиксированы для определенного устройства и не должны изменяться при очередных запросах |
Версия LMP |
Запрос версии протокола LMP |
Поддерживаемые особенности |
В результате этого запроса возвращаются типы пакетов контроллера связи и свойства, поддерживаемые модулем Bluetooth |
Переключение роли мастер/ подчиненное устройство |
Т.к. вызывающие устройства всегда становятся мастерами пикосети, иногда необходимо переключение ролей мастер/подчиненное устройство |
Запрос имени |
Запрос удобного для пользователя имени, связанного с устройством Bluetooth. Это имя должно состоять максимум из 248 байт, закодированных в соответствии со стандартом UTF-8 |
Отсоединение |
Обрывает соединение между двумя устройствами Bluetooth. Это может быть сделано в любое время либо мастером, либо подчиненным устройством. Параметр «причина» включается в сообщение для информирования другой стороны о причине прекращения связи |
Пауза (Hold) |
Линия связи между двумя устройствами Bluetooth может быть помещена в режим Hold на определенное время. В течение этого времени, от мастера не будет передано ни одного ACL пакета |
Внимание (Sniff) |
Переводит устройство в режим с малым рабочим циклом, т.е. предполагается, что подчиненное устройство не всегда отвечает на запросы. Когда линия связи находится в режиме Sniff, мастер может начать передачу только в определенный слот |
Парковка (Park) |
Если у подчиненного устройства нет надобности участвовать в пикосети, но оно все еще должно быть FH-синхронизировано, оно может быть переведено в режим Park. В этом режиме устройство «оставляет» свое место в пикосети, но все еще ресинхронизируется на канал, «пробуждаясь» в моменты появления радиомаяка, отделенные специальным интервалом |
Регулирование мощности |
Если значение уровня мощности принятого сигнала слишком сильно отличается от необходимого для устройства Bluetooth значения, оно может запрашивать увеличение или уменьшение уровня мощности передачи другого устройства. После получения этого сообщения выходная мощность увеличивается или уменьшается |
Выбор между пакетами DM и DH в зависимости от качества канала |
Устройство конфигурировано для постоянного использования DM пакетов (защищенных FEC с коэффициентом 2/3), постоянного использования DH пакетов (не защищенных), или для автоматической регулировки типа своих пакетов согласно качеству канала. Эта команда устанавливает DH |
Качество обслуживания (Quality of Service - QoS) |
Этой командой устанавливается интервал опроса, который определен как максимальное время между последующими передачами от мастера к конкретному подчиненному устройству. Опрос с заданным интервалом происходит всегда, кроме тех случаев, когда случаются коллизии при вызове, ожидании вызова, запросе и ожидании запроса |
SCO линии связи |
Устанавливает SCO линии связи, которые резервируют регулярные временные интервалы для обмена данными между модулями. Отрезок времени между этими интервалами называется SCO интервалом |
Контроль многослотовых пакетов |
Количество слотов, которые использует подчиненное устройство в своем возвратном пакете, может быть ограничено. В этой процедуре мастер позволяет подчиненному устройству использовать максимальное количество слотов |
Схема вызова |
Устанавливает одну из опциональных схем вызова, которая будет использована в следующий раз при вызове модуля. Вызываемое устройство может принять или отклонить эту схему |
Управление линией связи |
Эта процедура используется для установки значения времени ожидания (timeout), которое необходимо для контроля существования линии связи |
Установка соединения
Когда вызывающее устройство создает соединение, включая уровни выше LM, оно посылает LM запрос на соединение с хостом. Когда другая сторона принимает это сообщение, хост информируется о входящем соединении. Удаленное устройство может принимать или отклонять запрос на соединение. Если LMP-запрос на соединение с хостом принят, запускаются LMP-процедуры защиты (сопряжение, аутентификация и кодирование). Если устройство не собирается инициировать другие процедуры защиты в процессе соединения, высылается сообщение о том, что установка закончена. Схема установления соединения представлена на рис. 2.24. После того как устройства обменяются этими сообщениями по логическому каналу, отличному от LMP, может быть передан первый пакет.
Описание PDU
В этом разделе технических требований представлена подробная таблица протокольных единиц обмена протокола управления связью. Для каждой PDU определены следующие характеристики:
Длина (в байтах)
Код операции
Тип пакета
Возможное направление передачи
Содержание
Местоположение в полезной информации
Рис.2. 24. Схема установления соединения
Режимы тестирования
Протокол LMP имеет несколько протокольных единиц обмена для поддержания различных режимов тестирования Bluetooth, которые используются для сертификации и испытания на соответствие Bluetooth-стандартам Радио и Baseband.
Для активизации режима тестирования (РТ) на тестируемое устройство (Device Under Test — DUT) посылаются РТ-сообщения. Тестируемое устройство всегда является подчиненным. Администратор связи устройства должен быть способен получать эти сообщения в любое время. Если активизация режима тестирования
возможна, DUT возвращает сообщение об этом и вводит режим тестирования (рис. 2.25). Когда DUT-устройство ввело режим тестирования, ему посылается LMP команда для того, чтобы начать тестирование.
Обработка ошибок
Если LM принимает PDU с нераспознаваемым кодом операции, то он отклоняет ее. Нераспознанный код операции отправляется назад в ответной PDU. Если LM принимает PDU с недопустимыми параметрами, оно отклоняет его с кодом причины «недопустимые параметры LMP».
Если превышено максимальное время ожидания или обнаружена потеря связи, то сторона, которая ожидает ответа, заключает, что процедура закончилась неудачно.
Так как LMP PDU не интерпретируются в реальном времени, то в случае, если оба LM приступают к выполнению одной и той же процедуры, могут случаться коллизии, и обе процедуры не будут выполнены. В такой ситуации мастер отклоняет процедуру, начатую подчиненным устройством, с кодом причины «Ошибка LMP. Коллизия при передаче». После этого выполняется процедура, начатая мастером.