7 Elements for layer-to-layer communication

3GPP44.006Data Link (DL) layer specificationMobile Station - Base Station System (MS - BSS) interfaceRelease 17TS

7.1 Definition of primitives and parameters

Communications between layers and between the data link layer and layer 3 are accomplished by means of primitives.

Primitives represent, in an abstract way, the logical exchange of information and control between the data link layer and adjacent layers. They do not specify or constrain implementations.

Primitives consist of commands and their respective responses associated with the services requested of a lower layer. The general syntax of a primitive is:

XX ‑ Generic name ‑ Type (Parameters);

where XX designates the layer providing the service. For the present document XX is DL for the data link layer, PH for the physical layer and MDL for administrative functions (e.g. error reporting and recovery).

7.1.1 Generic names

The generic name specifies the activity that the identified layer should perform. Table 5 illustrates the primitives defined in the present document.

The primitive generic names that are defined in the present document are:

7.1.1.1 DL‑ESTABLISH

The DL‑ESTABLISH primitives are used to request, confirm and indicate the outcome of the procedures for establishing multiple frame operation.

7.1.1.2 DL‑RELEASE

The DL‑RELEASE primitives are used to request, confirm and indicate the outcome of the procedures for terminating a previously established multiple frame operation.

In the case of a data link layer malfunction, layer 3 will be notified by a RELEASE indication.

7.1.1.3 DL‑DATA

The DL‑DATA primitives are used to pass to and from the data link layer layer 3 message units which are to be transmitted, or have been received, using multiple frame acknowledged operation.

7.1.1.4 DL‑UNIT DATA

The DL‑UNIT DATA primitives are used to pass to and from the data link layer, layer 3 message units which are to be transmitted, or have been received, using unacknowledged operation.

7.1.1.5 DL‑SUSPEND

The DL‑SUSPEND primitive is used in the mobile station by the radio resource management entity to perform a local end release in such a way, that the layer 3 data units and the state of the transmit and receive counters are saved.

7.1.1.6 DL-RESUME

The DL‑RESUME primitive is used in the mobile station by the radio resource management entity to establish multiple frame operation and resume communication with the network without loss of layer 3 messages. The layer 3 data unit passed to layer 2 together with that primitive is sent with priority (e.g. ASSIGNMENT COMPLETE or HANDOVER COMPLETE).

7.1.1.7 DL-RECONNECT

The DL‑RECONNECT primitive is used in the mobile station by the radio resource management entity to restore multiple frame operation on the old channel after failure of the channel change. The layer 3 data unit passed to layer 2 with previous DL‑RESUME‑REQUEST (i.e. ASSIGNMENT COMPLETE or HANDOVER COMPLETE) is discarded and the layer 3 data unit passed together with that primitive is sent with priority (e.g. ASSIGNMENT FAILURE or HANDOVER FAILURE).

7.1.1.8 DL-RANDOM ACCESS

The DL‑RANDOM ACCESS primitives are used to request (in the MS) the sending of a random access message, to confirm (in the MS) the transmission of the random access message including the time slot in which it was sent, and to indicate (in the network) the arrival of a random access message.

7.1.1.9 MDL-RELEASE

The MDL‑RELEASE primitives are used by layer 3 entity to request local end termination of a previously established acknowledged mode operation.

7.1.1.10 MDL‑ERROR

The MDL‑ERROR primitives are used to notify layer 3 that an error has occurred, detected as a result of communication with the data link peer entity, which cannot be corrected by the data link layer.

7.1.1.11 PH‑DATA

The PH‑DATA primitives are used to pass message units containing frames used for data link layer peer‑to‑peer communications to and from the physical layer.

7.1.1.12 PH‑RANDOM ACCESS

The PH‑RANDOM ACCESS primitives are used to request (in the MS) the sending of a random access frame, to confirm (in the MS) the transmission of the random access frame including the time slot in which it was sent, and to indicate (in the network) the arrival of a random access frame.

7.1.1.13 PH‑CONNECT

The PH‑CONNECT primitive is used to indicate that a specific type of channel has been connected at the physical layer.

7.1.1.14 PH‑READY‑TO‑SEND

