SCIM (Service Capability Interaction Manager) Implementation Framework in IMS Anahita Gouya, Noël Crespi {anahita.gouya,
[email protected]} Institut National des télécommunications (INT-GET) Mobile Networks and Multimedia Services Department 9 Rue Charles Fourier, 91011, Evry Cedex, France
Abstract “Service-capability based” architecture of the Next Generation Networks (NGN) enables simple introduction of the innovative 3rd generation services and provides a cooperative environment between the integrated services as well as the service providers that share common service capabilities for implementing innovative services. Invoking common service capabilities may provoke interactions between different service components that are deployed for implementing various integrated services. This paper explores the structural and procedural aspects of a new framework that enables the management of the service interactions in the “service-capability based” service architecture of UMTS IP Multimedia Subsystem and proposes modifications on the initial Filter Criteria before triggering the service execution layer from the session control layer in order to manage the service interactions. Key words: Service Capability Interaction Manager, SIP, IMS.
1 Introduction NGN services cover a vast rang of conversational multimedia services varying from classic voice telephony features to real time and interactive multimedia services such as video telephony and conferencing, messaging services (SMS, MMS …) and Instant Messaging (IM), Presence-based and Location-based services and online applications such as e-learning and e-commerce as well as noninteractive services like multimedia streaming and Push services. Furthermore, today, neither the mobile users nor the service providers are not any more isolated entities working separately and independently of the other entities and networks: The mobile users require access to the services of visited networks and different service providers are interested to share common services between each other in order to satisfy their subscribers. Hence in order to manage the rapid evolutions in the multimedia service domain and to support the cooperative service offering aspects of the service providers, the NGN architecture must contain the two indispensable following characteristics: I. Open Network Architecture: This characteristic based on the separation of the session control and the service execution layer functionalities enables the independent extension of each layer and provides the independency of the service platform from the access and the backbone transport network. As it is presented in figure 1, the network
architecture is divided vertically in three layers of 1-session control layer (containing the multimedia session management and service triggering functionalities), 2-service capability interaction manager and 3-service execution layer (composed of service capabilities that are the modular selfcontained service building blocks, reusable by different application servers). Service Execution Layer
AS
SC
Application Support Interface SCIM Session Control Layer
Session Support Interface CSCF D
o m
a in
Figure 1 : NGN Layered Service Architecture
• Session Control Layer: 3GPP (3rd Generation Partnership Project) specified IMS (IP Multimedia Subsystem) [1]as an open and standard IP-based infrastructure that overlays the UMTS core network and provides the multimedia services in NGN[1,2]. In IMS, multimedia session establishment, maintenance and termination are performed by using SIP (Session Initiation Protocol) [8]. SIP is standardized by IETF (Internet Engineering Task Force) and because of its simple and efficient multimedia session handling characteristics is selected by 3GPP for the signalling protocol of IMS. Functionalities that are required for supporting multimedia real time services, such as session establishment and service controlling are incorporated in the service architecture of IMS and take part of the session control layer functionalities. Among these entities, IMS contains SIP proxies called Serving Call Session Control Function (S-CSCF) which performs the session controls and triggers the service execution layer through a SIP-based interface: ISC (IP Multimedia Service Control). • Service Execution Layer: In the context of the NGN standardization at 3GPP, the service execution layer is composed by modular standard building blocks called Service Capabilities (SC) and are defined as self-contained functionalities that can be reused across different application servers [9]. (Non-standard service capabilities may also be used). Presence [3], Instant Messaging [4], Conference [5] and Multimedia Messaging [6] are some examples of the service capabilities that can be used as the basic building
blocks to implement integrated services like Multimedia Gaming, Chat rooms, e-learning and Online Discussion Forums. The advantages of integrating the service capabilities for implementing integrated services can be resumed as: 1) Offering to the service providers the ability to create, implement and manage new services that integrate these building blocks, 2) Enabling the service layer inter-working, 3) Preventing the redundant use of the same functionalities implemented in different services and 4) Focusing on the service capability standardization instead of standardizing any new service that is introduced. • SCIM: A challenge to be dealt in the NGN service architecture is that invoking common service capabilities may provoke interactions between different service capability triggers that are deployed for implementing different services. Service capability interactions occur when each of the service capabilities behaves correctly separately i.e. independent of each other, but not when running together. Since multiple service capabilities may be triggered for executing a single integrated service, and as one or more service capabilities may be shared between integrated services, therefore sharing common set of service capabilities in order to offer innovative services in IMS requires adding functionalities in the service architecture to manage the service capability trigger interactions. In IMS, these functionalities will be implemented by a SIP Application Server called SCIM (Service Capability Interaction Manager), located between the session control layer and the service execution layer as is illustrated in figure 2. But today the specifications and standards have not yet defined the functionalities of SCIM i.e. how it should coordinate multiple invocations of the service execution layer and consequently the development aspects of SCIM are still not clear. The interaction problems will be discussed in more detail in part 2. SIP AS Third Party Services
Intelligent Network CAMEL Service Environment
Service Execution Layer
OSA AS SC
AS
OSA API CAP IM-SSF
OSA SCS
2 Service Invocation Problems
MAP Si
ISC
SCIM ISC ISC
HSS Sh Sh
CX S-CSCF
Figure 2: Functional Architecture of IMS
II. Open Service Architecture: This characteristic provides a common and flexible service control and execution framework supporting different multimedia services in different networks and enables both the service providers and the users the simple introduction of innovative and personalized services by integrating already existing standardized services. The service building blocks in the service execution layer form a service hierarchy in the service architecture (containing the service capabilities in the inferior layer and the integrated services in the superior layer) and represent the next generation mobile communication services architecture. ETSI (European Telecommunications Standards Institute) defines service capability as a specified function that is used either alone or in combination with other service capabilities to realize a complete service application [17]. In this domain, [10] proposes a service driven approach to classify the services in the hierarchical levels, i.e.: “service areas” composed of “service functionalities” that themselves are composed of “elementary service technologies”, with the aim of enabling flexible extensibility of the services. Close to this approach, we focus on the fact that the modular and hierarchical service architecture that we are presenting in this paper, will describe a perspective for NGN service architecture in which two specific aspects will be respected: 1. User Centric aspect: that separates the control and management of the user profile information from service execution layer. 2. Service Integration and Decomposition: that allows dynamic integration of services and enables the reusability of existing services to implement new services. In this paper we will emphasize on the service capability features as the functional service components for implementing the integrated services. First we discuss about the service invocation problems and the necessity of introducing a service interaction manager in the service architecture through some general triggering examples. Afterwards we describe the functional architecture of IMS (figure 2) focussing on the functionalities to be performed by SCIM in order to manage the service capability interactions. We will then explore the structural and functional aspects of the implementation of SCIM in IMS.
Session Control Layer
In figure 3 we present general triggering examples of service invocation consistency face to two service invocation problems of Service Interaction and Service Concurrency. Supposing that in figure 3.1, user A asks for entering to an audio chat room and to participate in an online lecture over the same audio bridge. In this case the conference server will be associated to one of these services and not both, what results a
service interaction due to the incompatibilities between services.
? S-CSCF
Conference Server for triggering to an audio chat room and to an online lecture
Presence Server
S-CSCF
A A
B
1
2 Conference Server
Conference Server for triggering to an online game
Conference Server S-CSCF
S-CSCF
S-CSCF A
A
B
3
4
service data base server to find available services in the service data base. (In [18] we discussed about our proposition concerning integration of the functionalities of SCIM on S-CSCF and the advantages of this integration compared to using a separated AS as SCIM that is proposed by 3GPP). When the server retrieves the address of the available service capability, SCIM verifies if the service capability belongs to its domain or not. If the service capability belongs to a foreign domain, SCIM refers to the corresponding S-CSCF of the foreign domain for providing the access to the service capability. SCIM is also responsible for updating the service data base once a new service is created. As the service data base registers the engaged service capability in the implementation of different integrated services, SCIM must update the service data base at the end of the service, indicating that the mentioned service capability is not any more engaged. SC
SC Conference Server S-CSCF A
Conference Server
ConferenceConference Server Server S-CSCF
SC
Service Data Base Server 2 3 7
S-CSCF
B
5
A
B
6
Figure 3 : General Service Triggering Examples
Other figures present the service concurrency, for example between the availability announcement request of both user A and B at a presence server in figure 3.2, or the request of user A for playing an online game at the same time of listening to a conference in figure 3.3, or the conference entrance request of A and B at figure 3.4. The example of figure 3.5 illustrates same case as figure 3.1, but the audio conference servers are different and in the example of figure 3.6 the attributed S-CSCFs are also different. The concurrency problem can be resolved by applying various queuing algorithms over the S-CSCFs or SCs and it is out of the scope of this paper. Nevertheless even if the service interaction example that we have mentioned represents a simple case but introducing distributed service-based applications that allow the coexistence of heterogonous services for multiple clients causes multiple interrelated interactions between service invocations and complicates the interaction resolution procedure. Two important service interaction management issues consist of: 1. Service capability selection i.e. finding an appropriate service capability in term of scalability and performance through a common service triggering model. To deal with this issue, we propose a service selection mechanism inspired of the service discovery architecture proposed by [16]. In the service selection mechanism presented in figure 4, SCIM, integrated to S-CSCF, refers to a
5
1
4
Service Data Base
6
SCIM integrated to S-CSCF Figure 4 : Service Selection Mechanism
2. Providing interoperability: that deals with the problems related to the terminal/network/service representation diversities in order to deploy a common service triggering model in heterogeneous service environments. Based on the common service representation and triggering model proposed in IMS we present in the next part our SCIM model.
3 SCIM in IMS In this part we classify the characteristics of SCIM in IMS service architecture illustrated in figure 2, regarding its requirements and its tasks to manage the service interactions: 1. User Profile Retrieving User profile is composed of initial Filter Criteria (iFC) containing the address of the application servers to be contacted sequentially according to their defined priority [2]. At the IMS registration phase, the user profile of the subscriber is retrieved from HSS (Home Subscriber Server) and is saved on the S-CSCF. SCIM retrieves the user profile to define for which application servers the request of the user is allowed to be triggered. As the application server may be composed of multiple service capabilities, the execution of the service will be performed according to the service provider policy for defining which service capabilities are
invoked from SCIM and in what order. 2. Service Provider Policy Considering SCIM may trigger multiple service capabilities for executing a single service logic in an application server. Also one or more service capabilities may be shared between multiple application servers. Among the policies that may be considered to decide about the order in which the service capabilities must be invoked, in our framework, we focus on the user priority and the service priority. Same mechanism of prioritizing the services or the users had been applied in telecommunication systems for detecting and resolving the interactions that occur in Intelligent Network based features and in telephony services [12-15]. The user priority will be defined by the service operator depending on the user subscription attributes. The service priority may be defined by the service provider or by the user. The factors that can be considered for prioritizing the services include criteria such as applied media for the service, one way or interactive aspects of services, variety of eventual modifications performed on SIP request during session establishment, etc. 3. Service Triggering Rules Defining According to the user profile and the service provider policies, SCIM will apply service triggering rules to invoke services by preventing eventual interactions. Also the interaction resolution rules must be defined in order to assure the correct implementation of the integrated services in case of conflict between service triggers. In part 4 of this paper, we present through an example how these rules will be defined. 4. Service Triggering In accordance with the defined service triggering rules, SCIM invokes service capabilities or application servers in order to implement integrated services. 5. Service Layer Inter-working (interconnecting with other SCIM) Exchange of the user, service and network information (retrieved from session and application support interfaces) between SCIMs provides cooperation between different service domains and eventual interoperation with other service providers by enabling triggering to the service capabilities and the application servers of other domains. 6. Service Platform Interworking SCIM proposed by 3GPP in the functional architecture of IMS, is supposed to manage only the interactions between SIP-based service capabilities. But as it is illustrated in figure 2, the IMS service architecture besides the SIP AS, provides access to the services of the third party service providers through OSA-SCS (Open Service Access - Service Capability Server) [11]. In addition, the CAMEL (Customized Applications for Mobile network Enhanced Logic) [7] service environment is also supported as a service platform in IMS to enable
access to the Intelligent Network services through IM-SSF (IP Multimedia Service Switching Function). Therefore SCIM must be able to provide interfaces to all of the standardized service platforms of IMS. Based on the mentioned requirements and tasks of SCIM, we present in the next two parts the structural and functional aspects of the implementation of SCIM in IMS.
4 Structure of SCIM As it is presented in figure 5, we divide the structure of SCIM in two plans: Data Plan and Control Plan. • Data Plan: Data Plan contains the necessary information required by SCIM in order to decide about the management of the interactions between the services. This information concerns: 1. User profile retrieved by S-CSCF from HSS at the registration time and saved in S-CSCF. 2. Service provider policy that describes a formal model of all the services that session control layer may trigger in order to implement an integrated service. This information that can be provided by the service selection mechanism presented in part 2, indicates also the decomposition of the service into multiple service capabilities and the order in which these service capabilities will be invoked to implement the integrated services. Among other information related to the service provider policy we can refer to: 2. a. Priority levels of services defined by service providers and/or users according to user preferences or network policies and constraints. 2. b. Priority levels of the users attributed to the user by service provider depending on the user subscription characteristics. Categorizing the services and the users and including and applying the service and user priority to the interaction management criteria and considering simultaneously both of the user profile and the service provider policy enable the service platform to provide a multi criteria service capability interaction manager to satisfy both the service provider and the subscriber. • Control Plan: Based on the information retrieved form the Data Plan, the Control Plan defines the service triggering rules concerning the successive invocation of the service capabilities. In case of conflict between the
Service Triggering Rules
Service Interaction Resolution Rules
Control Plan
Data Plan
User Profile
Figure 5: Components of SCIM
Service Provider Policy
service invocations, based on the service provider policy, the conflict resolution rules will be applied to prevent the interactions between services and to ensure the correct implementation of the integrated service. In next part we present theses functionalities in more detail.
5 Functionalities of SCIM An XML format of the user profile retrieved from HSS by S-CSCF is presented in figure 6. As explained in the previous part, SCIM will retrieve the required information about the subscriber from user profile. In figure 6 we present only the initial Filter Criteria (iFC) part of the user profile. The application server balise is the critical information that SCIM requires in order to determine for which application servers the user had subscribed. In the example of figure 6, the referred application server is an Online Discussion Forum (ODF). 0 0 sip:
[email protected]
which the application servers and the service capabilities are invoked from SCIM. sip:
[email protected] 0 sip:
[email protected] sip:
[email protected] sip:
[email protected] 1 sip:
[email protected] sip:
[email protected] sip:
[email protected] sip:
[email protected] 0 sip:
[email protected] sip:
[email protected]
Figure 6: iFC of an Online Discussion Forum subscriber
ODF is an integrated service that can be implemented by composing a conference server (for establishing the discussion session) and a presence server (for managing the presence and the availability of the discussion partners). As it is presented in figure 7, the service provider policy of SCIM must contain a list of integrated services composed of multiple service capabilities. According to the integrated service description of figure 7, the ODF of service provider SP1 will be implemented by integrating the presence service capability of SP1 and the conference service capability of SP2. The Multimedia Gaming Service (MGS) of service provider SP1integrates presence, messaging and conference service capabilities of SP1. The Multimedia Char Room (MCR) of SP1is composed of the presence and conference service capabilities of SP1. The service capability selection is performed due to the result of the service selection mechanism presented in figure 4. This dynamic service capability association prevents the problems due to the scalability and performance of service capabilities and also allows mobile users to access local services (if available). This formal model incorporates all of the service capabilities to be triggered in order to implement the integrated services. Since the service implementation in the application server involves multiple service capabilities, the service execution will be performed according to the mechanism by
Figure7: Integrated services description
In our example the service provider prioritizes the ODF and MCR to MGS because of the urgency nature of ODF and MCR face to the entertainment nature of MGS. The user is also able to define some contracts related to the priority of the services. For example even if for SP1, ODF and MCR have the same priority, user A can mention in his profile that the user B has a high priority and so when A is in discussion with B over an ODF any invite request from MCR will be rejected. After evaluating the demanded services in the user profile and the composition of the service capabilities defined for each integrated service, SCIM will replace the application server balise in the user profile by the related integrated service information in the service policy. Therefore the service capability based architecture will be transparent for the integrated service subscriber, but will allow the service provider to create and implement new services by integrating existing service capabilities. In other words, the service capabilities offered by dedicated application servers can be reused by different application servers to implement integrated services without provoking service interactions. Figure 8 presents the modifications performed by SCIM over initial Filter Criteria in order to invoke related service capabilities. Along with these modifications, the interoperation between the
service providers SP1 and SP2 enables the implementation of Online Discussion Forum service by using the presence service capability of SP1 and the messaging service capability of SP2. Furthermore, for all the integrated services that are provided by SP1, SCIM will be able to manage the eventual interactions due to the defined priority of the services as well as the user priorities. 0 0 sip:
[email protected] 0 sip:
[email protected] sip:
[email protected]
Figure 8: Modified iFC of a subscriber of ODF
6 Conclusions and Future Works In this paper we proposed a new framework for implementing SCIM in IMS. The advantages of this framework consist of: 1. Creating an Open Service Architecture that a) enables the introduction, deployment and execution of personalized and adaptive services by users, service providers and third parties, b) provides a flexible service control framework supporting different services in different networks and c) offers a layered architecture in which service and session control intelligences are separated via APIs. 2. Disposing a hierarchical representation of services that facilitates dynamic composition and decomposition of service capabilities in order to create innovative integrated services. 3. Designing the structural and functional characteristics of SCIM in order to provide both session and application support interfaces that invoke the service execution entities due to the user profile and service provider policies and to manage the eventual interactions between service triggers. 4. Providing a dynamic service capability selection according to the proposed service discovery mechanism. Different common and reusable service capabilities such as Push-based and Location-based services can be integrated to our framework to extend its service offering range. In the future works we will discuss about these extensions at both service capabilities and integrated services level, i.e. considering other 3G standardized service capabilities, we will study the consequences of introducing new integrated services in our framework. In parallel we will evaluate the
modifications of the SIP call flows in our framework between session control layer and service execution layer based on the following metrics: 1. The number of exchanged messages between service capabilities and SCIM before multimedia session establishment and execution. (Trigger per session over SCIM and over service capabilities) 2. The effect of triggering modifications due to service triggering and service interaction resolution rules decisions, on the multimedia session establishment delay.
References [1] 3GPP, “IP Multimedia Subsystem (IMS)”, TS 23.228, Release 6 [2] 3GPP, “IP Multimedia session handling; IM call model”, TS 23.218, Release 6 [3] 3GPP, “Presence service using the IP Multimedia (IM) Core Network (CN) subsystem”; TS 24.141 [4] 3GPP, “Messaging using the IP Multimedia (IM) Core Network (CN) subsystem; TS 24.247 [5] 3GPP, “Conferencing using the IP Multimedia (IM) Core Network (CN) subsystem”, TS 24.147 [6] 3GPP, “Multimedia Messaging Service (MMS); Functional description”, TS 23.140 [7] 3GPP, “Customised Applications for Mobile network Enhanced Logic (CAMEL)”, TS 23.278 [8] IETF RFC 3261, “SIP: Session Initiation Protocol” [9]http://portal.etsi.org/stfs/documents/STF291/DTR_010 24v010.doc [10] S.Ryu et al. “Research Activities on NextGeneration Mobile Communications and Services in Korea”, IEEE Communications Magazine, September 2005. [11]http://www.openmobilealliance.org/tech/wg_committ ees/poc.html [12] J.Pang and L.Blair, “An Adaptive Run Time Manager for the Dynamic Integration and Interaction Resolution of Features”, IEEE Computer Society 2002. [13] M.Görtz et al, “Using a Multi-Layer Approach to tackle the Service Interaction Problem in Telephony Scenarios”, IEEE Computer Society 2002. [14] Y.L.Chen et al, “Resolving Feature Interactions Using Modular Supervisory Control with Priorities,” Feature Interactions in Telecommunication Networks, vol. 4, P. Dini, R. Boutaba, and L. Logrippo, eds., pp. 108–122. Amsterdam, IOS Press, June 1997. [15] M. Boström and M. Engstedt, “Feature Interaction Detection and Resolution in the Delphi Framework,” Feature Interactions in Telecommunications Systems, vol. 3, K.E. Cheng and T. Ohta, eds., pp. 157–172, Amsterdam, IOS Press, Oct. 1995. [16] D.Jiang et al, “Simulation of Personalized Services in SIP communications”, Services Systems and Services Management, 2005. Proceedings of ICSSSM '05. 2005 [17] http://www.itu.int/ITUT/worksem/ngntech/presentations/s2-carugi.pdf [18]A.Gouya, N.Crespi, E.Bertin, “SCIM Implementation Issues in IMS Service Architecture”, submitted to ICC2006.