I.2 MONP messages

24.3793GPPMission Critical Push To Talk (MCPTT) call controlProtocol specificationRelease 18TS

I.2.1 Components of a MONP message

A standard MONP message consists of an imperative part, itself composed of a header and the rest of imperative part, followed by a non-imperative part. Both the non-header part of the imperative part and the non-imperative part are composed of successive parts referred as standard information elements.

I.2.2 Format of standard information elements

A standard IE may have the following parts, in that order:

– an information element identifier (IEI);

– a length indicator (LI);

– a value part.

A standard IE has one of the formats shown in table I.2.2-1:

Table I.2.2-1: Formats of information elements

Format

Meaning

IEI present

LI present

Value part present

T

Type only

yes

no

no

V

Value only

no

no

yes

TV

Type and Value

yes

no

yes

LV

Length and Value

no

yes

yes

TLV

Type, Length and Value

yes

yes

yes

LV-E

Length and Value

no

yes

yes

TLV-E

Type, Length and Value

yes

yes

yes

Some IEs may appear in the structure, but not in all instances of messages. An IE is then said to be present or not present in the message instance. If an IE is not present in a message instance, none of the three parts is present. Otherwise, parts must be present according to the IE format.

In the message structure, an IE that is allowed not to be present in all message instances is said not to be mandatory. Other IEs are said to be mandatory.

I.2.2.1 Information element type and value part

Every standard IE has an information element type which determines the values possible for the value part of the IE, and the basic meaning of the information. The information element type describes only the value part. Standard IEs of the same information element type may appear with different formats. The format used for a given standard IE in a given message is specified within the description of the message.

The value part of a standard IE either consists of a half octet or one or more octets; the value part of a standard IE with format LV or TLV consists of an integral number of octets, between 0 and 255 inclusive; it then may be empty, i.e., consist of zero octets; if it consists of a half octet and has format TV, its IEI consists of a half octet, too. For LV-E and TLV-E, the value part of a standard IE consists of an integral number of octets, between 0 and 65535 inclusive. The value part of a standard IE may be further structured into parts, called fields.

I.2.2.2 Length indicator

For LV or TLV, the length indicator (LI) of a standard IE consists of one octet. For LV-E and TLV-E, the LI of a standard IE consists of two octets where bit 8 of octet n contains the most significant bit and bit 1 of octet n+1 contains the least significant bit (refer to figure I.2.2.4-9 in clause I.2.2.4 for the relative ordering of the 2 octets). The LI contains the binary encoding of the number of octets of the IE value part. The LI of a standard IE with empty value part indicates 0 octets. Standard IE of an information element type such that the possible values may have different values must be formatted with a length field, i.e., LV, TLV, LV-E or TLV-E.

I.2.2.3 Information element identifier

When present, the IEI of a standard IE consists of a half octet or one octet. A standard IE with IEI consisting of a half octet has format TV, and its value part consists of a half octet. The value of the IEI depends on the standard IE, not on its information element type. The IEI, if any, of a given standard IE in a given message is specified within the description of the message. In some protocol specifications, default IEI values can be indicated. They are to be used if not indicated in the message specification. Non mandatory standard IE in a given message, i.e., IE which may be not be present (formally, for which the null string is acceptable in the message), must be formatted with an IEI, i.e., with format T, TV, TLV or TLV-E.

I.2.2.4 Categories of IEs; order of occurrence of IEI, LI, and value part

The following categories of standard information elements are defined:

– information elements of format V or TV with value part consisting of 1/2 octet (type 1);

– information elements of format T with value part consisting of 0 octets (type 2);

– information elements of format V or TV with value part that has fixed length of at least one octet (type 3);

– information elements of format LV or TLV with value part consisting of zero, one or more octets (type 4)

– information elements of format LV-E or TLV-E with value part consisting of zero, one or more octets and a maximum of 65535 octets (type 6).

NOTE: The "types" and "formats" used for MONP match those defined in 3GPP TS 24.007 [56];

Type 1 standard information elements of format V provide the value in bit positions 8, 7, 6, 5 of an octet (see figure I.2.2.4-1) or bits 4, 3, 2, 1 of an octet (see figure I.2.2.4-2).

Figure I.2.2.4-1: Type 1 IE of format V

Figure I.2.2.4-2: Type 1 IE of format V

Type 1 standard information elements of format TV have an IEI of a half octet length; they provide the IEI in bit positions 8, 7, 6, 5 of an octet and the value part in bit positions 4, 3, 2, 1 of the same octet, see figure I.2.2.4-3.

Figure I.2.2.4-3: Type 1 IE of format TV

A type 2 standard IE has format T; its IEI consists of one octet, its value part is empty, see figure I.2.2.3-4.

Figure I.2.2.4-4: Type 2 IE

A type 3 standard information element has format V or TV; if it has format TV, its IEI consists of one octet and proceeds the value part in the IE. The value part consists of at least one octet. See figure I.2.2.4-5 and figure I.2.2.4-6.

