| Members: 16 |
| Language: English |
|
Group categories:
|
| More group info » |
|
| May 23 |
|
| Feb 17 |
|
| Feb 17 |
|
| Feb 17 |
|
| Jan 18 |
|
| Jan 18 |
|
| Jan 17 |
|
| Dec 25 |
|
| Dec 25 |
|
| Dec 25 |
|
-----------------------------------------------------------------------------------------
INDEX:
1. Introduction to the DIAMETER Sh interface.
2. Service Building Block design for the Sh interface.
3. Reference to standards.
4. Testing apparatus to be used for the Sh interface.
-----------------------------------------------------------------------------------------
1. Introduction to the Sh interface :
The Personal Network Management server acts as a SIP-AS in the IMS architecture.
It has one SIP based interface ( ISC reference point) towards the S-CSCF, and it has three DIAMETER interfaces. One of the DIAMETER interface is towards the IMS-HSS server. The other 2 DIAMETER interfaces are the Rf (post-paid charging) and Ro (pre-paid charging) interfaces. They will be discussed in separate pages.
< click on the image for an enlarged view >
This page will talk about the DIAMETER Sh interface that is towards the Home Subscriber Server (HSS). The figure above shows the DIAMETER interfaces of the PNM application server with other DIAMETER servers.
The HSS is essentially a database application that provisions, authenticates, and stores subscriber data. Moreover, the HSS can be used by SIP application servers to store and maintain per-user data pertaining to the service being hosted by the particular SIP-AS.
As for example, a chat server may store policy documents, buddy lists and other information as XML meta-data in the HSS. The data which is pushed by the SIP-AS into the HSS is known as repository data.
It is called repository-type data, as it is logically used and consumed by the SIP-AS, even though it is stored in the HSS. Thus, in this way, the SIP-AS leverages the IMS-HSS as a central meta-data storage repository for service-specific data.
All operations from the SIP-AS to the IMS HSS and vice-versa take place on an interface called 'Sh Interface'. This interface is based on DIAMETER protocol (3GPP TS 29.328 and 3GPP TS 29.329 in addition to RFC 3588).
In addition to the storage and retrieval of data from the HSS, the SIP-AS can also acquire the following information, based on the business logic of the application hosted on the SIP-AS ---->
a) Location Information retrieval for services such as Find Me (FM) and other location based services.
b) S-CSCF name for terminating SIP session legs from the SIP-AS towards the IMS core.
c) Registration information of the user for reminder/ wake-up call services.
d) Service masking operations for a particular user, in case the service has to be suspended for a given user.
e) Subscription operations for a change in the repository data of a particular user. This can be useful in case of services that are invoked on user-preference/settings etc.
f) Initial Filter Criteria information, that may be needed by the SIP-AS to decide its service trigger points.
g) Changing the PSI (Public Service Identity) status in the HSS by the SIP-AS.
h) Store repository data for alias public user identities.
and so on.....
Thus, we can see that the Sh interface is a generic interface that provides SIP applications with a wide variety of choices specific to their business logic.
2. Service Building Block (SBB) design for Sh interface : <click on the image for a larger view of the diagram>
The SBB that is shown in the diagram is essentially a utility child sbb that can be used by any SIP based parent sbb to interact with the HSS.
In our case, the supplementary service SBBs that will be developed, will use this SBB as their child SBB. However, the option of using the XDM as a data repository will also be open. The child sbb does not have any initial event. It is created at runtime by the parent sbb.
Subsequently, its local interface methods are invoked, which fire DIAMETER requests to the HSS. When the HSS responds, the results are post-processed and a call back is delivered to the parent sbb with the result.
A more detailed description of the SBB design and its helper classes is given below -->
For browsing the source code, please refer to the trunk at http://code.google.com/p/whitelassi
a) HSS Client Handler SBB: This is the child SBB that has to be created by any call control SBB that needs to talk to the IMS HSS. The Parent SBB first creates this sbb as it child, and then invokes methods on the SBB local interface.
b) HSS Client Handler Local Interface: This is the contract between the parent SBB and the HSS client handler sbb. The methods of this local interface are used for sending DIAMETER UDR, SNR and PUR requests. There are many arguments that the local interface methods take.
c) HSS Client Handler Parent Callback Interface: This is the interface that needs to be implemented by the parent sbb. When the child sbb sends diameter requests to the HSS, and receives a response, the child sbb post processes the response, and sends a local interface call back to the parent sbb.
d) Identity Set AVP values class: This signifies the value of the identity set AVP. When the parent sbb sets the value of the data reference to IMS public user identities, then the Identity-Set AVP should be included in the request.
e) DiameterShResultCodeExt class contains some of the result codes that are not natively supported by the Sh client RA.
f) DiameterErrorResultException class is a generic exception class used to signify that an error was returned from the HSS in the response.
g) DataReferenceAvpValues class signifies what the parent sbb is requesting from the HSS. The values of the data reference avp is a contract between the HSS and the SIP AS. Based on these values, it is decided what is being requested.
h) CurrentLocationAVPValues signifies the values of the current location avp. It is used by application servers that need to retrieve the location information of the client. This for example may be a requirement for location based services.
i) NotifEffFeatureNotEnabledException is thrown by the HSS client handler sbb, when the notif-eff feature is not enabled, but more than one data reference is requested based on the preferences objects.
j) UserPreferencesPUR class enables the parent sbb to set preferences defining the nature of the operations requested from the HSS while sending the PUR request to the HSS. These preferences are read by the child sbb, and based on them, the relevant AVPs are created and a request sent to the HSS.
k) UserPreferencesUDR class enables the parent sbb to set preferences defining the nature of the operations requested from the HSS while sending the UDR request to the HSS. These preferences are read by the child sbb, and based on them, the relevant AVPs are created and a request sent to the HSS.
l) UserPreferencesSNR class enables the parent sbb to set preferences defining the nature of the operations requested from the HSS while sending the SNR request to the HSS. These preferences are read by the child sbb, and based on them, the relevant AVPs are created and a request sent to the HSS.
3. Reference to Standards :
While designing the above SBB, the 3GPP standards that have been referred to are TS 29.328, TS 29.329, TS 29.229, TS 23.228, TS 24.229. IETF RFC 3588 has also been referred to for AVPs.
4. Testing Appratus to be used for Sh interface:
For testing the usability of the Sh interface sbb, we shall use the Open IMS core framework. The SBB will behave as a DIAMETER client, while the Fokus HSS will behave as a DIAMETER server.
A detailed test setup diagram will be made and the testing scenarios will need to be chalked out and executed subsequently.
The operation of PUR, SNR and UDR will be testing using the Open IMS core HSS. Another option can be to build a DIAMETER server simulator that works like a HSS on another SLEE instance.
|
| |||||||||||
| Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy |
| ©2009 Google |