Справочник по сетевым протоколам

       

Типы тегов АСН.1.


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

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

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

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

г) элемент подмножества исходного типа, образованного использованием некоторой структурной или порядковой взаимосвязи между элементами исходного множества;

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

Существует четыре класса тегов:

  • универсальный (universal);
  • 2) прикладной (application);

    3) пользовательский (private);

    4) контекстно-зависимый (context-specific).

    Теги универсального класса определяются спецификациями Рекомендации Х.208, описывающей АСН.1, причем каждый тег присвоен какому-то одному типу либо некоторому способу построения типов. Теги назначаются таким образом, чтобы для структурированных типов по тегу можно было определить структуру верхнего уровня, а для простых типов тег полностью определял тип. В таблице 1 представлены теги универсального класса, назначенные в Х.208.

    Табл. 1.



    ТЕГ ТИП ОПИСАНИЕ
    UNIVERSAL 1 булевский простой тип с двумя различными значениями: истина(TRUE) и ложь(FALSE)
    UNIVERSAL 2 целочисленный простой тип с различными значениями, являющимися положительными или отрицательными целыми числами, включая ноль (рассматриваемый как одно значение)
    UNIVERSAL 3 “строка битов” простой тип, различными значениями которого являются упорядоченные последовательности из пустого множества битов, одного или более битов (число битов в строке не ограничено)
    UNIVERSAL 4 “строка октетов” простой тип, различными значениями которого являются упорядоченные последовательности из пустого множества октетов, одного или более октетов, где октет -упорядоченная последовательность из восьми битов (число октетов в строке не ограничено)
    UNIVERSAL 5 вырожденный простой тип, состоящий из единственного значения, также называемого вырожденным значением (“NULL”)
    UNIVERSAL 6 “идентификатор объекта” тип, различные значения которого составляют множество всех идентификаторов объектов, присвоенных в соответствии с АСН.1 (АСН.1 предоставляет возможность целому ряду организаций - источников идентификации независимо друг от друга связывать идентификаторы объектов с информационными объектами)
    UNIVERSAL 7 “описатель объекта” тип, различные значения которого имеют вид текста, ориентированного на восприятие человеком, дающего краткое описание информационного объекта
    UNIVERSAL 8 внешний тип, различные значения которого не могут быть установлены только лишь по той информации, что они являются значениями внешнего типа, однако значения типа могут быть установлены по их кодовому представлению; эти значения могут быть (но не обязательно) описаны с помощью АСН.1, и соответственно их кодовое представление может (но не обязательно) соответствовать правилам кодирования для АСН.1
    UNIVERSAL 9 “действительное число” простой тип, различными значениями которого являются элементы множества действительных чисел
    UNIVERSAL 10 перечислительный простой тип, значениям которого назначаются отличные друг от друга идентификаторы, являющиеся частью обозначения для этого типа
    UNIVERSAL 12-15 зарезервированы для последующих версий  
    UNIVERSAL 16 “последовательность” и

    “последовательность из”

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

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

    UNIVERSAL 17 “множество” и

    “множество из”

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

    структурированный тип, определяемый ссылкой на единственный существующий тип; каждое значение нового типа является неупорядоченным списком из нуля, одного или более значений существующего типа

    UNIVERSAL 18-22 “строка знаков” тип, значения которого являются строками знаков из некоторого набора знаков
    UNIVERSAL 23-24 “время”  
    UNIVERSAL 28-... зарезервированы для последующих версий  
    <


    /p>

    Теги прикладного класса присваиваются типам данных в других стандартах или Рекомендациях. В рамках одного стандарта или рекомендации тег прикладного класса присвоен только какому-то одному типу.

    Теги пользовательского класса никогда не присваиваются в стандартах ИСО и Рекомендациях МККТТ. Порядок их использования может быть различным в различных организациях.

    Теги контекстно-зависимого класса могут свободно назначаться при любом использовании АСН.1 и интерпретируются в соответствии с контекстом, в котором они используются.

    Теги ориентированы главным образом на обработку данных в машине. Однако для различия типов необходимо, чтобы теги, присвоенные данным типам, были различны.

    <


    Содержание раздела