The present invention relates to IMS. Specifically, the present invention relates to methods, apparatuses, system and computer program product for multiple devices sharing a user identity for IMS services, in particular, when using LTE and other types of access.
The IP Multimedia Subsystem is an architectural framework for delivering IP multimedia services. It was originally designed by the wireless standards body 3GPP, as a part of the vision for evolving mobile networks beyond GSM.
The IP multimedia subsystem is a collection of different functions, linked by standardized interfaces, form one IMS administrative network. A function is not a node (hardware box): An implementer is free to combine two functions in one node, or to split a single function into two or more nodes. Each node can also be present multiple times in a single network, for dimensioning, load balancing or organizational issues.
The user can connect to IMS in various ways, most of which use the standard IP. IMS terminals (such as mobile phones, personal digital assistants (PDAs) and computers) can register directly on IMS, even when they are roaming in another network or country (the visited network). The only requirement is that they can use IP and run SIP user agents. Fixed access (e.g., Digital Subscriber Line (DSL), cable modems, Ethernet), mobile access (e.g. W-CDMA, CDMA2000, GSM, GPRS) and wireless access (e.g., WLAN, WiMAX) are all supported. Other phone systems like plain old telephone service (POTS—the old analogue telephones), H.323 and non IMS-compatible systems, are supported through gateways.
The Home Subscriber Server (HSS), or User Profile Server Function (UPSF), is a master user database that supports the IMS network entities that actually handle calls. It contains the subscription-related information (subscriber profiles), performs authentication and authorization of the user, and can provide information about the subscriber's location and IP information. It is similar to the GSM Home Location Register (HLR) and Authentication Centre (AuC).
Various identities may be associated with IMS, for example, IMPI and IMPU. IMPU may take the form of either a SIP URI or a telephone URI format, for example, sip: john.doe@example.com or tel: +1-555-123-4567. IMPI may take the form of NAI as defined in RFC2486, for example IMPI: john.doe@example.com.
The IMPI is a unique permanently allocated global identity assigned by the home network operator, and is used, for example, for registration, authorization, administration, and accounting purposes. Every IMS subscription may have multiple IMPIs, but each IMPI must be provisioned as a distinct IMPI individually, e.g. jone.doe.mobile@example.com or jone.doe.fixed@example.com. The distinct IMPI can only be used by one IMS device at a time.
An IMPU is used by any user for requesting communications to other users (e.g. this might be included on a business card). There can be multiple IMPU per IMPI. The IMPU can also be shared with another phone, so that both can be reached with the same identity (for example, a single phone-number for an entire family).
It has been a general trend that one user may hold multiple devices such as a mobile phone, tablets or other WIFI devices (e.g. smart phone type of devices but without cellular access, iPod touch). The mobile phone is usually considered as the primary device; all others devices are considered secondary devices. The IMS supports sharing a public identity across devices from the beginning (3GPP Rel-5). However, each device must be configured in the network (e.g. HSS) with a dedicated private user identity (IMPI) and its associated credentials. According to 3GPP, there is only one kind of IMPI: individually provisioned IMPI, which may be called distinct IMPI for each device of a subscriber.
Users exchange their devices frequently. It is not very practical to request operator to provision an IMPI whenever adding or changing devices.
One solution may be to configure each device with its own IMPI. In order to allow users to “add” new devices by themselves, it could be possible to provision a few IMPIs for each IMPU “just in case they are needed”. Obviously, this may result in far more HSS entries than necessary—a waste of network resources. On the other hand, it may still limit the number of devices for heavy users (geeks with many gadgets).
Another disadvantage is that the IMPI plays an important role and is at the heart of the whole IMS; the impact on implementations when adapting the concept cannot even be estimated. For mobile phones, the concept of an IMPI (in relationship with IMSI) ensures that a user can keep his phone number after the phone (with “SIM” card) was lost or stolen.
The present invention and its embodiments seek to address one or more of the above-described issues.
According to one aspect of the invention, there is provided a method for a first apparatus. The method comprises receiving provisioning from a second apparatus, wherein said provisioning comprising at least a public identity and a pre-defined range of private identity associated with the public identity; receiving a request comprising a first public identity and its associated private identity from a third apparatus; determining the first public identity already exists in the apparatus; determining the received private identity is not identical to any private identity already provisioned in the apparatus; determining the received private identity is not identical to any private identity in a temporary profile; determining the received private identity is within a pre-defined range of private identity associated with the first public identity; creating a temporary private identity identical to the received private identity and a temporary profile for the received private identity.
According to one modification of the invention, the pre-defined range of private identity may be denoted by an expression, a wild-carded private identity or a template.
According to further development of the invention, the method further comprises associating the temporary private identity and the temporary profile with the first public identity.
According to another aspect of the invention, there is provided a first apparatus comprising a transceiver configured to communicate with at least another apparatus,
a memory configured to store computer program code, and a processor configured to cause the apparatus to perform: receiving provisioning from a second apparatus, wherein said provisioning comprising at least a public identity and a pre-defined range of private identity associated with the public identity, receiving a request comprising a first public identity and its associated private identity from a third apparatus, determining the first public identity already exists in the apparatus, determining the received private identity is not identical to any private identity already provisioned in the apparatus, determining the received private identity is not identical to any private identity in a temporary profile, determining the received private identity is within a pre-defined range of private identity associated with the first public identity, creating a temporary private identity identical to the received private identity and a temporary profile for the received private identity.
According to further improvement of the invention, the pre-defined range of private identity may be denoted by an expression, a wild-carded private identity or a template.
According to further modification of the invention, the processor of said apparatus is further configured to cause the apparatus to associate the temporary private identity and the temporary profile with the first public identity.
According to a third aspect of the invention, there is provided a computer program product comprising computer-executable computer program code which, when the computer program code is executed on a computer, is configured to cause the computer to carry out the methods as mentioned above.
According to another modification the invention, the computer program product comprises a computer-readable medium on which the computer-executable computer program code is stored, and/or wherein the program is directly loadable into an internal memory of a processor.
According to a fourth aspect of the invention, there is provided a first apparatus comprising a transceiving means for communicating with at least another apparatus, a memory for storing computer program code, and processing means for causing the apparatus to perform: receiving provisioning from a second apparatus, wherein said provisioning comprising at least a public identity and a pre-defined range of private identity associated with the public identity, receiving a request comprising a first public identity and its associated private identity from a third apparatus, determining the first public identity already exists in the apparatus, determining the received private identity is not identical to any private identity already provisioned in the apparatus, determining the received private identity is not identical to any private identity in a temporary profile, determining the received private identity is within a pre-defined range of private identity associated with the first public identity, creating a temporary private identity identical to the received private identity and a temporary profile for the received private identity.
Exemplary embodiments of the invention are described below, by way of example only, with reference to the following numbered drawings.
Herein below, certain embodiments of the present invention are described in detail with reference to the accompanying drawings, wherein the features of the embodiments can be freely combined with each other unless otherwise described. However, it is to be expressly understood that the description of certain embodiments is given for by way of example only, and that it is by no way intended to be understood as limiting the invention to the disclosed details.
As a part of the solution to overcome afore-mentioned disadvantages, a private user identity with a pre-defined range may be provisioned in the network (e.g. in HSS). According to one embodiment of the invention, the pre-defined range of the IMPI may be defined by a wild-carded IMPI or a template. A user may have one or more shared IMPUs, which may be shared among as many devices as the user wants. When registering to an IMS network, each device must use its own explicit identity within the pre-defined IMPI range. Each of the devices registers independently with the combination of the IMPU and one dedicated IMPI. There is no implicit registration across devices. And each instance of the wildcarded IMPI can only be used by one device at a time.
As an exemplary example of the invention, the pre-defined range of IMPI is denoted by a wild-carded private identity. For instance, sign “*” representing a group of IMPIs is provisioned in HSS. Assuming that the IMPU SIP:+491751804512@example.com is associated with a wild-carded private identity 12345678*@example.com, then, for example, three different UEs could register the IMPU SIP:
According to another embodiment of the invention, the pre-defined range of IMPI may be provided by an expression such as 12345678[4-6]@example.com or 12345678[4, 6]@example.com, which indicates that IMPIs 123456784@example.com, 123456785@example.com and 123456786@example.com may be used in registration by UEs or other devices in conjunction with the IMPU SIP:+491751804512@example.com.
In fact, any expression/logic/template and/or their combination that may describe a range of intended IMPI may be used in provisioning the network. As previously mentioned, instead of provisioning each dedicated IMPI, the invention makes it possible to provision multiple IMPIs with only one expression. Moreover, the expression only hints the maximum number of IMPI that is associated with IMPU, i.e. the maximum number of IMPI could be used by a user, without provisioning an explicit amount of IMPI for the associated IMPU, no matter if the user actually use them or not.
In the above example, when the HSS or an equivalent network element receives a request comprising the IMPI: 123456780@example.com, it may create a temporary IMPI identical to the received IMPI. The created IMPI is within the pre-defined range as it matches the wild-carded IMPI 12345678*@example.com. So it is an instance of the wild-carded IMPI. And when this IMPI is registered in HSS, it will have its own dynamical state, which may be different from other instance of the same wild-carded IMPI. Therefore the HSS may automatically provision a “temporary” IMPI and a temporary profile of IMPI for this instance in order to maintain all dynamical states. A profile may contain attributes associated to an IMS instance. They may be statically provisioned with the wild-carded IMPI template and copied to the created temporary IMPI instance, e.g. authentication method and related credential. They may also be dynamic information e.g. registration state, IMS restoration-info, etc.
Before a user can use an IMS service, IMPUs and IMPIs for the user should be provisioned in the HSS 11 by a provisioning server 15. According to one embodiment of the invention, a wild-carded IMPI (or an IMPI template) associated with one or more IMPU or IMPU template is provisioned in the HSS 11. Alternatively, a pre-defined range of IMPI associated with an IMPU may also be provisioned in HSS 11. UE 12 of the user must be provisioned with an IMPU and an IMPI by the provisioning server 15. The provisioned IMPI is supposed to be within the pre-defined IMPI range associated with the IMPU.
The HSS may also use a profile which is additionally configured or provisioned for each class IMPI as a template. During the registration process the HSS creates a normal IMPI for the requested IMPU/IMPI pair (based on the IMPI template). The HSS may control the number of IMPIs generated from certain template, if needed. During de-registration of an IMPU/IMPI pair, the related IMPI may be deleted and becomes free for reuse. Only if no IMPI is registered with an IMPU which was created from an IMPU template, the profile related to that IMPU may be deleted and becomes free for reuse. Such an IMPI template may be associated to a provisioned IMPU or a provisioned/configured IMPU template.
There may be multiple contacts (i.e. multiple WICs or browser instances) associated with the same allocated IMPU. This happens if the same user registers from two or more different WICs with a WWSF using the same credentials.
The WWSF is located either within the operator network or within a third party network and is the web server contacted by the user agent (generally after clicking on a link or entering a URL into the browser). The provisioning server 15 may be a WWSF. A WIC is an application run in a UE using the WebRTC extensions specified in WebRTC 1.0 and providing access to IMS by interoperating with the WebRTC IMS.
As depicted in
In order to be able to use the services provided by the IMS, each user terminal 12/14 needs to register at the I/S-CSCF 13 with the combination of IMPU and IMPI. The I/S-CSCF 13 may interact with the HSS 11 in the registration process.
For the I-/S-CSCF 13 and at the Cx interface, any IMPI within the pre-defined range is handled as if the identity had been provisioned in the HSS already. The advantage is that only one wild-carded IMPI or one expression of IMPI needs to be provisioned in the network but can be shared by many devices.
A temporary IMPU may be generated from an IMPU template, with which the IMPI template is associated. In this case the temporary IMPU is also associated with the IMPI template.
If YES, the method also comprises, at 23, checking if the received IMPI matches any IMPI already provisioned in the network element. If YES, it corresponds to a user that already exists in the network element. The request is handled with the user profile of this existing user.
If NO, the method will continue at 24 to check if the received IMPI matches any IMPI in any temporary profile created by the network element.
If YES, no new temporary profile for this IMPI will be created by the network element, rather the status of the existing temporary profile for the IMPI may be updated accordingly if necessary.
If NO, the method further comprises determining if the received IMPI is within the pre-defined IMPI range (e.g. an IMPI template) associated with the received IMPU at 25. If YES, the method comprises creating a temporary IMPI identical to the received IMPI for the associated IMPU and also a temporary profile for the IMPI at step 26. Generally speaking, when receiving the IMS identities (e.g. same IMPU, different IMPI), the HSS may have related profile templates available and create a normal user profile for the requested pair of IMPU/IMPI. The I/S-CSCF 13 may store the relation between the new contact address and the pair of IMPU/IMPI. Normal IMS registration may start afterwards.
The temporary IMPI and the temporary profile for the IMPI may be deleted by the HSS when the IMPI is de-registered. During de-registration of an IMPU/IMPI pair, the created IMPI is deleted in the HSS. During de-registration of the last IMPI of an IMPU, the created user profile is deleted in the HSS.
As shown in
Memory 302 may be any suitable storage device, such as a non-transitory computer-readable medium. In one embodiment of the invention, the memory 302 may be in the form of a database. A hard disk drive (HDD), random access memory (RAM), flash memory, or other suitable memory can be used. The memory may be combined on a single integrated circuit as the processor, or may be separate from the one or more processors. Furthermore, the computer program instructions stored in the memory and which may be processed by the processors can be any suitable form of computer program code, for example, a compiled or interpreted computer program written in any suitable programming language.
The memory and the computer program instructions can be configured, with the processor (or processing means) for the particular device, to cause a hardware apparatus such as a HSS, to perform any of the processes described herein (for example,
One having ordinary skill in the art will readily understand that the invention as discussed above may be practiced with steps in a different order, and/or with hardware elements in configurations which are different than those which are disclosed. Therefore, although the invention has been described based upon these preferred embodiments, it would be apparent to those skilled in the art that certain modifications, variations, and alternative constructions would be apparent, while remaining within the scope of the invention. In order to determine the metes and bounds of the invention, therefore, reference should be made to the appended claims.
For the purpose of the present invention as described above, it should be noted that
It is to be understood that the above description is illustrative of the invention and is not to be construed as limiting the invention. Various modifications, applications and/or combination of the embodiments may occur to those skilled in the art without departing from the scope of the invention as defined by the appended claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2015/050961 | 1/20/2015 | WO | 00 |