ASN.1

ASN.1

Abstract Syntax Notation One (notación sintáctica abstracta 1, ASN.1) es una norma para representar datos independientemente de la máquina que se esté usando y sus formas de representación internas. Es un protocolo de nivel de presentación en el modelo OSI. El protocolo SNMP usa el ASN.1 para representar sus objetos gestionables.

Contenido

Descripción de la información

ASN.1 utiliza la notación de Backus-Naur (BNF) para describir la forma en que la información es almacenada.

Tipos de datos

Los tipos de datos se clasifican según si son simples (primitivos), compuestos (construidos a partir de otros, simples o compuestos) o definidos, con una etiqueta de nombre para identificarlos.

Tipos primitivos

Los tipos primitivos son escalares, es decir, almacenan un único valor, como por ejemplo una cadena de texto o un entero. Los tipos primitivos más importantes son:

  • El tipo INTEGER se usa para representar números enteros.
  • El tipo OCTET STRING almacena una secuencia de bytes. De él se derivan tres subtipos:
    • DisplayString (para cadenas de caracteres ASCII)
    • OctetBitString (para cadenas de bits mayores de 32)
    • PhysAddress (para representar direcciones del nivel de enlace).
  • El tipo OBJECT IDENTIFIER para representar los identificadores de los objetos, es decir, la posición de un objeto dentro del árbol de la MIB.
  • El tipo BOOLEAN para valores que sólo pueden ser verdadero o falso.
  • El tipo NULL para representar la ausencia de valor.

Tipos construidos

Los tipos construidos son tipos compuestos. Se usan para crear arrays y tablas. Los más importantes son:

  • El tipo SEQUENCE es una estructura de datos, es decir, una lista ordenada de tipos de datos diferentes. Es el tipo que se usa para almacenar una fila de una tabla.
  • El tipo SEQUENCE OF es una lista ordenada de tipos de datos iguales. Es similar al tipo "SEQUENCE", excepto que todos los tipos han de ser iguales. Es el tipo usado en tablas para almacenar todas las filas.
  • El tipo SET es equivalente al "SEQUENCE", pero la lista no está ordenada. Hay que notar que todos los componentes de la lista SET deben ser diferentes sino la definición sería ambigua.
  • El tipo SET OF es equivalente al "SEQUENCE OF" pero la lista no está ordenada.
  • El tipo CHOICE es un tipo de datos en el que hay que elegir uno de entre los tipos disponibles en una lista. Por ejemplo, un tipo "Animal" podría ser una "CHOICE" entre los tipos "Perro", "Gato" o "Pez".

Tipos Definidos

Son tipos derivados de los anteriores pero con un nombre más descriptivo. Los más importantes son:

  • IpAddress sirve para almacenar una dirección IP. Son 4 bytes y se define como "OCTET STRING (SIZE (4))".
  • Counter representa un contador que únicamente puede incrementar su valor y que cuando llega a su valor máximo, vuelve a cero. Se define como un entero sin signo, que sólo puede tomar valores positivos y el cero.
  • Gauge es como un indicador de nivel. Es un valor que puede incrementar o decrementar. Puede llevar asociadas acciones a tomar en caso de que se superen unos umbrales. Un ejemplo es un medidor del ancho de banda medido en un determinado interfaz. Está definido como un entero de 32 bits.
  • TimeTicks es un tipo de datos usado para medir tiempos. Indica el número de centésimas de segundo que han transcurrido desde un determinado evento temporal. Es un entero de 32 bits.

Macros de ASN.1

Podemos crear nuevos tipos de ASN.1 usando macros.

Clases de datos

Existen cuatro clases de datos, que etiquetan al resto de tipos de datos.

  • Universal: Para tipos de datos generales, como "Boolean", "Integer" y "Real".
  • Específica al contexto: Definidos para el contexto local en que se usan estos tipos.
  • Aplicación: Definidos para la aplicación específica.
  • Privada: Definidos por el usuario.

Codificación

La sintaxis de transferencia especifica cómo se codifican los distintos tipos de datos. Define la forma de codificar en el transmisor y decodificar en el receptor los valores expresados con ASN.1.

Este estándar no define cómo se han de codificar esos datos, sino que es una sintáxis abstracta para indicar el significado de los datos. Para la codificación de los datos se usan otras normas como: BER (Reglas de codificación básicas) (BER - X.209), CER (canonical encoding rules), DER (distinguished encoding rules), PER (packed encoding rules) y XER (XML encoding rules).

