Протоколы GPRS

Протокол GPRS (General Packet Radio Service) используется для передачи данных в любых сетях GSM. Это позволяет сетям GSM быть совместимым с Internet. GPRS использует пакетную технологию для эффективной передачи неравномерного трафика. Протокол поддерживает скорость передачи от 9,6 Кб/с до более чем 150 Кб/с на одного пользователя.

Основными характеристиками протокола GPRS являются эффективное использование радио- и сетевых ресурсов, а также полностью прозрачная поддержка протокола IP. GPRS оптимизирует использование сетевых и радиоресурсов. Протокол GPRS использует радиоресурсы только в тех случаях, когда реально требуется принять или передать данные. Используя пакетную технологию, этот протокол позволяет приложениям использовать сетевые ресурсы только тогда, когда пользовательские приложения имеют данные для передачи через сеть. Таким образом, протокол адаптирован к неравномерному характеру трафика пользовательских приложений.

Еще одной важной характеристикой GPRS является обеспечение немедленного соединения и высокая пропускная способность. Поддерживаются приложения, базирующиеся на стандартных протоколах передачи данных, таких, как IP и X.25. В GPRS обеспечиваются 4 различных уровня качества обслуживания. Для поддержки приложений передачи данных протокол GPRS использует несколько новых сетевых узлов, в дополнение к сетевым узлам, применяемым в GSM PLMN. Эти узлы отвечают за маршрутизацию трафика и реализацию других функций обмена с внешними сетями коммутации пакетов, поиск абонентов, выбор ячеек, роуминг и многие другие функции, требуемые для обеспечения работы сотовой сети. Кроме того, GPRS использует протоколы GSM SMS и GSM MM (последний в GPRS называется GMM).

gif_13-1

Маршрут передачи GPRS

Эта глава описывает следующие протоколы GPRS:

  • NS: Network Service – сетевой сервис;
  • BSSGP: Base Station System GPRS Protocol – протокол базовой станции;
  • GTP: GPRS Tunneling Protocol – протокол туннелирования;
  • LLC: Logical Link Control for GPRS – протокол управления логическим каналом;
  • SNDCP: Sub-Network Dependant Convergence Protocol – протокол конвергенции подсетей;

Следующий рисунок иллюстрирует расположение протоколов GPRS относительно других телефонных протоколов в рамках модели OSI.

gif_13 gif_13-2

Положение стека протоколов GPRS в эталонной модели OSI

NS

GSM 08.16 v. 6.1.0 http://www.etsi.fr

Протокол сетевого сервиса NS (Network Service) обеспечивает транспортировку пакетов NS SDU между обслуживающими узлами поддержки GPRS (SGSN) и системой базовой станции (BSS). Сервис, обеспечиваемый пользователю NS, включает в себя:

  • Передачу пакетов сетевого сервиса. NS поддерживает примитивы сетевого сервиса, позволяющие осуществлять передачу и прием пакетов данных протоколов вышележащего уровня между BSS и SGSN. Пакеты сетевого сервиса передаются в порядке, который обеспечивается протоколом NS, однако в экстремальных случаях порядок передачи пакетов может изменяться.
  • Индикацию сетевой перегрузки. Механизм восстановления может реализоваться на уровне протокола более низкого уровня (например, Frame Relay). Механизм индикации перегрузки такого уровня будет использоваться сетевым сервисом для индикации перегрузки.
  • Индикацию состояния, используемую для информирования пользователя сетевого уровня о событиях, оказывающих воздействие на работу сетевого уровня (например, изменение доступной полосы пропускания).

Структура пакета (PDU) Сетевого Уровня показана на следующем рисунке:

Биты

Октет

8

7

6

5

4

3

2

1

Тип пакета (PDU)

1

Информационные элементы

2-n

Структура заголовка NM

Типы пакетов

Пакеты могут быть следующих типов

NS-ALIVE

NS-ALIVE-ACK

NS-BLOCK

