Basic Encoding Rules (BER) is the set of rules for encoding ASN.1 defined data into a particular representation for transmitting to another system. In Chapter , we compared the abstract syntax notation to the declaration section of a high- level language like C. Continuing the analogy, we compare the transfer syntax BER to an assembly/machine language. Instances, or values, of the abstract notation ASN.1 are encoded for transfer between two application entities by the set of encoding rules, or transfer syntax, BER. Just as a high-level language is more frequently used than assembly language in applications programming, so too are network users and programmers more apt to be familiar with ASN.1 than BER in networking applications. For that reason, we dwelt on ASN.1 in some detail and discuss BER in a much briefer way.
We give the structure of BER and examples, enough to acquire a flavor of the encoding/decoding rules that are used to transmit ASN.1 defined data types and values. ISO 8825 (or ISO 8825-Part 1: Basic Encoding Rules) and CCITT's X.209 contain a detailed specification of BER. Later amendments in ISO 8825 PDAM 2 were combined with ISO 8825 to form ISO 8825 Part 1: Basic Encoding Rules.