5 CM‑procedures

04.113GPPPoint-to-Point (PP) Short Message Service (SMS) support on mobile radio interfaceRelease 1996TS

5.1 General

This clause describes the procedures used by the SMC entity on the Connection Management sublayer. An SMC entity communicates with a corresponding peer entity using an MM‑connection.

Multiple MM‑connections may be established at the same time, allowing parallel transactions. The description of the procedures is related to one single transaction.

The CM‑procedures described in this subclause can only be performed if an MM‑connection has been established between the mobile station and the network. Detailed SDL diagrams for SMC entities are contained in annex B.

5.2 Short Message Control states

The state transition diagrams for the MO and MT SMC entities on both the MS side and network side are contained in annex B.

5.2.1 SMC states at the MS side of the radio interface

5.2.1.1 Mobile Originating Case

The states described in this clause are for an SMC entity in an MS handling mobile originating short message transfer and notification to the network that the mobile has memory available to receive one or more short messages (referred to below as "notification").

5.2.1.1.1 MO‑Idle (State 0)

This state exists when the MO‑SMC entity is in idle mode, or when an MO short message transfer or notification ends in a normal or abnormal way.

5.2.1.1.2 MO‑MM‑connection pending (State 1)

This state exists when the MO‑SMC has requested the establishment of an MM‑connection.

5.2.1.1.3 MO‑Wait for CP‑ACK (State 2)

This state exists after the MO‑SMC has initiated the transfer of a CP‑DATA message.

5.2.1.1.4 MO‑MM‑connection established (State 3)

This state exists when the MO‑SMC has:

‑ received the acknowledgement, CP‑ACK; or

‑ received the message CP‑DATA (including sending of the associated CP‑ACK).

5.2.1.2 Mobile Terminating case

The states described in this subclause are for an SMC entity in an MS handling mobile terminating short message transfer.

5.2.1.2.1 MT‑Idle (State 0)

This state exists when the MT‑SMC entity is in idle mode, or when a short message transfer ends in a normal or abnormal way.

5.2.1.2.2 MT‑Wait for CP‑ACK (State 2)

This state exists after the MT‑SMC has initiated the transfer of a CP‑DATA message.

5.2.1.2.3 MT‑MM‑connection established (State 3)

This state exists when the MT‑SMC has:

‑ received the acknowledgement, CP‑ACK; or

‑ received the message CP‑DATA (including sending of the associated CP‑ACK).

5.2.2 SMC states at the network side of the radio interface

5.2.2.1 Mobile Originating Case

The states described in this subclause are for an SMC entity in an MSC handling both mobile originating short message transfer and notification to the network that the mobile has memory available to receive one or more short messages (referred to below as "notification").

5.2.2.1.1 MO‑Idle (State 0)

This state exists when the MO‑SMC entity is in idle mode, or when a short message transfer or notification ends in a normal or abnormal way.

5.2.2.1.2 MO‑Wait for CP‑ACK (State 2)

This state exists after the MO‑SMC has initiated the transfer of a CP‑DATA message.

5.2.2.1.3 MO‑MM‑connection established (State 3)

This state exists when the SMC has:

‑ received the acknowledgement, CP‑ACK; or

‑ received the message CP‑DATA (including sending of the associated CP‑ACK).

5.2.2.2 Mobile Terminating Case

The states described in this subclause are for an SMC entity in an MSC handling mobile terminating short message transfer.

5.2.2.2.1 MT‑Idle (State 0)

This state exists when the MT‑SMC entity is in idle mode, or when a short message transfer ends in a normal or abnormal way.

5.2.2.2.2 MT‑MM‑connection pending (State 1)

This state exists when the MT‑SMC has requested an MM‑connection for mobile terminating short message transfer.

5.2.2.2.3 MT‑Wait for CP‑ACK (State 2)

This state exists after the SMC has initiated the transfer of a CP‑DATA message.

5.2.2.2.4 MT‑MM‑connection established (State 3)

This state exists when the SMC has:

‑ received the acknowledgement, CP‑ACK; or

‑ received the message CP‑DATA (including sending of the associated CP‑ACK).

5.3 Short Message Control procedures

The procedures needed for short message control are:

