11.1 General
24.0073GPPGeneral AspectsMobile radio interface signalling layer 3Release 17TS
11.1.1 Messages
For all concerned protocols, concrete messages are bit strings of variable length, formally a succession of a finite, possibly null, number of bits (i.e., elements of the set {"0", "1"}), with a beginning and an end.
The services provided by lower layers includes the transmission of such bit strings.
Considered as messages, these bit strings follow some structure (the syntax), enabling to organize bits in information pieces of a different meaning level.
The term message is used as well for a concrete message (i.e., a bit-string, as defined by the giving of all its bits, in practice appearing at one point of time in a concrete dialog), as for a class of concrete messages sharing a common structure. A concrete message is an instance of the corresponding class of messages. Message classes can be described as sets of potential bit strings, and of a common structure, enabling in particular to identify parts meaningful for the co-operation functions the protocol supports.
In general, in the rest of the clause as in the protocol specifications, the term message will be used to refer to the class. It may be used, when the context prevents ambiguity, to refer to a message instance (e.g., a received is usually a message instance). In the rest of this clause, the term message instance will be used when needed to refer unambiguously to specific concrete message, i.e. to a specific bit string.
A message (message class) can be described directly as a set of bit strings, using the formal notation described in Annex B.
A message can also be described as a standard L3 message, in which case the interpretation of the message description in term of a set of bit strings is specified in the next clauses.
In all cases, structuring messages is based on the underlying bit string. Thus, the following terms are used:
– a part of a message instance is a sub-string of the corresponding string; a part of a message (as a class) is described by a definition applicable to all instances; a part of a message then is both a structural attribute of the message as a class, and a set of sub-strings, composed of the sub-strings obtained by applying the definition to each possible instance; for instance, « the first octet » of a message instance is defined from the moment its length is greater than 8, and is the sub-string composed of the first 8 bits of the message instance; the « first octet » of a message as a class is the structural definition given above, and the set of all 8-bit octet strings that can be obtained as the first octet of one instance of the class;
– "part A follows part B" means that in the message the sub-string corresponding to part B is concatenated with the sub-string of part A;
– the length of a message instance, or of part of message instance, is the number of bits of the corresponding sub string; rigorously speaking, a message as a class (or a part seen as a class) has a length only if all the corresponding instances have the same length; by extension, sentences such as « a message as a length in the range so and so » means that the length of an instances of the class always fall in the range.
11.1.2 Octets
In many places, a message is described as a succession of octets. An octet is generally a succession of 8 bits. Unless otherwise indicated, the term octet is used more restrictively to refer to a part of message, defined when considering a message as a succession of octets, e.g., the first 8 bits of a message, or the 17th to the 23rd, form an octet, but not the second bit to the 9th.
Unless specified otherwise, the numbering conventions are the following:
– Octets in a message or in a part are numbered from 1 onward, starting at the beginning of the bit string. This numbering can be strictly applied only for message instances, and for the first part of a message structurally identical for all instances.
– Bits in octets are numbered from 8 down to 1, starting at the beginning of the octet.
– When represented as tables showing the different bit positions, octets are presented in the natural occidental order, i.e., from the top of a page downward. Bits in octets are presented with the first bit on the left of the page.
11.1.3 Integer
In many places, message parts are described as encoding integers. Two generic encoding are defined in this clause.
11.1.3.1 Binary
A message part is said to encode in binary an integer to indicate that concrete strings are mapped, for some usage, on the set of non signed integers with the following rule:
– Let k denote the length of the bit string, and let b(i) denote an integer of value 0 if the ith bit in the string is "0", and 1 otherwise. The encoded integer n respects the equation:
11.1.3.2 2-complement binary
A message part is said to encode in 2-complement binary an integer to indicate that concrete strings are mapped, for some usage, on the set of signed integers with the following rule:
– Let k denote the length of the bit string, and let b(i) denote an integer of value 0 if the ith bit in the string is "0", and 1 otherwise. The encoded integer n respects the equation:
11.1.4 Spare parts
In some cases the specification is that which message instances can be accepted by a receiver comprise more that the legal message instances that can be sent. One example of this is the notion of spare bit. A spare bit has to send as the value indicated in the specification (typically 0), but can be accepted as a 0 or a 1 by the receiver without error diagnosis. A spare field is a field composed entirely of spare bits.