
- •Раздел 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.2. Baseband
Это один из самых больших и наиболее сложных разделов технических требований. В разделе Baseband рассматриваются вопросы организации и работы пикосе-ти.
Раздел Baseband состоит из 14 подразделов:
Общее описание Baseband
Физический канал
Физические линии связи
Пакеты
Коррекция ошибок
Логические каналы
Обеливание данных
Процедуры передачи/приема
Синхронизация передачи/приема
Управление каналом
Выбор перестройки частоты
Аудио интерфейс
Адресация устройств
Защита
Общее описание
В общем описании Baseband рассмотрены вопросы организации пикосетей и технологии Bluetooth в целом. Оно представляет Bluetooth как радио линию (radio link) ближнего действия, предназначенную для замены кабельных соединений между портативными и/или стационарными электронными устройствами.
В стандарте Bluetooth предусмотрена дуплексная передача с временным разде-
ением (Time Division Duplex - TDD). Мастер передает пакеты в нечетные слоты,
' подчиненное устройство - в четные (рис. 2.7). Пакеты, в зависимости от длины,
огут занимать до пяти слотов. При этом частота канала не меняется до окончания
передачи пакета (рис. 2.8).
Пикосеть Bluetooth является сетью, которая образована мастером («главным» устройством) и одним или более подчиненными устройствами. Устройство, инициировавшее связь автоматически становится мастером пикосети. Каждая пикосеть определена последовательностью скачкообразной перестройки частоты, которая становится физическим каналом, основанным на адресе и часах станции мастера Все активные модули, входящие в эту пикосеть, синхронизированы к этому каналу В пикосети могут быть активными максимум семь подчиненных устройств.
В каждой пикосети действует только один мастер, однако подчиненные устройства могут входить в различные пикосети. Кроме того, мастер одной пикосети может одновременно являться подчиненным устройством в другой (рис. 2.6, с). Пикосети не синхронизированы друг с другом по времени и частоте - каждая из них использует свою последовательность перестройки частоты. В одной пикосети все устройства синхронизированы по времени и частотам. Последовательность перестройки частоты является уникальной для каждой пикосети. Длина цикла псевдослучайной последовательности перестройки частоты равна 227 элементов.
ис- 2.6. Возможные топологии пикосети Bluetooth
Технология Bluetooth предназначена для создания соединений point-to-point (когда в пикосеть включены только два элемента). Соединение point-to-multipoint - это разновидность модели с одним подчиненным устройством. Для подчиненного устройства не имеет значения, со сколькими еще устройствами связывается мастер. Разнесенная сеть (scatternet) формируется путем объединения одной или более пикосетей. Различные топологии пикосети Bluetooth изображены на рис. 2.6.
Физический канал
Физический канал представляет собой псевдослучайную последовательность перестройки частоты по 79 или 23 радиочастотным каналам шириной 1 МГц. Каждый канал делится на слоты продолжительностью 625 мксек, причем каждому слоту соответствует определенный канал. Слоты пронумерованы в соответствии с часами мастера пикосети, номера расположены в диапазоне от 0 до 227 -1. Передатчик в каждый момент времени использует только один канал. Перестройка частоты происходит синхронно на передатчике и на приемнике по закону заранее зафиксированной псевдослучайной последовательности. В секунду может происходить до 1600 перестроек частоты. Этот метод обеспечивает конфиденциальность и помехозащищенность передач. Если на каком-либо канале передаваемый пакет не был принят, то приемник посылает запрос на повторную передачу и пакет повторно передается на другом канале на другой частоте.
Рис. 2.8. Передача многослотовых пакетов
Следует учесть, что физическим каналом (physical channel) является набор радиочастот, распределенный по закону псевдослучайной последовательности, а физической линией связи (physical link) является то, ЧТО ПЕРЕДАЕТСЯ по этому каналу на основе потоков данных.
Протокол Bluetooth может поддерживать асинхронный канал передачи данных, о трех синхронных (с постоянной скоростью) голосовых каналов или канал с одновременной асинхронной передачей данных и синхронной передачей голоса. Скорость каждого голосового канала — 64 кбит/сек в каждом направлении, асинхронного в асимметричном режиме — до 723,2 кбит/сек в прямом, и 57,6 кбит/сек в обратном направлениях или до 433,9 кбит/сек в каждом направлении в симметричном режиме.
Физические линии связи
В этом разделе описаны два типа связи, которые могут быть установлены между мастером и подчиненными устройствами. Это два вида физических линий связи, каждая со своими Baseband-пакетами:
Синхронная ориентированная на соединение (SCO) линия связи — это симме тричная линия связи point-to-point между мастером и определенным подчиненным устройством. SCO линия связи резервирует слоты, и таким образом, может рассма триваться как соединение с коммутацией каналов. SCO линии связи обычно под держивают передачу срочной информации, такой как голос. Мастер может поддер живать до трех SCO линий связи к одному или разным подчиненным устройствам. Подчиненное устройство может поддерживать до трех SCO линий связи от одного мастера или две линии связи, если они исходят от различных мастеров. SCO паке ты никогда не передаются повторно.
Асинхронная линия связи без установления соединения (ACL) используется только для данных, и работает по принципу когда-позволяет-время. ACL линии связи обеспечивают соединение с коммутацией пакетов между мастером и всеми активными подчиненными устройствами пикосети. Поддерживаются как асин хронная, так и изохронная передача. Между мастером и подчиненным устройством может существовать только одна ACL линия связи. Для большинства ACL пакетов, повторная передача используется для обеспечения целостности данных.
Пакеты
Технические требования Bluetooth определяют использование двух видов пакетов: синхронных ориентированных на соединение и асинхронных без установления соединения. SCO-пакеты используются в синхронных каналах связи для передачи голоса и направляются на синхронный I/O (input/output) голосовой порт. Они не содержат механизма обнаружения ошибок и никогда не передаются повторно, потому что это создает временные задержки, которые ухудшают качество голоса.
ACL-пакеты используются в асинхронных каналах связи. Передаваемая информация может быть пользовательскими данными или управляющей информацией.
к. данные, передаваемые по асинхронному каналу не чувствительны к задержкам, пакеты могут содержать механизм контроля ошибок, а для пакетов, поврежденных
процессе передачи, могут использоваться повторные передачи.
Рис. 2.9. Общий формат пакетов
Код доступа
Каждый пакет начинается с кода доступа, который используется для оповещения и обмена служебной информацией. Поле кода доступа состоит из преамбулы, синх-рослова и концевика (рис. 2.10). Преамбула указывает на прибытие пакета в приемник. Синхрослово используется для временной синхронизации с приемником. Концевик следует после синхрослова и указывает на окончание кода доступа. Количество бит в коде доступа может варьировать, в зависимости от того, последовал ли заголовок пакета. Если заголовок пакета последовал, длина кода доступа составляет 72 бита; в противном случае, 68 бит.
Функции кода доступа могут отличаться в зависимости от режима работы устройства Bluetooth. Соответственно, существует три типа кода доступа:
• Канальный код доступа (Channel Access Code — САС) — распознает пикосеть. Этот код включен во все пакеты, которыми обмениваются по каналам пикосети. Все пакеты, посылаемые в одной пикосети, начинаются с одного канального кода доступа.
• Код доступа устройства (Device Access Code — DAC) — используется для спе- иальных процедур сигнализации, таких как вызов и ответ на вызов. Вызов вклю-
, ает в себя передачу ряда сообщений с установлением канала связи с модулем, активным в пределах зоны действия. Когда модуль отвечает на запрос, канал связи может быть установлен.
. Код доступа запроса (Inquiry Access Code — IAC). Существует два типа кода доступа запроса: общий и специализированный. Общий код доступа запроса одинаков для всех устройств. Он используется для обнаружения других модулей Bluetooth, находящихся в зоне действия. Специализированный IAC является одинаковым для отдельной группы модулей Bluetooth, которые имеют общие характеристики. Он используется для обнаружения только тех специализированных модулей Bluetooth, которые находятся в пределах зоны действия.
Заголовок
Если используется заголовок, то он содержит информацию управления каналом связи и состоит из шести полей, составляющих 18 бит (рис. 2.11).
Адрес активного члена (Active Member Address — АМА) (3 бита)
Тип (4 бита)
Поток (1 бит)
Автоматический запрос на повторение (Automatic Repeat Request — ARR) (1 бит)
Порядковый номер (Sequence Number — SEQN) (1 бит)
Проверка заголовка на наличие ошибок (Header Error Check — НЕС) (8 бит)
Рис. 2.11. Поле заголовка
Адрес активного члена
Это 3-битное поле используется для различия между активными устройствами, принимающими участие в пикосети. В пикосети одно или более подчиненных устройств связаны с одним мастером. Для того чтобы идентифицировать каждое подчиненное устройство в отдельности, каждому подчиненному устройству назначает-
Общий
формат пакетов (рис.2.9), использующийся
в беспроводной технологии Bluetooth
состоит из трех частей: код доступа,
заголовок и полезная информация.
Код доступа
Каждый пакет начинается с кода доступа, который используется для оповещения и обмена служебной информацией. Поле кода доступа состоит из преамбулы, синх-рослова и концевика (рис. 2.10). Преамбула указывает на прибытие пакета в приемник. Синхрослово используется для временной синхронизации с приемником. Концевик следует после синхрослова и указывает на окончание кода доступа. Количество бит в коде доступа может варьировать, в зависимости от того, последовал ли заголовок пакета. Если заголовок пакета последовал, длина кода доступа составляет 72 бита; в противном случае, 68 бит.
Функции кода доступа могут отличаться в зависимости от режима работы устройства Bluetooth. Соответственно, существует три типа кода доступа:
• Канальный код доступа (Channel Access Code — САС) — распознает пикосеть. Этот код включен во все пакеты, которыми обмениваются по каналам пикосети. Все пакеты, посылаемые в одной пикосети, начинаются с одного канального кода доступа.
• Код доступа устройства (Device Access Code — DAC) — используется для спе- иальных процедур сигнализации, таких как вызов и ответ на вызов. Вызов вклю-
еТ в себя передачу ряда сообщений с установлением канала связи с модулем, ак-(вным в пределах зоны действия. Когда модуль отвечает на запрос, канал связи жет быть установлен.
• Код доступа запроса (Inquiry Access Code — IAC). Существует два типа кода доступа запроса: общий и специализированный. Общий код доступа запроса оди наков для всех устройств. Он используется для обнаружения других модулей Bluetooth, находящихся в зоне действия. Специализированный IAC является оди наковым для отдельной группы модулей Bluetooth, которые имеют общие характе ристики. Он используется для обнаружения только тех специализированных моду-
icii Bluetooth, которые находятся в пределах зоны действия.
Заголовок
Если используется заголовок, то он содержит информацию управления каналом связи и состоит из шести полей, составляющих 18 бит (рис. 2.11).
Адрес активного члена (Active Member Address — АМА) (3 бита)
Тип (4 бита)
Поток (1 бит)
Автоматический запрос на повторение (Automatic Repeat Request — ARR) (1бит)
Порядковый номер (Sequence Number — SEQN) (1 бит)
Проверка заголовка на наличие ошибок (Header Error Check — НЕС) (8 бит)
Рис. 2.11. Поле заголовка
Адрес активного члена
Это 3-битное поле используется для различия между активными устройствами, Принимающими участие в пикосети. В пикосети одно или более подчиненных устройств связаны с одним мастером. Для того чтобы идентифицировать каждое подчиненное устройство в отдельности, каждому подчиненному устройству назначает-
ся временный 3-х битный адрес, который используется, когда устройство активно Пакеты, которыми обмениваются мастер и подчиненное устройство, имеют АМд этого подчиненного устройства. Другими словами, адрес подчиненного устройства используется как в пакетах, которые передаются от мастера к подчиненному устройству, так и наоборот. Нулевой адрес зарезервирован для радиовещательных пакетов от мастера к подчиненным устройствам. Прекращающие связь или находящиеся в режиме парковки (Park) подчиненные устройства оставляют свои адреса, а когда они снова войдут в пикосеть, им должен быть назначен новый адрес.
Тип
Это 4-битное поле используется для кода, который устанавливает тип пакета. Интерпретация этого кода зависит от типа канала, который ставится в соответствие пакету: либо SCO, либо ACL. Существует четыре различных типа SCO пакетов и семь типов ACL пакетов. Код типа также означает номер слотов, которые будет занимать текущий пакет. Это позволяет неадресованным приемникам воздерживаться от прослушивания канала в течение длительности оставшихся слотов.
Поток
Это 1-битное поле используется для управления потоком пакетов по ACL каналу. Когда буфер приемника для ACL каналов переполнен, возвращается указание «стоп» для временной остановки передачи данных. Сигнал «стоп» применяется только для ACL пакетов. Кроме того, могут быть приняты пакеты, включающие только информацию по управлению каналом связи, или SCO пакеты. Когда буфер приемника пуст, возвращается указание «старт». Когда не получено ни одного пакета или полученный заголовок содержит ошибки, следует указание «старт».
Автоматический запрос на повторение
Это 1-битное поле используется для информирования передающего устройства об успешной передаче полезной информации. Благоприятный исход приема проверяется с помощью циклического избыточного кода (Cyclic Redundancy Code — CRC). Возвратное сообщение может быть в форме положительного уведомления (ACKnowledgement — АСК) или отрицательного уведомления (Negative Acknowledgement — NAK). Если полезная информация была получена без искажений, возвращается АСК, в противном случае — NAK. Когда не принимается никакого возвратного сообщения, предполагается получение NAK. ACK/NAK располагается в заголовке возвратного пакета.
CRC — это вычислительная процедура для обеспечения точности получаемых данных. Математическая функция вычисляется до передачи пакета на исходящем устройстве. Ее численное значение вычисляется на основе содержания пакета. Это значение сравнивается с пересчитанным значением функции в устройстве назначения (адресате информации). Если эти два значения совпадают, возвращается АСК. в противном случае — NAK.
Порядковый номер
Ято 1-битное поле обеспечивает последовательную схему нумерации для того, чтобы правильным образом упорядочить поток пакетов данных, когда он достигает принимающего устройства. Для каждого нового переданного пакета, который содержит данные со значением CRC, бит порядкового номера преобразуется для того, чтобы отфильтровывать повторные передачи на принимающем устройстве. Если повторная передача происходит вследствие отсутствия АСК, адресат принимает лот пакет дважды. Сравнение порядковых номеров следующих пакетов означает, что безошибочно принятые повторные передачи могут быть отброшены.
Проверка заголовка на наличие ошибок
Это 8-битное поле используется для проверки целостности заголовка. После инициализации генератора НЕС, вычисляется значение НЕС для битов заголовка. Приемник инициализирует свои схемы НЕС так, что он может интерпретировать значение. Если значения НЕС не совпадают, весь пакет игнорируется.
Полезная информация
Заключительной частью общего формата пакета является полезная информация. В этой части есть два типа полей: поле голоса (синхронное) и поле данных (асинхронное). ACL пакеты имеют только поле данных, a SCO пакеты — только поле голоса. Исключением является пакет данных и голоса (Data Voice — DV), который имеет оба поля. Поле данных состоит из трех сегментов: заголовок полезной информации, тело полезной информации и возможно, CRC код (рис. 2.12).
Ис- 2.12. Поле полезной информации
аголовок полезной информации
°лько поля данных имеют заголовок полезной информации. Длина заголовка по-езной информации равна одному или двум байтам и определяет логический канал
(Logical
Channel
— LCH),
управление потоком в логических каналах,
а также имеет
указатель длины полезной информации.
Этот указатель обозначает количество
байт
(т.е. 8-битное слово) в теле полезной
информации, исключая заголовок полезной
информации и CRC
код.
Тело полезной информации
Тело полезной информации включает пользовательскую информацию. Длина этого сегмента указана в поле длины заголовка полезной информации.
Формирование CRC кода
После того как генератор CRC инициализирован, от передаваемой информации вычисляется 16-битный CRC код, который прикрепляется к информации.
Типы пакетов
В технических требованиях описаны также различные типы пакетов: общие, SCO-пакеты и ACL-пакеты. Каждому типу соответствуют определенные характеристики.
Общие пакеты:'
ID-пакет
Null-пакет
Poll-пакет
FHS-пакет
DM 1-пакет SCO-пакеты:
HV1 -пакет
НУ2-пакет
НУЗ-пакет
DV-пакет ACL-пакеты:
DM 1-пакет
DH1-пакет
ОМЗ-пакет
ОНЗ-пакет
ОМ5-пакет
DI-15-пакет
AUX1-пакет
В таблице 2.11 приведены используемые сокращения.
Коррекция ошибок
Как ACL-пакеты (данные), так и SCO-пакеты (голос и данные) могут быть снабжены различными уровнями прямой коррекции ошибок (Forward Error Correction — FEC) или проверки циклическим избыточным кодом (CRC), а также могут быть
Таблица 2.11 | ||
ID |
Identification |
Идентификация |
NULL |
Null |
Пусто |
POLL |
Polling |
(Упорядоченный)опрос |
FHS |
Frequency Hopping Synchronization |
Синхронизация перестройки частоты |
DM1 |
Data Medium rate, 1 slot |
Средняя скорость передачи данных, один слот |
Dili |
Data High rate, 1 slot |
Высокая скорость передачи данных, один слот |
DM3 |
Data Medium rate, 3 slots |
Средняя скорость передачи данных, три слота |
DH3 |
Data High rate, 3 slots |
Высокая скорость передачи данных, три слота |
DM5 |
Data Medium rate, 5 slots |
Средняя скорость передачи данных, пять слотов |
DH5 |
Data High rate, 5 slots |
Высокая скорость передачи данных, пять слотов |
AUX1 |
Auxilary packet, 1 slot |
Вспомогательный пакет, один слот |
HV1 |
High Quality Voice, 1 slot |
Голос высокого качества, один слот |
HV2 |
High Quality Voice, 2 slots |
Голос высокого качества, два слота |
HV3 |
High Quality Voice, 3 slots |
Голос высокого качества, три слота |
DV |
Data Voice |
Данные и голос |
зашифрованы. В этом разделе определено несколько схем коррекции ошибок и их применение для различных типов пакетов.
Существует три схемы коррекции ошибок, определенных для беспроводной связи Bluetooth:
Прямая коррекция ошибок с коэффициентом 1/3
Прямая коррекция ошибок с коэффициентом 2/3
Схема автоматического запроса повторной передачи
Назначение FEC в полезной информации — уменьшить количество повторных передач за счет способности восстанавливать данные. В тоже время технические требования указывают, что в ситуации, свободной от ошибок, FEC является лишним, поскольку при этом уменьшается пропускная способность. Заголовок пакета всегда защищен прямой коррекцией ошибок с коэффициентом 1/3, так как он содержит ценную информацию связи и должен быть способен «выдержать» несколько битовых ошибок.
Логические каналы
Логические каналы являются дополнением физических линий связи. В этом разделе определены пять логических каналов Bluetooth.
LC канал (Link Control — управление связью)
LM канал (Link Manager — администратор связи)
UA канал (User Asynchronous data — асинхронные пользовательские данные)
Ш канал (User Isochronous data — изохронные пользовательские данные)
US канал (User Synchronous data — синхронные пользовательские данные) В таблице 2.12 дано описание каждого логического канала.
Таблица 2.12. Логические каналы | |||
Название |
Функция |
Расположение |
Где встречается |
LC |
Управление связью |
Заголовок |
Все пакеты |
LM |
Управление связью |
Полезная информация |
SCO или ACL |
UA |
Асинхронные данные пользователя |
Полезная информация |
ACLiuhSCO-DV |
т |
Изохронные данные пользователя |
Полезная информация |
ACLhotSCO-DV |
LJS |
Синхронные данные пользователя |
Полезная информация |
SCO |
Обеливание данных
Процедура обеливания данных позволяет изменить распределение информации с целью придания ей свойств белого шума.
Такое преобразование позволяет существенно упростить процесс демодуляции информации, который будет сводиться к обработке сигнала в присутствии белого шума.
Процедуры передачи/приема
В этом разделе описан способ использования пакетов, определенных в разделе Пакеты. Рассмотрены потоки ACL, SCO и комбинированные ACL/SCO. Информация, приведенная здесь, дает возможность понять идею, представленную в разделе Пакеты.
Синхронизация передачи/приема
Синхронизация важна для устойчивой связи. Этот раздел описывает толерантность (допустимые отклонения) синхронизации и синхронизацию мастера с подчиненным устройством. Представление о синхронизации пикосети при обмене данными иллюстрирует рис. 2.13.
Мастер всегда передает в четных слотах. Подчиненное устройство, к которому только что обратились, должно отвечать в следующем (нечетном) слоте. Подчиненные устройства должны всегда «слушать» на четных слотах, потому что они никогда не знают, когда к ним могут обратиться.
Управление каналом
В этом разделе рассказывается о процедуре установления канала пикосети. Приведено описание работы каналов и процедур добавления и исключения устройств пикосети. Для поддержания этих функций определено девять режимов работы модулей Bluetooth. Кроме того, рассмотрена работа разнесенной сети (scatternet). Подробно рассмотрено устройство и работа часов Bluetooth, которые играют главную роль в FH-синхронизации.
Канал в пикосети определяется рабочими характеристиками мастера. Адрес мастера определяет последовательность перестройки частоты и коды доступа к каналу; системные часы мастера определяют фазу в последовательности перестройки частоты и устанавливают синхронизацию. Кроме того, мастер контролирует трафик в канале с помощью схемы опроса.
По определению, мастером является тот модуль Bluetooth, который инициирует соединение. Термины «мастер» и «подчиненное устройство» имеют отношение только к протоколу: на аппаратном уровне модули Bluetooth считаются функционально идентичными. Любое устройство Bluetooth может стать мастером пикосети; нет «всегда подчиненных» устройств. Кроме того, когда пикосеть уже установлена, роли мастер/подчиненное устройство могут поменяться местами.
Часы Bluetooth
Каждый модуль Bluetooth имеет внутренние системные часы, которые устанавливают синхронизацию и скачкообразную перестройку частоты приемопередатчика. Часы Bluetooth получены из собственного независимого генератора тактовых импульсов, который никогда не корректируется и никогда не выключается. Для синхронизации с другими модулями используются только смещения, добавление которых к собственным часам каждого модуля обеспечивает им временные часы Bluetooth, которые взаимно синхронизируются. Необходимо заметить, что часы Bluetooth не имеют отношения ко времени суток, поэтому, они могут быть выставлены на любое значение. Часы Bluetooth обеспечивают тактовые импульсы приемопередатчику Bluetooth. Их разрешающая способность равна половине длительности Rx или Тх слота, т.е. 312.5 мкеек. Часы имеют цикл около одного дня. Для часов Bluetooth необходим 28-битный счетчик, который проходит цикл за 228 -1. Схема часов Bluetooth изображена на Рис. 2.14.
Синхронизация и скачкообразная перестройка частоты в канале пикосети определяется Bluetooth-часами мастера. Когда пикосеть установлена, часы мастера связаны с подчиненными устройствами. Каждое подчиненное устройство добавляет
Рис. 2.14. Схема часов Bluetooth
В зависимости от режима в котором находится модуль Bluetooth, часы могут быть различными:
Собственные часы (Native Clock — CLKN)
Расчетные часы (Estimated Clock — CLKE)
Часы мастера (Master Clock — СLK)
CLKN — это собственные автономные часы, которые являются эталоном для всех остальных видов часов. В режимах высокой активности, собственные часы управляются опорным кварцевым генератором с наихудшей временной нестабильностью +20 ррт. В маломощных режимах, таких как Standby, Hold, Park и Sniff (таблицы 2.13 и 2.17) собственные часы могут управляться маломощным генератором (Low Power Oscillator — LPO) с нестабильностью ±250 ppm.
Рис. 2.15. Формирование CLKE
Расчетные часы (CLKE) и часы мастера (CLK) получаются от опорных CLKN путем добавления смещения. CLKE — это оценка собственных часов получателя, которую осуществляет вызывающий модуль, т.е. смещения добавляются к CLKN вызываемого модуля для приближенного соответствия CLKN получателя (рис. 2.15). Используя CLKN получателя, вызывающий модуль ускоряет установление соединения.
CLK — это часы мастера пикосети. Они используются для всех процессов синхронизации и распределения в пикосети. Все устройства Bluetooth используют CLK для распределения передачи и приема. CLK формируется из собственных часов (CLKN) и смещения. Для мастера пикосети смещение равно нулю (рис. 2.16), т к. CLK равен его собственным часам (CLKN). Каждое подчиненное устройство добавляет к своим CLKN смещение, такое чтобы CLK совпадало с CLKN мастера (рис.2.17). Хотя все CLKN устройств Bluetooth идут с одинаковой скоростью, из-за обоюдного дрейфа все же возможно возникновение ошибок. Поэтому смещения в подчиненных устройствах должны регулярно корректироваться таким образом, чтобы CLK совпадало с CLKN мастера.
Рис. 2.16. Формирование CLK мастера
Рис. 2.17. Формирование CLK подчиненного устройства
Обзор состояний
На рис. 2.18 изображена диаграмма состояний, использующихся в контроллере связи Bluetooth. Существует два основных состояния: ожидание (Standby) и соединение (Connection), а также семь промежуточных состояний: вызов (page), ожидание вызова (page scan), запрос (inquiry), ожидание запроса (inquiry scan), ответ мастера (master response), ответ подчиненного устройства (slave response) и ответ на запрос (inquiry response).
Промежуточные состояния используются для включения новых подчиненных Устройств в пикосеть. Для перехода из одного состояния в другое, используются
Таблица 2.13 | |
Режим |
Описание |
Ожидание (STANDBY) |
Модуль Bluetooth находится в режиме малой мощности и не активно связывается (не является частью пикосети). Устройство ожидает сигнал на подключение к пикосети |
Соединение (CONNECTION) |
После того как соединение установлено, пакеты могут посылаться в обоих направлениях |
Вызов (Page) |
Используется мастером для активации и соединения с подчиненным устройством, которое периодически «просыпается» в режиме ожидание вызова |
Ожидание вызова (Page scan) |
Потенциальное подчиненное устройство «слушает» свой код доступа устройства (DAC) в течение установленного отрезка времени. Модуль «слушает» на одной частоте достаточно долго для полного сканирования 16 page-частот |
Запрос (Inquiry) |
Подобно режиму вызов, этот режим используется мастером для обнаружения набора новых устройств. Мастер не признает сообщения ответ на запрос, но продолжает зондировать на различных каналах и в промежутках ожидать ответные пакеты |
Ожидание запроса (Inquiry scan) |
Подобен режиму ожидание вызова. Однако, в этом режиме потенциальное подчиненное устройство ожидает свой код доступа запроса (IAC) вместо своего адреса |
Ответ мастера (Master response) |
Мастер вводит этот режим, когда он получает ответ от подчиненного устройства, после того как оно было вызвано |
Ответ подчиненного устройства (Slave response) |
Подчиненное устройство вводит этот режим при признании своего кода доступа устройства (DAC) |
Ответ на запрос (Inquiry response) |
Устройство вводит этот режим при признании своего кода доступа запроса (IAC) |
Рис. 2.18. Диаграмма состояний контроллера связи Bluetooth
либо команды администратора связи (LM) Bluetooth, либо внутренние сигналы контроллера связи.
Выбор перестройки частоты
Определено десять типов последовательностей скачкообразной перестройки частоты: пять для системы с 79 перестройками (т.е. каналами) и пять для системы с 23 перестройками (показаны в скобках), соответственно.
Последовательность для вызова с 32 (16) уникальными частотами для «про буждения», распределенными по полосе 79 (23) МГц, с периодом, равным 32 (16).
Последовательность для ответа на вызов охватывает 32 (16) уникальных час тот для ответа, которые имеют взаимно-однозначное соответствие с текущей по следовательностью для вызова.
Последовательность для запроса с 32 (16) уникальными частотами для «про буждения», распределенными по полосе 79 (23) МГц, с периодом, равным 32 (56).
Последовательность для ответа на запрос охватывает 32 (16) уникальных ча стот для ответа, которые имеют взаимно-однозначное соответствие с текущей по следовательностью для запроса.
• Канальная последовательность, которая имеет очень большую длину пер№ да, распределяет частоты одинаково по полосе 79 (23) МГц в течение короткого » тервала времени.
Общая схема выбора частоты
Схема выбора частоты состоит из двух частей:
Выбор последовательности;
Установление частот в соответствии с последовательностью.
Общая схема выбора частоты представлена на рис. 2.19. Определенная часто' Устанавливается в соответствие с входными параметрами в блоке выбора частот Входные параметры — это собственные часы и текущий адрес мастера.
В состоянии соединение (Connection) собственные часы (CLKN) корректир ются с помощью смещения для соответствия часам мастера (CLK). Используют! только 27 наиболее значимых бита (Most Significant Bit - MSB) часов. В промеж точных состояниях вызов (Page) и запрос (Inquiry) используются все 28 битов ч с«в. Однако в промежуточном состоянии вызов собственные часы не корректир ются.
Адресный
вход состоит из 28 бит, т.е. все поле LAP
и 4 наименее значимых бита (Least
Significant
Bit
— LSB)
поля UAP
(см. раздел Адресация
устройств). В
состоянии
соединение
используется
адрес мастера. В промежуточном состоянии
вызов
используется
адрес вызываемого модуля. В промежуточном
состоянии запрос
используется
UAP/LAP,
соответствующий общему коду доступа
запроса (GIAC)
Выходным
параметром является псевдослучайная
последовательность из 79 или 23
перестроек частоты.
Рис. 2.19. Общая схема выбора частоты
В 79-канальной системе схема выбора частоты выбирает сегмент из 32 частот, охватывающий диапазон около 64 МГц (рис. 2.20) и проходит по этим частотам один раз в псевдослучайном порядке. Далее, выбирается другой 32-частотный сегмент и т.д. В промежуточных состояниях вызов, ожидание вызова или ответ на вызов все время используется 32-частотный сегмент (сегмент выбирается с помощью адреса; разные модули будут иметь различные сегменты). В состоянии соединение на выходе составляется псевдослучайная последовательность, которая перемещается по 79 или 23 частотам, в зависимости от системы. Для 23-канальной системы размер сегмента равен 16 (таблица 2.14). Принцип работы схемы выбора частоты изображен на рис. 2.20.
Аудио интерфейс
Обработка аудиоинформации в беспроводной технологии Bluetooth основана на традиционных методах, т.е. информация кодируется на передающей стороне и декодируется на приемной.
Аудиоинформация кодируется одним из двух способов: 8-битным логарифмическим или линейным кодами (таблица 2.15). Требуемая схема кодирования голоса выбирается после согласования администраторов связи двух задействованных модулей.
Рис. 2.20. Схема выбора частоты в состоянии соединение (Connection)
Таблица 2.15
Голосовые кодеки | |
Линейный |
CVSD |
8-битный логарифмический (рекомендация ITU-T G.711) |
А-функция |
ц-функция |
Адресация устройств BD ADDR
Каждый приемопередатчик Bluetooth снабжен уникальным 48-битным адресол устройства Bluetooth (Bluetooth Device Address — BD ADDR). Этот адрес назна чается управлением регистрации IEEE (http://standards.ieee.org/regauth/oui/ index.shtml) для производителей и называется организационно уникальным идеи тификатором (Organizationally Unique Identifier — ОШ).
Организационно уникальный идентификатор определен в IEEE Std 802-1990 \ используется для создания 48-битных универсальных MAC адресов локальных се тей. Это позволяет идентифицировать уникальным образом LAN и MAN станции.
Коммуникации Bluetooth используют этот 48-битный адрес для создания своей собственного формата. Идентификатор поделен на три поля следующим образол (рис. 2.21):
Поле LAP (Lower Address Part): нижняя адресная часть, состоящая из 24 би тов;
Поле UAP (Upper Address Part): верхняя адресная часть, состоящая их 8 битов;
Поле NAP (Non-significant Address Part): незначимая адресная часть, состоя Щая из 16 битов.
Поля LAP и UAP формируют значимую часть BDADDR. Полный объем адрес; равен 232.
Рис. 2.21. Формат адреса Bluetooth
Коды доступа
Для сигнализации в системе Bluetooth используются 72-битные и 68-битные коды доступа. Определено три различных кода доступа:
Код доступа устройства (DAC);
Канальный код доступа (САС);
Код доступа запроса (I АС).
Также определены адреса для устройств Bluetooth, находящихся в различных состояниях: адрес активного члена (Active Member Address — AM_ADDR), адрес устройства, находящегося в состоянии парковки (Parked Member Address — PMADDR), адрес требования доступа (Access Request Address — ARADDR).
AM ADDR
Каждому активному подчиненному устройству в пикосети назначается 3-х битный адрес активного члена (AMADDR). Адрес AMADDR, состоящий только из нулей, зарезервирован для широковещательных сообщений. Мастер не имеет AM_ADDR.
Адрес AMADDR назначается подчиненному устройству мастером, когда оно активизируется. Это происходит либо во время установления соединения, либо сразу после выхода подчиненного устройства из режима парковки.
РМ ADDR
Подчиненное устройство в режиме парковки может быть идентифицировано своим BDADDR, или выделенным адресом устройства, находящегося в состоянии парковки (РМ ADDR). Это 8-битный адрес, который назначается подчиненному устройству, как только оно вошло в режим парковки. Адрес PM_ADDR действителен только в период пребывания подчиненного устройства в режиме парковки. Когда подчиненное устройство активизируется, вместо РМ ADDR ему назначается адрес активного члена (AMADDR).
AR ADDR
Адрес требования доступа (AR_ADDR) используется подчиненным устройством, находящимся в режиме парковки, для определения «окна», в котором можно послать сообщения с требованием доступа.
Адрес AR ADDR назначается подчиненному устройству, когда оно входит в режим парковки и действителен только во время пребывания в этом режиме. Этот адрес необязательно должен быть уникальным; т.е. различные устройства, находящиеся в режиме парковки могут иметь одинаковый ARADDR.
Защита информации
Технология Bluetooth обеспечивает беспроводную передачу между равноправными узлами. Для обеспечения защиты и конфиденциальности информации, система обеспечивает меры защиты как на прикладном, так и на канальном уровне. В каждом модуле Bluetooth осуществляются процедуры аутентификации и кодирования. Для поддержки защиты информации на канальном уровне используются четыре различных объекта: уникальный общий адрес для каждого пользователя, два секретных ключа и случайное число, которое различно для каждой транзакции. Описание каждого объекта приведено в таблице 2.16.
Таблица 2.16. Объекты, используемые в процедурах аутентификации и кодирования
Объект |
Размер |
Уникальные адреса устройства Bluetooth (BD ADDR) |
48 бит |
Личный ключ пользователя, аутентификация |
128 бит |
Личный ключ пользователя, кодирование |
8-128 бит |
Случайное число (RAND) |
128 бит |
Секретные ключи получаются в процессе инициализации и за время существования пикосети никогда не меняются. Ключ кодирования получается из ключа аутентификации в процессе аутентификации. Алгоритм аутентификации всегда использует 128 бит.
Для алгоритма кодирования, размер ключа может колебаться от 8 до 128 бит. Размер ключа кодирования конфигурируем по двум причинам:
Для учета различий в требованиях, наложенных на криптографические алго ритмы в различных странах.
Для обеспечения будущего обновления, для исключения неоправданно доро гостоящего перепроектирования алгоритмов и аппаратных средств кодирования. Увеличение размера ключа является самым простым способом борьбы с потенци альными подслушивателями.