Aayush: weblog

Logging on IMS, SDPs and other strange creatures wandering around them..

Archive for October 19th, 2008

PNM Service: Stage-2 service description

Posted by whitelassiblog on October 19, 2008

Hello friends, 

I invite a collaborative discussion on the stage-1 service description outlined in this post here:

http://whitelassiblog.wordpress.com/2008/10/05/first-service-personal-network-management-pnm/

Now i will be discussing the Stage-2 service description of the PNM application server. We can club the stage-1 and stage-2 service descriptions together and schedule discussions about the forward path of the project.

This post will provide an introduction of the finer points of the PNM service and will expans further on the actors involved in the development process. 

Further blog posts will discuss the call flows and will go to the parameter details. 

The stage-2 service description will be divided into the following sections: 

————————————————

1) Introduction to Stage-2 service description.

2) The SIP interface and interaction.

3) The XCAP/HTTP interface, interaction and role of XDMS.

4) GUI( Graphical User Interface) requirements for PNM

5) High Level Architectural view.

6) References (domain knowledge)

———————————————–

A) Introduction to Stage-2 service description:

———————————————–

The stage-2 service description will explain the interfaces that the PNM server shares with other IMS network nodes. This service description will also explain the procedures that are to be followed at the given interfaces. The procedures will be followed either on SIP protocol or on HTTP protocol. In the case of IMS, we are XCAP protocol over HTTP. XCAP is totally based upon HTTP protocol and it will be explained in the following sections. 

This description will also put into perspective the entire product skeleton and its major functions in an IMS network environment. Wherever possible, the service description will be illustrated with a diagram. 

———————————————–

B) The SIP interface and interaction

———————————————–

The Personal Network Management Application server will act as an IMS SIP application server. In the context of IMS, the SIP application servers interact with other IMS elements over the ISC (IMS Service Control) reference point. SIP AS’s are supposed to provide specialized value added services to the customers.

Thus, In our case, the PNM is the service hosted on a SIP AS over the ISC reference point. 

An IMS SIP Application server can behave as follows:

1. Terminating User Agent

2. Originating User Agent

3. Proxy Server

4. Back to Back User Agent.

The SIP-AS interacts with the S-CSCF node of the IMS core network. It receives requests from it, and responds to those service requests. When the SIP AS recieves requests, it is known as the Terminating User Agent. 

However in certain call scenarios, the SIP AS may even send requests to the IMS core. In such cases, it is known as the originating user agent. 

In the case of the PNM server, we will be acting as the terminating user agent as well as the originating user agent.

The PNM AS will receive the SIP REGISTER request from the IMS network (terminating UA). The PNM AS will also send a SIP SUBSCRIBE request to the IMS network (Originating UA). The call flows can be seen at 3GPP TS 23.259. The docs can be downloaded from the trunk at:

 http://code.google.com/p/whitelassi/source/browse/#svn/trunk/whitelassi/JSLEEdocs

There are certain call flows that require the PNM AS to behave as a proxy server as well. A proxy server receives requests and proxies them downstream after making some changes to the received request. 

———————————————

C) The XCAP/HTTP interface, interaction and role of XDMS.

———————————————

The terminal device (mobile phone) can also directly send requests to the PNM AS. The interface between the mobile terminal and the PNM AS follows the HTTP protocol. However, the mobile terminal uses XCAP as a means of communication over HTTP. XCAP is a protocol based completely on HTTP and borrows its request-response model. The XCAP protocol is used by the terminal to modify configuration settings in the PNM AS. In the context of this service, only the Personal Network Controller (PNC) is authorized to change the configurable settings in the PNM AS. The XCAP protocol is defined in RFC 4825.

In the context of the PNM service, the mobile terminal acts as a XCAP client and the PNM AS acts as a XCAP server. The XCAP server is also known as XDMS (XML Document Management Server). XDM is standardized by the Open Mobile Alliance (OMA) and is recognized as a service enabler. In our case, the service which is being enabled by XDMS is the PNM service. The configuration rules for each user will be stored in the XDMS in XML format by the PNM AS. 

