The present document describes the general aspects on how supplementary services in the 3GPP system are realised from a technical point of view.
Description of technical realisation for specific supplementary services can be found in TS 23.072, 23.08x and 23.09x series technical specifications.
All supplementary services may require signalling on the radio path. Signalling procedures and messages used are defined in the TS 24.072, 24.08x and 24.09x series of technical specifications.
For some supplementary services information needs to be transferred between the Home Location Register (HLR), the Visitor Location Register (VLR), the Mobile services Switching Centre (MSC) and the Serving GPRS Support Node (SGSN). Signalling procedures for such information transfer are defined in TS 29.002.
Definitions and descriptions of supplementary services are given in the TS 22.072, 22.08x and 22.09x series of technical specifications.
Definitions are given in TS 22.004.
The following documents contain provisions which, through reference in this text, constitute provisions of the present document.
References are either specific (identified by date of publication, edition number, version number, etc.) or non-specific.
For a specific reference, subsequent revisions do not apply.
For a non-specific reference, the latest version applies. In the case of a reference to a 3GPP document (including a GSM document), a non-specific reference implicitly refers to the latest version of that document in the same Release as the present document.
Activation, deactivation, registration, erasure, interrogation and invocation are defined independently from a particular supplementary service. Whether they are applicable to a particular supplementary service or not is defined in the corresponding 3GPP TS 23.08x and 23.09x series. Activation, deactivation, registration, erasure and invocation are applicable for CS domain. For PS domain o nly invocation of call barring of SMS is applicable.
The invocaZtion of a supplementary service is executed as described in the corresponding stage 2 description and always includes an MSC and a location register for CS domain and an SGSN for PS domain.
When an MSC receives a request for either activation/deactivation or registration/erasure or an interrogation, it invokes one of the following procedures.
The MSC then can:
contact only the current VLR (e.g. interrogation of a call forwarding conditional supplementary service);
contact only the HLR (e.g. interrogation of the supplementary service call forwarding unconditional);
contact the HLR, after which the HLR updates the VLR (e.g. registration of a forwarding number for a conditional call forwarding supplementary service).
Which of the above listed procedures is applied for a call independent supplementary service operation is described in the corresponding 3GPP TS 23.08x and 23.09x series.
Successful activation, deactivation, registration and erasure change the service state at the HLR. These transitions (if applicable to a particular service) are defined in the 3GPP TS 23.08x and 23.09x series. Note that the HLR may also change the service state due to "HLR Induction" (see clause 2.1.1).
In connection with supplementary service operations the served subscriber or remote subscribers may get notifications from the network. .
If an SGSN receives a request for registration, erasure, activation, deactivation, interrogation or change of password, it shall return an error to the MS.
In order to provide a tool to define service states the concept of a "state vector" is introduced. The state vector is used to represent the state of the service in terms of four variables:
Provisioning State,
possible values are "Provisioned" or "Not Provisioned";
Registration State,
possible values are "Registered", "Erased", or "Not Applicable";
Activation State,
possible values are "Not Active", "Active and Operative" or "Active and Quiescent";
HLR Induction State,
possible values are "Induced" or "Not Induced".
The state vector represents the state of the service by using all four variables together. The state vector is represented using the notation:
e.g.: (Provisioned, Registered, Not Active, Not Induced).
Note that the state vector is a logical (not a physical) representation of the service state. Note also that though some parts of the state vector are similar to elements of SS Status the mapping between the state vector and SS Status is not one to one. The use of state vectors is not intended to specify any particular implementation internally in a node. There is a relationship specified between the state vector and parts of the transfer syntax. This relationship is not a direct one to one mapping.
The following text specifies the semantics of each variable in the state vector.
The three variables "Provisioning State", "Registration State" and "Activation State" are used to represent the state of the service according to the normal behaviour based on service provider and user actions.
The "HLR Induction State" records whether or not the HLR has temporarily induced the service (e.g. if the VLR does not support CUG, the HLR may induce an outgoing barring service). The Provisioning State, Registration State and Activation State are not affected by HLR induction of a service.
Provisioning State
has value "provisioned", if the subscriber has a subscription to the service;
has value "Not Provisioned" otherwise.
Registration State
has value "Not Applicable", if registration is not applicable to the service;
has value "Registered", if registration is applicable, and there is registration data available;
has value "Erased" otherwise.
Activation State
has value "Active and Operative", if the service is in a state where it can be invoked (and this is not due to HLR induction);
has value "Active and Quiescent", if the service is in a state where it cannot be invoked, but where it will automatically move to the "Active and Operative" state when conflicting conditions are removed;
has value "Not Active" otherwise.
HLR Induction State
has the value "Induced" if the HLR has induced the service (e.g. if the VLR does not support CUG, the HLR may induce an outgoing barring service);
has the value "Not Induced" otherwise.
For further information about how HLR induction applies to particular services refer to the 3GPP TS 23.08x and 23.09x series.
Valid states (represented by state vectors) are defined on a service by service basis in the 3GPP TS 23.08x and 23.09x series. For each service the set of valid states represents the logical states that can exist in the HLR. The HLR contains the master copy of service state information.
To send service state information to the VLR, the SGSN or the MS, the HLR often uses the SS Status parameter. This parameter contains four bits (referred to here as the "P bit", "R bit", "A bit" and "Q bit"). In a phase 2 context the HLR shall encode the SS Status using the mapping defined in this clause from the service states to SS Status.
If the HLR Induction State is "Not Induced" then:
If the Provisioning State is "Provisioned", then the P bit shall be 1, otherwise the P bit shall be 0.
If the Registration State is "Registered", the R bit shall be 1. If the Registration State is "Not Registered" the R bit shall be 0. If the Registration State is "Not Applicable" the R bit shall be either 0 or 1.
If the Activation State is "Active and Operative" the A bit shall be 1 and the Q bit shall be 0. If the Activation State is "Active and Quiescent" the A bit shall be 1 and the Q bit shall be 1. If the Activation State is "Not Active" the A bit shall be 0 and the Q bit shall be either 0 or 1.
If the HLR Induction State is "Induced" then the P bit shall be 1, the R bit shall be 0 or 1, the A bit shall be 1 and the Q bit shall be 0.
If the service can be invoked at the HLR (e.g. to bar an incoming call) then invocation is possible only if the Activation State is "Active and Operative". Note that the concept of HLR induction does not apply to services invoked at the HLR as the HLR can invoke the effect of these services without needing to induce them first.
The VLR shall store sufficient information to support VLR based invocation, interrogation and notifications from the VLR to the MS. The SGSN shall store sufficient information to support SGSN based invocation.
The VLR or the SGSN shall not check the internal consistency of SS Status values received from the HLR (i.e. it shall not impose any rules relating values of some bits in SS Status to other bits). The VLR or the SGSN shall not check that the SS Status received from the HLR is valid according to the VLR's or SGSN's definition of the relevant service.
The ability to invoke the service at the VLR (e.g. to forward a call, or create an MPTY call) is based on the A and Q bits of SS Status. The service can only be invoked if A=1 and Q=0. Other bits in SS Status are not relevant to invocation at the VLR. .
The ability to invoke the service at the SGSN (i.e. to bar MO SMS submission) is based on the A bit of SS-Status. The service can only be invoked if A=1. Other bits in SS-Status are not relevant to invocation at the SGSN.
If the VLR sends a notification or an interrogation result that includes an SS Status parameter the VLR shall set the P, R, A and Q bits to the same values received from the HLR. Unless stated otherwise in individual service specifications, it the service is not provisioned and the VLR has not received a value for SS Status from the HLR then if the VLR has to send SS Status for that service it shall set the P, R, A, and Q bits to 0.
The MS has to interpret SS Status values received from the network. The following information is provided as guidance as to how to treat the SS Status information:
The P, A and Q bits are relevant for all phase 2 supplementary services for which the MS may receive SS Status information from the network.
The value of the R bit is only relevant if registration is applicable to the supplementary service the SS Status relates to.
The A and Q bits shall be treated as a pair with the following meanings assumed:
If A=1 and Q=0, then the service is "Active and Operative";
If A=1 and Q=1, then the service is "Active and Quiescent";
If A=0 and Q=0 or 1, then the service is deactivated.
The MS may assume that if P=0 then the service is also deactivated (and if registration is applicable erased).
If registration is applicable to the service then the MS may assume that if R=0 then the service is also deactivated.
A request for registration, erasure, activation, deactivation or interrogation of a supplementary service always refers to a basic service group.
The basic service group may be either an elementary basic service group (defined in TS 22.004) or a collective basic service group (defined in TS 22.030).
The following text and Figure 2.1 describe the general handling of call independent SS procedures in the destination entity with respect to basic service groups.
The VLR or HLR (i.e. the destination entity) shall check the received request for general problems (see Figure 2.1-2 sheet 2 and Figure 2.1-3 sheet 3).
In case of general error the procedure shall be terminated by sending an error towards the MS (see Figure 2.1-1 sheet 1).
If there is no general problem, the HLR or VLR shall split the received basic service group (BSG) into elementary basic service groups (EBSG) and continue with separate handling of each elementary basic service group (see Figure 2.1-1 sheet 1).
Note that the received basic service group may be an elementary basic service group. In this case splitting is not required.
Elementary basic service groups shall be ignored if:
there is no basic service provisioned in the group; or
the supplementary service is not applicable for any basic service within this elementary basic service group;
(see Figure 2.1-4 sheet 4).
Note that in case the SS is either not provisioned or all the elementary basic service groups were ignored a general error will be returned (see above).
For interrogation the following handling continues (see Figure 2.1-4 sheet 4):
For all other elementary basic service groups the information requested will be returned to the MS and the procedure is terminated.
For registration/erasure and activation/deactivation the following handling continues (see Figure 2.1-4 sheet 4):
For all other elementary basic service groups the requested procedure will either be executed or rejected due to interaction with other supplementary services.
If the request cannot be accepted for any of these elementary basic service groups due to interaction, the corresponding error will be returned and the procedure is terminated.
If the request was executed for all of these elementary basic service groups an acknowledgement is returned towards the MS and the procedure is terminated.
Note that this acknowledgement will include the same basic service group as received in the request.
In case the request is accepted for some but not for all of these elementary basic service groups, partial acceptance will be signalled towards the MS and the procedure will be terminated.
The return errors for supplementary service operations and applicability of these errors are defined in TS 24.080. Detailed description of call independent handling for a specific supplementary service is described in 3GPP TS 23.08x and 23.09x series of technical specifications.
When an individual teleservice code or bearer service code is sent by an MS instead of an elementary basic service group the network shall treat such a request as a request for the corresponding elementary basic service group.
The response to such a request shall include the elementary basic service group code of this basic service code if this is required by the protocol or application.
Some supplementary services can be subscribed with the option "control of supplementary service by subscriber using password" as described in the corresponding 3GPP TS 23.08x and 23.09x series of technical specifications. This option is applicable only for the CS domain. These services are referenced in the following as protected supplementary services.
The password is stored in the HLR only.
It has to be memorised by the network, if a wrong password has been used. Therefore, the HLR stores the value of the Wrong Password Attempts counter (WPA).
If a password check is done with an incorrect password, the WPA is incremented by one. If a password check is passed, WPA is set to zero. If WPA exceeds the value three, the subscription option "control of supplementary service" is set to "by the service provider". This makes registration of password and activation or deactivation of protected supplementary services impossible (see TS 22.004).
When the service provider registers a password, the WPA is set to zero.
When an attempt to perform an operation requiring a password is received by the network, the network has to check whether the requesting subscriber has subscribed to the option "control of supplementary service by subscriber using password". This is shown in Figure 3.1 (function PW1).
If this option has the value "by the service provider" the WPA has to be checked. When WPA exceeds three, then more than three attempts with a wrong password have been made and the appropriate message will be sent to the user. If the value of WPA is less than or equal to three, then the subscriber has not subscribed to "control of supplementary service by subscriber using password".
When a password is supplied, it has to be checked, whether it is identical to the one stored. If this applies, then WPA is reset to zero. Otherwise WPA is incremented by one and dependent of the value of the counter, the network shall request the password again, or shall send and error message and update the subscription option as shown in Figure 3.2 (function PW2).
After the input of a wrong password more than three consecutive times, the only possibility to reset the Wrong Password Attempts counter (WPA) is, to register a new password by the service provider.
Figure 3.3 and Figure 3.4 show the procedures executed by the network in order to check the format (function PW3) and to check the new password (function PW4).
If the served mobile subscriber at provision time has selected the subscription option "control of supplementary service by subscriber using password", the service provider has to register a password at provision time. Furthermore the served mobile subscriber can change the password by an appropriate control procedure at any time. The control procedure consists of three steps: first, the old password has to be provided; secondly, the new password has to be given, after which it has to be verified by providing it once more (see Figure 3.5).
If the served mobile subscriber at provision time has selected the subscription option "control of supplementary service by the service provider" an attempt to register a password will be denied and the served mobile subscriber should receive a notification.
The subscriber can register a new password, thus causing the previous registration to be overridden (see Figure 3.5).
If the served mobile subscriber at provision time has selected the subscription option "control of supplementary service by subscriber using password" the supplementary service is activated only if the subscriber provides the correct password to the network.
If the served mobile subscriber at provision time has selected the subscription option "control of supplementary service by the service provider", the supplementary service cannot be activated by the subscriber. The activation has to be performed by the service provider. An attempt to activate the service will be denied and the served mobile subscriber should receive a notification.
If the served mobile subscriber at provision time has selected the subscription option "control of supplementary service by subscriber using password", and if a wrong password is entered to activate the service the supplementary service will not be activated and the served mobile subscriber is notified.
The information flow for activation of a protected supplementary service is shown in Figure 3.6.
The procedure for activation, described in clause 3.3, is valid also correspondingly for deactivation.
The information flow for deactivation of protected supplementary service is shown in Figure 3.7.