6.2.7 Discoverer request procedure for restricted 5G ProSe direct discovery model B

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

6.2.7.1 General

The purpose of the discoverer request procedure for restricted 5G ProSe direct discovery model B is for the UE to obtain ProSe query code(s) and discovery response filter(s) to be used for sending query and monitoring responses over the PC5 interface based on the information provided by the upper layer application, as defined in 3GPP TS 23.304 [2].

Before initiating the discoverer request procedure, the UE shall be authorised for restricted 5G ProSe direct discovery model B discoverer operation in the registered PLMN or the local PLMN based on the service authorization procedure as specified in clause 5.

As the result of successful completion of this procedure, the UE obtains one or more ProSe query code(s) which can be included in a PROSE PC5 DISCOVERY message and passes the PROSE PC5 DISCOVERY message to the lower layers for transmission over the PC5 interface. The UE also obtains discovery response filter(s) and apply it to the monitoring operation in PC5 interface to match potential responses for the sent query request for the target RPAUID.

6.2.7.2 Discoverer request procedure initiation

Before initiating the discoverer request procedure, the user sets the permissions for the restricted discovery using application layer mechanisms. The application client in the UE retrieves the PDUID provisioned to the UE as part of the service authorization procedure as specified in clause 5 and obtains a RPAUID associated with the UE’s PDUID from the ProSe application server. The UE can also obtain the target RPAUID(s) from the ProSe application server. This step is performed using mechanisms that are out of scope of the present specification.

If the UE is authorised to perform restricted 5G ProSe direct discovery model B discoverer operation in the PLMN operating the radio resources signalled from the serving PLMN, it shall initiate a discoverer request procedure:

a) when the UE is triggered by an upper layer application to perform the query for one or more target RPAUIDs in Model B and the UE has no valid corresponding ProSe query code and Discovery Response Filter for those target RPAUIDs of the upper layer application;

b) when the validity timer T5070 assigned by the 5G DDNMF to a ProSe query codes and the corresponding Discovery Response Filter has expired and the request from upper layers to announce the RPAUID corresponding to that ProSe response code is still in place;

c) when the UE selects a new PLMN while announcing a ProSe query code or waiting for a ProSe response code and intends to announce the ProSe query code in the new PLMN and the UE is authorised for restricted 5G ProSe direct discovery model B discoverer operation in the new PLMN, and the UE does not have a valid allocated ProSe response code for this new PLMN yet; or

d) when the UE needs to update a previously sent restricted 5G ProSe direct discovery model B discoverer request.

When the UE selects a new PLMN while announcing a ProSe query code or waiting for a ProSe response code and the UE is not yet authorised for restricted 5G ProSe direct discovery model B discoverer operation in the new PLMN, the UE shall initiate a discoverer request procedure only after the UE is authorised for restricted 5G ProSe direct discovery model B discoverer operation in the new PLMN.

NOTE 1: To ensure service continuity if the UE needs to keep announcing in Model B a ProSe query code corresponding to the same RPAUID, the UE can initiate the discoverer request procedure before the validity timer T5070 assigned by the 5G DDNMF for a ProSe query code expires.

The UE shall initiate the discoverer request procedure by sending a DISCOVERY_REQUEST message with:

a) a new transaction ID not used in any other direct discovery procedures in PC3a interface;

b) the RPAUID set to the RPAUID received from upper layers;

c) the application level container set to contain the application-layer information, e.g., target RPAUID(s) to discover;

d) the command set to "query";

e) the application identity set to the ProSe identifier of the upper layer application that requested the announcing as specified in clause 5.2.3;

f) the discovery type set to "Restricted discovery";

g) the discovery model set to "Model B";

h) the discovery entry ID set to a 0 if the discoverer request is a new request and set to the discovery entry ID received from the 5G DDNMF if the discoverer request is to update a previously sent discoverer request;

i) optionally the Announcing PLMN ID set to the PLMN ID of the local PLMN operating the radio resources that the UE intends to use for transmitting the query for the target RPAUID(s); and

j) the PC5 UE ciphering algorithm capability set to the UE supported ciphering algorithm(s) for ciphering the PROSE PC5 DISCOVERY message.

NOTE 2: A UE can include one or multiple transactions in one DISCOVERY_REQUEST message for different discovering requests (e.g., for different applications) and receive corresponding <restricted-discoverer-response> element or <response-reject> element in a DISCOVERY_RESPONSE message for each respective transaction. In the following description of the discoverer request procedure, only one transaction is included.