Figure I.2.2.4-5: Type 3 IE of format V (k = 0, 1, 2, …)

Figure I.2.2.4-6: Type 3 IE of format TV (k = 1, 2, …)

A type 4 standard information element has format LV or TLV. Its LI precedes the value part, which consists of zero, one, or more octets; if present, its IEI has one octet length and precedes the LI. See figure I.2.2.4-7 and figure I.2.2.4-8.

Figure I.2.2.4-7: Type 4 IE of format LV (k = 0, 1, 2, …)

Figure I.2.2.4-8: Type 4 IE of format TLV (k = 1, 2, …)

A type 6 standard information element has format TLV-E. The IEI has one octet length and precedes the LI of 2 octets and the value part which consists of zero, one or up to 65535 octets. See figure I.2.2.4-9 and figure I.2.2.4-10.

Figure I.2.2.4-9: Type 6 IE of format LV-E (k = 1, 2, …)

Figure I.2.2.4-10: Type 6 IE of format TLV-E (k = 1, 2, …)

I.2.2.5 Method for IE structure

Standard IEs can be further structured in parts called fields and represented in a tabular form.

The IE is presented in its maximum format, i.e., T, TV, TLV or TLV-E, in a picture representing the bits in a table, each line representing an octet. Bits appear in the occidental order, i.e., from left of the page to right of the page, and from top of the page to bottom of the page.

Boxes so delimited contains typically the field name, possibly an indication of which bits in the field are in the box, and possibly a value (e.g., for spare bits).

A specific method can be used in the IE description to describe a branching structure, i.e., a structure variable according to the value of particular fields in the IE. This design is unusual outside type 4 and type 6 IEs, and as, a design rule, should be used only in type 4 and type 6 IEs.

a) The octet number of an octet within the IE is defined typically in the table. It consists of a positive integer, possibly of an additional letter, and possibly of an additional asterisk, see clause f). The positive integer identifies one octet or a group of octets.

b) Each octet group is a self-contained entity. The internal structure of an octet group may be defined in alternative ways.

c) An octet group is formed by using some extension mechanism. The preferred extension mechanism is to extend an octet (N) through the next octet(s) (Na, Nb, etc.) by using bit 8 in each octet as an extension bit.

– The bit value "0" indicates that the octet group continues through to the next octet. The bit value "1" indicates that this octet is the last octet of the group. If one octet (Nb) is present, the preceding octets (N and Na) shall also be present.

– In the format descriptions of the individual information elements, bit 8 is marked "0/1 ext" if another octet follows. Bit 8 is marked "1 ext" if this is the last octet in the extension domain.

– Additional octets may be defined in later versions of the protocols ("1 ext" changed to "0/1 ext") and equipments shall be prepared to receive such additional octets; the contents of these octets shall be ignored. However the length indicated in the formal description of the messages and of the individual information elements only takes into account this version of the protocols.

d) In addition to the extension mechanism defined above, an octet (N) may be extended through the next octet(s) (N+1, N+2 etc.) by indications in bits 7-1 (of octet N).

e) The mechanisms in c) and d) may be combined.

f) Optional octets are marked with asterisks (*). As a design rule, the presence or absence of an optional octet should be determinable from information in the IE and preceding the optional octet. Care should be taken not to introduce ambiguities with optional octets.

g) At the end of the IE, additional octets may be added in later versions of the protocols also without using the mechanisms defined in c) and d). Equipments shall be prepared to receive such additional octets; the contents of these octets shall be ignored. However the length indicated in the formal description of the messages and of the individual information elements only takes into account this version of the protocols.

I.2.2.6 Imperative part of a standard MONP message

I.2.2.6.0 General

The imperative part of a standard MONP message is composed of a header possibly followed by mandatory standard IEs having the format V, LV or LV-E.

The header consists of a message type information element as specified in clause 15.2.1.

I.2.2.6.1 Standard information elements of the imperative part

The message type octet of a standard MONP message may be followed by mandatory standard IEs having the format V, LV or LV-E as specified in the message description in the relevant protocol specification.

As a design rule, octet boundaries must be respected. This implies that half-octet standard IEs (i.e., V formatted type 1 standard IEs) must appear by pair.

If message is received as a standard MONP message, and that is too short to contain the complete imperative part as specified in the relevant protocol specification, an imperative message part error is diagnosed. (The same error may be diagnosed at detection of certain contents of the imperative part of a message; this is defined in the relevant protocol specification.) The treatment of an imperative message part error is defined in the relevant protocol specification.

I.2.2.7 Non-imperative part of a standard MONP message

The imperative part of a standard MONP message may be followed by the non-imperative part. The MONP protocol specification defines where the imperative part of a standard MONP message ends. The non-imperative part of a standard MONP message is composed of (zero, one, or several) standard IEs having the format T, TV, TLV or TLV-E. The receiver of a standard MONP message shall analyse the non-imperative part as a succession of standard IEs each containing an IEI, and shall be prepared for the non-imperative part of the message to contain standard IEs that are not specified in the relevant protocol specification.