NS-BLOCK-ACK

NS-RESET

NS-RESET-ACK

NS-STATUS

NS-UNBLOCK

NS-UNBLOCK-ACK

NS-UNITDATA

Информационные элементы

В зависимости от типа пакета в него могут быть включены различные информационные элементы (IE). Структура информационного элемента показана на следующем рисунке:

Биты

Октет

8

7

6

5

4

3

2

1

Идентификатор информационного элемента (IEI)

1

Индикатор длины

2

Значение информационного элемента

3

Структура информационного элемента

Идентификатор информационного элемента

Первый октет IE имеет формат TLV и содержит идентификатор информационного элемента (IEI). Если этот октет не соответствует ни одному из известных типов информационных пакетов, получатель предполагает, что следующий октет является первым октетом индикатора длины. Это правило позволяет получателю пакета пропускать информационные пакеты неизвестных типов и переходить к анализу следующих информационных элементов.

В зависимости от типа пакета в нем могут содержаться следующие информационные элементы:

Cause

NS-VCI

NS PDU

BVCI

NSEI.

Индикатор длины

Информационные элементы могут иметь различный размер. Индикатор длины – это поле размером 1 или 2 октета (второй октет может отсутствовать). Поле содержит бит расширения, а также размер информационного поля, следующего за полем индикатора длины. Бит расширения позволяет увеличить поле индикатора длины до двух октетов. Бит 8 первого октета зарезервирован для использования в качестве бита расширения. Если бит расширения имеет нулевое значение, это говорит о присутствии второго октета в поле индикатора длины. Если бит расширения имеет значение 1, поле индикатора длины состоит из одного октета.

BSSGP

GSM 08.18 v. 6.1.0 http://www.etsi.fr

Протокол сетевого сервиса NS обеспечивает транспортировку пакетов BSS GPRS между базовыми станциями BSS и узлами SGSN (обслуживающий узлом поддержки GPRS). Основные функции протокола BSSGP обеспечивают решение следующих задач:

  • узлы обслуживания SGSN (Serving GPRS Support Node) обеспечивают для BSS радиоиоинформацию, используемую функцией RLC/MAC (в нисходящем канале).
  • базовые станции BSS (Base Station Subsystem) обеспечивает для SGSN радиоинформацию, полученную от функции RLC/MAC (в восходящем канале).
  • физически различные узлы SGSN и BSS могут поддерживать функции управления узлом.

Структура пакета BSSGP показана на рисунке.

Биты

Октет

8

7

6

5

4

3

2

1

Тип пакета (PDU type)

1

Информационные элементы

2

Структура заголовка BSSGP

Типы пакетов

Пакеты BSSGP могут быть следующих типов:

UL-UNITDATA

RA-CAPABILITY

PTM-UNIYDATA

PAGING PS

PAGING CS

RA-CAPABILITY-UPDATE

RA-CAPABILITY-UPDATE-ACK

RADIO-STATUS

SUSPEND

SUSPEND-ACK

SUSPEND-NACK

RESUME

RESUME-ACK

RESUME-NACK

FLUSH-LL

FLUSH-LL-ACK

LLC-DISCARDED

FLOW-CONTROL-BVC

FLOW-CONTROL-BVC-ACK

FLOW-CONTROLMS

FLOW-CONTROLMS-ACK

BVC-BLOCK

BVC-BLOCK-ACK

BVC-UNBLOCK

BVC-UNBLOCK-ACK

BVC-RESET

BVC-RESET-ACK

STATUS

SGSN-INVOKE-TRACE.

Информационные элементы

В поле информационных элементов могут присутствовать перечисленные ниже значения (левая колонка списка).

0x00 Октеты выравнивания.

0x01 Bmax default MS

0x02 Индикация области BSS

0x03 Скорость передачи блоков (Bucket Leak Rate)

0x04 BVCI

0x05 Размер блока BVC

0x06 Измерение BVC (BVC Measurement)

0x07 Причина (Cause)

0x08 Идентификатор ячейки

0x09 Необходимость в канале (Channel needed)

0x0a Параметры DRX

0x0b Приоритет eMLPP

0x0c Действие подавления (Flush Action)

0x0d IMSI

0x0e LLC-SDU

0x0f Игнорированы пакеты LLC

0x10 Область местонахождения (Location Area)

0x11 Идентификатор пользователя (Mobile Id)

0x12 Размер блока MS

0x13 Мощность радиодоступа MS (MS Radio Access Capability)

0x14 Идентификатор OMC (OMC Id)

0x15 Ошибка входящего пакета (PDU In Error)

0x16 Время жизни пакета (PDU Lifetime)

0x17 Приоритет

0x18 Профиль QoS

0x19 Причина передачи радиосигнала (Radio Cause)

0x1a RA-Cap-UPD-Cause

0x1b Область маршрутизации

0x1c R-default_MS

0x1d Ссылка на приостановленный номер (Suspend Reference Number)

0x1e Тег

0x1f TLLI

0x20 TMSI

0x21 Ссылка на трассировку (Trace Reference)

0x22 Тип трассировки (Trace Type)

0x23 Идентификатор транзакции

0x24 Идентификатор триггера

0x25 Количество обработанных октетов

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

GTP

GSM 09.60 v. 6.1.0 http://www.etsi.fr

Протокол GTP (GPRS Tunneling Protocol) это протокол туннелирования GPRS. GTP описывает передачу данных между узлами GSN в магистральной сети GPRS. GTP определяется как для интерфейса Gn (т. е. интерфейса между GSN внутри одной PLMN), так и для интерфейса Gp (т. е. интерфейса между GSN в различных PLMN). Пакеты GTP инкапсулируются UDP.

GTP позволяет использовать туннелирование для передачи через магистраль GPRS между узлами GSN пакетов различных протоколов. С точки зрения сигнализации GTP определяет механизмы контроля и управления, позволяющие протоколу SGSN обеспечивать для MS доступ в сеть GPRS. Сигнализация служит для создания, модификации и уничтожения туннелей. С точки зрения передачи GTP использует механизм туннелирования для того, чтобы передавать пользовательские пакеты данных. Выбор маршрута зависит от того, требуют ли передаваемые по туннелю данные повышенной надежности соединения или нет.

Протокол GTP поддерживается только узлами обслуживания SGSN (Serving GPRS Support Node) и шлюзами GGSN (GPRS Gateway Support Node). Другие системы не обязаны знать что-либо о работе этого протокола. При подключении GPRS MS к узлам обслуживания SGSN работа с протоколом GTP не требуется. Предполагается, что при работе сети будут устанавливаться множественные соединения с узлами SGSN и GGSN. Один узел обслуживания SGSN может обеспечивать сервис для множества шлюзов GGSN. Один шлюз GGSN может иметь связь со многими узлами обслуживания SGSN для распределения трафика между множеством территориально распределенных мобильных станций.

Заголовок пакета GTP используется для всех типов сообщений GTP и имеет фиксированную длину 16 октетов.

Биты

Октет

8

7

6

5

4

3

2

1

Версия

Зарезервировано

LFN

Информационные элементы

1

Длина

2

Порядковый номер

3

Метка потока

4

Номер пакета LLC

5

x

x

x

x

x

x

x

FN

6

Резервировано

TID

Структура заголовка BSSGP

Версия

Устанавливается в 0, показывая первую версию протокола GTP.

Зарезервировано.

Биты, зарезервированные для будущего использования, имеют значение 1.

LFN

Данный флаг показывает, включен ли в сообщение номер кадра LLC. Для сигнальных сообщений LFN=0.

Тип сообщения

Указывает тип сообщения GTP. Для сигнальных сообщений это поле имеет значение, уникальное для каждого используемого типа сообщений.

Длина

Содержит длину GTP-сообщения (G-PDU) в октетах. Для сигнальных сообщений это поле включает размер сигнального сообщения и заголовка GTP.

Порядковый номер

Идентификатор транзакции для сигнальных сообщений или порядковый номер для туннелированных сообщений T-PDU.

Метка потока

Идентифицирует GTP-поток. В сигнальных сообщениях Path Management и Location Management метка потока не используется и данное поле имеет значение 0.

Номер пакета LLC

Используется для координации передачи данных на канальном (link layer) уровне между MS и SGSN в процедурах обновления маршрутной информации внутри SGSN. Для сигнальных сообщений это поле не используется (отправитель устанавливает значение 255, а получатель игнорирует это поле).

TID

Идентификатор туннеля, указывающий контекст MM и PDP в принимающем узле GSN. В сигнальных сообщениях это поле имеет значение 0 для всех сообщений V Management, Lacation Management и Mobility Managemetn. Поле TID использует следующий формат:

Биты

Октет

8

7

6

5

4

3

2

1

2-я цифра MCC

1-я цифра MCC

1

1-я цифра MNC

3-я цифра MCC

2

1-я цифра MSIN

2-я цифра MNC

3

3-я цифра MSIN

2-я цифра MSIN

4

5-я цифра MSIN

4-я цифра MSIN

5

7-я цифра MSIN

6-я цифра MSIN

6

9-я цифра MSIN

8-я цифра MSIN

7

NSAPI

10-я цифра MSIN

8

Структура TID

Цифры MCC, MNC, MSIN

Фрагменты IMSI (определены в GMS 04.08)

NSAPI

Идентификатор точки доступа к сетевому сервису.

LLC

GSM 09.60 v. 6.1.0 http://www.etsi.fr

Протокол LLC определяет управление логическим каналом связи (logical link control) и используется при передаче данных между мобильной станций (MS -mobile station) и обслуживающим ее узлом обслуживания GPRS (SGSN – serving GPRS support node). Протокол LLC обеспечивает передачу данных от MS до SGSN и предназначен как для передачи данных с подтверждением приема, так и для передачи без подтверждений.

Формат кадров LLC основан на формате кадров LAPD и RLP. Однако существуют важные различия между LLC и другими протоколами существуют большие отличия в части методов обозначения границ кадров и механизмов прозрачности. Эти отличия диктуются требованиями независимости от конкретного радиомаршрута.

LLC поддерживает два режима передачи данных:

  • операции точка-точка без подтверждения приема данных;
  • операции точка-точка с подтверждением приема данных.

Весь обмен информацией между объектами одного уровня протокола LLC осуществляется при помощи кадров, имеющих следующий формат:

Биты

Октет

8

7

6

5

4

3

2

1

Адрес

1

Управление

2

Информация

FCS

Структура заголовка LLC

Адрес

Поле адреса содержит значение SAPI и обозначает DLCI, для которого предназначен передающийся кадр и DLCI для встречного потока кадров. Поле адреса имеет размер 1 байт и использует следующий формат:

Биты

Октет

8

7

6

5

4

3

2

1

PD

C/R

XX

SAPI

1

Структура поля адреса LLC

PD

Идентификатор протокола указывает тип данного кадра – LLC или другой протокол. Для протокола LLC значение данного поля должно быть равно 0. Если в полученном кадре PD = 1, такой кадр трактуется как ошибочный.

C/R

Поле C/R указывает тип содержимого кадра – команда или отклик. MS передает кадры команд с полем C/R = 0, а в кадрах отклика устанавливается значение C/R = 1. Узлы обслуживания SGSN используют обратный порядок, т. е. для командных кадров C/R = 1, а для откликов C/R = 0.

Тип кадра Направление Значение C/R
Команда От SGSN к MS

1

Команда От MS к SGSN

0

Отклик От SGSN к MS

0

Отклик От MS к SGSN

1

XX

Зарезервировано (2 бита)

SAPI