Figure 6.2.7.2.1 illustrates the interaction of the UE and the 5G DDNMF in the discoverer request procedure.

Figure 6.2.7.2.1: Discoverer request procedure for restricted 5G ProSe direct discovery model B

6.2.7.3 Discoverer request procedure accepted by the 5G DDNMF

Upon receiving a DISCOVERY_REQUEST message, the 5G DDNMF shall check that the application corresponding to the ProSe identifier contained in the DISCOVERY_REQUEST message is authorised for restricted 5G ProSe direct discovery model B discoverer operation. If the application is authorised for restricted 5G ProSe direct discovery model B discoverer operation, the 5G DDNMF shall check whether there is an existing context for the UE.

If there is no associated UE context, the 5G DDNMF checks with the UDM whether the UE is authorised for restricted 5G ProSe direct discovery model B discoverer operation as described in 3GPP TS 29.503 [10]. If the check indicates that the UE is authorised, the 5G DDNMF creates a UE context that contains the UE’s subscription parameters obtained from the UDM. The UDM also provides to the 5G DDNMF the PLMN ID of the PLMN in which the UE is currently registered.

If the UE context exists, the 5G DDNMF shall check whether the UE is authorized for restricted 5G ProSe direct discovery model B discoveree operation in the currently registered PLMN or the local PLMN identified by the Announcing PLMN ID included in the DISCOVERY_REQUEST message.

If the UE is authorized and the discovery entry ID included in the DISCOVERY_REQUEST message is set to 0 then:

a) the 5G DDNMF uses the procedure described in 3GPP TS 29.557 [19] to pass the application level container included in the DISCOVERY_REQUEST message to the ProSe application server and obtain a list of PDUID(s) corresponding to the authorised target RPAUID(s) from the ProSe application server;

b) for each of the PDUIDs corresponding to an authorised target RPAUID:

1) if the PLMN ID of the PDUID is not the same as that of the PLMN to which the 5G DDNMF belongs, then the 5G DDNMF executes the procedures defined in 3GPP TS 29.555 [9] to obtain the ProSe query code, the ProSe response code, the associated validity timer T5070 and optionally metadata associated with this target RPAUID. Otherwise, the 5G DDNMF shall locate the discoveree UE context and retrieve the corresponding ProSe query code and ProSe response code and the validity timer T5070 and optionally metadata associated with this RPAUID. Then, the 5G DDNMF in the HPLMN builds one or more discovery response filter(s) based on the respective ProSe response code and associate the discovery response filter(s) and ProSe query code with a new validity timer T5071 based on the remaining value of T5071; and

NOTE 1: If the 5G DDNMF cannot retrieve the corresponding discoveree UE context for a target RPAUID, e.g., the target RPAUID has not yet been requested to be discovered by Model B in a discoveree request procedure, or the discoveree UE context expires, the 5G DDNMF can skip the processing of this target RPAUID.

NOTE 2: The 5G DDNMF can choose the value of T5070 to be longer than the remaining value of T5069, so that the discoverer UE sends a new discoverer request for renewing the query-related information no earlier than the discoveree UE renewing its own ProSe response code with the 5G DDNMF.

2) the 5G DDNMF associates the ProSe query code and corresponding discovery response filter(s), target RPAUID and optionally metadata associated with the target RPAUID with a new discovery entry in the discoverer UE’s context; and

c) the 5G DDNMF starts timer T5071 assigned for each ProSe query code and discovery response filter(s) (of each target RPAUID) under this discovery entry of the discoverer UE context. For a given ProSe query code and the corresponding discovery response filter(s), timer T5071 shall be longer than timer T5070. By default, the value of timer T5071 is 4 minutes greater than the value of timer T5070.

If the discovery entry ID included in the DISCOVERY_REQUEST message is not set to 0 and if there is an existing discovery entry for this discovery entry ID value in the UE’s context, the 5G DDNMF shall still process the above steps, but update the discovery entry instead of creating a new discovery entry.

If the discovery entry ID contained in the DISCOVERY_REQUEST message is not found in the UE context or there is no UE context in the 5G DDNMF, the 5G DDNMF shall behave as if the discovery entry ID included in the DISCOVERY_REQUEST message was set to 0 and the 5G DDNMF shall allocate a new non-zero discovery entry ID for this entry.

If a new UE context was created or an existing UE context was updated, the UE is currently roaming or the announcing PLMN ID is included in the DISCOVERY_REQUEST message, the 5G DDNMF checks with the 5G DDNMF of the VPLMN or the local PLMN indicated by the announcing PLMN ID whether the UE is authorised for restricted 5G ProSe direct discovery model B discoverer operation as described in 3GPP TS 29.555 [9].

