Рис.1. Применение модели OSI к системе GSM.
На физическом уровне определены характеристики среды передачи. Но физический уровень GSM это не только GMSK-модуляция. Этот уровень включает в себя осуществление множественного доступа с разделением по времени (TDMA), осуществление своевременной передачи пакетов из-за использования того же TDMA, кодирование и т. д.
Канальный уровень GSM отвечает за безопасную передачу данных между мобильной и базовой станциями.
Третий уровень — сетевой. Он подразделяется на три подуровня:
  • Подуровень управления радио ресурсами (Radio Resources Management).
  • Подуровень Управления Мобильностью (Mobility Management).
  • Подуровень Управления Соединением (Call Control).   
    Реализация уровней 1-3 в GSM радиоинтерфейсе.
    Рис.2. Мобильная станция GSM.
    Физический уровень не будет рассматриваться в данной статье.
    Канальный уровень Um-интерфейса GSM.
    Данный уровень отвечает за надежную передачу пакетов третьего уровня. Для осуществления этой задачи он использует физический уровень. В данном случае используется LAPDm протокол — протокол доступа к каналу D. Этот протокол используется в ISDN. m в названии протокола означает «модифицированный» (modified). Причиной этой модификации является низная скорость передачи данных в воздушной среде. В отличие от LAPD, используемого для ISDN, LAPDm протокол не содержит флаги начала и конца для синхронизации. Так же он не требует использовать FCS (проверочная последовательность кадра) для выявления ошибок передачи. В стандарте GSM контроль ведется на физическом уровне.
    Форматы кадров протокола LAPDm.
    Для передачи различных типов данных в протоколе LAPDm используются разные кадры. Определены три формата кадра. Их длина составляет 23 октета (8 бит). т. е. Каждый кадр состоит из 23*8=184 бит.
    Общий формат кадра выглядит следующим образом:
    Рис.3. Общий формат кадра протокола LAPDm.
    Поле адреса (Adress Field):
    Структура адресного поля: 
    Рис.4. Структура адресного поля.
    Бит EA:
    Этот бит отмечает конец или начало адресного поля. Если EA=0, то далее последует еще один адресный октет. Если EA=1 — это последний октет адресного поля. Так как длина адресного поля в протоколе LAPDm всегда равна восьми битам (октету), то значение бита EA в Um-интерфейсе всегда равно единице.
    C/R(command/response) бит.
    Данный бит показывает, является данный кадр командой(command) или ответом(response).
    Следующий рисунок поясняет это.
    Рис.5.Пояснение значения C/R бита.
    Из рисунка видно, что по этому биту и МС, и БС понимают, что за кадр к ним приходит.
    Link protocol discriminator LPD:
    Исппользуется, чтобы определить конкретную рекомендацию по использованию протокола LAPDm. Для GSM поле LPD всегда равно 00 с единственным исключением: для сообщений базвой станции по каналу BCCH LPD=01.
    Service access point identifier SAPI идентификатор точки доступа к услугам.
    В Um-интерфейсе GSM SAPI может принимать одно из двух десятичных значений:
    SAPI=0 – для сообщений L3 уровня,
    SAPI=3 — для сообщений L2 уровня.
    Поле управления (Control Field):
    Поле управления канального уровня определяет тип кадра и содержит порядок передачи I-кадров (информационных кадров). В протоколе LAPDm длина поля управления всегда ограничивается одинм октетом, но для этого поля нет общей структуры, т. к. структура будет различной для различных типов кадров. Все типы кадров будут описаны позже.
    Поле длины кадра (Frame length Field):
    Данное поле содержит полную длину информационного поля. Здесь допустимы значения от 0 до N201. Величина N201 равна 23 октетам, т. е. 23 байтам.
    Рис.6. Структура поля длины кадра.
    EL-бит:
    Этот бит указывает, является ои этот октет последним в поле длины кадра или нет. Для Um-интерфейса EL всегда равен 1, т. к. длина данного поля всегда равна одному октету.
    M-бит:
    Если сообщение длиннее, чем один кадр, M-бит указывает, что далее будет следовать другая информация. В этом случае M=1. M=0, если данный кадр — последний кадр сообщения.
    Форматы кадров канального уровня Um-интeрфейса GSM.
    Основной формат кадра подразделяется на три подвида: Bbis, B и A форматы. Различие между ними состоит в том, для каких логических каналов они используются и какого типа информацию они передают.
    A-кадр:
    А-кадр может быть использован для передачи любых сообщений по каналу DCCH(выделенный канал управления) как во входящем, так и исходящем направлениях. Кадр передается тогда, когда нет необходимости посылать сигнальную информацию после того, как было установлено соединение. Это значит, что А-кадр не несет сигнальной информации третьего уровня, а просто заполняется некоторыми битами. Он отправляется сразу после настройки канала, при условии, что нет необходимости в сигнальной информации третьего уровня.
    B-кадр:
    B-кадр используется для реальной сигнализации. Его информационное поле содержит информацию третьего уровня. Кадр используется для всех каналов сигнализации, каналов ACCH, DCCH. Постоянной N201 определяют длину информационного поля, которое различно для различных типов каналов, при том, что длина кадра составляет 23 октета.
    Структура поля управления для A и B кадров:
    Как было замечено ранее, структура поля управления может быть разной в зависимости от использования этого поля с той или иной целью.
    Рис.7. Структура A и B кадров в зависимости от их типа.
    P, F и P/F биты:
    Эти биты содержатся во всех полях управления. Они называются опросными битами в кадрах комманд и конечными битами в кадрах ответов. Естественно, что только один бит - опроса(polling) или конечный(final) может быть использован в одном кадре. Этот бит указывает на то, что передающая сторона ждет ответа от принимающей стороны, хотя это и не является обязательным условием. P=1 означает, что передатчик коммандного кадра ожидает ответа от приемника. Ответ должен быть задан в кадре ответа с F=1.
    Информационное поле (Information Frame, I-frame):
    Информационное поле используется для передачи данных сигнализации третьего уровня. Это транспортное поле для этого типа информации. Каждое поле управления содержит 3х-разрядный счетчик посланных кадров N(S) и полученных кадров N(R). N(S) показывает, какое количество кадров в передатчике отмечено как отправленные, N(R) — количество принятых кадров. То есть эти счетчики служат подтверждением правильной передачи информации. Из-за 3х битности счетчиков, не более восьми I-кадров могут быть отправлены без подтверждения.
    Поля наблюдения(Supervisory Frames):
    Существует три поля наблюдения: RR, RNR и REJ.
    Поле Receive ready (RR):
    Поля RR используется для подтверждения получения кадров с информационными полями, т. е. получения как таковой информации. Такое управляющее поле содержит в себе N(R) поле, т. е. приемник сообщает передатчику номер последнего полученного кадра, который был отмечен как принятый. Если передатчик передал большее кадров, чем получил приемник, то, начиная с последнего принятого, все кадры передадутся заново.
    Поле Receive not ready (RNR):
    С этим сообщением приемник указывает на то, что он не может в настоящее время получать информационные кадры. Это значит, что передатчик должен прекратить отправку информационных кадров до поступления сигнала вызова более выского уровня или пока передача данных не может быть продолжена.
    Поле Reject (REJ):
    В отличие от RNR как сигнала перегрузки, это сообщение говорит о том, что последний переданный кадр принялся неверно и был отклонен. Счетчик N(R) указывает на номер кадра, с которого данные должны быть переданы повторно.
    Ненумерованные поля (Unnumbered frames):
    Из структуры управляющего поля видно, что оно не содержит порядковый номер, т. е. счетчик N(R). То есть эти кадры не подтверждаются при получении.Следующие типы ненумерованных полей:
    Поле установления асинхронного сбалансированного режима SABM:
    Данное управляющее поле инициирует соединение L2 уровня, т. е. посылается запрос на изменение режима на «стабильный», в котором можно обмениваться информацией «на равных».
    Поле установления отключенного режима DM:
    Данное поле указывает, что соединение второго уровня не может быть сохранено. Соединение разрывается. DM-кадр — один из способов разрыва соединения второго уровня.
    Ненумерованный информационный кадр UI:
    Это еще один кадр для передачи информации третьего уровня, но, в отличие от I-кадра, этот кадр не содержит нумерации посланных сообщений (счетчики отсутствуют). Он используется, когда не нужно передавать обратно подтверждение приема.
    Кадр отключения DISC:
    Этот кадр тоже отключает соединение второго уровня. Передающий конец использует этот кадр для того, чтобы проинформировать принимающий конец о том, что он намерен разорвать соединение. Передающий конец ждет, пока не получит UA-кадр как подтверждение.
    Ненумерованный кадр подтверждения UA:
    Этот кадр является ответом приемного конца на SABM или DISC кадры. Он используется для подтверждения прекращения соединения.
    Формат Bbis:
    В отличие от двух других кадров, этот формат не использует заголовок. Причиной этого является то, что Bbis используется только для передачи по каналу управления BCCH и по общим каналам управления AGCH и PCH. Этот кадр не имеет поля адреса, т. к. используется для вещательных каналов.
    Рис.8. Структура кадра Bbis.
    Кадр содержит N201 октетов. Для него N201=23 октета.
    Сетевой уровень Um-интерфейса GSM.
    Сообщения третьего уровня встроены в протокол информации второго уровня Um-интрфейса. Общая структура сообщений третьего уровня состоит из трех полей: тип идентификатора, тип сообщения и поля данных.
    Рис.9. Структура сообщений третьего уровня.
    Тип идентификатора (Type identifier):
    8-битный идентификатор типа содержит протокольный дискриминатор (т.е. различитель), который делит информацию на различные группы.
    Рис.10. Структура поля типа идентификатора.
    Протокольный различитель (Protocol Discriminator):
    4-битный различитель делит сообщения третьего уровня на различные группы: 
    Табл.1. Соответствие значения различителя и группы сообщений.   
    Три основные группы сообщений третьего уровня соответствуют трем основным функциям третьего уровня радиоинтерфейса GSM: RR, MM и CC.
    Подуровень управления радиоресурсами (Radio Resources Management).
    Уровень управления радиоресурсами (RR — Radio Resource Management) наблюдает за установлением соединения по радиоинтерфейсу и фиксированной сети между подвижной станцией и центром коммутации подвижной связи (MSC). Главные функциональные компоненты этого уровня — подвижная станция и подсистема базовых станций, центр коммутации подвижной связи (MSC). Уровень RR предназначен для управления радиосеансом. Сеанс — это время, которое мобильная станция находится в режиме соединения и управляет конфигурацией радиоканалов, включая распределение специализированных каналов.
    Радиосеанс всегда инициализируется подвижной станцией с помощью процедуры доступа, либо для исходящего вызова, либо в ответ на широковещательный вызов при входящем вызове. Уже рассмотренные выше процедуры исходящего вызова и широковещательного вызова, такие как назначение выделенного канала для сигнализации мобильной станции, и структура широковещательного подканала, устанавливаются на уровне RR.
    Кроме того, уровень RR осуществляет управление радиохарактеристиками, такими как управление мощностью, прерывистая передача и прием.
    Подуровень Управления Мобильностью (Mobility Management).
    Уровень управления мобильностью (ММ — Mobility Management) относится к верхнему уровню управления радиоресурсами (RR — Radio Resources Management) и выполняет функции, которые возникают при передвижении абонента, а также функции защиты и аутентификации. Управление местоположением включает процедуры, которые дают системе информацию о текущем местоположении включенных передвижных станций так, чтобы управлять маршрутизацией входящих вызовов.
    Подуровень Управления Соединением (Call Control).
    Уровень управления соединением (СC) отвечает за управление вызовом, управление дополнительными видами услуг и управление службой передачи коротких сообщений. Каждое из них можно рассматривать как отдельный подслой в пределах уровня управления соединением (СC). Другие функции подслоя управления вызовом включают: установление соединения, выбор типа обслуживания (включая чередование услуг в течение вызова) и отбой.
    Индикатор пропуска Skip Indicator:
    Различитель группы сообщений следует за 4-битным индикатором пропуска. Этот индикатор не имеет определенных функций, поэтому всегда имеет постоянное значение 0000. Если приемник, получив сообщение третьего уровня, замечает, что данный индикатор имеет значение, отличное от 0000, он должен его просто проигнорировать.
    Идентификатор транзакции TI:
    Если сообщение третьего уровня является сообщением третьего подуровня (СС), то индикатор пропуска (Skip Indicator) заменяется идентификатором транзакции, состоящем из бита флага и 3-битного значения идентификатора TI. Это значение необходимо для управления вызовом. Допустим, что абоненту при уже существующем одном соединении необходимо совершить еще один звонок. Тогда он переходит на удержание первого и совершает второй. То есть значение TI позволяет различать несколько одновременных соединений.
    Тип сообщения (Message type):
    Тип сообщения казывает на то, для чего это сообщение предназначено, содержит имя сообщения и комманду. Дальнейшая структура поля информации зависит от этого поля.
    Список литературы: