Подсистема TCAP. Общие положения. Прикладная система возможности транзакций, страница 9

ss-SubscriptionOption ::= cliRestrictionOption {permanent}

Теги

Рекомендация X.208 определяет четыре возможных класса тэгов:

§  Universal;

§  Application;

§  Context specific;

§  Private;

Тегированные типы универсального класса (UNIVERSAL) применяются для определения широко используемых типов данных. Это - типы, определенные в рекомендации X.208 и только они. Универсальные теги однозначно идентифицируют тип во всех приложениях. Универсальные типы есть часть стандарта языка ASN.1.

Пример:

EncriptionKey ::= [UNIVERSAL 30] IMPLICIT OCTET STRING

Тегированные типы прикладного класса (APPLICATION) используются для определения типов данных, которые находят широкое, не локализованное использование в контексте некоторых приложений. При этом представление этих типов данных должны отличаться от представлений всех других типов в данном приложении.

Пример:

identifier ::= [APPLICATION 8] IMPLICIT SEQUENCE {

imsi OCTET STRING SIZE(3..8),

tmsi OCTET STRING SIZE(4)}

Тегированные типы прикладного класса (CONTEXT-SPECIFIC) используются для типов, чье значение определено внутри данного структурированного типа; контекстно-зависимые теги используются, чтобы различить между собой составляющие типа с тем же самым основным тегом в пределах контекста данного структурированного типа; составляющие типы в двух различных структурированных типах могут иметь один и тот же тег и различные значения

Пример:

lmsi ::= [CONTEXT-SPECIFIC 4] IMPLICIT OCTET STRING SIZE(4..6)

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

Пример:

AcmeBadgeNumber ::= [PRIVATE 2] IMPLICIT INTEGER

Для кодирования параметра тэга применяются следующие правила:

§  биты 7..6 определяются класс компонента

-  Universal (00);

-  Application (01);

-  Context specific (10);

-  Private (11);

§  бит 5 определяет форму компонента

-  компонент представляет из себя одиночный примитив (0);

-  компонент представляет из составную конструкцию (1);

§  биты 4..0 определяют код тэга

Неявное и явное задание тега

Ключевые слова IMPLICIT и EXPLICIT, задающие неявно и явно новый тег структуре данных, влияют только на кодирование тегированного типа, но не на словесное его описание. По существу, неявное задание тега (IMPLICIT) означает замену при кодировании тега исходного типа данных на новый тег.

BER кодирование структур ASN.1

В рекомендации X.208 описываются нотации для определения абстрактных типов данных. Там же определены правила описания значений этих типов. Кроме того, в этой рекомендации определены некоторые базовые типы, которые могут быть использованы при создании новых более сложных структур. Все это позволяет построить словесное описание структур данных. Такое словесное описание используется на этапе проектирования системы. Однако, далее необходима разработка механизмов кодирования/декодирования при практической реализации протоколов. Другими словами, требуется реализация процедур превращения словесной записи структур в конкретные октеты (байты), передающиеся между участниками протокола.

Рекомендация X.209 определяет набор правил кодирования (базовые правила декодирования, BER), которые могут применяться к значениям типов, определяемых в X.208. Применение таких правил кодирования реализует синтаксис передачи для таких значений. При описании правил кодирования предполагается, что такие же правила используются и при декодировании.

Форматы и коды информационных элементов TCAP

Все IE в сообщениях TCAP имеют одинаковую структуру. Информационный элемент состоит из трех полей, которые всегда появляются в следующем порядке: тэг, длина, содержание:

  • тэг – отделяет один информационный элемент от другого, а также определяет содержание информационного элемента;
  • длина – определяет длину содержания;
  • содержание – содержание информационного элемента.

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