The 5G DDNMF shall then send a DISCOVERY_RESPONSE message containing a <restricted-discoverer-response> element with:

a) the transaction ID set to the value of the transaction ID received in the DISCOVERY_REQUEST message from the UE;

b) one or more Subquery Result information elements, each of which includes:

1) a target RPAUID;

2) the ProSe query code set to the ProSe query code for the target RPAUID;

3) one or more discovery response filters which are set to the discovery response filter(s) used to match a potential ProSe response code responding to the ProSe query code;

4) a validity timer T5070 set to the T5070 timer value assigned by the 5G DDNMF to the ProSe query code and the discovery response filter(s);

5) optionally, the metadata associated with the target RPAUID;

6) the code-sending security parameter containing the security-related information needed by the discoverer UE to protect the transmission of ProSe query code; and

7) the code-receiving security parameter containing the security-related information needed by the discoverer UE to undo the protection applied by the discoveree UE;

c) the discovery entry ID set to the ID of the discovery entry associated with this announce request in the UE context;

d) the current time set to the current UTC-based time at the 5G DDNMF and the max offset;

e) optionally, the PC5 security policies that are associated with the ProSe response code and used for 5G ProSe direct link establishment procedure instead of any PC5 security policies configured in the UE as specified in clause 5; and

f) the selected PC5 ciphering algorithm set to the PC5 ciphering algorithm selected by the 5G DDNMF if the received PC5 UE ciphering algorithm capability includes the selected PC5 ciphering algorithm associated with the ProSe response code corresponding to the discovery response filters.

If T5071 expires, the 5G DDNMF shall remove the corresponding ProSe query code and ProSe response filter(s) from the discovery entry associated with the discoverer UE’s context.

The 5G DDNMF uses the information (e.g. application identity) received from the UE in the DISCOVERY_REQUEST message, UE identity in GBA or AKMA information related to TLS tunnel transporting the DISCOVERY_REQUEST message, and other information for charging purposes as specified in 3GPP TS 32.277 [45].

6.2.7.4 Discoverer request procedure completion by the UE

Upon receipt of the DISCOVERY_RESPONSE message, if the transaction ID contained in the <restricted-discoverer-response> element matches the value sent by the UE in a DISCOVERY_REQUEST message with the command set to "query" and the discovery model set to "Model B", the UE shall, process as follow:

a) If the DISCOVERY_RESPONSE creates a new discovery entry, start the validity timer T5070 with the received value for the ProSe query code and the corresponding Discovery Response Filter(s) included for each SubQuery-Result information element received in the DISCOVERY_RESPONSE message and the PLMN ID of the intended announcing PLMN if included in the DISCOVERY_REQUEST message; or

b) If the DISCOVERY_RESPONSE updates an existing discovery entry, the UE shall:

1) stop the timer T5070 of any ProSe query code(s) and discovery response filter(s) in this discovery entry which are no longer authorized by the 5G DDNMF, ask lower layers to stop announcing the ProSe query code(s) and monitoring ProSe response filter(s) and remove the ProSe query code(s) and discovery response filter(s) from the existing discovery entry;

2) restart the T5070 timer(s) for those remain eligible;

3) start the T5070 timer(s) for any new ProSe query codes and their corresponding discovery response filter(s); and

4) update the PLMN ID of the intended announcing PLMN for this discovery entry if included in the DISCOVERY_REQUEST message.

Otherwise, the UE shall discard the DISCOVERY_RESPONSE message and shall not perform the discoverer UE procedure for 5G ProSe direct discovery as described in clause 6.2.14.2.2.2. The UE shall set a ProSe clock (see 3GPP TS 33.503 [34]) to the value of the received current time parameter and store the received max offset parameter.

The UE shall store the selected PC5 ciphering algorithm received in the DISCOVERY_RESPONSE message and use it for protection of the restricted 5G ProSe direct discovery messages over the PC5 interface as specified in clause 6.1.3.2.3 of 3GPP TS 33.503 [34].

For each ProSe query code in this discovery entry, the UE performs the discoverer UE procedure for 5G ProSe direct discovery to announce the ProSe query code in the PC5 interface, as described in clause 6.2.14.2.2.2.

6.2.7.5 Discoverer request procedure not accepted by the 5G DDNMF

