Abstract syntax notation one
|
In telecommunications and computer networking Abstract Syntax Notation one (ASN.1) is a standard and flexible notation that describes data structures for representing, encoding, transmitting, and decoding data. It provides a set of formal rules for describing the structure of objects that are independent of machine-specific encoding techniques and is a precise, formal notation that removes ambiguities. A free e-tutorial (http://asn1.elibel.tm.fr/en/tools/tutorial/) is available online to check your understanding of the ASN.1 syntax and semantics.
ASN.1 is a joint ISO and ITU-T standard, originally defined in 1984 as part of CCITT X.409:1984. ASN.1 moved to its own standard, X.208, in 1988 due to wide applicability. The substantially revised 1995 version is covered by the X.680 series.
ASN.1 defines the abstract syntax of information but does not restrict the way the information is encoded. Various ASN.1 encoding rules provide the transfer syntax (a concrete representation) of the data values whose abstract syntax is described in ASN.1. The standard ASN.1 encoding rules include BER (Basic Encoding Rules), CER (Canonical Encoding Rules), DER (Distinguished Encoding Rules), PER (Packed Encoding Rules), and XER (XML Encoding Rules).
ASN.1 together with specific ASN.1 encoding rules facilitates the exchange of structured data especially between application programs over networks by describing data structures in a way that is independent of machine architecture and implementation language.
Application layer protocols such as X.400 electronic mail, X.500 directory services, H.323 (VoIP) and SNMP use ASN.1 to describe the PDUs they exchange. It is also extensively used in the Access and Non-Access Strata of UMTS. There is a lot of other application domains (http://asn1.elibel.tm.fr/en/uses/index.htm) of ASN.1.
A lot of (free and commercial) ASN.1 tools (http://asn1.elibel.tm.fr/links/#tools) are available.
Standards
Standards describing the ASN.1 notation (free download from the ITU-T website (http://www.itu.int/ITU-T/studygroups/com17/languages/)):
- 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
Standards describing the ASN.1 encoding rules (free download from the ITU-T website (http://www.itu.int/ITU-T/studygroups/com17/languages/)):
- ITU-T Rec. X.690 | ISO/IEC 8825-1 (BER, CER and DER)
- ITU-T Rec. X.691 | ISO/IEC 8825-2 (PER)
- ITU-T Rec. X.693 | ISO/IEC 8825-4 (XER)
List of all ASN.1 standards (http://asn1.elibel.tm.fr/standards/)
References
- Federal Standard 1037C
- MIL-STD-188.
- Other references (http://asn1.elibel.tm.fr/fr/biblio/index.htm)
- This article was originally based on material from the Free On-line Dictionary of Computing, which is licensed under the GFDL.
External links
- The ASN.1 Consortium (http://www.asn1.org/)
- ASN.1 Information site (http://asn1.elibel.tm.fr/)
- Other links (http://asn1.elibel.tm.fr/links/)