«Голубой зуб» смотрим в корень
Технология Bluetooth была изобретена пять лет назад компанией Ericsson. Впоследствии для продвижения на рынок был образован консорциум в составе Ericsson, IBM, Intel, Nokia и Toshiba. Сегодня в состав основных членов входят 3Com, Agere Systems, Ericsson, IBM, Intel, Microsoft, Motorola, Nokia, Toshiba. Цель создателей Bluetooth обеспечить самым разнообразным электронным приборам (компьютерам, сотовым телефонам, бытовой технике) возможность связываться друг с другом без проводов на расстоянии до 100 м и обмениваться данными. Количество имеющихся во всем мире устройств Bluetooth пока относительно невелико 35 млн. по состоянию на конец 2002 года, однако, по прогнозам аналитиков, в 2006 году будет продано свыше 500 млн. устройств с данной технологией.
ак и оборудование для беспроводных сетей стандарта IEEE 802.11b, Bluetooth использует радиочастоты 2400-2483,5 МГц. Этот диапазон, именуемый ISM (Industrial, Scientific, Medicine промышленный, научный и медицинский), используется во многих странах для безлицензионного доступа. В технологии Bluetooth весь диапазон разбит на 78 каналов шириной 1 МГц каждый. В верхней и нижней частях диапазона предусмотрены защитные неиспользуемые полосы шириной 3,5 и 2 МГц соответственно.
В некоторых странах, например во Франции, диапазон ISM значительно уже. Для них предусмотрен иной алгоритм смены каналов, и устройства, использующие различные алгоритмы, совместно работать не могут. Распределение частот по каналам приведено в таблице.
По выходной мощности все устройства делятся на три класса: первый класс до 100 мВт, второй до 2,5 мВт, и третий до 1 мВт. Лимитирована только верхняя граница, так как устройства могут автоматически снижать мощность, если она является избыточной.
Для передачи данных используется гауссова фазовая модуляция, которая предусматривает изменение частоты несущей во времени в соответствии с гауссовой кривой, что позволяет ограничить спектр излучаемого сигнала.
Обмен данными осуществляется внутри временных интервалов (слотов) длиной 625 мкс. После передачи каждого слота производится переход на другой частотный канал. В плане канального уровня модели OSI обмен данными происходит при помощи пакетов, каждый из которых может иметь длину от одного до пяти слотов. Физическая скорость передачи составляет 1 Мбит/с.
Часть слотов можно зарезервировать для синхронных каналов (передача голоса), а всего протоколом предусмотрено до трех синхронных каналов со скоростью 64 Кбит/с. Параллельно с синхронными данными могут передаваться и асинхронные.
Для организации дуплексной связи используется метод временного мультиплексирования, то есть в одном временном слоте передает одно устройство, а в следующем другое. При симметричной организации обмена асинхронными данными максимальная скорость составляет 433,9 Кбит/с в каждую сторону. Максимальная скорость обмена достигается при асимметричном обмене и составляет 723,2 Кбит/с в одну сторону и 57,6 Кбит/с в другую.
Согласно стандарту, для обособления функций оборудование Bluetooth разбивается на три части, приблизительно соответствующие физическому и канальному уровню модели OSI: приемопередающее устройство (radio unit), устройство управления доступом (link control unit) и устройство управления каналом и связи с вышестоящим уровнем.
Bluetooth служит главным образом для организации каналов связи типа «точка-точка», однако возможна также и организация типа «точка-многоточка». В любом случае одно из устройств является ведущим (master), а все остальные ведомыми (slave). Образованная таким образом структура называется пикосеть (piconet). В одной такой сети могут участвовать одно ведущее устройство и до семи ведомых. Дополнительно в пикосети могут присутствовать и другие устройства, которые называются блокированными (parked) и не участвуют в обмене данными, но находятся в синхронизации с ведущим устройством.
Несколько пикосетей, связанных друг с другом, образуют структуру, именуемую распределенной сетью (scatternet). В распределенной сети у одного ведомого устройства могут быть несколько ведущих. Устройство, являющееся ведущим в одной пикосети, может быть ведомым в другой. Пикосети, принадлежащие к одной распределенной сети, не синхронизированы друг с другом и работают каждая на своем частотном канале.
Канал связи представляет собой сетку частот, на каждой из которых может производиться обмен данными. Всего таких частот 79 или 23, а выбор частот для обмена производится на основе псевдослучайной последовательности. Такая последовательность генерируется на основе уникального адреса ведущего устройства и имеет длину 227. Номинальная скорость переключения с частоты на частоту составляет 1600 раз в секунду, и таким образом последовательность повторяется каждые 23,3 ч.
Для двунаправленной передачи данных используется схема временного разделения. Ведущее устройство должно начинать передачу пакета только в четных временных интервалах, а ведомое в нечетных. Частота должна оставаться неизменной в течение передачи всего пакета. Если пакет занимает больше одного временного интервала (до пяти), то частота не меняется на протяжении всего пакета.
В технологии Bluetooth предусмотрены два вида связи: синхронная с установлением соединения (Synchronous Connection-Oriented, SCO) и асинхронная без установления соединения (Asynchronous Connection-Less, ACL). В первом случае речь идет о канале «точка-точка» между ведущим и ведомыми устройствами. Мастер поддерживает этот вид связи путем использования зарезервированных временных интервалов. Во втором случае используется связь типа «точка-многоточка» между ведущим устройством и всеми ведомыми в пикосети, при этом могут быть задействованы свободные (незарезервированные) временные интервалы.
Соединения типа SCO обычно используются для передачи данных, например голоса, в режиме реального времени. Всего ведущее устройство может поддерживать до трех соединений SCO с одним или несколькими ведомыми. Ведомое устройство способно поддерживать три соединения SCO с одним ведущим или два с двумя ведущими (по одному с каждым). Пакеты SCO никогда не передаются повторно, даже если при приеме были выявлены ошибки. Ведущее устройство посылает пакеты SCO через регулярные интервалы времени (TSCO), исчисляемые во временных интервалах (slot). Ведомое устройство обязательно должно отослать свой пакет SCO в следующем временном интервале при любых условиях.
В тех временных интервалах, которые не зарезервированы для синхронных соединений, ведущее и ведомое устройства могут обмениваться данными через соединение ACL соединение с коммутацией пакетов между ведущим и всеми ведомыми устройствами в пикосети. Здесь поддерживаются как изохронные, так и асинхронные соединения. Между ведущим и каждым из ведомых устройств может существовать только один канал ACL. При обнаружении ошибок для большинства пакетов происходит повторная передача. Ведомое устройство может послать ответный пакет только тогда, когда пакет был адресован именно ему.
Пакет состоит из трех полей: кода доступа (access code), заголовка (header) и данных (payload). Размер первых двух полей фиксирован и составляет 72 или 68 бит и 54 бита соответственно. Информация в коде доступа имеет двойную защиту: во-первых, применяется код Хэмминга, а во-вторых, над полученным сочетанием «данные + код» проделывается процедура коррекции ошибок с опережением (Forward Error Correction, FEC) с избыточностью равной 3. Полная длина кода доступа (вместе с избыточностью) составляет 72 бита, если за ним следует заголовок, и 68 бит в противном случае. Короткие пакеты, состоящие только из кодов доступа, используются для служебных целей, например при установлении соединения.
Заголовок содержит информацию о типе и длине пакета (о количестве временных интервалов, которые он занимает: один, три и пять) и другую служебную информацию. Коррекция ошибок производится так же, как и для кода доступа.
Длина поля данных может составлять от нуля до 2745 бит. В зависимости от типа пакета в поле данных могут размещаться либо голосовые данные длиной 80 или 240 бит, либо произвольная информация. Предусмотрена также возможность совместного размещения голосовых и неголосовых данных. Поле данных состоит из заголовка, собственно данных и 16-битного кода CRC. Данные могут быть защищены двумя способами: повторной передачей при наличии ошибок CRC и/или кодом Хэмминга с избыточностью 50%. Для голосовых данных может также применяться кодирование с избыточностью 3. Перед передачей заголовок и данные подвергаются процедуре перемешивания для выравнивания спектра.
Установление соединения между двумя устройствами происходит в два этапа: первый, «Опрос» (Inquiry), выясняет, какие устройства находятся в радиусе действия и каковы их адреса, и второй, «Персональный Вызов» (Page), устанавливает связь с конкретным устройством. Все процедуры опроса и вызова выполняются только ведущим устройством.
Для первоначальной процедуры установления связи используются короткие пакеты длиной 68 бит, а скорость переключения частот увеличивается вдвое (до 3200 раз в секунду). После получения ответа происходят синхронизация схем переключения частот (ведомое устройство получает ее от ведущего) и обмен пробными пакетами, и тогда соединение считается установленным.
На одном и том же пространстве могут располагаться несколько пикосетей. В каждой из них имеется свое ведущее устройство, поэтому они имеют различные независимые схемы переключения частот. Чем больше пикосетей расположено на одной площадке, тем выше вероятность столкновений и, следовательно, снижения производительности.
Если несколько пикосетей расположены на одной и той же площади, то они могут быть объединены в распределенную сеть. Объединение происходит на основе временнoго мультиплексирования, то есть одновременно в двух пикосетях никакое устройство работать не может. Для перехода из одной пикосети в другую устройство должно поменять схему смены частот. При этом одно и то же устройство может быть ведущим в «своей» пикосети и ведомым в «чужой». При подключении новых устройств допускается смена роли устройства с ведущего на ведомого, вследствие чего ассоциированная с ним пикосеть разваливается и ее приходится собирать вновь под управлением нового ведущего устройства. Поскольку пикосети, объединенные в распределенную сеть, используют разные схемы смены частот, то производительность каждой из них не снижается, однако возрастает вероятность возникновения взаимных помех.
В отличие от многих других беспроводных технологий, Bluetooth не претендует на самостоятельность, а вместо этого эмулирует уже известные приложениям протоколы, в основном такие, как RS-232, USB и IrDA.
Протокол RFCOMM, представляющий собой часть спецификаций Bluetooth, является транспортным протоколом, эмулирующим девятипроводную реализацию RS-232. Он поддерживает до 60 одновременных соединений RS-232 между двумя устройствами Bluetooth. В реальности количество соединений зависит от тех приложений, которые их используют.
Протокол IrOBEX это протокол уровня сессии, определенный IrDA. Данный протокол также включен в состав технологии Bluetooth и предоставляет приложениям выбор между технологией Bluetooth, которая им может быть неизвестна, и технологией IrDA, известной множеству приложений и операционных систем. При этом следует учесть, что обе технологии были разработаны для применения в одном и том же сегменте преимущественно для связи типа «точка-точка». Для приложения эмулируется канал IrDA, а реально связь происходит по каналу Bluetooth.
Примерно таким же образом производится эмуляция протокола USB.
Помимо протоколов обмена данными, в спецификациях Bluetooth имеется специализированный телефонный протокол Bluetooth Telephony Control protocol Specification Binary (TCS Binary), основанный на рекомендации ITU-T Q.931.
Этот протокол не полностью реализует указанную рекомендацию, однако обеспечивает необходимую функциональность, а именно:
- управление вызовом (Call Control, CC) обеспечение установления и разрыва как голосового соединения, так и соединения для обмена данными между устройствами Bluetooth;
- групповое управление (Group Management) то же самое, но для групп устройств Bluetooth;
- информация о совершенных соединениях (ConnectionLess TCS CL) обеспечение обмена информацией о пришедших или исходящих вызовах, не относящихся к текущим.
Итак, даже из упрощенного анализа стандарта Bluetooth следует, что он не является конкурентом сетевых решений, таких как стандарт IEEE 802.11. В определенной степени он конкурирует со стандартом 802.11 только в плане частоты (оба используют диапазон 2,400-2,4835 ГГц), но благодаря разным схемам модуляции и использования частот оба этих стандарта могут быть использованы на одной площадке, причем даже без существенного снижения производительности.