5 Procedure Descriptions
29.3443GPPProximity-services (ProSe) function to Home Subscriber Server (HSS) aspectsRelease 17Stage 3TS
5.1 Introduction
This clause describes the Diameter-based PC4a interface related procedures and information elements exchanged between the ProSe Function and the HSS.
In the tables that describe the Information Elements transported by each Diameter command, each Information Element is marked as (M) Mandatory, (C) Conditional or (O) Optional in the "Cat." column. For the correct handling of the Information Element according to the category type, see the description detailed in clause 6 of the 3GPP TS 29.228 [9].
5.2 ProSe Subscriber Information Retrieval
5.2.1 General
This procedure shall be used between the ProSe Function and the HSS for authorization of the UE for ProSe. The procedure shall be invoked by the ProSe Function and is used:
– to request ProSe related subscription data.
This procedure is mapped to the commands ProSe-Subscriber-Information-Request/Answer (PIR/PIA) in the Diameter application specified in clause 6. Tables 5.2.1-1 and 5.2.1-2 detail the involved information elements.
Table 5.2.1-1: ProSe Subscriber Information Retrieval Request
Information Element Name |
Mapping to Diameter AVP |
Cat. |
Description |
|
IMSI |
User-Name (See IETF RFC 6733 [23]) |
M |
This information element shall contain the user IMSI, formatted according to 3GPP TS 23.003 [7], clause 2.2. |
|
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
Table 5.2.1-2: ProSe Subscriber Information Retrieval Answer
Information Element Name |
Mapping to Diameter AVP |
Cat. |
Description |
Result |
Result-Code / Experimental-Result |
M |
This IE shall contain the result of the operation. The Result-Code AVP shall be used to indicate success / errors as defined in the Diameter base protocol (see IETF RFC 6733 [23]). The Experimental-Result AVP shall be used for PC4a errors. This is a grouped AVP which shall contain the 3GPP Vendor ID in the Vendor-Id AVP, and the error code in the Experimental-Result-Code AVP. The following errors are applicable: – User Unknown – Unknown ProSe Subscription – ProSe Not Allowed |
ProSe Subscription Data (See 6.3.2) |
ProSe-Subscription-Data |
C |
This information element shall contain the ProSe Subscription Data that gives the user permission to use ProSe. |
MSISDN (See 3GPP TS 29.329 [12]) |
MSISDN |
C |
This information element shall contain the user MSISDN, formatted according to 3GPP TS 29.329 [12]. It shall be present if available. |
Visited PLMN Id (See 3GPP TS 29.272 [10]) |
Visited-PLMN-Id |
C |
This IE shall contain the MCC and the MNC of the PLMN where the UE is registered, see 3GPP TS 23.003 [7]. It shall be present if the UE is roaming in a PLMN different from the Home PLMN. |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
Reset-IDs (See 3GPP TS 29.272 [10]) |
Reset-ID |
O |
The Reset-ID uniquely identifies a fallible resource in the HSS’s realm on which the user (IMSI) depends. In the event of a restart of the fallible resource a Reset message containing the Reset-ID will exactly identify the impacted subscribers. |
5.2.2 Detailed Behaviour of the ProSe Function
The ProSe Function shall make use of this procedure to request ProSe related subscription data.
If the ProSe Function retrieved the ProSe related subscription data, the ProSe Function shall perform the authorisation for ProSe as described in the 3GPP TS 23.303 [2].
5.2.3 Detailed Behaviour of the HSS
When receiving a ProSe Subscriber Information Retrieval Request the HSS shall check if the IMSI for whom data is requested exists in the HSS. If not, an Experimental-Result of DIAMETER_ERROR_USER_UNKNOWN shall be returned.
If the IMSI exists but there is not any ProSe subscription data for the IMSI, the HSS shall return an Experimental-Result of DIAMETER_ERROR_UNKNOWN_PROSE_SUBSCRIPTION.
If the UE is not allowed to use ProSe in the visited PLMN, the HSS shall return an Experimental-Result of DIAMETER_ERROR_PROSE_NOT_ALLOWED. Otherwise, the HSS shall return a Result-Code of DIAMETER_SUCCESS and shall store ProSe Function identity (the ProSe Function identity is received within the Origin-Host AVP) and download the ProSe subscription data to the ProSe Function. The HSS shall provide the Visited PLMN ID of where the UE is registered if the UE is roaming in a PLMN different from the Home PLMN.
5.3 Update ProSe Subscriber Data
5.3.1 General
The Update ProSe Subscriber Data procedure shall be used between the ProSe Function and the HSS to update the subscriber related data downloaded by means of the ProSe Subscriber Information Retrieval operation (see clause 5.2) and stored in the ProSe Function.
It shall be used to update subscriber related data in the ProSe Function due to administrative changes of the user data in the HSS, i.e. if the user was given a subscription and the subscription has changed. It shall be used at least to perform the following:
– update of all of ProSe subscription data of the subscriber,
– update of a subset of the ProSe subscription data of the subscriber,
– deletion of the ProSe subscription data of the subscriber.
The procedure will also be triggered when the VPLMN has changed.
This procedure is mapped to the commands Update-ProSe-Subscriber-Data-Request/Answer (UPR/UPA) in the Diameter application specified in clause 6.
Table 5.3.1-1 specifies the involved information elements for the request.
Table 5.3.1-2 specifies the involved information elements for the answer.
Table 5.3.1-1: Update ProSe Subscriber Data Request
Information element name |
Mapping to Diameter AVP |
Cat. |
Description |
IMSI |
User-Name (See IETF RFC 6733 [23]) |
M |
This information element shall contain the user IMSI, formatted according to 3GPP TS 23.003 [7], clause 2.2. |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
ProSe Subscription Data (See 6.3.2) |
ProSe-Subscription-Data |
C |
This information element shall contain the ProSe Subscription Data that gives the user permission to use ProSe. |
Visited PLMN Id (See 3GPP TS 29.272 [10]) |
Visited-PLMN-Id |
C |
This IE shall contain the MCC and the MNC of the PLMN where the UE is registered, see 3GPP TS 23.003 [7]. It shall be present if the UE is roaming in a PLMN different from the Home PLMN. |
UPR Flags |
UPR-Flags |
M |
This Information Element shall contain a bit mask. See clause 6.3.6 for the meaning of the bits. |
Reset-IDs (See 3GPP TS 29.272 [10]) |
Reset-ID |
O |
The Reset-ID uniquely identifies a fallible resource in the HSS’s realm on which the user (IMSI) depends. In the event of a restart of the fallible resource a Reset message containing the Reset-ID will exactly identify the impacted subscribers. |
Table 5.3.1-2: Update ProSe Subscriber Data Answer
Information element name |
Mapping to Diameter AVP |
Cat. |
Description |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
Result (See 6.4) |
Result-Code / Experimental-Result |
M |
This IE shall contain the result of the operation. The Result-Code AVP shall be used to indicate success / errors as defined in the Diameter base protocol (see IETF RFC 6733 [23]). The Experimental-Result AVP shall be used for PC4a errors. This is a grouped AVP which shall contain the 3GPP Vendor ID in the Vendor-Id AVP, and the error code in the Experimental-Result-Code AVP. The following errors are applicable in this case: – User Unknown – Unknown ProSe Subscription |
5.3.2 Detailed behaviour of the ProSe Function
When receiving a Update ProSe Subscriber Data request, the ProSe Function shall check whether the IMSI is known.
If it is not known, a result code of DIAMETER_ERROR_USER_UNKNOWN shall be returned.
If it is known, the ProSe Function shall update the corresponding data according to the indication as sent in the request, and acknowledge the Update ProSe Subscriber Data message by returning an Update ProSe Subscriber Data Answer. If the UPR-Flags indicates that the ProSe subscription data is to be deleted, the ProSe Function shall delete the associated ProSe UE context if it has been stored before.
If the update of the subscription data succeeds in the ProSe Function, the Result-Code shall be set to DIAMETER_SUCCESS.
If the ProSe Function cannot fulfil the received request for other reasons, e.g. due to a database error, it shall set the Result-Code to DIAMETER_UNABLE_TO_COMPLY. In this case, the ProSe Function shall mark the subscription record "Subscriber data to be restored in the HSS".
5.3.3 Detailed behaviour of the HSS
The HSS shall make use of this procedure to update the relevant subscriber related data in the the ProSe Function to replace a specific part of the user data stored in the ProSe Function with the data sent.
If the ProSe related subscription data is updated or revoked, the HSS sends the updated ProSe subscription data to the ProSe Function. The HSS shall include the UPR-Flags to indicate which part of the data is updated. If all of the ProSe subscription data is to be removed, the HSS shall set the "Removal of all ProSe Subscription Data" bit of the UPR-Flags, and the HSS shall delete the ProSe Function Identity if it is stored for this subscriber.
5.4 Notification Procedure
5.4.1 General
This procedure shall be used between the ProSe Function and the HSS when the HSS needs to be notified about:
– revocation of authorization for ProSe direct service on one PLMN.
– removal of the subscription data from the ProSe Function either by an MMI interaction or automatically.
This procedure is mapped to the commands ProSe-Notify-Request/Answer (PNR/PNA) in the Diameter application specified in clause 6. Tables 5.4.1-1 and 5.4.1-2 detail the involved information elements.
Table 5.4.1-1: ProSe Notify Request
Information Element Name |
Mapping to Diameter AVP |
Cat. |
Description |
IMSI |
User-Name (See IETF RFC 6733 [23]) |
C |
This information element shall contain the user IMSI, formatted according to 3GPP TS 23.003 [7], clause 2.2. It shall be present if the revocation is for a specific UE. |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
PLMN ID (see 3GPP TS 29.272 [10]) |
Visited-PLMN-Id |
C |
This information element shall contain the MCC and the MNC of the PLMN where the UE’s authorization for ProSe direct service is revoked, see 3GPP TS 23.003 [7]. It shall be present if the ProSe Function revokes the authorization for ProSe direct service in a specific PLMN. |
PNR Flags (see 6.3.7) |
PNR-Flags |
C |
This Information Element shall contain a bit mask. See 6.3.7 for the meaning of the bits. |
Table 5.4.1-2: ProSe Notify Answer
Information Element Name |
Mapping to Diameter AVP |
Cat. |
Description |
Result |
Result-Code / Experimental-Result |
M |
This IE shall contain the result of the operation. The Result-Code AVP shall be used to indicate success / errors as defined in the Diameter base protocol (see IETF RFC 6733 [23]). The Experimental-Result AVP shall be used for PC4a errors. This is a grouped AVP which shall contain the 3GPP Vendor ID in the Vendor-Id AVP, and the error code in the Experimental-Result-Code AVP. The following errors are applicable: – User Unknown – Unknown ProSe Subscription |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
5.4.2 Detailed Behaviour of the ProSe Function
The ProSe Function shall make use of this procedure to revoke authorization for ProSe direct service.
The ProSe Function shall make use of this procedure to inform the HSS when the subscription data is deleted from the ProSe Function database due to MMI interaction or automatically.
The ProSe Function shall send the updated ProSe Permission and the PLMN ID for which the ProSe Permission is to be updated. If the revocation is for a single UE in the indicated PLMN, the ProSe Function shall include IMSI in the request.
5.4.3 Detailed Behaviour of the HSS
When receiving a ProSe Notify Request the HSS shall check if the IMSI, if present in the message, exists in the HSS. If not, an Experimental-Result of DIAMETER_ERROR_USER_UNKNOWN shall be returned.
If the IMSI exists but there is not any ProSe subscription data for the IMSI and the PLMN ID as indicated by the Visited-PLMN-Id AVP in the request, the HSS shall return an Experimental-Result of DIAMETER_ERROR_UNKNOWN_PROSE_SUBSCRIPTION.
If the PNR-Flags indicates revocation of authorization for ProSe direct service, and
– if the IMSI exists and there is ProSe subscription data for the IMSI and the PLMN ID as indicated by the Visited-PLMN-Id AVP in the request, the HSS shall revoke ProSe direct service as indicated by the PNR Flags received in the request on that PLMN for the user and update the ProSe Subscription data accordingly. The HSS shall set the result code to DIAMETER_SUCCESS.
– if IMSI is not present in the message, the HSS shall check if there are any users subscribed to ProSe subscription for the PLMN as indicated by the Visited-PLMN-Id AVP in the request, and if yes, revoke ProSe direct service as indicated by the PNR Flags received in the request on that PLMN for all the impacted users and update their ProSe Subscription data accordingly. The HSS shall set the result code to DIAMETER_SUCCESS.
If the PNR Flags indicates the subscription data is deleted from the ProSe Function, the HSS shall remove the ProSe Function Identity for the subscriber and set the result code to DIAMETER_SUCCESS.
For any other reasons if the HSS cannot fulfil the received request, e.g. due to a database error, it shall set the result code to DIAMETER_UNABLE_TO_COMPLY.
5.5 Reset
5.5.1 General
The Reset Procedure shall be used by the HSS, after a restart, to indicate to the ProSe Function that a failure has occurred.
The Reset Procedure may also be used by the HSS as part of operation and maintenance actions e.g. to allow planned HSS outage without service interruption.
This procedure is mapped to the commands Reset-Request/Answer (RSR/RSA) in the Diameter application specified in clause 6.
Table 5.5.1-1 specifies the involved information elements for the request.
Table 5.5.1-2 specifies the involved information elements for the answer.
Table 5.5.1-1: Reset Request
Information element name |
Mapping to Diameter AVP |
Cat. |
Description |
User Id List (See 3GPP TS 29.272 [10]) |
User-Id |
O |
This IE shall contain a list of ProSe User-Ids where a ProSe User-Id comprises the leading digits of an IMSI (i.e. MCC, MNC, leading digits of MSIN) and it shall identify the set of subscribers whose IMSIs begin with the User-Id. The HSS may include this information element if the occurred failure is limited to subscribers identified by one or more User-Ids. |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
Reset-IDs (See 3GPP TS 29.272 [10]) |
Reset-ID |
O |
If present, this information element identifies together with the HSS’s realm the set of impacted subscribers. |
Table 5.5.1-2: Reset Answer
Information element name |
Mapping to Diameter AVP |
Cat. |
Description |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
Result (See 6.4) |
Result-Code / Experimental-Result |
M |
This IE shall contain the result of the operation. The Result-Code AVP shall be used to indicate success / errors as defined in the Diameter base protocol (see IETF RFC 6733 [23]). The Experimental-Result AVP shall be used for PC4a errors. This is a grouped AVP which shall contain the 3GPP Vendor ID in the Vendor-Id AVP, and the error code in the Experimental-Result-Code AVP. There are no Experimental-Result codes applicable for this command. |
5.5.2 Detailed behaviour of the ProSe Function
When receiving a Reset message the ProSe Function shall mark all impacted subscriber records "Subscriber DataConfirmed in HSS" as "Not Confirmed", as defined in 3GPP TS 23.007 [11]. If the Reset-IDs IE is supported and received, the ProSe Function shall make use of the Reset-IDs (together with the HSS’s realm) in order to determine which subscriber records are impacted (i.e. check whether at least one received Reset-ID is associated with the subscriber, and the HSS’s realm identity received in the Origin-Realm AVP matches the value stored after successful ProSe-Subscriber-Information retrieval); otherwise the ProSe Function shall make use of the HSS Identity received in the Origin-Host AVP (by comparing it with the value stored after successful ProSe-Subscriber-Information retrieval) and may make use of the received User-Id-List (if any) in order to determine which subscriber records are impacted.
5.5.3 Detailed behaviour of the HSS
The HSS shall make use of this procedure in order to indicate to all relevant ProSe Functions that the HSS has restarted and may have lost the current ProSe Function Identity of some of its subscribers who may be currently roaming in the ProSe Function Area and that the HSS, therefore, cannot send an Update ProSe Subscriber Data messages when needed.
If the Reset-ID feature is not supported by the ProSe Function and the HSS, the HSS may include a list of User Ids identifying a subset of subscribers served by the HSS, if the occurred failure is limited to those subscribers.
If the Reset-ID feature is supported by the ProSe Function, the HSS optionally may include one (or several) Reset-ID AVPs identifying e.g. failed hardware components if the occured failure is limited to those subscribers associated with e.g. the identified failed hardware components.
5.6 Initial Location Information Retrieval
5.6.1 General
This procedure shall be used between the ProSe Function and the HSS for retrieving the initial location information of the UE for EPC-levelProSe discovery. The procedure shall be invoked by the ProSe Function and is used:
– to request the initial location information of the UE.
This procedure is mapped to the commands ProSe-Initial-Location-Information-Request/Answer (PLR/PLA) in the Diameter application specified in clause 6.
Table 5.4.1/1 specifies the involved information elements for the request.
Table 5.4.1/2 specifies the involved information elements for the answer.
Table 5.6.1/1: ProSe Initial Location Information Request
Information Element Name |
Mapping to Diameter AVP |
Cat. |
Description |
IMSI |
User-Name (See ETF RFC 6733 [23]) |
M |
This information element shall contain the user IMSI, formatted according to 3GPP TS 23.003 [7], clause 2.2. |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
Table 5.6.1/2: ProSe Initial Location Information Answer
Information Element Name |
Mapping to Diameter AVP |
Cat. |
Description |
Result |
Result-Code / Experimental-Result |
M |
This IE shall contain the result of the operation. The Result-Code AVP shall be used to indicate success / errors as defined in the Diameter base protocol (see IETF RFC 6733 [23]). The Experimental-Result AVP shall be used for PC4a errors. This is a grouped AVP which shall contain the 3GPP Vendor ID in the Vendor-Id AVP, and the error code in the Experimental-Result-Code AVP. The following errors are applicable: – User Unknown – UE Location Unknown |
ProSe Initial Location Information (See 6.3.9) |
ProSe-Initial-Location-Information |
C |
This information element shall contain the location information of the UE. |
Visited PLMN Id (See 3GPP TS 29.272 [10]) |
Visited-PLMN-Id |
C |
This IE shall contain the MCC and the MNC of the PLMN where the UE is registered, see 3GPP TS 23.003 [7]. It shall be present if the UE is roaming in a PLMN different from the Home PLMN. |
Supported Features (See 3GPP TS 29.229 [6]) |
Supported-Features |
O |
If present, this information element shall contain the list of features supported by the origin host. |
5.6.2 Detailed Behaviour of the ProSe Function
To request the initial location information of the targeted UE, the ProSe Function shall include the corresponding IMSI in the user profile of the targeted user in ProSe Initial Location Information Request.
NOTE: The user profile for the targeted user is stored in the ProSe Function according to clause 7.2.2.3 of 3GPP TS 24.334 [16].
5.6.3 Detailed Behaviour of the HSS
When receiving a ProSe Initial Location Information Request the HSS shall check whether the IMSI is known.
If it is not known, a result code of DIAMETER_ERROR_USER_UNKNOWN shall be returned.
If it is known and the MME is not the serving node currently registered in HSS for the UE, the HSS shall return an Experimental-Result of DIAMETER_ERROR_UE_LOCATION_UNKNOWN. If it is known and the MME is the serving node currently registered in HSS for the UE, the HSS shall return a Result-Code of DIAMETER_SUCCESS and provide the location information of the UE to the ProSe Function. The HSS shall provide the Visited PLMN ID of where the UE is registered if the UE is roaming in a PLMN different from the Home PLMN.
NOTE: When requesting the UE location via S6a, the HSS does not set the "Current Location Request" bit in the IDR-Flags in the Insert Subscriber Data Request message.