Стек протоколов Bluetooth

Bluetooth является законченной оригинальной технологией, рассчитанной на самостоятельное применение в электронных персональных устройствах. Поэтому эта технология поддерживает полный стек протоколов, включая собственные прикладные протоколы. В этом заключается ее отличие от рассмотренных ранее технологий, таких как Ethernet или IEEE 802.11, которые лишь выполняют функции физического и канального уровней.

Создание для технологии Bluetooth собственных прикладных протоколов объясняется стремлением разработчиков реализовывать ее в разнообразных простых устройствах, которым не под силу, да и не к чему, поддерживать стек протоколов TCP/IP. Кстати, технология Bluetooth появилась в результате попыток разработать стандарт для взаимодействия мобильного телефона с беспроводными наушниками. Понятно, что для решения такой простой задачи не нуЖе н ни протокол передачи файлов (FTP), ни протокол передачи гипертекста (HTTP). В результате для технологии Bluetooth был создан оригинальный стек протоколов, в дополнение к которому появилось большое количество профилей.

Стек протоколов Bluetooth постоянно совершенствуется. Версия 1.0 стандартов стека была принята в 1999 году, версия 1.2 — в 2003, версия 2.0 — в 2004, версия 2.1 — в 2007, а версия 3.0 — в апреле 2009 года.

Рис. 1. Соответствие протоколов Bluetooth модели OSI и стандартам IEEE 802

При приведении стандартов Bluetooth в соответствие с архитектурой стандартов IEEE 802 рабочая группа 802.15.1 ограничилась только так называемыми протоколами ядра Bluetooth, которые соответствуют функциям физического уровня и уровня MAC (рис. 1).

Уровень физических радиосигналов описывает частоты и мощности сигналов, используемых для передачи информации.

Уровень базового диапазона частот отвечает за организацию каналов передачи данных в радиосреде. В его обязанности входят выбор последовательности псевдослучайной перестройки частоты, синхронизация устройств в пикосети, формирование и передача кадров по установленным каналам SCO и ACL. Кадр Bluetooth имеет переменную длину, поле данных может содержать от 0 до 2744 бит (343 байт). Для передачи голоса используются кадры фиксированного размера с полем данных 240 бит (30 байт).

Диспетчер каналов отвечает за аутентификацию устройств и шифрование трафика, а также управляет статусом устройств, то есть может сделать подчиненное устройство главным, и наоборбт.

Уровень протокола адаптации для управления логическим каналом (Logical Link Control Adaptation Protocol, L2CAP) является верхним уровнем протоколов ядра Bluetooth. Этот протокол используется только в тех случаях, когда устройство передает данные; голосовой трафик обходит этот протокол и обращается непосредственно к уровню базового диапазона частот. Уровень L2CAP принимает от протоколов верхнего уровня сегменты данных размером до 64 Кбайт и делит их на небольшие кадры для уровня базового диапазона частот. При приеме уровень L2CAP собирает кадры в исходный сегмент и передает протоколу верхнего уровня.

Аудиоуровень обеспечивает передачу голоса по каналам SCO. На этом уровне применяется импульсно-кодовая модуляция (РСМ), что определяет скорость голосового канала в 64 Кбит/с.

Уровень управления передает внешнему блоку информацию о состоянии соединений и принимает от внешнего блока команды, изменяющие конфигурацию и состояние соединений.