The PH‑READY‑TO‑SEND primitive is generated by the physical layer to enable the data link layer to synchronize to the next instant of physical transmission. On receipt of this indication layer 2 may trigger piggy backing (if applicable), the start of T200 and the forwarding of data units to layer 1.

7.1.1.15 PH‑EMPTY‑FRAME

The PH‑EMPTY‑FRAME primitive can be used by the data link layer instead of a PH‑DATA‑REQUEST primitive, when no frame has to be transmitted after receiving the PH‑READY‑TO‑SEND indication. It enables handling of several layer 2 entities by layer 1 and transmission of fill frames, if necessary.

7.1.2 Primitives types

The primitives types defined in the present document are:

NOTE: For the action sequence of these primitive types, see 3GPP TS 44.001.

7.1.2.1 REQUEST

The REQUEST primitive type is used when a higher layer is requesting a service from the next lower layer.

7.1.2.2 INDICATION

The INDICATION primitive type is used by a layer providing a service to notify the next higher layer of activities related to the REQUEST primitive type.

7.1.2.3 RESPONSE

The RESPONSE primitive type is used by a layer to acknowledge receipt, from the next lower layer, of the INDICATION primitive type.

7.1.2.4 CONFIRM

The CONFIRM primitive type is used by the layer providing the requested service to confirm that the activity has been completed.

Figure 6 illustrates the relationship of the primitive types to the layer 3 and the data link layer.

Figure 6: Relationship of the primitive types to the layer 3 and the data link layer

7.1.3 Parameter definition

7.1.3.1 Message unit

The message unit contains additional layer‑to‑layer information concerning actions and results associated with requests. In the case of the DATA and UNIT DATA primitives, the message unit contains the requesting layer peer‑to‑peer messages For example, the DL‑DATA message unit contains the layer 3 message unit; the PH‑DATA message unit contains the data link layer frame.

NOTE: The operations across the data link layer/layer 3 boundary shall be such that the layer sending the DATA or UNIT DATA primitive can assume a temporal order of the bits within the message unit and that the layer receiving the primitive can reconstruct the message with its assumed temporal order.

7.1.3.2 Channel type

Since the Dm channel procedures are distributed on several types of channel (CCCH, BCCH and various types of DCCH), a parameter will be needed in order to distribute the layer 3 message units correctly on the various types of channel. The control channel types to be used are defined in 3GPP TS 44.003.

7.1.3.3 Service Access Point

Since data links on different SAPIs may be multiplexed, the SAPI parameter is used to indicate the respective association.

7.1.3.4 Release mode

The release mode parameter is used to enable the data link layer to operate in different release modes depending on whether the data link is to be released in the normal way or that a local end release shall take place on command from the layer 3. The values of the parameter are:

‑ normal;

‑ local end release.

7.1.3.5 Error cause

This parameters is used by the data link layer to report procedure error to layer 3. The following causes may be reported:

‑ timer T200 expired (N200 +1) times: perform abnormal release;

‑ re‑establishment request;

‑ unsolicited UA response;

‑ unsolicited DM response;

‑ unsolicited DM response, multiple frame established state: perform abnormal release;

‑ unsolicited supervisory response;

‑ sequence error: perform abnormal release;

‑ U frame with incorrect parameters;

– short L2 header type 1 not supported;

– short L2 header type 1 not applicable;

‑ S frame with incorrect parameters;

‑ I frame with incorrect use of M bit;

‑ I frame with incorrect length;

‑ frame not implemented;

‑ SABM command, multiple frame established state;

‑ SABM command with information field not allowed in this state.

7.1.3.6 Establish mode

This parameter is used in the MS to indicate to the data link layer the type of establishment that is required. The parameter takes the following values:

‑ normal;

‑ contention resolution.

7.1.3.7 L2 header type

This parameter is used by higher layers to ask for application of a specific L2 header type; as values for the parameter, only "short L2 header type 1" and "normal L2 header" are actually defined.

7.1.3.8 Priority

This parameter is used by the higher layers to indicate the priority of a Layer 3 message on SAPI 0 with multiple frame operation. The parameter is not applicable to unacknowledged information transfer or to other SAPIs. The parameter takes the following values:

– high;

– normal;

– low.