Идентификатор точки доступа к сервису (Service Access Point Identificator) обозначает точку доступа, через которую LLE обеспечивает для протокола LLC доступ к процессу вышележащего уровня (layer 3).

Управление

Идентифицирует тип кадра. Протокол LLC использует 4 типа кадров:

  • передача подтверждаемой информации (формат I);
  • функции контроля (supervisory) (формат S);
  • передача информации без подтверждения (формат UI)
  • функции управления (формат U)
Информация

Содержит различные команды и отклики на них.

FCS

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

SNDCP

GSM 04.65 v. 6.1.0 http://www.etsi.fr

Протокол SNDCP (Sub-Network Dependant Convergence Protocol) использует сервис, предоставляемый уровнями LLC (Logical Link Control – управление логическим каналом) и подуровнем SM (Session Managemetn – управление сеансом). Существует SNDCP для протоколов IP и X.25.

Основными функциями протокола SNDCP являются:

  • мультиплексирование нескольких пакетных протоколов PDP (packet data protocol);
  • компрессия/декомпрессия пользовательских данных;
  • компрессия/декомпрессия управляющей информации для протокола;
  • сегментация пакетов сетевого уровня (N-PDU) в пакеты уровня логического какана (LL-PDU), а также обратный процесс сборки LL-PDU в N-PDU.

Пакеты SN-DATA используются для передачи данных с подтверждением приема. Эти пакеты имеют следующий формат:

Биты

Октет

8

7

6

5

4

3

2

1

X

C

T

M

NSAPI

1

DCOMP

PCOMP

2

Данные

3-n

Структура пакета SN-DATA

Пакеты SN-UNITDATA используются для передачи данных без подтверждения приема. Формат пакетов показан на рисунке.

Биты

Октет

8

7

6

5

4

3

2

1

X

C

T

M

NSAPI

1

DCOMP

PCOMP

2

Смещение сегмента

Номер N-PDU

3

E

Номер N-PDU (продолжение)

4

Номер N-PDU (расширение)

5

Данные

6-n

Структура пакета SN-UNITDATA

NSAPI

Идентификатор точки доступа к сетевому сервису. Это поле может принимать следующие значения:

0 Механизм отмены, зарезервированный для использования в будущем.

1 Групповая передача “один ко многим” (PTM-M – point-to-multipoint multicast).

2-4 Зарезервированы для использования в будущем.

5-15 Динамически выделяемое значение NSAPI

M

Флаг наличия дополнительных сегментов.

0 Последний сегмент N-PDU

1 Данный сегмент N-PDU не является последним.

T

Тип SN-PDU. Определяет тип пакета –SN-DATA (0) или SN-UNITDATA (1).

C

Индикатор компрессии. Значение 0 показывает, что поля компрессии DCOMP и PCOMP не включены в пакет, 1 говорит о наличии этих полей в пакете.

X

Запасной (spare) бит, устанавливаемый в 0.

DCOMP

Идентификатор компрессии данных, включаемый в пакет при установке бита C. DCOMP может принимать следующие значения:

0 Компрессия не используется.

1-14 Указывает на динамически согласуемые идентификаторы компрессии данных.

15 Зарезервировано для будущего использования.

PCOMP

Кодирование компрессии управляющей информации протокола, включаемое в пакеты при установленном бите C. PCOMP может принимать следующие значения:

0 Компрессия не используется.

1-14 Указатели на идентификаторы компрессии управляющей информации, согласуемые динамически.

15 Зарезервировано для будущего использования.

Смещение сегмента

Смещение сегмента от начала N-PDU. Задается в единицах по 128 октетов.

Номер N-PDU

0-2047 при нулевом значении бита расширения.

2048-524287 в тех случаях, когда бит расширения имеет значение 1.

E

Бит расширения для номера N-PDU.

0 Следующий октет содержит данные.

1 Следующий октет используется для расширения номера N-PDU.

Запись опубликована в рубрике Мир протоколов. Добавьте в закладки постоянную ссылку.