If the DISCOVERY_REQUEST message cannot be accepted by the 5G DDNMF, the 5G DDNMF sends a DISCOVERY_RESPONSE message containing a <response-reject> element to the UE including an appropriate PC3a control protocol cause value.

If the application corresponding to the ProSe identifier contained in the DISCOVERY_REQUEST message is not authorised for restricted 5G ProSe direct discovery Model B discoverer operation, the 5G DDNMF shall send the DISCOVERY_RESPONSE message containing a <response-reject> element with PC3a control protocol cause value #1 "Invalid application".

If the RPAUID contained in the DISCOVERY_REQUEST message is unknown to the 5G DDNMF or ProSe application server, the 5G DDNMF shall send a DISCOVERY_RESPONSE message containing a <response-reject> element with PC3a control protocol cause value #9 "Unknown RPAUID".

If the RPAUID contained in the DISCOVERY_REQUEST message does not match the stored RPAUID for the requested discovery entry ID, the 5G DDNMF shall send a DISCOVERY_RESPONSE message containing a <response-reject> element with PC3a control protocol cause value #10 "Unknown or invalid discovery entry ID".

If the UE is not authorised for restricted 5G ProSe direct discovery model B discoverer operation, the 5G DDNMF shall send the DISCOVERY_RESPONSE message containing a <response-reject> element with PC3a control protocol cause value #3 "UE authorization failure".

If the RPAUID contained in the DISCOVERY_REQUEST message is not associated with a PDUID belonging to the requesting UE, the 5G DDNMF shall send a DISCOVERY_RESPONSE message containing a <response-reject> element with PC3a control protocol cause value #3 "UE authorization failure".

If the 5G DDNMF fails to retrieve any valid target PDUIDs from ProSe application server based on the application level container contained in the DISCOVERY_REQUEST message, the 5G DDNMF shall send a DISCOVERY_RESPONSE message containing a <response-reject> element with PC3a control protocol cause value #11 "Invalid discovery target".

If the 5G DDNMF fails to retrieve any valid discoveree UE contexts for the valid target RPAUIDs contained in the application level container contained in the DISCOVERY_REQUEST message, the 5G DDNMF shall send a DISCOVERY_RESPONSE message containing a <response-reject> element with PC3a control protocol cause value #11 "Invalid discovery target".

If the PC5 UE ciphering algorithm capability contained in the DISCOVERY_REQUEST message is not compatible with the selected PC5 ciphering algorithm for the ProSe response code and the ProSe query code, the 5G DDNMF shall send a DISCOVERY_RESPONSE message containing a <response-reject> element with PC3a control protocol cause value #19 "Not compatible PC5 UE ciphering algorithm capability".

6.2.7.6 Abnormal cases

6.2.7.6.1 Abnormal cases in the UE

The following abnormal cases can be identified:

a) Indication from the transport layer of transmission failure of DISCOVERY_REQUEST message (e.g., after TCP retransmission timeout)

The UE shall close the existing secure connection to the 5G DDNMF, establish a new secure connection and then restart the discoverer request procedure.

NOTE 1: The UE can abort this procedure when detecting loss of NG-RAN coverage in its serving PLMN.

b) No response from the 5G DDNMF after the DISCOVERY_REQUEST message has been successfully delivered (e.g., TCP ACK has been received for the DISCOVERY_REQUEST message)

The UE shall retransmit the DISCOVERY_REQUEST message.

NOTE 2: The UE can abort this procedure when detecting loss of NG-RAN coverage in its serving PLMN.

NOTE 3: The timer to trigger retransmission and the maximum number of allowed retransmissions are UE implementation specific.

c) Indication from upper layers that the request to discover the target RPAUID(s) is no longer in place after sending the DISCOVERY_REQUEST message, but before the discoverer request procedure is completed

The UE shall acknowledge the DISCOVERY_RESPONSE message received from the 5G DDNMF but discard its contents and then abort the procedure.

d) Change of PLMN

If a PLMN change occurs before the discoverer request procedure is completed, the procedure shall be aborted. If the UE is authorized to perform restricted 5G ProSe direct discovery discoverer operation Model B in the new PLMN, the procedure shall be restarted once the UE is registered on the new PLMN.

6.2.7.6.2 Abnormal cases in the 5G DDNMF

The following abnormal cases can be identified:

a) Indication from the lower layer of transmission failure of DISCOVERY_RESPONSE message

After receiving an indication from lower layer that the DISCOVERY_RESPONSE message has not been successfully acknowledged (e.g., TCP ACK is not received), the 5G DDNMF shall abort the procedure and stop any associated timer(s) T5071, if running.