7.2.5 5G ProSe direct link keep-alive procedure

24.5543GPPProximity-services (ProSe) in 5G System (5GS) protocol aspectsRelease 17Stage 3TS

7.2.5.1 General

The 5G ProSe direct link keep-alive procedure is used to maintain a 5G ProSe direct link between two UEs, i.e., check that the link between the two UEs is still valid. The UE sending the PROSE DIRECT LINK KEEPALIVE REQUEST message is called the "initiating UE" and the other UE is called the "target UE".

The 5G ProSe direct link keep-alive procedure can be initiated by only one UE or both UEs in the established 5G ProSe direct link.

NOTE: Whether the 5G ProSe direct link keep-alive procedure is initiated by only one UE or both UEs in the established 5G ProSe direct link is UE implementation specific.

7.2.5.2 5G ProSe direct link keep-alive procedure initiation by the initiating UE

The initiating UE shall meet the following pre-condition before initiating the 5G ProSe direct link keep-alive procedure:

a) there is a 5G ProSe direct link between the initiating UE and the target UE.

The initiating UE shall manage a keep-alive timer T5084 and a keep-alive counter for the 5G ProSe direct link keep-alive procedure. Timer T5084 is used to trigger the periodic initiation of the 5G ProSe direct link keep-alive procedure. The UE shall start or restart timer T5084 whenever the UE receives a PC5 signalling message or PC5 user plane data from the target UE over this 5G ProSe direct link. The UE shall set the keep-alive counter to an initial value of zero after 5G ProSe direct link establishment.

The initiating UE shall initiate the 5G ProSe direct link keep-alive procedure when:

a) timer T5084 for this link expires;

b) optionally, a request from the lower layers to check the viability of the 5G ProSe direct link is received; or

NOTE 1: Whether the lower layers can request the initiation of the 5G ProSe direct link keep-alive procedure and what the triggers for the lower layers are to request the initiation of the 5G ProSe direct link keep-alive procedure, are UE implementation specific.

c) optionally, a request from the upper layers to check the viability of the 5G ProSe direct link is received.

NOTE 2: Whether the upper layers can request the initiation of the 5G ProSe direct link keep-alive procedure and what the triggers for the upper layers are to request the initiation of the 5G ProSe direct link keep-alive procedure, are UE implementation specific.

In order to initiate the 5G ProSe direct link keep-alive procedure, the initiating UE shall stop timer T5084, if running and shall create a PROSE DIRECT LINK KEEPALIVE REQUEST message. In this message, the initiating UE:

a) shall include the keep-alive counter for the 5G ProSe direct link; and

b) may include a maximum inactivity period to indicate the maximum inactivity period of the initiating UE over this 5G ProSe direct link.

NOTE 3: The value chosen for the maximum inactivity period of the initiating UE is UE implementation specific with the objective to minimize the number of keep-alive procedures as much as possible. It is desirable to have the maximum inactivity period value to be slightly higher than the value of keep-alive timer T5084.

After the PROSE DIRECT LINK KEEPALIVE REQUEST message is generated, the initiating UE shall pass this message to the lower layers for transmission along with the initiating UE’s layer-2 ID for 5G ProSe direct communication and the target UE’s layer-2 ID for 5G ProSe direct communication and start timer T5085. The UE shall not send a new PROSE DIRECT LINK KEEPALIVE REQUEST message to the same target UE while timer T5085 is running.

Figure 7.2.5.2.1: 5G ProSe direct link keep-alive procedure

7.2.5.3 5G ProSe direct link keep-alive procedure accepted by the target UE

Upon receipt of a PROSE DIRECT LINK KEEPALIVE REQUEST message, the target UE shall create a PROSE DIRECT LINK KEEPALIVE RESPONSE message. In this message, the target UE:

a) shall include the keep-alive counter set to the same value as that received in the PROSE DIRECT LINK KEEPALIVE REQUEST message.

After the PROSE DIRECT LINK KEEPALIVE RESPONSE message is generated, the target UE shall pass this message to the lower layers for transmission along with the target UE’s layer-2 ID for 5G ProSe direct communication and the initiating UE’s layer-2 ID for 5G ProSe direct communication.