‑ connection establishment procedures;

‑ RP Data Unit (RPDU) transfer procedures;

‑ connection release procedures; and

‑ procedures for abnormal cases.

The procedures of subclause 5.3 are described with respect to one particular instance of an SMC entity. Different SMC entities are identified by their Transaction Identifier. Messages with Transaction Identifiers that do not correspond to this particular instance of the SMC entity are not treated by it.

5.3.1 MM‑connection establishment

When an SMC entity is in the Idle state and transfer of an RPDU is requested, the peer to peer connection between the MM‑sublayers in the MS and the network (MSC) has to be established.

The SMC entity on the originating side requests the MM‑sublayer to establish an MM‑connection, and enters the MM‑Connection Pending state.

After completion of the MM‑connection establishment, a confirmation is given to the originating side to indicate that the MM sublayer is ready for RPDU transfer.

The MM‑connection establishment is indicated to the SMC entity at the destination side when the CP‑DATA message has been received by the MM‑sublayer (in line with GSM 04.08). The destination side SMC entity then sends a CP‑ACK and enters the MM‑Connection Established state.

5.3.2 RPDU transfer

When an SMC entity in the MM‑Connection Pending state is informed that an MM‑connection has been established, the SMC entity forwards the CP‑DATA message containing the RPDU, sets the timer TC1* and enters the Wait for CP‑ACK state.

The value of TC1* may vary with the length of the CP‑DATA message and the channel type that is being used for its transmission. However, the value of TC1* shall be sufficiently great to allow the lower layers to transmit the CP‑DATA and CP‑ACK messages and to allow for some retransmissions of layer 2 frames.

If an SMC entity in the Wait for CP‑ACK state gets an indication that the CP‑DATA message has probably been lost (e.g. due to dedicated channel assignment, hand over, assignment failure, hand over failure, or a SAPI 3 data link failure) then, as an implementation option, that SMC entity may reduce the time until expiry of TC1*.

If the timer TC1* expires in the Wait for CP‑ACK state, the CP‑DATA message is retransmitted and the state Wait for CP‑ACK is re‑entered. The maximum number of CP‑DATA message retransmissions is an implementation option but shall be either 1, 2 or 3. If the timer TC1* expires after the maximum number of retransmission attempts, an error indication is passed to SM‑RL and an MM‑connection release request is passed to the MM‑sublayer. The Idle state is then entered.

On receipt of the CP‑ACK message in the Wait for CP‑ACK state, the SMC resets the timer TC1* and enters the MM‑Connection Established state.

When receiving a CP‑DATA message in the MM‑Connection Established state, the SMC entity checks the parameters relevant to the CP protocol. If these are valid, the RPDU is passed to the SM‑RL, the CP‑ACK message is sent and the state MM‑Connection Established is re‑entered.

If an SMC entity in the Idle state is unable to accept a CP‑DATA message, it sends a CP‑ERROR message followed by an MM‑connection release request and then enters the Idle state.

When receiving a MNSMS‑DATA‑Req primitive in the MM‑Connection Established state, the SMC entity forwards a CP‑DATA message containing the RPDU to the MM‑sublayer, sets the timer TC1* and enters the Wait for CP‑ACK state.

5.3.3 Release of MM and CM connections

With the exception of error situations, release of the MM and CM connection is controlled by the SM‑RL.

When an SMC entity in the Wait for CP‑ACK state receives a release request from SM‑RL, this request is stored until the next state (either MM Connection Established or Idle) is entered. If the Idle state is entered, the request is discarded. If the MM Connection Established state is entered, or if the SMC entity receives a release request from SM‑RL in this state, an MM‑connection release request is sent to the MM‑sublayer and the SMC entity enters the Idle state.

5.3.4 Abnormal cases

Abnormal cases that shall be handled by the SMC entity in any state can be classified into five cases:

‑ Upper Layer Abort: Errors occurring in the SM‑RL may cause the SM‑RL to send an MNSMS‑ABORT Request to the SMC entity.

‑ CP‑Layer Abort: Errors occurring within the SMC entity itself may require termination of all activities related to that transaction identifier.

