The present invention relates to a method and a node for storing subscription-related information as well as a method carried out in a node including a call session control function or applications server function and the node including these functions.
A modern telecommunication system may comprise what is named an “Internet Protocol (IP) Multimedia Subsystem”, commonly abbreviated as “IMS” or as “IM Subsystem”. The IMS allows a telecom system to offer multimedia services to user terminals, also referred to as “user equipment” (UE), comprising e.g. voice, video, text, chat and combinations thereof. The architecture and general features of the IMS are generally described in the 3GPP specification TS 23.002, see e.g. version 12.4.0, chapters 3.3a; 4a.7; 5.5.1 and 5.5.2. More specifically, the basic principles, features and flows of IMS are disclosed—at a “stage 2” level—by the 3GPP specification TS 23.228, see e.g. version 12.4.0.
In short, the IMS is logically structured into a so called “core network” layer (implemented by functional entities which are briefly described below), and a so called “service layer”.
Said “service layer” essentially comprises one or more “Application Servers” (AS) arranged to provide a service to the user terminal (UE) of a subscriber connected to the IMS, and/or arranged to mediate in the provision of a service by executing a specific service-based logic, such as to divert an incoming multimedia session in certain circumstances. An AS may receive and/or send (from/to serving entities in the IMS) signaling related to a communication service originated and/or terminated by the user terminal (UE) of a subscriber of the IMS.
Some of the functional entities making up the so called IMS “core network” layer are discussed in the following. The IMS core comprises—among others—two kind of functional entities: the so called “Call Session Control Function” (CSCF), and the so called “Home Subscriber Server” (HSS).
The CSCF can adopt different roles of “Proxy” (P-CSCF), “Interrogating” (I-CSCF) and “Serving” (S-CSCF):
The P-CSCF is the first contact point within the IMS for an UE, and behaves like a “proxy” for the signaling to/from the UE. Since the Session Initiation Protocol (SIP) was envisaged to carry out signaling between the UE and the IMS, the P-CSCF thus behaves like a proxy as defined by the IETF-RFC 3261 (which defines the SIP protocol). Further details of the functionality of a P-CSCF are given in chapter 4.6.1 of the aforementioned 3GPP specification TS 23.228, for example.
The I-CSCF is the contact point within an operator's network for all connections destined to the UE of a user who is a subscriber of that network operator, or the UE of a roaming user currently located within that network operator's service area. Among other functions, the I-CSCF communicates with the HSS to obtain the address of the S CSCF where to forward signaling received in respect to an UE via a P-CSCF (e.g. registration signaling of the UE, or signaling relating to a service terminating in said UE). Further details of the functionality of a I-CSCF are given in chapter 4.6.2 of the aforementioned 3GPP specification TS 23.228, for example.
The S-CSCF performs the session control services for an UE. It maintains a session state according to the (SIP) signaling exchanged with an UE for supporting the services originated and/or terminated by the UE. It can also communicate with Application Server(s) of the IMS “service layer” to handle a service for an UE. Further details of the functionality of a S-CSCF are given in chapter 4.6.3 of the aforementioned 3GPP specification TS 23.228, for example.
The HSS is the master database for storing data for a given user, such as subscription-related information. Said subscription-related information comprises, among other, user profile data of said user, which in turn includes service profile data that govern/control how the services originated and/or terminated by said user are to be controlled within the telecom network (i.e. the so called “service profile” data). The user profile related data is referred, in some implementations, as subscription (data). For example, the
Further details of the functionality of the HSS are given in chapter 4.1.1.1 of the 3GPP specification TS 23.002, for example.
For attending to the CSCFs and to the ASs, a HSS supports generally two kinds of interfaces: the so called “Cx” interface (HSS⇄CSCF), and the so called “Sh” interface (HSS⇄AS).
The Cx interface is used to send from the HSS to the S-CSCF, assigned to attend signaling messages related to a certain subscriber, the corresponding subscriber data. The data transmitted via the Cx interface include—among other user profile data—the so called “initial Filter criteria” (iFC), which e.g. indicates to the S-CSCF which SIP requests should be proxied to which ASs. Protocol details of the “Cx” interface are defined in the 3GPP TS 29.228, see e.g. version 12.1.0.
The Sh interface is between the HSS and an AS (e.g. a SIP Application Server, or a OSA SCS) and may be used for transferring profile information of a subscriber, such as user service related information or user location information or charging function addresses. Protocol details of the “Sh” interface are defined in the 3GPP TS 29.328, see e.g. version 12.4.0.
In order to specify how to handle different services in the IMS core network entities in respect to an end user, the 3GPP has standardized how communications services are to be handled in the IMS in the 3GPP specification TS 23.218, see e.g. version 12.3.0. In addition, 3GPP has also standardized the procedures for service profile and location management in abovementioned TS 29.228 (IMS Cx interface).
The aforementioned 3GPP TS 29.228 describes how the HSS and S-CSCF must perform service profile handling and S-CSCF assignment for the end users. These procedures usually involve one request message per user provisioned in the HSS, both for updating subscriber data and for location management, which means that many O&M (Operations and Maintenance) tasks initiated by the operator and affecting the profile data of many users (i.e. not of a single user) result in the HSS sending thousands or millions of messages across the network to inform the S-CSCF. The same issue occurs in Sh interface (described in 3GPP TS 29.328): for example, a massive user deregistration results in massive signaling towards the ASs subscribed to the IMS user status. This is a concern for many operators, since there is no standard way to alleviate the signaling, and also to speed up these operations.
When related to iFC (“iFC” stands for “initial Filter Criteria”; it is a part of the service profile related to a user—stored permanently in a HSS and temporarily in the S-CSCF assigned to serve a UE of said user—and comprising, among other, service triggers for routing multimedia communication signaling towards different Application Servers executing and/or mediating in said services), the so-called Shared iFC (SiFC is described in TS 29.228, chapter 6.6) solves part of the problem (changes in triggers do not result in massive signaling over Cx interface). In particular, the so-called Shared iFC (SiFC) dispense with the need of downloading HSS>S-CSCF of all the data making up the iFC's for a certain user whose UE is assigned (e.g. at UE registration) to the S-CSCF. Instead, the HSS stores an identifier per user to a certain iFC and the S-CSCF associates the identifier to the definition of iFC's contents, which are referenced by using common identifiers, so that only downloading of the corresponding identifier (HSS→S-CSCF) suffices.
However, although an extended usage of Shared iFC's clearly tends to diminish signaling load at massive update of user profile data (i.e. references to some pieces of the profile are used, rather than the whole data), it faces the network operator with new issues.
In a network with many S-CSCFs, and since the shared iFC must be defined in all of them, it is hard to keep all nodes consistent since changes are rarely performed simultaneously. Considering multi-vendor scenarios, each S-CSCF may have a different data modelling for these sorts of data.
If the shared iFC has to be accessible over the Sh interface to be consumed by the ASs, the operator must define the same data in all S-CSCFs and the HSSs, which can be very complex to maintain.
In summary, there is no way to have subscriber data and location management data centralized in a single node, such as the HSS, and at the same time avoid massive signaling in the IMS network when it comes to updating the profile of a substantial number of users.
Below is the data model example relevant for the Cx interface for a group of users (one thousand in the example).
Public ID 1→sip:+3491000001@telefonica.net, Service Profile Id=X, CN Authorization=Y, mandatory capabilities=Z
Public ID 2→sip:+3491000002@telefonica.net, SP Id=X, CN Auth.=Y, Caps=Z
. . .
Public ID 1000→sip:+3491001000@telefonica.net, SP Id=X, CN Auth.=Y, Caps=Z
The problem arising with respect to these prior-art examples can be detailed as follows:
In step 1 of
As a result from the problems discussed above, any common profile change, e.g. Media Profile Id, may result in massive signaling in the network and it may take some time, e.g. several hours in large networks, to be completed. This makes it very difficult for the operator to know when all users have been treated, or even if all the users have been treated.
Accordingly, there is a need to diminish signaling load in an IMS and/or shorten signaling time, particularly when updating user profiles in respect to service profiles of a set of multiple users.
Suitable methods, nodes, a system and a computer program are defined in the independent claims. Advantageous embodiments are defined in the dependent claims.
In one embodiment, a method carried out by a subscriber information node for storing subscription-related information of users in an IP Multimedia Subsystem, IMS, is provided. In one step of the method a request message identifying a user is received. Then, it is determined whether the received request message comprises an indication of support of a user type associated with the user. The user type indicates that the user shares a certain user profile with other users. If the received request message comprises the indication of support of the user type, an attribute associated with the user type is stored for the user. The attribute is common for a plurality of users all associated with the same user type. As a result, subscription-related information may be obtained to determine how signaling can be reduced in subsequent procedures, such as updating or de-registration procedures.
In one embodiment, a method carried out by a node including a call session control function or application server function in an IMS comprises the step of generating a request message identifying a user. The request message comprises an indication of support of a user type associated with the user. The user type indicates that the user shares a certain user profile with other users. The method further comprises sending the generated request message to a subscriber information node as well as receiving from said subscriber information node at least one of a profile downloading message and an update profile message. The profile downloading message comprises information on the user type of a user profile for the user and the update profile message comprises information on a user type of user profiles of a plurality of users. As a result, the amount of received signals may be reduced since the messages received comprise information on the user type so that all users associated with the same user type can be treated similarly.
In one embodiment, a subscriber information node for storing subscription-related information of users in an IMS is provided. The node comprises a receiver configured to receive a request message identifying a user as well as a determinator, also referred to as determiner. The determinator is configured to determine whether the received request message comprises an indication of support of a user type associated with the user. The user type indicates that the user shares a certain user profile with other users. The node further comprises a storage configured to store for the user an attribute associated with the user type if the received request message comprises the indication of support of the user type. The attribute is common for a plurality of users all associated with the same user type. As a result, the subscriber information node may obtain subscription-related information to determine how signaling can be reduced in subsequent procedures, such as updating or de-registration procedures.
In one embodiment, a node including a call session control function or application server function in an IMS is provided. The node comprises a generator configured to generate a request message identifying a user. The request message comprises an indication of support of a user type associated with the user. The user type indicates that the user shares a certain user profile with other users. The node further comprises a sender configured to send the generated request message to a subscriber information node and a receiver configured to receive from said subscriber information node a profile downloading message and/or an update profile message. The profile downloading message comprises information on the user type of a user profile for the user and the update profile message comprising information on a user type of user profiles of a plurality of users. As a result, the amount of received signals at the node may be reduced since the messages received comprise information on the user type so that all users associated with the same user type can be treated similarly.
In another embodiment, a system is provided comprising the above-described elements of the subscriber information node, namely the receiver, the determinator, and the storage and the above-described elements of the node including a call session control function or application server function, namely the generator, the sender and the receiver.
In another embodiment, a computer program is provided which includes instructions configured, when executed on a data processor, to cause the data processor to execute the above-described methods.
Further, advantageous embodiments of the invention are disclosed in the dependent claims.
Some embodiments of the invention are described with reference to the figures. It is noted that the following description contains examples only and should not be construed as limiting the invention.
In the following similar or same reference signs indicate similar or same elements or operations/steps.
As can be seen in
For example, the request message may be a Server-Assignment-Request (SAR) message over the Cx interface (Cx-SAR message). The Cx-SAR message may be provided as signaling from the S-CSCF to the HSS to notify that a S-CSCF has been assigned to serve further messages intended to be originated and/or terminated by a terminal of a user, for example.
After receiving the request message, e.g. Cx-SAR message, it is determined in step 320 whether the received request message comprises an indication of support of a user type associated with the user. The indication of support may be signaled via AVP (Attribute-Value Pairs) which will be described in more detail below. The user type indicates that the user shares a certain user profile (e.g. in respect to at least service profile) with other users. For example, the user type is data indicating that each and every of the users associated to the same “user type” value share a certain user profile (e.g. at least in respect with the data of said profile that governs the execution of services originated and/or terminated from/to said users), wherein the data can be included in a service profile of a user profile associated with a certain user as shown later with respect to
Generally speaking, it can be said that a certain “user type” value indicates that all the users associated to said value share the same user profile data that make up the rules for governing the service execution processing of services originated or intended to be terminated by/on terminals (UE) of said user. In the particular case of IMS—which is described herein in the context of a preferred embodiment—, a certain “user type” value indicates that at least some parts of the user profile of a user are shared (i.e, it is common) with other users that are associated to the same “user type” value; more precisely, that their—so called—“service profile”—is common for all of them. In particular, the foregoing detailed description is given in respect to a preferred embodiment which includes a telecommunications system comprising a IMS, and which establishes a structured user profile (i.e. the so called “IMS subscription” illustrated by
If it is determined in step 320 that an indication is present, i.e. if the received request message comprises an indication of support of a user type, an attribute associated with the user type is stored for the user in step 330; otherwise, if no indication is present, an attribute is not stored and the node operates in conventional fashion.
In more detail, an attribute, for example a value indicating a user type, is stored, i.e. registered, in the subscriber information node, if an indication is present. The attribute is common for a plurality of users all associated with the same user type and may be provisioned together with the corresponding service or user profile. For example, the attribute may be the user type itself, and particularly its value for the concerned user, and is preferably a part of the service profile of the user. For example, by using as a searching key an identifier of the user, e.g. a public or private identifier of the user, the subscriber information node can identify, both, the service profile associated to the user as well as the user type that corresponds to the service profile. Users associated with the same user type belong to the same category/profile group and are associated to the same user type value, e.g. their service profile comprises the same value at the same position of the service profile structure.
After storing the attribute associated with the user type the subscriber information node may send to a second node including a Call Session Control Function (CSCF) or Application Server (AS) function a profile downloading message comprising information on the user type, e.g. the user type itself or the user profile including the user type, of a user profile stored at the subscriber information node for the user. The information element user type or any associated attribute can take different values, such as an integer between 1 and 65,535, wherein a certain value relates one-to-one to a certain service profile (see
The profile downloading message may be a Server-Assignment-Answer (SAA) message sent over the Cx interface (Cx-SAA message) from the HSS to the S-CSCF to download the service profile corresponding to the user. In this respect, the Cx-SAA sets up data in the S-CSCF by including the user type in the user profile in the message, for example.
In a similar way, as discussed above with respect to the profile downloading message, an update profile message comprising information on the user type, e.g. the user type itself or the user profile including the user type, stored at the subscriber information node, e.g. HSS, may be sent, to request to update at the second node including the CSCF or AS function the user profiles of the plurality of users associated with this user type. In this case, the update profile message may be a Push-Profile-Request (PPR) message over the Cx interface (Cx-PPR message). The Cx-PPR message may similarly include the user type as well as a new profile, which is described in more detail with respect to
Next, operations carried out in the above mentioned second node including the CSCF or AS function are discussed with respect to
As shown in step 410, a request message identifying a user is generated. The request message may be the request message which is obtained by the subscriber information node, as explained above with respect to
The generated request message is then sent to the subscriber information node, as shown in step 420 and received by the subscriber information node as explained before with respect to step 310 in
In the next step 430 of
In one example, the profile downloading message comprises, as the information on the user type, a user profile including the user type of the user associated with the request message. In another example, the update profile message comprises, as the information on the user type, a new user profile and a user type for all users associated with the user type. In a simple example the information on the user type is the above mentioned attribute. As mentioned above, the user profile may be a user profile of IMS subscription data including a field in a predetermined bit pattern indicating the user type.
In response to receiving the update profile message, user profiles stored at the system node may be updated, namely the user profiles of the plurality of users associated with the user type informed by the update profile message may be updated.
According to above discussed aspects, the HSS stores an attribute indicating, e.g. user type, which will be common for all users of the same category/profile (for example, users subscribed to a certain service profile related to a certain commercial product, such as “Movistar Fusion 4G” for users living in the south-east of Spain). This attribute is then preferably provisioned together with the corresponding service profile of the concerned user and identifiers at the service profile level. At reception of an initial registration from a UE, providing from the HSS the information on the user type to the S-CSCF within the user profile at Cx-SAA command is performed.
At reception of an update profile message by the S-CSCF from the HSS (e.g. Cx DIAMETER message PPR from the HSS to the S-CSCF, including the user type, optionally the range of identities affected and the new profile for such users), the S-CSCF replaces the old user profile by the new one provided by the HSS for all users having the same user type.
Instead of updating user profiles, at reception of a Cx-deregister request by the S-CSCF from the HSS (e.g. Cx DIAMETER message RTR including the user type and/or a range of identities affected), the users are deregistered, which will be described later with respect to
As a result, methods to diminish signaling load in an IMS when updating service profiles of a set of users or deregistering users can be provided. In particular, instead of sending, e.g. from HSS to S-CSCF via the Cx interface, for each and every user affected one signal, a single signal per S-CSCF is sent, which may include the updated profile data and specifically a common identifier usable to identify by the S-CSCF all the affected user. The common identifier that achieves identifying the users affected by the update of the service profile is the above mentioned user type. Therefore, by addressing an update in respect to user type rather than to individual identifiers, a single signal, e.g. from the HSS to the S-CSCF, can be used to accomplish the modification of the service profile of a huge number of users.
Further details regarding initial registration, updates and deregistration are now discussed with respect to the remaining figures.
In
It is noted that the service profile in IMS comprises data values that are utilized by the S-CSCF and/or AS assigned to a certain user to govern how services originated and/or terminated by the terminal of a user are to be held. In IMS, the service profile is associated to a public identifier of the user, e.g. the MSISDN or SIP-URL that one can utilize to call a user. In the case of IMS, a user can have one or more public identifiers, as explained above, but each one of these public identifiers is associated to only one service profile. Therefore, if an IMS user originates a call from his terminal, its originating call will be treated by its assigned S-CSCF and/or AS, according to the service profile associated to the public identifier indicated by the terminal in the originating party identification information of the call. Similarly, if an IMS user receives a call, the call will be treated by its assigned S-CSCF and/or AS according to the service profile associated to the public identifier indicated by the calling party in respect to the terminating party in the identification information of the call. In other words, if “A” calls to “B”: the call will be treated by A's servers according to A's profile (i.e. as related to A's public identifier indicated by “A”), and the call will be treated by B's servers according to B's profile (i.e. as related to the B's public identifier indicated by “A” on his call).
Several flow diagrams are presented in the following providing detailed examples of managing subscription-related information at nodes of the IMS. For the sake of illustrating features of compatibility, S-CSCF-2/AS-2 are assumed to support the novel features of the invention, whereas it is assumed that S-CSCF-1/AS-1 do not support them. For simplicity, P-CSCFs and I-CSCFs that might intervene in some of the signaling flows of the following figures are not illustrated.
In steps 1-2, users 1-1000 (see reference sign 710) perform an initial registration each (note that the figure shows only one REGISTER request, but it is assumed that there are a thousand REGISTER requests, for each user one). S-CSCF-1730 requests for the user profile. Since S-CSCF-1 does not support the mechanism, it does not indicate anything in the Cx-Put/Pull (Cx-SAR, Server-Assignment-Request) which is a request message.
Part of step 3 is the above-mentioned determining step which may comprise checking whether a bit for indicating support of a user type is set, e.g. as mark or flag, in a field of a bitmask included in the request message. In this example, the HSS stores the user's state as registered, since the S-CSCF did not indicate support for the mechanism, no mark/flag is associated to the user, i.e. the user requires an individual Cx-Update (Cx-PPR, Push-Profile-Request) or individual Cx-DeRegister (Cx-RTR).
In step 4, the HSS 750 returns the user profile in the Cx-SAA message (profile downloading message). Regardless of the S-CSCF support, the new information element “user type” is also included as part of the profile.
Note that a proposal for the User Type IE (Information Element in the XML schema containing the profile) could be an integer so that the operator can choose which values to assign. User type examples are provided in
In steps 5-6, S-CSCF-1730 stores the user profile. Since the user type IE is not known, it is ignored and the registration is accepted.
In step 7, users 1001-2000 (see reference sign 720) register in the network. For each registration received in step 8, S-CSCF-2740 requests for the user profile indicating the support for the mechanism. This can be done by using the Feature-List AVP (see table 7.1.1 in 3GPP TS 29.229), with a new bit defined for this feature (e.g. batch procedures). In step 9, HSS 750 stores the user's state as registered, e.g. including the attribute, together with a “massive updates” indication. That is, the user does not require an individual Cx-PPR towards this S-CSCF-2740 when his profile (e.g. service profile) is updated in the HSS 750 (see
In step 10, HSS 750 returns the user profile. Regardless of the S-CSCF support, the user type is also included as part of the profile. Further, in step 11, S-CSCF-2740 stores the user profile (which contains the public and private identities) and associates it to the user type received. At this point, S-CSCF-2740 will know the “user type” for each of the identities received (see in
In step 1 of
In more detail, a user is added to the list if the previously received request message associated with the user (see discussion of
In steps 2-4, HSS 1150 sends a single Cx-Update towards S-CSCF-2, i.e. in respect to users 1001 to 2000 which are not on the list. For example, the update request message of step 3 (Cx Push-Profile-Request, Cx-PPR) comprising the new info “User Type” IE, instructs the S-CSCF that said request is intended to update in the receiver S-CSCF the service profile for all users of the user type included (i.e. as stated by the value of the “User Type” IE received in the message), and, thus, prompts the S-CSCF to update the corresponding service profiles of the plurality of users associated with (i.e. matching with) the received “User Type” value. The message of step 3 preferably comprises the (i.e. updated) service profile data that is to be assigned to the plurality of users held by the receiver S-CSCF whose “User Type” matches with the “User Type” indicated within the message of step 3. The message of the step 3 can omit including any specific user identifier (i.e. information elements, IE, carrying, either, a Private User Identity and/or a Public User Identity). Therefore, the lack of a specific user identifier in the request (Private User Identity IE), together with the User Type IE, instructs the S-CSCF that the request is intended for all users of the type included. However, for compatibility reasons in respect to Diameter protocol stacks, said message can comprise any private and/or public of any of the affected users. In any case, the presence of the new info “User Type”, instructs the S-CSCF that the request is intended for all users of the type included. For example, the lack of a specific user identifier in the request (e.g. a Private User Identity 1E) together with the User Type IE instructs the S-CSCF that the request is intended for all users of the type included. The new data/profile may also be sent so that the S-CSCF-21140 updates each user profile with the new data. In other words, a single update profile message (e.g.
Thus, according to this example, the S-CSCF-21140 starts the “massive update” procedure internally for the profile data of all the concerned users held by said S-CSCF-2 which match the “User-Type” received.
In parallel or subsequently, the HSS 1150 starts in steps 5-9 sending individual Cx-PPRs for users 1 to 1000, since they do not have the “massive update” flag set. Here, a similar scenario as shown in
In steps 10-11, upon reception of a terminating request from the I-CSCF 1110, the S-CSCF-21140 fetches the profile for the destination (User 1500). The user type stored as part of the profile is checked against the user type to be updated. Since they match, the S-CSCF-2 replaces the stored profile by the one received previously so that the updated profile is utilized to handle the request.
Note that another choice can be that the S-CSCF only stores the user type per user and only a common instance of the profile associated to the user type, i.e. the users are linked to this instance. This way, the old instance of the user type is replaced by the new instance received over Cx so that all users affected are then immediately linked to the new data.
While the individual PPRs are ongoing, more obsolete profiles are fetched by the S-CSCF-11130 in steps 12-13.
In steps 14-15, a re-registration is received for User 1600. Since the user type stored in the profile matches the one to be updated, the S-CSCF-2 replaces the profile and continues with the REGISTER request handling.
Finally, in steps 16-19, after a while, the procedure is completed by the HSS 1150 and the S-CSCF.
In step 1 of
In steps 2-4, the HSS 1350 sends a single Cx-DeRegister towards S-CSCF-21340. The lack of a specific user in the request (Private User Identity 1E) together with the User Type IE instructs the S-CSCF that the request is intended for all users of the type included. Accordingly, a single de-register message, e.g. Cx-DeRegister message, may be sent to the S-CSCF-21340, which is a system node including a call session control function. The de-register message comprises information on at least one user type stored at the subscriber information node, e.g. HSS, to request to de-register at the S-CSCF-21340 the users associated with this user type. Deregistration works similarly over the Sh interface where the node to which the de-register message is sent includes an application server function.
In parallel or subsequently, HSS 1350 starts in steps 5-7 to send individual Cx-RTRs for users 1-1000, since they do not have the “massive update” flag set. That is, de-registering the users on the list individually is carried out by sending individual de-register request messages for each user on the list to at least one system node including a call session control function, in the example of
In steps 8 and 9, a similar scenario as described in
Upon reception of a terminating request, the S-CSCF-21340 fetches in steps 10 and 11 the profile for the destination from the I-CSCF 1310 (User 1500). The user type stored as part of the profile is checked against the user type to be de-registered. Since they match, the S-CSCF-21340 de-registers the user and handles the request for unregistered user.
In steps 12 and 13, while the individual PPRs are ongoing, more users are not re-authenticated. Then, a re-registration is received for User 1600 in steps 14 and 15, and since the user type stored in the profile matches the one to be de-registered, the S-CSCF de-registers the user and continues with the REGISTER request handling as an initial registration, i.e. the user is authenticated.
Finally, after a while, in steps 16-19, the procedure is completed by the HSS and the S-CSCF.
In the following the impact on Cx diameter commands (ABNF) are discussed, wherein this section depicts the modifications required in certain Cx commands to accommodate the discussed features.
The User-Data AVP is extended to include the user type information element as described, whereas the Wildcarded-ldentity AVP is reused from other DIAMETER commands, as described in 3GPP TS 29.228, to optionally indicate a regular expression which restricts the user type affected by the massive update.
The User-Type AVP is new, and contains an integer to indicate the type of user affected. The simple presence of this AVP will instruct the S-CSCF to perform a batch/massive update for users affected. Since this is a request affecting more than user, the User-Name AVP is not applicable, but it is still mandatory in the diameter command (for backward compatibility reasons), so it may contain any user. Note that S-CSCF application layer, upon reception of User-Type AVP, will not take into account the User-Name AVP.
The User-Data AVP is extended to include the user type information element as described. The S-CSCF will store this information at registration and associate it to the user identity and its profile.
The Wildcarded-ldentity AVP is reused from other diameter commands, as described in 3GPP TS 29.228, to optionally indicate a regular expression which restrict the user type affected by the massive deregistration.
The User-Type AVP is new, and contains an integer to indicate the type of user affected. The simple presence of this AVP will instruct the S-CSCF to perform a batch/massive deregistration for users affected. Since this is a request affecting more than user, the User-Name AVP is not applicable, but it is still mandatory in the diameter command (for backward compatibility reasons), so it may contain any user. Note that S-CSCF application layer, upon reception of User-Type AVP, will not take into account the User-Name AVP.
Impact on XML Schema (User-Data AVP)
The XML sheet containing the profile is extended so that User-Type is included as shown below (only the relevant part of XML is shown for simplicity).
New Cx Feature (Supported-Features AVP)
The feature list is extended with the new feature to be advertised by the S-CSCF. A new bit (3) in the bitmask is used for this purpose.
In the following the impact on Sh diameter commands (ABNF) is discussed, wherein this section depicts the modifications required in certain Sh commands to accommodate the discussed features.
The User-Data AVP is extended to include the user type information element as described further.
The User-Data AVP is extended to include the user type information element as described further.
The User-Type AVP is new, and contains an integer to indicate the type of user affected. The simple presence of this AVP will instruct the AS to perform a batch/massive update of the data changed (e.g. IMS registration status) for users affected. Since this is a request affecting more than user, the User-Identity AVP is not applicable, but it is still mandatory in the diameter command (for backward compatibility reasons), so it may contain any identity. Note that AS application layer, upon reception of User-Type AVP, will not take into account the User-Identity AVP.
Impact on XML Schema (User-Data AVP)
The XML sheet containing the user data is extended so that User-Type is included as shown below (only the relevant part of XML is shown for simplicity).
New Sh Feature (Supported-Features AVP)
The feature list is extended with the new feature to be advertised by the AS. A new bit (4) in the bitmask is used for this purpose.
Accordingly, solutions have been described that comprise a new attribute/parameter to be provided to the S-CSCF and the AS over Cx and Sh interfaces, respectively, which may optionally be accompanied by some extra optional filtering, such as a range of telephone numbers, or public identities in the form of a regular expression. The attribute indicates the type of user in terms of services, core network authorization, capabilities required, or any other aspect that the operator may consider (e.g. user geographical location). The primary focus was placed on the Cx details, but the skilled person understands that the same approach is taken for Sh interface. That is, the User-Data XML schema exchanged over Sh is extended to include the new information element when the AS requests certain data (e.g. IMS user state and location).
In brief, an exemplary embodiment of a solution comprises storing new data in the HSS in respect to individually, each and every of the users that share at least a certain aspect of a service profile (referred here as “user-type”). For example, initial registration of an UE comprises that the HSS downloads to the assigned S-CSCF (via the “Cx” interface), together with the corresponding profile data, a new information element/AVP called “user type” (or at least its value) whose value correspond to the downloaded profile. The user type value is stored by the S-CSCF in relationship with identifiers of the UE and/or concerned user. Further, when an update of service profile(s) is made (e.g. via O&M) in the HSS, the HSS sends to the corresponding S-CSCFs, instead of one signal per affected UE/user comprising all the service profile data, one single signal comprising: the “user type” of the UEs/users affected by the update, together with the corresponding, i.e. updated, service profile data.
According to the above discussion, massive signaling in the core network for both Cx and Sh interfaces is avoided. Further, massive signaling in the access network (Gm/Gi/sGi interfaces) for network initiated de-registration is avoided, since the users are informed about de-registration at the first traffic activity.
Furthermore, the above scheme allows an immediate profile update or de-registration, since it only depends on a single node to replace/remove the profiles and it can be done at the first traffic activity received for the user. Additionally, it allows IMS users' classification depending on the network topology/services offered, etc. for some other purposes, such as statistics (e.g. the operator might be able to check the registered users of a certain type if the counters are keyed using the user type). Moreover, it helps to develop implementation specific procedures at each node (e.g. CSCF may offer an O&M procedure to perform a network initiated re-authentication for certain users).
It must be noted that the solution proposed can be more flexible if optional IEs are added to the User Type IE, that is, a wildcarded identity can be added to the Cx-RTR to de-register users of a certain type and number series range or subdomain (e.g. tel: +3491!.*!, sip:!.*!@bstk.telefonica.net).
In the following, the nodes illustrated in
It should be understood that the elements of the nodes are functional elements and its functions may be distributed differently, for example they may be carried out by a processing unit in connection with other components. That is, the nodes may also be constituted by a bus, a processing unit, a main memory, a ROM, a storage device, an I/O interface consisting of an input device and an output device, and a communication interface. The bus may include a path that permits communication among the components of the node.
The processing unit may include a processor, a microprocessor, or processing logic that may interpret and execute instructions, such as the above-described operations/steps. Main memory may include a RAM or another type of dynamic storage device that may store information and instructions for execution by processing unit. For example, the determinator 1420 and generator 1510 may be realized by a processing unit. The ROM may include a ROM device or another type of static storage device that may store static information and instructions for use by the processing unit. Storage device may include a magnetic and/or optical recording medium and its corresponding drive and may provide the functions of the storage 1430.
The input device may include a mechanism that permits receiving messages from another node, and may provide functions of the receiver 1410 or receiver 1530. The output device may include a mechanism that outputs information, such as messages and may provide functions of the sender 1520. The communication interface may include any transceiver-like mechanism that enables the node communicate with other nodes.
A node as constituted above may perform certain operations or processes described herein, i.e. perform operations in response to the processing unit executing software instructions contained in a computer-readable medium, such as main memory, ROM, and/or storage device. A computer-readable medium may be defined as a physical or a logical memory device. For example, a logical memory device may include memory space within a single physical memory device or distributed across multiple physical memory devices. Each of the main memory, ROM and storage device may include computer-readable media with instructions as program code. The magnetic and/or optical recording media (e.g., readable CDs or DVDs) of the storage device may also include computer-readable media. The software instructions may be read into the main memory from another computer-readable medium, such as the storage device, or from another device via the communication interface. The software instructions may cause the processing unit including a data processor, when executed on the processing unit, to cause the data processor to perform operations or processes described herein. Alternatively, hardwired circuitry may be used in place of or in combination with software instructions to implement processes and/or operations described herein. Thus, implementations described herein are not limited to any specific combination of hardware and software.
The physical entities according to the different embodiments of the invention, including the elements, nodes and systems, may comprise or store computer programs including software instructions such that, when the computer programs are executed on the physical entities, steps and operations according to the embodiments of the invention are carried out, i.e. cause data processing means to carry out the operations. In particular, embodiments of the invention also relate to computer programs for carrying out the operations/steps according to the embodiments of the invention, and to any computer-readable medium storing the computer programs for carrying out the above-mentioned methods.
Where the terms receiver, determinator, sender, generator and storage are used, no restriction is made regarding how distributed these elements may be and regarding how gathered these elements may be. That is, the constituent elements of the nodes and systems may be distributed in different software and hardware components or other devices for bringing about the intended function. A plurality of distinct elements may also be gathered for providing the intended functionalities. For example, the elements/functions of the node may be realized by a microprocessor and a memory, wherein the microprocessor may be programmed such that the above-mentioned operations, which may be stored as instructions in the memory, are carried out.
Further, the elements of the nodes or systems may be implemented in hardware, software, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), firmware or the like.
It will be apparent to those skilled in the art that various modifications and variations can be made in the entities and methods of this invention as well as in the construction of this invention without departing from the scope of spirit of the invention.
The invention has been described in relation to particular embodiments and examples which are intended in all aspects to be illustrative rather than, restrictive. Those skilled in the art will appreciate that many different combinations of hardware, software and/or firmware will be suitable for practising the present invention.
Moreover, other implementations of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and the examples be considered as exemplary only, wherein abbreviations used in the above examples are listed below. To this end, it is to be understood that inventive aspects lie in less than all features of a single foregoing disclosed implementation or configuration. Thus, the true scope and spirit of the invention is indicated by the following claims.
3GPP 3rd. Generation Partnership Project
AS Application Server (e.g. a SIP application server, or a Open Service Access—OSA—Services Capability Server—SCS—).
CSCF Call Session Control Function (can implement different roles: I-CSCF “interrogating”, P-CSCF “proxy”, and S-CSCF “serving”).
FQDN Full Qualified Domain Name
HSS Home Subscriber Server
IE Information Element (a piece of data included in a message)
SIP Session Initiation Protocol
UE User Equipment (user terminal).
iFC Initial Filter Criteria. Set of conditions to involve Application Servers in SIP requests
IMS Internet Protocol—IP—Multimedia Subsystem
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2014/057729 | 4/16/2014 | WO | 00 |