С кода типа сообщения длиной 1 байт, который является обязательным для всех сообщений, начинается информационное поле самого сообщения. Этот код однозначно определяет функциональное назначение и общую структуру каждого сообщения ISUP (перечень параметров и их последовательность).
Любое сообщение включает ряд параметров. Каждый параметр имеет название, которое кодируется одним байтом. Длина параметра может быть фиксированной или переменной.
Обязательные параметры фиксированной длины (F) вкаждом конкретном сообщении расположены на четко определенном месте. При этом имя параметра и его длина не указываются.
Обязательные параметры переменной длины (V) в каждом конкретном сообщении располагаются в четко определенной последовательности. Учитывая это, имя параметра не указывается, но параметр начинается с указателя его длины в байтах.
DPC | Код пункта назначения | Этикетка маршрутизации | ||||||||||||
OPC | Код исходного пункта | |||||||||||||
SLS | ||||||||||||||
CIC | 9 КИ | |||||||||||||
2ИКМ-поток | ||||||||||||||
IAM | Начальное адресное сообщение | |||||||||||||
F Индикаторы соединения | ||||||||||||||
3A | F | Индикаторы в прямом направлении | Обязат. пар-ры | |||||||||||
0B | F Категория вызывающего абонента | фиксир. длины | ||||||||||||
F Требуемая среда передачи | ||||||||||||||
Указатель параметра типа V (2) | ||||||||||||||
0A | Указатель начала О части (10) | |||||||||||||
Длина параметра V (8) | ||||||||||||||
Номер вызываемой стороны | ||||||||||||||
V | ||||||||||||||
0F | ||||||||||||||
0A | Имя параметра | |||||||||||||
Длина параметра О | ||||||||||||||
Номер вызывающего абонента | ||||||||||||||
О | ||||||||||||||
Необязательные индикаторы прямого направления | ||||||||||||||
Конец О параметров | ||||||||||||||
Рисунок 7 – Анализ сообщения ISUP
|
|
Указатели (Pointers) необходимы, для того чтобы реализовать произвольный доступ к любому из V параметров и началу необязательной части (О). Каждый обязательный параметр имеет свой указатель, а необязательные параметры - только один указатель начала необязательной части. Каждый указатель содержит численное значение числа байт (включая сам указатель), которые надо пропустить перед чтением параметра.
Необязательные параметры (О). Для параметров О последовательность их следования несущественна, так как заранее неизвестно, какие из них включены в каждое конкретное сообщение. Учитывая это, каждый необязательный параметр начинается с имени параметра длиной 1 байт. Конец необязательной части и сообщения в целом обозначается нулевым байтом.
Поле индикатора длины обозначается двоичным кодом, указывающим число байтов в поле содержания параметра. Индикатор длины не включает байт названия параметра или байт индикатора длины. Величина указателя (двоичная) указывает число байтов между указателем (включительно) и первым байтом (не включая его) параметра, связанного с этим указателем. Величина указателя из одних нулей используется для указания, что в случае необязательных параметров такие параметры отсутствуют.
Как известно из структуры сообщения ISUP, 7-ой байт является кодом типа сообщения. Его значение в шестнадцатеричной системе счисления 01, а в двоичной 00000001. Это начальное адресное сообщение IAM (Initial address). Обращаемся к таблице 2 методических указаний и определяем его формат.
|
Информацию, выведенную на печать в шестнадцатеричном виде, представим в двоичном виде.
Используя материалы таблиц 1 и 2 методических указаний, можно произвести анализ данного сообщения, который приведен на рисунке 7.
Проанализировав данное сообщение, установили, что значение кода селекции SLS равно 0011. Исходя из кода селекции, зарисуем маршрут СЕ, который представлен на рисунке 8.
|
|
|
|
4. Задача
Сформировать сообщение TCAP, в котором содержание элемента является одним значением (примитив). Класс тега – контекстно-зависимый. Код тега 20. Длина содержания 126 байтов.
Решение
Все элементы информации в сообщениях ТСАР имеют одинаковую структуру. Элемент информации состоит из трех полей, которые всегда появляются в следующем порядке (рисунок 9):
1 тег - отделяет один информационный элемент от другого и влияет на интерпретацию содержания;
2 длина - определяет длину содержания;
3 содержание - суть элемента.
Рисунок 9 - Структура сообщения ТСАР и элемента информации
Каждое поле кодируется при помощи одного или более байтов. Первый байт передается первым, причем бит А в байте - младший и передается первым.
Содержание каждого элемента является либо одним значением (примитив),либо одним или более элементом информации (конструктор).
Тег является первым полем информационного элемента ТСАР, отличает один элемент информации от другого и управляет интерпретацией содержания. Длина тега может достигать одного или более байтов. Как видно из рисунка 10, формат тега состоит из полей «Класс», «Форма» и «Код тега».
Рисунок 10 - Формат тега
Кодировка битов Н и G для указания класса приведена ниже:
Универсальный класс - 00
Прикладной класс - 01
Контекстно зависимый класс - 10
Класс применение пользователя - 11
Универсальный класс используется для тегов, которые особо стандартизированы в рекомендации Х.209 и являются типами, не зависящими от применения. Универсальные теги могут использоваться в любом месте, где используется универсальный элемент информации. Универсальный класс применяется во всех рекомендациях МСЭ-Т, т.е. в ОКС № 7 ASE, X.400 MHS и т.д.
«Прикладной» класс используется для элементов информации, которые стандартизированы для всех приложений (ASE), использующих ТС ОКС №7, т.е. ТС-пользователей.
Класс «Контекстно зависимый» используется для элементов информации, которые определены в контексте последующей более высокой конструкции и зависят от порядка других элементов данных в этой конструкции. Этот класс может использоваться для создания тега конструкции, такие теги могут быть применены в любой другой конструкции. То есть в нашей задаче биты H и G имеют значения 10, соответсвенно.
Бит F, как показано на рисунке 10, используется для обозначения типа (формы) элемента: либо "Примитив" (F=0), либо "Конструктор" (F=l).
Биты с А по Е первого байта тега плюс все байты расширения представляют код тега, который разделяет элемент одного типа от другого в одном и том же классе. Коды тега, лежащие в диапазоне от 00000 до 11110 (десятичное число от 0 до 30), представляются в одном байте. В нашем случае код тега 2010= 101002.
Механизм расширения заключается в установке битов от А до Е первого байта в 11111. Бит Н следующего байта является указателем расширения. Если бит Н байта расширения установлен в 0, то для этого тега больше дет байтов. Если бит Н установлен в 1, следующий байт используется для расширения кода тега. Результирующий тег состоит из битов от А до G каждого байта расширения, причем бит G первого байта расширения является старшим, а бит А последнего байта расширения является младшим.
Длина содержания (ДС) кодируется для обозначения числа байтов в Содержании. Длина не включает ни тег, ни ДС байтов.
ДС использует короткую, длинную или неопределенную форму представления.
Если длина менее 128 байтов, используется короткая форма. В короткой форме бит Н устанавливается в 0, а длина представлена двоичным числом при помощи битов от А до G. В нашем случае длина содержания 126 байтов, значит, используем короткую форму. 12610 = 11111102
Если ДС более 127 байтов, используется длинная форма представления ДС. Длинная форма ДС - от 2 до 127 байтов. Бит Н первого байта устанавливается в 1, а биты от А до G первого байта кодируют число, меньшее на единицу, чем размер ДС в байтах, младшим и старшим битами которого являются биты G и А соответственно. Сама длина кодируется как двоичное число, младшим и старшим битами которого являются бит Н второго байта и бит А последнего байта соответственно.
Неопределенная форма занимает один байт и может (хотя нет необходимости) быть использована вместо короткой или длинной формы, когда элемент является конструктором. Она имеет значение 10000000. Когда используется эта форма, Содержание заканчивает специальный индикатор «конец содержания» (КС).
Представлением указателя конца содержания является элемент универсального класса, примитив, чей ИД кода имеет значение 0 и чье Содержание не используется или отсутствует.
Максимальное значение, которое может быть закодировано, связано с ограничением размера сообщения сети, если сеть не ориентирована на соединение.
Содержание - это сущность элемента ТСАР и содержит информацию, которую элемент передает. Его длина переменна, но всегда содержит целое число байтов. Содержание интерпретируется в зависимости от типа, т.е. в соответствии со значением тега. Поле Содержание состоит из серии элементов информации порции транзакции, каждый из которых соответствует общему формату «тег, длина, содержание». В случае, когда более чем один элемент информации находится в поле Содержание, то и он использует ту же структуру и сам состоит из тега, длины и содержания.
H | G | F | E | D | C | B | A |
Содержание | |||||||
Список литературы
1. Ленковец Е. А. Программа, методические указания и контрольные задания по дисциплине «Сигнализация в ТК». – Мн.: ВГКС,-2009
2. https://communications.narod.ru/sbornic/statist/article-4.htm Мухин С.В. Исследования: от кабеля до ОКС 7 "Сети и системы связи", # 12, - 2002