Мобильные устройства и их характеристики. Платформа Windows Mobile
Спецификация Bluetooth v1.1 определяет 13 типов поддерживаемых приложений, которые называются профилями, существует также 12 дополнительных профилей. Профили работают на самом верху иерархии слоев протокола (смотри табл. 1.3). По существу профили являются регламентациями прикладного уровня.
Профили 5-7 конкурируют с протоколом IEEE 802.11. Профиль удаленного доступа служит для подключения ЭВМ к мобильному телефону, снабженному модемом, без использования проводов. Профайл факс позволяет беспроводным факс-устройствам отсылать и получать факсы посредством мобильного телефона. Профили 8-10 имеют отношение к телефонии, в перспективе мобильный телефон и беспроводная трубка домашнего телефона станут взаимозаменяемы. Профиль 10 представляет собой приложение, позволяющее устройствам hands-free держать связь с базой, что удобно, например, при езде в автомобиле. Профили 11-13 служат для пересылки объектов между беспроводными устройствами. Объектами могут быть изображения, информационные файлы и т.д.
Во главе семейства протоколов находится SDP (Service Description Protocol), предназначенный для определения услуг, оказываемых удаленным устройствам. С помощью команд данного протокола можно считать данные из локальной БД и определить характеристики удаленного устройства и на основе этой информации выяснить параметры оказываемых услуг. SDP использует модель запрос/отклик, где каждая транзакция включает в себя один запрос и один отклик. С помощью посылки одиночного SDP пакета можно осуществлять простое управление информационным потоком. Такой пакет может не сопровождаться откликом.
Поле данных пакета SDP имеет заголовок, содержащий три поля:
- PDU ID - идентификатор типа поля данных (1 байт)
- TransactionID - идентификатор транзакции (2 байта)
- ParameterLength - длина (в байтах) всех параметров в поле данных (2 байта)
Параметры могут содержать атрибут состояния продолжения ( continuation state ). Некоторые запросы могут потребовать такого большого отклика, который не поместится в одно поле данных. Тогда SDP-сервер генерирует частичный отклик с параметром состояния продолжения. Аналогичный атрибут должен присутствоать в очередном запросе клиента, требующего следующую порцию данных отклика. Такой запрос имеет только два поля InfoLength (1 байт) и Continuation Information (InfoLength байт).
Сервис ( service ) является единственной сущностью ( entity ), которая предоставляет информацию для выполнения каких-либо действий. Сервис может реализовываться аппаратно или программно. Информация о сервисах содержится в записях, которые представляют собой списки атрибутов. Каждый атрибут описывает одну характеристику сервиса. SDP имеет следующие атрибуты сервиса:
- ServiceRecordHandle
- ServiceClassIDList
- ServiceRecordState
- ServiceID
- ProtocolDescriptionList
- BrowseGroupList
- LanguageBaseAttributeIDList
- ServiceInfoTimeToLive
- BluetoothProfileDescriptorList
- DocumentationURL
- ClientExecutableURL
- IconURL
- ServiceName
- ServiceDescription
- ProviderName
Некоторые атрибуты являются общими для всех записей сервиса, но сервис-провайдеры могут определить свои собственные атрибуты услуг в зарезервированных полях.
Атрибут содержит два компонента: идентификатор (ID) и значение атрибута
- ID атрибута представляет собой 16-битовое число без знака, которое должно быть уникальным для данной сервисной записи. Идентификатор определяет и семантику значения атрибута.
- Значение атрибута представляет собой поле переменной длины, чей смысл определяется идентификатором и ассоциированным с ним классом записи услуг
Различные виды сервиса группируются в классы. Все атрибуты, содержащиеся в записи сервиса, относятся к одному классу. Каждому классу присвоен уникальный идентификатор UUID. UUID представляет собой 128-битовый код, но возможны псевдонимы (16- и 32-битовой длины).
Клиент может, зная значение UUID, получить указатель на соответствующую запись сервиса. Можно провести поиск и по идентификатору класса.
Значение атрибута имеет вид информационного элемента, который содержит два поля: заголовок и данные. Заголовок включает в себя две части: дескриптор типа и дескриптор размера.
Взаимодействующие приборы в Bluetooth могут выполнять роль локального устройства ( LocDev ) или удаленного устройства ( RemDev ). LocDev - прибор, который может инициировать процедуру выявления доступной услуги. Такой прибор должен содержать по крайней мере клиентскую часть архитектуры SDP. RemDev может быть любым прибором, который участвует в процессе выявления доступных услуг, посылая отклик на запрос LocDev. RemDev должен содержать по крайней мере серверную часть архитектуры SDP. RemDev имеет базу данных сервисных записей.
Прежде чем два устройства Bluetooth начнут взаимодействовать, каждый из них должен:
- Быть включенным и инициализированным. При инициализации может потребоваться PIN для формирования ключа соединения (link key).
- Должно быть сформированио Bluetooth соединение, которое может потребовать BD_ADDR других устройств.
Выявление услуг (Service Discovery) поддерживает следующие прикладные примитивы для взаимодействия с другими устройствами:
- serviceSearch();
- serviceBrowse();
- enumerateRemDev();
- terminatePrimitive();
Менеджер канала служит для аутентификации, установления и конфигурации соединения, а также шифрования. Данные управления укладываются в однослотовые кадры. Для транспортировки протокольных данных используются пакеты DM1 (в случае SCO - пакеты РМ1). Заголовки этих пакетов содержат всегда 1 байт. Менеджер канала (LM) обнаруживает другие LM и взаимодействует с ними через посредство протокола LMP. Чтобы выполнить роль провайдера LM использует ниже расположенный контроллер канала (LC). LMP-протокол регламентирует структуру управляющих данных (PDU). Приложение должно поддерживать часть типов PDU, остальные являются опционными.
В протоколе Bluetooth определены 4 типа адресов: BD_ADDR, AM_ADDR, PM_ADDR и AR_ADDR.
В рамках протокола определена структура интерфейса HCI (Host Controller Interface). Этот интерфейс осуществляет интеграцию низкоуровневых интерфейсов baseband и программного обеспечения клиента. Спецификация поддерживает работу с интерфейсами RS232, UART и USB. HCI предлагает командный метод доступа к аппаратным возможностям Bluetooth. Канальные команды HCI позволяют управлять канальным уровнем соединения с другими устройствами. В перечень входят команды менеджера канала (LM - Link Manager) предназначенные для обмена LMP-командами с удаленными устройствами. Данные для канала LM транспортируются кадрами DM. Команды HCI Policy используются для воздействия на локальный и удаленный LM. Команды Host Controller, Baseband, Informational и Status предоставляют доступ к различным регистрам интерфейса.
Эмуляция последовательных портов (в частности RS-232) посредством L2CAP осуществляется транспортным протоколом RFCOMM. Протокол базируется на стандарте ETSI TS 07.10. RFCOMM поддерживает до 60 одновременных соединений между приборами. Это могут быть модемы, принтеры или ЭВМ.
Транспортный уровень контроллера устройства обеспечивает обмен специфической HCI-информацией. Спецификация HCI определяет формат команд, событий и данных в рамках обмена между устройством и контроллером. Протокол HCI специфицирует 32 различного рода события ( Inquiry Complete Event, Page Scan Repetition Mode Change Event и т.д.).
Существует 4 категории пакетов Bluetooth. К первой категории относятся пакеты, общие для всех видов соединений (NULL, POLL, FHS, DM1). Три другие описывают пакеты различной длины: ко второй относятся однослотовые кадры, а к четвертой - кадры, занимающие пять временных слотов. Большинство типов пока не определены. ID-кадры имеют длину 64 бита и используются для пейджинга и запросов. NULL-кадры содержат поля лишь кода доступа и заголовка и используются для передачи подтверждений. Кадры POLL похожи на NULL, но требуют от получателя отклика. Пакеты рассматриваются как широковещательные в пикосети, если поле адреса имеет нулевое значение. Прием широковещательных кадров никогда не подтверждается, а для надежности они передаются несколько раз.
Кадры FHS содержат информацию об адресе, классе устройства и о тактовой частоте передатчика. Эти кадры используются при инициализации новой пикосети или при смене схемы переключения несущей частоты. К этой категории следует отнести и кадры DM1, транспортирующие управляющую информацию. Для синхронных соединений определены несколько кадров, различающихся длиной, HV1, HV2 и HV3 с длинами поля данных 10, 20 и 30 байт, соответственно. Тип кадров HV (High quality Voice) предназначен для трансляции голосовых потоков. Тип кадра DV предназначен для передачи как голоса, так и данных. и содержит 80 бит для голоса и 150 бит для данных. Блок данных защищается посредством CRC и в случае ошибки может пересылаться повторно.
Как и для всех радио средств коммуникации для Bluetooth проблема безопасности крайне актуальна. Безопасность протокола обеспечивается с помощью механизма аутентификации и шифрования передаваемых данных. Ключ авторизации имеет 128 бит. Длина ключа шифрования может лежать в пределах 8-128 бит. Кроме того целям безопасности служат ключи соединения ( link key ), которые могут быть полупостоянными и временными. Первые хранятся в энергонезависимой памяти, вторые - обновляются при каждом соединении. Устройство может генерировать свой ключ ( unit key ). Возможно формирование совместного ключа ( combination key ), при его вычислении используются информация от обоих участников будущего обмена. Особое место занимает мастер-ключ ( master key ), используемый для рассылки данных нескольким узлам одновременно (используется вместо текущего ключа соединения ( current link key )). Для выполнения аутентификации устройству нужно получить от партнера случайное число, сформировать на основе него и своего BD_ADDR некоторый код и отослать его партнеру, который проверяет его корректность. Если общий ключ не сгенерирован, формируется инициализационный ключ. Инициатор процедуры посылает партнеру случайное число, которое в сочетании с идентификатором BD_ADDR последнего образует инициализационный ключ.
3G
Эволюцией технологии GSM является стандарт EDGE (Enhanced Data rates for Global Evolution), позволяющий повысить пропускную способность до 384 кбит/с. Радиоинтерфейс EDGE надстраивается над существующей инфраструктурой GSM и использует те же полосы частот 850/900/1800/1900 Гц, что и GSM. Полоса пропускания, необходимая для мобильных Интернет-услуг, обеспечивается в GSM за счет предварительной организации общей радиослужбы пакетной передачи (GPRS). Однако, для приложений, работающих с данными в реальном времени, требуется более широкая полоса пропускания и более высокое качество обслуживания по сравнению с теми, которые обеспечивают современные системы GPRS. Эта нехватка компенсируется путем замены гауссовской манипуляции с минимальным частотным сдвигом (GMSK), которая использует только часть фазы, на восьмипозиционную фазовую манипуляцию (8PSK), которая использует все 360 кбит. EDGE, так же как и GPRS, использует таймслоты (временные отрезки кадра) для передачи информации. Существует идентичная GPRS политика распределения таймслотов между каналами на прием и передачу. Следует отметить, что максимальная скорость потока в одном таймслоте составляет 48 кбит/с, она достижима при идеальных условиях приема.
В зависимости от качества связи предусмотрено 9 алгоритмов кодирования от MCS-1 до MCS-9 (последний обладает самой малой избыточностью кодирования, соответственно - самый быстрый).
Таким образом, технология EGPRS (EDGE) способна обеспечить каждому абоненту как высокий уровень обслуживания, так и широкую полосу пропускания.
Технологии GPRS и EDGE считают лишь промежуточными этапами миграции к 3G и зачастую их называют переходными технологиями поколения 2.5G.
Главное отличие 3G от эксплуатируемых сейчас сетей второго поколения (2G) - передача большого объема информации на высоких скоростях. Возможности сетей 3G открывают новые горизонты в использовании мобильной связи, причем как частным абонентам, так и крупным корпорациям. Изменится само понятие мобильного телефона, он станет многофункциональным устройством, предназначенным для всех случаев жизни.
Одно из главнейших требований - сеть 3G должна передавать данные от абонента и обратно со скоростью до 2.048 Мбит/с при низкой мобильности (скорость - менее 3 км/ч) и локальной зоне покрытия и до 144 кбит/с при высокой мобильности (до 120 км/ч) и широкой зоне покрытия.
Сегодня в мире существуют две основные конкурирующие концепции 3G: UMTS (Universal Mobile Telecommunications Systems - универсальная мобильная телекоммуникационная система), поддерживаемая европейскими странами, и CDMA 2000 (Code Division Multiple Access - мультидоступ с кодовым разделением каналов), сторонниками которой традиционно являются азиатские страны и США.
В принципе эти две технологии предполагают два различных подхода к организации сетей 3G: революционный (UMTS) и эволюционный (разновидности CDMA - CDMA2000, CDMA2000 IX, CDMA2000 IX EvDo). Эволюционный путь подразумевает сохранение частот и постепенный переход к новым технологиям, путем наращивания технических мощностей оператора. UMTS - совершенно новый стандарт, в то время как разновидности CDMA, предложенные для 3G, являются развитием уже эксплуатирующейся в мире технологии второго поколения cdm.