The parameter need not be included if the higher layers do not support the sending of low priority messages as defined in 3GPP TS 44.018. If the parameter is not included, the data link layer shall assume a priority value of "normal".

Table 5: Data Link Service primitives

Generic name

Parameters

Message

unit

and type

SAPI

Channel
type

Error
Cause

Release
mode

Establish
mode

L2 header type

Priority

contents

DL-ESTABLISH-
REQUEST

0

DCCH

CoRes

Layer 3
message

0

DCCH,
SACCH

Norm

3

DCCH,
SACCH

Norm

DL-ESTABLISH-
INDICATION

0

DCCH

CoRes

Layer 3
message

0

DCCH,
SACCH

Norm

3

DCCH,
SACCH

Norm

DL-ESTABLISH-
CONFIRM

0

DCCH

CoRes

0

DCCH,
SACCH

Norm

3

DCCH,
SACCH

Norm

DL-RELEASE-
REQUEST

0,3

DCCH,
SACCH

any

DL-RELEASE-
INDICATION

0,3

DCCH,
SACCH

any

DL-RELEASE-
CONFIRM

0,3

DCCH,
SACCH

any

DL-SUSPEND-
REQUEST

0

DCCH

DL-SUSPEND-
CONFIRM

0

DCCH

DL-RESUME-
REQUEST

0

DCCH

Layer 3
peer-to-peer message

DL-RESUME-CONFIRM

0

DCCH

DL-RECONNECT-
REQUEST

0

DCCH

Layer 3
peer-to-peer message

DL-RECONNECT
CONFIRM

0

DCCH

DL-DATA-REQUEST

0,3

DCCH,
SACCH

any (SAPI 0 only)

Layer 3
peer-to-peer message

DL-DATA-
INDICATION

0,3

DCCH,
SACCH

Layer 3
peer-to-peer message

DL-UNIT
DATA-REQUEST

0

BCCH
CCCH
DCCH
SACCH

normal L2 header / short L2 header type 1

Layer 3
peer-to-peer message

3

DCCH
SACCH

Layer 3
peer-to-peer message

DL-UNIT
DATA-INDICATION

0

BCCH
CCCH
DCCH
SACCH

Layer 3
peer-to-peer message

3

DCCH
SACCH

Layer 3
peer-to-peer message

MDL-RELEASE-
REQUEST

0,3

DCCH,
SACCH

MDL-ERROR-
INDICATION

0,3

DCCH,
SACCH

any

DL-RANDOM
ACCESS-REQUEST

0

RACH

Channel request
(see 3GPP TS 44.018)

0

DCCH

Handover
access
(see 3GPP TS 44.018)

DL-RANDOM
ACCESS-INDICATION

0

RACH

Request
reference
(see 3GPP TS 48.058)

0

DCCH

Handover
reference
(see 3GPP TS 48.058)

DL-RANDOM
ACCESS-CONFIRM

0

RACH

Request
reference
(see 3GPP TS 44.018)

Table 6: Physical Service primitives used

Generic name

Parameters

Message unit

and type

SAPI

Channel
type

Error
Cause

Release
mode

Esta-
blish
mode

contents

PH-DATA-
REQUEST

any

Data link peer-to-peer message

PH-DATA-
INDICATION

any

Data link peer-to-peer message

PH-RANDOM
ACCESS-REQUEST

RACH,
DCCH

Random access data link message unit

PH-RANDOM
ACCESS-INDICATION

RACH,
DCCH

Random access data link message unit and TDMA frame nr.

PH-RANDOM
ACCESS- CONFIRM

RACH,
DCCH

TDMA frame number

PH-CONNECT-
INDICATION

any

PH-READY-TO-
SEND-INDICAT.

any

PH-EMPTY-
FRAME-REQUEST

any

NOTE 1: Table 5 and table 6 do not contain a complete list of conditional dependencies of service primitive parameters. If a field is left blank, the respective parameter shall not be used or is not applicable. If a field is marked by "any", the respective parameter shall be used and shall be set to a valid value according its specification.

NOTE 2: In table 5 and table 6, the term "DCCH" denotes the respective main DCCH (i.e. SDCCH or FACCH).

7.2 Primitive procedures

The procedures in the MS and the network are described by use of the primitives defined above. See also 3GPP TS 44.018.