Beruflich Dokumente
Kultur Dokumente
Piotr Kessler
The success of IMS will largely depend on the availability of new ser- tion services. But on the other hand, we see
vices in end-user equipment. Strong focus on terminals is thus especially how difficult it is to create and use a con-
important to ensure that IMS services remain independent of access and sistent suite of communication services that
terminal type. can interoperate with others suites of com-
munication services. Indeed, having myriad
Implementations of IMS applications in terminals must address two
applications on your computer does not offer
disparate aspects: technology and end-user experience. Accordingly, the same simplicity of service you experience
Ericssons solution partitions IMS applications into two layers consisting of when using a phone to set up a call. Nor can
an IMS client framework (which essentially hides IMS technology behind a you expect to reach all your contacts in the
high-level API) and IMS applications. same easy way as you can currently do from
The author describes Ericssons realization of the IMS client framework. your phone book. Therefore, looking for-
ward, the challenge is to ensure that com-
munication applications will work together,
simply, and on any communication device.
The solution calls for an architecture for
Background IMS ing to include the ability to communicate advanced network-based multimedia com-
and interact with just about anybody, any- munication services one that merges tech-
No one is an isolated island, wrote British where, at any time, and using any commu- nologies and fuses the advantages of the
poet John Donne in 1623, indicating, among nication device. internet domain with those of the telecom-
other things, that it is human nature to want For most people, exposure to this new munications domain. This architecture, the
to belong to a social context.1 Previously, our communication paradigm began with the IP Multimedia Subsystem (IMS), has already
worlds were defined to a great extent by introduction of internet access to the home. been defined and standardized by the Third
small communities in our immediate sur- On the one hand, it has taught us how easy Generation Partnership Project (3GPP).
roundings, whereas today they are expand- it is to develop and use new communica- IMS defines a framework that facilitates
development and deployment of any type of
multimedia service. The IMS framework in-
cludes or addresses
end-to-end service (that is, it takes into
account all the nodes that are needed to
TERMS AND ABBREVIATIONS realize service);
reachability, using similar (or possibly the
3G Third-generation mobile system JSR Java standardization request same) addressing mechanisms;
3GPP Third Generation Partnership MRF Media resource function mobility;
Project MSISDN Mobile station international ISDN
AL Abstraction layer number
interoperability;
API Application program interface MSRP Message session relay protocol convergence;
AS Application server OMA Open Mobile Alliance quality of service (QoS);
CDC Connected device configuration OS Operating system multimedia connections;
CLDC Connected limited device P2P Peer-to-peer security; and
configuration PBX Public branch exchange
CoSe Communication service P-CSCF Proxy CSCF charging.
CSCF Call session control function PoC Push-to-talk over cellular Examples of services that have been stan-
DM Device management QoS Quality of service dardized on top of IMS include OMA pres-
E2E End-to-end RFC Request for comments ence and group list management, OMA
GPRS General packet radio service RTCP Real-time control protocol
GUI Graphical user interface RTP Real-time protocol
Push-to-Talk over Cellular (PoC), 3GPP
HSS Home subscriber server RTSP Real-time streaming protocol combinational services (CSI), OMA Instant
HTTP Hypertext transport protocol S-CSCF Serving CSCF Messaging, and TISPAN/3GPP multimedia
HW Hardware SDP Session description protocol telephony for IMS (MMTel).2
IARI IMS application reference SDS Service development studio IMS has been positioned on top of the
identification SIP Session initiation protocol
ICP IMS Client Platform TCP Transport control protocol IP technology layer to make it access-
I-CSCF Interrogating CSCF TTM Time to market independent and to take advantage of under-
IDE Integrated development UA User agent lying layers (Figure 1). The IMS layer includes
environment UDP User datagram protocol several components, such as proxy call session
IETF Internet Engineering Task Force UMTS Universal mobile
IMEI International mobile equipment telecommunication system
control function (P-CSCF), serving CSCF
identity VCC Voice call continuity (S-CSCF), interrogating CSCF (I-CSCF), and
IMS IP Multimedia Subsystem VoIP Voice over IP media resource function (MRF).3
IOT Interoperability test WLAN Wireless local area network Figure 2 shows a simplified view of the
IP Internet protocol XCAP XML configuration access protocol IMS architecture, highlighting the core parts
IT Information technology XDM XML document management
JCP Java community process XML Extensible mark-up language of the IMS infrastructure and the enabler
JME Java micro edition part, which supports IMS services.
HZgk^XZcZildg`
8H8; 8H8;
H>E BG; =HH H>E
>BH
I>HE6C (<EE
Bjai^"VXXZhh
GZh^YZci^Va BdW^aZ
:ciZgeg^hZ Figure 1
IMS technology.
IMS support in terminals sive a skill set as to satisfactorily span both Figure 2
The success of IMS will largely depend on these areas. Consequently, without interven- Simplified overview of the architecture of
the availability of new services in end-user tion we cannot achieve a high penetration the IMS infrastructure.
equipment. Therefore, strong focus on termi- of IMS applications, which is a criterion for
nals is especially important because IMS ser- the success of IMS. What is more, most of
vices must remain independent of access and todays IMS applications include their own
terminal type that is, they must be able to implementations of IMS technology, which
run on all kinds of terminals in the broad- substantially threatens interoperability, a 6eea^XVi^dch
est sense, including mobile phones PCs, set- second criterion for true, long-term success.
top boxes, modems, and so on. Furthermore, Ericssons solution is to partition IMS ap-
IMS services must rely to a high degree on plications into two layers consisting of
the implementations in end-user equipment. an IMS client framework (the domain of
Implementing IMS applications in termi- providers of terminal platforms); and
nals is not an easy task because developers IMS applications (the domain of applica- :cVWaZg
must address two disparate aspects: technol- tion developers).
ogy and end-user experience. Where technol- The IMS client framework essentially hides
ogy is concerned, developers must consider a IMS technology behind a high-level API, al-
variety of communication protocols (for in- lowing application developers to focus exclu-
stance, SIP, SDP, RTP, RTCP, MSRP, XML sively on innovations.
and XCAP), standards compliance, real-time
requirements, low-level task management, Ericsson IMS Client
and enablers. And where end-user experience
is concerned, they must focus on service ag- Platform
gregation, the graphical user interface (GUI), Ericssons IMS Client Platform (ICP), which 8dgZ
usability, and user interaction. implements the IMS client framework,
In all fairness, however, one cannot expect is easy to download and install on open
developers to have so broad and comprehen- platform terminals. When designing it,
8 6E>
:cVWaZgh :cVWaZgh
>BH
>8EXdgZ
>8E >BH
Figure 3
End-to-end realization of layered IMS
architecture.
Figure 5
>BHiZgb^cVa >BHiZgb^cVa The ICP API hides IMS end-to-end tech-
nology from applications.
6eea^XVi^dc 6eea^XVi^dc
>BHXdbbjc^XVi^dc
hZgk^XZ(
8db( 8db(
hZgkZg hZgkZg
>BHXdbbjc^XVi^dc
hZgk^XZ'
8db' 8db'
hZgkZg hZgkZg
>BHXdbbjc^XVi^dc
hZgk^XZ&
8db& 8db&
hZgkZg hZgkZg
>8E >8E
>8E
>8E >BH
>8E
>8E
>8E
Figure 6
ICP realizes interoperability between
terminals in different segments.
supports these new applications via stan- bind them to a ImsCoreService object. Each
dardized IMS mechanisms and allows for ImsSession is based on a SIP session and rep-
the definition of primitives at the applica- resents a service session with another service
tion level. Consequently, using primitives participant. One may thus create ImsSessions
that have been standardized by 3GPP, one with different service participants within the
can identify new non-standard services. This same ImsCoreService. Each ImsSession can
feature improves the interoperability of ap- use any valid communication mechanism
plications that implement new services (Fig- for the SIP session and add, in bidirectional
ure 7, right). Interoperability in this case and unidirectional mode, any number of
is not 100% due to a lack of standardized media connections, such as StreamMedia,
application identities, but time to market FramedMedia, BasicReliableMedia and
(TTM) is very short, which has an impor- BasicUnReliableMedia.
tant impact on growth in the IMS applica- Furthermore, each media connection can
tion space. be used to transmit standard as well as non-
One can create new proprietary services standard objects. ICP handles audio and
TABLE 1, PROTOCOLS INCLUDED IN ICP using the following objects of the ICP core video data streams using players and record-
API: ers without moving data between itself and
SIP, according to RFC 3261 ImsCoreService; client applications. If proprietary formats are
provisional responses, according to RFC
3262
ImsSession (based on SIP session); used, the client applications read data direct-
event notification, according to RFC 3265 BasicReliableMedia (based on TCP); ly from media streams and implement their
refer method, according to RFC 3515 BasicUnReliableMedia (based on UDP); own interpreters, such as proprietary players,
UPDATE method, according to RFC 3311 StreamMedia (based on RTP); games, and so on.
INFO method, according to RFC 2976 FramedMedia (based on MSRP);
event state publication, according to RFC
3903 player; and Multiclient support
extension for instant messaging, recorder. ICP allows IMS client applications to be
according to RFC 3428 ImsCoreService, the main object in propri- co-located in the same terminal (not to be
SDP, according to RFC 2327 & 3264 etary applications, is identified by an appli- confused with multitasking execution, which
RTP, according to RFC 1889 & 1890
MSRP, according to RFC draft
cation identity that represents the service is managed by the application run-time en-
XML to be developed. Application developers vironment). In the context of ICP, multi-
XCAP can create any number of ImsSessions and client support addresses the
6E> 6E>
6E> 6E>
>8E >8E
>8E >8E
HiVcYVgY^oZY
>BH^ciZg[VXZ HiVcYVgY^oZY
>BH^ciZg[VXZ
>BHbVcV\Zg >BHhZgk^XZZcVWaZgh
>8EXdgZ 6E> 6E> 6E> 6E>
Ed8 Kd>E 8H> M
>BHhZhh^dc >BHhZgk^XZ 6E>
E:E 6E>
BZY^VM BZY^VN 6E> 6E> N
<AB EgZhZcXZ
EaVnZg
@ZgcZa6E>
GZXdgYZg M >BHgZ\^higVi^dcbVcV\Zg
>8E
GZedh^idgn N 8dc[^\jgVi^dcbVcV\Zg
ICP core Control objects are a set of modules that to group service-related parts of function-
The ICP core domain consists of a kernel, implement dedicated functionality on top ality for reuse by many different clients.
various protocols, control objects, and in- of the kernel and protocols to extend ICP The implementation of enablers relies on
terface objects. The kernel is responsible for functionality. New modules can be added as public APIs exposed through the core and
fundamental ICP functionality and core IMS needed to complement ICP functionality, for enabler parts of ICP. In addition, enablers
functionality. example, voice call continuity (VCC). can access the kernels low-level APIs, there-
Apart from the kernel, each of the compo- Interface objects are a set of objects that by exposing the low-level mechanisms that
nents or objects in ICP can be extended and expose primitives to applications through the are needed to develop enablers.
tailored to specific needs. API. The API, which reflects the function- In many cases it makes sense to create an
The protocols consist of several protocol ality implemented in ICP, can be extended enabler even when there is no standardized
agents together with optional protocol stack with new interface objects as new functional- functionality to be encapsulated. For example,
implementations. The protocol layer includes ity is exposed for developers. one might implement interactions with the
mandatory protocol agents that manage all local PBX to access its value-added services.
connections using dedicated protocols. Pro- Service enablers This way, client applications can access these
tocol stacks are implemented together with Service enablers implement functionality at services through an enablers high-level API.
ICP, but can be replaced in hardware and the service level. There are two main reasons The ICP architecture also allows Ericssons
software by the realization in the terminal for grouping functionality in enablers: partners to develop dedicated enablers; that
platform. The ICP architecture supports easy to ensure compliance with standards (for is, the model permits
expansion via new protocols. standardized services); and free implementation of proprietary en-
Figure 9 >BHXa^ZcieaVi[dgb
Components of the abstraction layer.
6E>
?HG&&+
EgZ"?HG'-&
>BH8a^ZciEaVi[dgb>8E
>BHhZgkZgeaVi[dgb
8H8; 8H8;
H>E BG; =HH H>E
>BH
I>HE6C (<EE
Bjai^"VXXZhh
Figure 11
Developer view of service development.
Service Development phones. ICP is automatically installed on services. Notwithstanding, IMS is complex
the Symbian emulator during the SDS con- and sometimes daunting to application de-
Studio figuration process. This ensures consistency velopers. Ericsson recognizes this fact and
Ericsson has created the Service Develop- of ICP run time, since ICP is identical in understands that it could impede the IMS
ment Studio (SDS) to facilitate further de- both the emulation environment and target application market. As a consequence, it
velopment of IMS services. This integrated terminals. has created the IMS Client Platform, which
development tool, based on Eclipse IDE and SDS can simulate the entire IMS infra- hides the details of IMS technology from de-
complemented with plug-ins that realize a structure, enabling developers to realize the velopers while exposing IMS functionality
development environment for IMS services complete development cycle and end-to-end in a simple, straightforward way (high-level
in an end-to-end context, supports the de- tests on a single computer without connec- abstraction API). This approach
velopment of end-to-end solutions, includ- tion to an actual IMS infrastructure (Fig- simplifies and speeds up the development
ing client and server parts. JSR-116 exposes ure 11). and deployment of new services;
a SIP Servlets API for server-side develop- In addition, SDS offers a toolbox for cre- ensures compliance with standards for core
ment of service. ICP is the cornerstone on ating IMS client applications by means of IMS functionality and services;
the client side. A pre-JSR-281 ICP API ex- specific plug-ins that support client de- substantially shortens time to market;
poses IMS functionality for client applica- velopment projects and the deployment of substantially simplifies interoperability
tion development. applications in emulated and target termi- testing; and
SDS includes the entire environment for nals. gives end users the same service regardless
developing, testing and deploying IMS ser- of terminal platform or access technology.
vices. The industry broadly supports this concept
On the client side, applications are devel-
Conclusion through the standardization of a Java-based
oped and run on top of real ICP implemen- Ericsson stands behind the IMS concept as IMS services API. Ericssons ICP serves as
tations installed on Windows together with a way of realizing end-user communication the basic framework in this standardization
the complete SDS installation. A Symbian/ needs. IMS technology offers a framework process and will be the flavor of JSR-281 for
UIQ emulator is included in the installation that supports several basic mechanisms that terminals that are not addressed by stan-
for applications that target Symbian smart- are necessary for creating rich, interoperable dardization.
1. Donne, John. Nunc Lento Sonitu Dicunt Mori- 3GPP is a trademark of ETSI in France
eris [Now, this bell tolling softly for another, and other jurisdictions
says to me: Thou must die.] From Devotions Java, and Java Servlet are trademarks
upon Emergent Occasions, XVII, 1623 or registered trademarks of Sun
2. Enstrm, D., Nohlgren, A., Olofsson, H., Peisa, Microsystems, Inc. in the United
J. and Synnergren, P. Multimedia telephony States and other countries
for IMS Interoperable VoIP with multimedia Symbian, Symbian OS, and other
support. Ericsson Review, Vol. 84(2007):2, pp. trademarks incorporating the word
10-13 Symbian in conjunction with other
3. Camarillo, Gonzalo and Garcia-Martin, Miguel- words or logos are brands of Symbian
Angel. The 3G IP Multimedia Subsystem (IMS): Software Ltd
Merging the Internet and the Cellular Worlds, Windows and Windows Mobile are
2nd ed. Chichester: John Wiley & Sons Ltd, trademarks or registered trademarks
2005 of Microsoft Corporation