The mobile terminal (XCAP client) can change its configurable parameters dynamically by issuing HTTP requests to the XDMS (XCAP server). The resource which is being referred to, by the terminal can be the entire XML document, a particular element of the XML document or even an attribute of a XML element. 

An implementation of the XDM server is currently available in the form of Mobicents XDM server. We will reuse it for developing PNM AS. 

More details about XCAP and its application to the PNM service is available at these resources:

a) http://www.ietf.org/rfc/rfc4825.txt 

b) TS 24.259 @  http://code.google.com/p/whitelassi/source/browse/#svn/trunk/whitelassi/JSLEEdocs

—————————————————-

D) GUI( Graphical User Interface) requirements for PNM

—————————————————-

In order for the mobile terminal to change its configurable information by interacting with the XDMS, a graphical user interface will be needed. This GUI will be rendered on the browser present on the mobile terminal. These are the high level requirements of developing a user friendly GUI for efficient service management by the customers: 

1. There shall be 2 user interfaces. One for the customer and one for the operator/administrator. 

2. The user will be provisioned manually by the operator using the operator facing interface of PNM AS. 

3. The user’s “Service Profile” will be created automatically and stored in the XDM server. 

4. The service profile will conform to the XML schema given in 3GPP TS 24.259, Appendix B. 

5. Every first time user will be made to register for the PNM service either on the user-facing interface, or the    details will be filled in manually by the adminstrator through the operator facing interface. These actions        will be carried out by filling up an online form by the user/operator. 

6. If the user submits the form, it will be need to be approved by the operator. However, if the operator fills in the details, the service will be provisioned in the XDMS directly. 

7. The user will be assigned a username and a password as a result of registration. The user shall use these details to access his personal network information through the browser and make changes to his personal network. 

8. After logging into his account, whenever the user SUBMITS any changes to his profile, they will need to be reflected as a XCAP PUT/DELETE etc to the XDM server.

9. The operator facing interface will be used by the operator for managing customers, suspending/activating accounts..collecting statistics..and other administrative actions.

A high level view of the GUI requirements can be seen in the next section.

———————————————-

E) High Level Architectural view

———————————————-

The figure below shows the ecosystem of the PNM application server and its major componants: 

The PNM Service consists of the Service Building Blocks that comprise of the PNM service. These Sbbs are deployed on the JSLEE container. 

The PNM GUI is the user interface made in either JSPs or JSF. 

The XDM server is also a collection of Sbbs, and is presently available to be integrated with the PNM service.

The diagram also shows the various external interfaces of the PNM server and the protocol to be used at each interface. There are predominantly 2 interfaces, namely SIP and XCAP over HTTP as shown:

 

This diagram seems to be a very simplistic view of the PNM  server. As we go along, these functional blocks will keep on growing. Our focus area is the PNM Application Server highlighted in pink colour above.

——————————————-

F) References (domain knowledge)

——————————————-

These are the places to go about understanding the stage-2 service description of PNM:

1) The docs should be downloaded from the SVN repo from here: 

 http://code.google.com/p/whitelassi/source/browse/#svn/trunk/whitelassi/JSLEEdocs

This location consists of the JSLEE standard, the XDM doc and the 3GPP docs referred above.

2) RFC 4825 for XCAP ( http://www.ietf.org/rfc/rfc4825.txt )

3) XCAP and XDMS important links: http://groups.google.com/group/whitelassi/t/62f95b52ddbbe502

4) RFC 3261 to get conversant with SIP ( www.faqs.org/rfcs/rfc3261.html) as mentioned in some of my previous posts.

I invite comments/ discussions on Stage-1 and Stage-2 service descriptions ! :)  

 

Best Regards

Aayush

Posted in Personal Network Management, Services | Tagged: , , , | Leave a Comment »