If a maximum inactivity period is included in the PROSE DIRECT LINK KEEPALIVE REQUEST message, the target UE shall stop T5086, if running and start T5086 with its value set to the maximum inactivity period. The target UE shall restart T5086 whenever the target UE receives a PC5 signalling message or PC5 user plane data from the initiating UE over this 5G ProSe direct link.

7.2.5.4 5G ProSe direct link keep-alive procedure completion by the initiating UE

Upon receipt of a PROSE DIRECT LINK KEEPALIVE RESPONSE message, the initiating UE shall stop timer T5085, start timer T5084 and increment the keep-alive counter for the 5G ProSe direct link.

7.2.5.5 Abnormal cases

7.2.5.5.1 Abnormal cases at the initiating UE

a) Timer T5085 expires.

The initiating UE shall retransmit the PROSE DIRECT LINK KEEPALIVE REQUEST message with the last used value of the keep-alive counter and restart timer T5085. After reaching the maximum number of allowed retransmissions, the initiating UE shall abort the 5G ProSe direct link keep-alive procedure and locally release the 5G ProSe direct link.

NOTE: The maximum number of allowed retransmissions is UE implementation specific.

b) The need to use this 5G ProSe direct link no longer exists before the 5G ProSe direct link keep-alive procedure is completed.

The initiating UE shall abort the 5G ProSe direct link keep-alive procedure and initiate a 5G ProSe direct link release procedure.

c) The initiating UE receives a PROSE DIRECT LINK KEEPALIVE RESPONSE message with a keep-alive counter value different from the value which the initiating UE had included in the last sent PROSE DIRECT LINK KEEPALIVE REQUEST message.

The initiating UE shall discard the PROSE DIRECT LINK KEEPALIVE RESPONSE message.

d) The initiating UE receives a PC5 signalling message other than a PROSE DIRECT LINK KEEPALIVE RESPONSE message or PC5 user plane data from the target UE over this 5G ProSe direct link while timer T5085 is running.

The initiating UE shall stop timer T5085, abort the 5G ProSe direct link keep-alive procedure, start timer T5084 and increment the keep-alive counter for the 5G ProSe direct link.

e) The initiating UE receives a PROSE DIRECT LINK KEEPALIVE RESPONSE message when T5085 is not running.

The initiating UE shall discard the PROSE DIRECT LINK KEEPALIVE RESPONSE message.

7.2.5.5.2 Abnormal cases at the target UE

a) Timer T5086 expires.

The target UE shall:

1) initiate a 5G ProSe direct link keep-alive procedure to check the link; or

2) initiate the 5G ProSe direct link release procedure.

Whether the UE chooses 1) or 2) is left to UE implementation.

b) The target UE receives a PROSE DIRECT LINK KEEPALIVE REQUEST message with a keep-alive counter value lower than the value which the target UE had included in the last sent PROSE DIRECT LINK KEEPALIVE RESPONSE message.

The target UE shall discard the PROSE DIRECT LINK KEEPALIVE REQUEST message.

c) The target UE receives a PROSE DIRECT LINK KEEPALIVE REQUEST message if there is a pending PC5 signalling message or PC5 user plane data to be sent to the initiating UE over this 5G ProSe direct link.

The target UE:

1) shall pass this PC5 signalling message to the lower layers for transmission along with the target UE’s layer-2 ID for 5G ProSe direct communication and the initiating UE’s layer-2 ID for 5G ProSe direct communication, or perform the data transmission over 5G ProSe direct link as specified in clause 7.2.9; and

2) shall consider transmission of this PC5 signalling message or PC5 user plane data to be an implicit PROSE DIRECT LINK KEEPALIVE RESPONSE message and skip generating a PROSE DIRECT LINK KEEPALIVE RESPONSE message. If a maximum inactivity period is included in the PROSE DIRECT LINK KEEPALIVE REQUEST message, the target UE shall stop T5086, if running and start T5086 with its value set to the maximum inactivity period.