‑ Lower Layer Abort: Errors occurring within the layers beneath the CP‑layer may cause an MMSM‑ERROR Indication to be sent to the SMC entity.

‑ CP‑Layer Protocol Errors: Errors occurring within the protocol exchange between the SMC entities may result in the sending of a CP‑ERROR message between the entities.

‑ Lower Layer Release: Events occurring within the layers beneath the CP layer may cause an MMSM‑REL Indication to be sent to the SMC entity.

When the CM‑sublayer in the network receives an Upper Layer Abort, it may form and send the CP‑ERROR message to release the connection. Irrespective of whether or not the CP‑ERROR message was sent, an MM‑connection release request, without indication of release cause, is passed to the MM‑sublayer. The SMC entity in the network then enters the Idle state.

When the CM‑sublayer in the MS receives an Upper Layer Abort and if the MM connection exists, it shall form and send the CP‑ERROR message. Irrespective of whether or not the CP‑ERROR message was sent, an MM‑connection release request, without indication of release cause, is passed to the MM‑sublayer. The SMC entity in the mobile station then enters the Idle state.

In the case of a CP‑Layer Abort, an error indication is passed to SM‑RL. If possible, a CP‑ERROR message is sent to the partner SMC entity to indicate the error situation. Then the SMC entity enters the Idle state.

In the case of a Lower Layer Abort, the SMC entity passes an error indication to SM_RL, an MM‑connection release request is passed to the MM‑sublayer, and the SMC entity immediately enters the Idle state.

In the case of the reception of a CP‑ERROR message from the partner SMC entity, an error indication is passed to SM‑RL, an MM‑connection release request, without indication of release cause, is passed to the MM‑sublayer, and the SMC entity enters the Idle state.

In the case of a lower layer release, the SMC entity passes an MNSMS‑ERROR Indication to SM‑RL and then enters the Idle state.

In all cases, if the timer TC1* is running, it is reset.

Due to structure of message flow on SAPI 0 and 3 it is possible that the CP‑ACK of a short message transfer might not be received (e.g. due to hand over). If the first CP‑ACK (acknowledging the CP‑DATA that carried the first RPDU) is not received the reception of CP‑DATA may be interpreted as the reception of the awaited CP‑ACK and CP‑DATA message.

5.4 Concatenating short message or notification transfers

If an entity has more than one short message or notification to send, then it is useful to maintain the Radio Resource (RR) connection in between transfers. For mobile terminated short messages this is simple because the network decides when, and whether, to release the RR connection. However, for mobile originated transfers, the network does not know whether or not the mobile has more messages to transfer.

If another short message or a memory available notification is to be sent, an originating SMR entity in the MS may choose to continue to use the same RR connection. When the MS chooses to use the same RR connection, then:

‑ the MS shall transmit a CM SERVICE REQUEST for the new CM connection before the final CP‑ACK (e.g. the one that acknowledges the CP‑DATA that carried the RP‑ACK) for the old MM connection is transmitted;

‑ before transmission of the first CP‑DATA on the new MM connection, the MS shall transmit the CP‑ACK for the old MM connection;

‑ the Transaction Identifier used on the new MM connection shall be different to that used on the old MM connection; and

‑ the MS shall not initiate establishment of the new MM connection before the final CP‑DATA (e.g. the one carrying the RP‑ACK) has been received.

NOTE: When an MS sends successive memory available notifications and/or mobile originated short messages on different RR connections, the MS is strongly recommended to use different Transaction Identifiers for the old and new MM connections.

Due to the structure of message flow on SAPIs 0 and 3 it is possible that the final CP‑ACK of a short message transfer may not be received (e.g. due to transmission errors and/or hand overs). For mobile terminated transfers, if the CP‑ACK is lost, the reception of a CP‑DATA with a different transaction identifier and carrying an RPDU shall be interpreted as the implicit reception of the awaited CP‑ACK followed by the reception of the new CP‑DATA message. For mobile originated transfers, if the CP‑ACK is lost, the reception of a CM SERVICE REQUEST followed by a CP‑DATA with a different transaction identifier and carrying an RPDU shall be interpreted as the implicit reception of the awaited CP‑ACK followed by the reception of the new CP‑DATA message.