rd_45_176-2001 (524306), страница 5
Текст из файла (страница 5)
6.7.5.1 Между двумя устройствами Bluetooth может быть установлено только одно соединение звеньевого уровня ACL.
6.7.5.2 Передача данных осуществляется в пакетах LC, где поле полезной нагрузки имеет формат, показанный на рисунке 6.13 и таблице 6.17.
Рисунок 6.16 – Форматы поля полезной нагрузки пакета LC для режима соединения ACL:
а) для однослотового пакета;
б) для многослотового пакета
Таблица 6.17 – Поле полезной нагрузки пакета LC для режима соединения ACL
| Поле | Назначение поля заголовка пакета | Длина поля, бит |
| L_CH | Определяет тип пакета. Принимает следующие значения: "00" – зарезервировано; "01" – продолжение пакета L2CAP; "10" – начало передачи пакета L2CAP; "11" – пакет LMP | 2 |
| FLOW | Значение "0" указывает на переполнение буфера приема принимающего устройства Bluetooth. | 1 |
| Длина блока данных | Определяет длину блока данных | 5 или 9 |
| Выравнивание | Используется для выравнивания заголовка блока данных до 16 бит | 4 |
| Блок данных | Передаваемая информация | 0-4096 |
| КПК | Контроль циклическим избыточным кодом | 16 |
6.7.5.3 Передача информации должна осуществляться по логическим каналам. Логические каналы должны определяться идентификатором CID (Channel ID), принимающим значения от 0 до 65535. Значения идентификатора CID должны соответствовать подразделу 2.1 части "D" [15] и таблице 6.18.
6.7.5.4 Аппаратура Bluetooth должна реализовывать два типа логических каналов в зависимости от режима соединения (ориентированного и неориентированного на соединение) в соответствии с разделом 4 части "D" [15].
Таблица 6.18 – Назначение идентификаторов CID
| CID | Назначение | |
| 0х0000 | Обозначение недопустимого идентификатора CID. Значение не должно использоваться для идентификации логического канала | |
| 0х0001 | Канал сигнализации | |
| 0х0002 | Канал приема информации в неориентированном на соединение режиме | |
| 0х0003-0х003F | Зарезервировано | |
| 0x0040-0xFFFF | Каналы передачи информации в ориентированном на соединении режиме | |
6.7.5.5 Передача информации, относящейся к конкретному логическому каналу, должна осуществляться в блоках данных пакета LC в соответствии с рисунком 6.13.
6.7.5.6 Формат пакета для передачи информации по логическому каналу в ориентированном на соединение режиме должен соответствовать подразделу 4.1 части "D" [15], рисунку 6.14 и таблице 6.19.
Рисунок 6.17 – Формат пакета для передачи информации по логическому каналу в ориентированном на соединение режиме
Таблица 6.19 – Поля пакета для передачи информации по логическому каналу в ориентированном на соединение режиме
| Поле | Назначение поля заголовка пакета | Длина поля, октетов |
| Длина | Количество октетов данных поля "Информация" | 2 |
| CID | Идентификатор логического канала | 2 |
6.7.5.7 Формат пакета для передачи информации по логическому каналу в неориентированном на соединение режиме должен соответствовать подразделу 4.1 части "D" [15], рисунку 6.15 и таблице 6.20.
Рисунок 6.18 - Формат пакета для передачи информации по логическому каналу в неориентированном на соединение режиме
Таблица 6.20 – Поля пакета для передачи информации по логическому каналу в неориентированном на соединение режиме
| Поле | Назначение поля | Длина поля, октетов |
| Длина | Количество байтов поля "Информация" | 2 |
| CID | Идентификатор логического канала (должно быть указано значение 0x0002) | 2 |
| PSM | Поле расширения, определяющее используемый протокол | 2 |
6.7.5.8 Для управления логическими каналами используются сообщения сигнализации, которые должны передаваться в пакетах формата, соответствующего разделу 5 части "D" [15], рисунку 6.16 и таблице 6.21.
Рисунок 6.19 – Формат пакета сигнализации
Таблица 6.21 – Поля пакета сигнализации
| Поле | Назначение поля заголовка пакета | Длина поля, октетов |
| Длина | Общая длина значащих байт полей "Команда №…". Общая длина не должна превышать 48 байт | 2 |
| CID | Идентификатор логического канала сигнализации (должно быть указано значение 0x0001) | 2 |
| Сообщение №1,сообщение №2 | Сообщения сигнализации в соответствии с | Зависит от команды |
6.7.5.9 Кодирование сообщений сигнализации должно соответствовать разделу 5 части "D" [15], рисунку 6.17 и таблице 6.22.
Рисунок 6.20 – Формат сообщения сигнализации
Таблица 6.22 – Поля сообщения сигнализации
| Поле | Назначение поля заголовка пакета | Длина поля, октетов |
| Код | Код сообщения: 0x00 – Зарезервировано 0x01 – Отклонение команды 0x02 – Запрос соединения 0x03 – Ответ на запрос соединения 0x04 – Запрос согласования характеристик соединения 0x05 – Ответ на запрос согласования характеристик соединения 0x06 – Запрос разъединения 0x07 – Ответ на запрос соединения 0x08 – Запрос проверки соединения 0x09 – Ответ на запрос проверки соединения | 1 |
Окончание таблицы 6.22
| Поле | Назначение поля заголовка пакета | Длина поля, октетов |
| 0x0A – Запрос дополнительной информации 0x0B – Ответ на запрос дополнительной информации | ||
| Идентификатор | Идентифицирует последовательность сообщений сигнализации, относящихся к одной функции | 1 |
| Длина | Длина поля "Данные" | 2 |
| Данные | Данные сообщения сигнализации | 0-48 |
6.7.6 Протокол LMP предназначен для управления соединением звеньевого уровня, аутентификацию и обеспечение качества обслуживания.
6.7.6.1 Сообщения протокола LMP передаются в пакетах L2CAP в соответствии с пунктом 6.7.5.2.
6.7.6.2 Сообщения протокола LMP должны передаваться вне очереди из других сообщений. Поле FLOW должно иметь значение "1" и игнорироваться принимающей аппаратурой.
6.7.6.3 Сообщения протокола LMP должны передаваться в блоках данных в соответствии с п. 4 части "C" [15], рисунком 6.18 и таблицей 6.23.
Рисунок 6.21 – Формат сообщения протокола LMP
Таблица 6.23 – Сообщения протокола LMP
| Сообщение | Код операции | Назначение |
| LMP_accepted | 3 | Подтверждение распознанного сообщения LMP |
| LMP_not_accepted | 4 | Подтверждение приема не распознанного сообщения LMP |
Продолжение таблицы 6.23
| Сообщение | Код операции | Назначение | |||||||||
| LMP_clkoffset_req | 5 | Запрос смещения значений таймеров синхронизации устройств Bluetooth | |||||||||
| LMP_clkoffset_res | 6 | ||||||||||
| LMP_comb_key | 9 | Изменение общего ключа, используемого для процедуры аутентификации | |||||||||
| LMP_unit_key | 10 | ||||||||||
| LMP_detach | 7 | Разъединение соединения звеньевого уровня | |||||||||
| LMP_features_req | 39 | Запрос списка реализованных возможностей | |||||||||
| LMP_features_res | 40 | ||||||||||
| LMP_host_connection_req | 51 | Установление соединения звеньевого уровня | |||||||||
| LMP_setup_complete | 49 | ||||||||||
| LMP_max_slot | 45 | Указание размера мультислотового пакета | |||||||||
| LMP_max_slot_req | 46 | ||||||||||
| LMP_name_req | 1 | Запрос мнемонического имени устройства Bluetooth | |||||||||
| LMP_name_res | 2 | ||||||||||
| LMP_quality_of_service | 41 | Запрос информации о качестве обслуживания, определяющем интервал передачи пакетов с информацией | |||||||||
| LMP_quality_of_service_req | 42 | ||||||||||
| LMP_in_rand | 8 | Обмен информацией аутентификации на основе общего ключа | |||||||||
| LMP_au_rand | 11 | ||||||||||
| LMP_sres | 12 | ||||||||||
| LMP_supervision_timeout | 55 | Указание периода проверки доступности соединения звеньевого уровня | |||||||||
| LMP_temp_rand | 13 | Аутентификация на основе временных общих ключей, требуемых для взаимодействия нескольких устройств Bluetooth в одной сети | |||||||||
| LMP_temp_key | 14 | ||||||||||
Окончание таблицы 6.23
| Сообщение | Код операции | Назначение | |||
| LMP_use_semipermanent_key | 50 | ||||
| LMP_version_req | 37 | Обмен информацией о версии реализации Bluetooth для согласования возможностей и характеристик реализаций Bluetooth различных производителей | |||
| LMP_version_res | 38 | ||||
6.7.7 Протокол эмуляции проводных соединений RFCOMM должен соответствовать части "F:1" [15].
6.7.8 Алгоритмы кодирования и сжатия аудиоинформации должны соответствовать подпункту 6.7.4.2.
6.7.9 Протокол SDP (Service Discovery Protocol – протокол определения услуг) должен соответствовать разделу 1 части "Е" [15].