BER

Las Reglas de codificación básicas, o BER (Basic Encoding Rules), es uno de los formatos de codificación definidos como parte del estándar ASN.1. Las reglas, denominadas sintaxis de transferencia en el contexto de ASN.1, especifican las secuencias de octetos exactas para codificar un elemento de datos dado. La sintaxis BER, junto con dos subconjuntos de BER: Canonical Encoding Rules (CER) y Distinguished Encoding Rules (DER), están definidas por el documento de estándares X.690 de la UIT-T, el cual es parte de las series de documentos ASN.1. Cada elemento de datos está codificado usando la codificación tipo-longitud-valor, es decir, por un identificador de tipos, una descripción longitud, los elementos de datos actuales, y donde sea necesario, un marcador de fin-de-contenido. Por ejemplo, cuando codificamos un valor construido (esto es, un valor que está compuesto de múltiples valores ya codificados más pequeños), el emisor puede usar una de las tres formas diferentes para especificar la longitud de los datos. Estas implementaciones confían en la flexibilidad que BER suministra para usar lógica de codificación que es más fácil de implementar, pero redunda en una corriente de datos mayor de lo necesario.

Estándares

  • Estándares que describen la notación ASN.1:
    • ITU-T Rec. X.680 | ISO/IEC 8824-1
    • ITU-T Rec. X.681 | ISO/IEC 8824-2
    • ITU-T Rec. X.682 | ISO/IEC 8824-3
    • ITU-T Rec. X.683 | ISO/IEC 8824-4
  • Estándares que describen las reglas de codificación de ASN.1:
    • ITU-T Rec. X.690 | ISO/IEC 8825-1 (BER, CER y DER)
    • ITU-T Rec. X.691 | ISO/IEC 8825-2 (PER)
    • ITU-T Rec. X.693 | ISO/IEC 8825-4 (XER)
    • ITU-T Rec. X.694 | ISO/IEC 8825-5 (mapeado XSD)
    • RFC 3641 (GSER)

Wikimedia foundation. 2010.

Игры ⚽ Поможем написать курсовую

Mira otros diccionarios:

  • ASN.1 — (англ. Abstract Syntax Notation One) в области телекоммуникаций и компьютерных сетей язык для описания абстрактного синтаксиса данных (ASN.1), используемый OSI. Стандарт записи, описывающий структуры данных для представления, кодирования,… …   Википедия

  • ASN — steht für: Abfallschlüsselnummer Access Service Network Advance Shipping Notice Aktives Semantisches Netz American Society of Nephrology ASN Technology Group, eine chinesische F E Firma Assisted Satellite Navigation Atlantic Steam Navigation… …   Deutsch Wikipedia

  • asn- — *asn germ., Substantiv: nhd. Lohn; ne. reward (Neutrum); Rekontruktionsbasis: got., ae., afries., as., ahd.; Etymologie: idg. *esen …   Germanisches Wörterbuch

  • ASN — may mean:* Abstract syntax notation * Access Service Network * Adobe Solutions Network * Advanced Shipping Notice * American Society for Nutrition * American Society of Nephrology * American Society of Neuroimaging * The former ticker symbol for… …   Wikipedia

  • Asn — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. {{{image}}}   Sigles d une seule lettre   Sigles de deux lettres > Sigles de trois lettres …   Wikipédia en Français

  • Asn — 〈Zeichen für〉 Asparagin * * * Asn: Symbol für ↑ Asparagin in Peptidformeln. * * * Asn,   Asp NH2, Abkürzungen für Asparagin …   Universal-Lexikon

  • Asn — Abreviatura de asparragina. Diccionario Mosby Medicina, Enfermería y Ciencias de la Salud, Ediciones Hancourt, S.A. 1999 …   Diccionario médico

  • asn — simb. TS chim. asparagina …   Dizionario italiano

  • Asn — английская аббревиатура аспарагина (см.) …   Генетика. Энциклопедический словарь

  • ASN.1 — Die Abstract Syntax Notation One (ASN.1) ist eine Beschreibungssprache zur Definition von Datenstrukturen sowie Festlegungen zur Umsetzung von Datenstrukturen und Elementen in ein netzeinheitliches Format. Sie ist gemeinsamer Standard der ITU T… …   Deutsch Wikipedia

  • ASN.1 — Pile de protocoles 7.  Application 6.  Présentation 5.  Session 4.  Tr …   Wikipédia en Français

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”