An IEI may be known in a message or unknown in a message.

An IEI that is known in a message designates the IE type of the IE the first part of which the IEI is, as well as the use of the information. Which IE type it designates is specified in the relevant protocol specification. Within a message, different IEIs may designate the same IE type if that is defined in the relevant protocol specification.

Whether the second part of an IE with IEI known in a message is the length or not (in other words, whether the IEI is the first part of an IE formatted as TLV, TLV-E or not) is specified in the relevant protocol specification.

Unless otherwise specified in the protocol specification, the receiver shall assume that IE with unknown IEI are TV formatted type 1, T formatted type 2, TLV formatted type 4 or TLV-E formatted type 6 standard IEs. The IEI of unknown IEs together with, when applicable, the length indicator, enable the receiver to determine the total length of the IE, and then to skip unknown IEs. The receiver shall assume the following rule for IEs with unknown IEI:

Bit 8 of the IEI octet is set to "1" indicates a TV formatted type 1 standard IE or a T formatted type 2 IEs. Hence, a 1 valued bit 8 indicates that the whole IE is one octet long.

Furthermore:

Bit 8 of the IEI octet set to "0" and bits 7 to 4 set to "1" indicates a TLV-E formatted type 6 IE, i.e. the following two octets are length octets. Bit 8 of the IEI octet set to "0" and bit 7 to 4 set to any other bit combination indicates a TLV formatted type 4 IE, i.e. the following octet is a length octet.

As a design rule, it is recommended that IEIs of any TV formatted type 1, T formatted type 2, TLV formatted type 4 or TLV-E formatted type 6 IE follow the rule, even if assumed to be known by all potential receivers.

A message may contain two or more IEs with equal IEI. Two IEs with the same IEI in a same message must have the same format, and, when of type 3, the same length. More generally, care should be taken not to introduce ambiguities by using an IEI for two purposes. Ambiguities appear in particular when two IEs potentially immediately successive have the same IEI but different meanings and when both are non-mandatory. As a recommended design rule, messages should contain a single IE of a given IEI.

Each protocol specification may put specific rules for the order of IEs in the non-imperative part. An IE known in the message, but at a position non-compliant with these rules is said to be out of sequence. An out of sequence IE is decoded according to the format, and, when of type 3 the length, as defined in the message for its IEI.

I.2.2.8 Presence requirements of information elements

The relevant protocol specification may define three different presence requirements (M, C, or O) for a standard IE within a given standard MONP message:

– M ("Mandatory") means that the IE shall be included by the sending side, and that the receiver diagnoses a "missing mandatory IE" error when detecting that the IE is not present. An IE belonging to the imperative part of a message has presence requirement M. An IE belonging to the non-imperative part of a message may have presence requirement M;

– C ("Conditional") means:

* that inclusion of the IE by the sender depends on conditions specified in the relevant protocol specification;

* that there are conditions for the receiver to expect that the IE is present and/or conditions for the receiver to expect that the IE is not present in a received message of a given message type; these conditions depend only on the content of the message itself, and not for instance on the state in which the message was received, or on the receiver characteristics; they are known as static conditions;

* that the receiver detecting that the IE is not present when sufficient static conditions are fulfilled for its presence, shall diagnose a "missing conditional IE" error;

* that the receiver detecting that the IE is present when sufficient static conditions are fulfilled for its non-presence, shall diagnose an "unexpected conditional IE" error.

– Only IEs belonging to the non-imperative part of a message may have presence requirement C;

– O ("Optional") means that the receiver shall never diagnose a "missing mandatory IE" error, a "missing conditional IE" error, or an "unexpected conditional IE" error because it detects that the IE is present or that the IE is not present. (There may however be conditions depending on the states, resources, etc. of the receiver to diagnose other errors.) Only IEs belonging to the non-imperative part of a message may have presence requirement O.

Unless otherwise specified the presence of an IE of unknown IEI or of an out of sequence IE shall not lead by itself to an error.

I.2.2.9 Description of standard MONP messages

This clause describes a generic description method for MONP messages, the tabular description.

A MONP message is described by a table listing the header elements and the standard IEs in the message. For each element is given:

– if applicable the IEI, in hexadecimal representation (one digit followed by and hyphen for TV formatted type 1, and two digits for the other cases);

– the name of the IE (this is used in particular for the description of conditional presence rules);

– the type of the information element, with a reference of where the internal structure of the value part is specified;

– the format of the standard IE (T, V, TV, LV, TLV, LV-E or TLV-E); and

– the length, or the range of lengths, of the whole standard IE, including when applicable the T and L parts.

The list of elements is given in the table in the order they appear in the resulting bit string, with the exception of half‑octet elements in the imperative part: half octets in a pair are inverted.

Annex J (informative):
INFO packages defined in the present document