2010년 9월 7일 화요일

통합메세징(CPM: Converged IP Messaging) 표준화

지난 2006년 6월에 OMA(Open Mobile Alliance)의 Work Group가운데 Communication관련 Enabler들을 다루고 있는 COM 그룹의 표준화 Work Item으로 채택되어 시작되었던 CPM Enabler가 2010년 8월말로 공식 종료되었다. 표준화에 참여한 주요 회사로는 Nokia, NSN, Ericsson, Samsung, LGE, Alcatel-Lucent, Acision, Hansol, Orange등이 있다.


본 고에서는 표준화 작업이 완료된 CPM의 주요 특징에 대해서 알아보고 CPM이 가지는 기술적 요소들에 대해 정리해 보고자 한다.


1. 개념
CPM은 기존의 SMS, MMS, Email, IM과 같이 각각의 silo에서 생성되고 진화되어 오던 메세징 서비스들이 All-IP망에서 어떻게 진화하게 될 것인가에 대한 고민에서 출발한다. All-IP망에서의 메세징 서비스는 사실상 SMS, MMS, Email, IM같은 기존의 메세징 서비스가 더이상 존재하지 않는 하나의 단일화된 메세징 서비스로 통합될 것이다.




이에 따라 이전 메세징 서비스에 대한 사용자 경험이, SMS/MMS/Email등 전송될 메세징 서비스의 종류를 선택함으로써 이루어지는 형태였다면  CPM 에서는 특정 contact에 대한 communication을 시도하는 것으로 단순화 될 것이다. All-IP기반의 CPM은 기존의 메세징 서비스들이 가지고 있던 모든 특징을 흡수하고 기존 메세징 서비스 단말에 대한 역호환성을 보장하는 형태로 표준화가 이루어졌다.

CPM은 그 자체로서 메세징 서비스를 제공하는 주체인 동시에 메세징을 필요로 하는 3rd party Application에게 메세징 기능을 제공해주는 플랫폼의 개념을 가진다. 





예를 들어, Game Service에서 CPM이 제공하는 Interface를 이용해 Game Service를 이용중인 사용자 간의 Communication기능을 제공한다거나 음악이나 영화 스트리밍을 이용하고 있는 사용자 들이 해당 음악 또는 영화에 대한 의견을 나눌 수 있도록 communication path를 열어주는 등의 서비스가 가능한 것이다.


2. 기능


2-1. 멀티미디어 지원
CPM은 모든 형태의 멀티미디어를 지원한다. 즉, 기존의 SMS, MMS, Email, SIMPLE IM에서 제공하던 discrete media(예:text, image, video clip, audio clip, binary등)와 continuous media(예:video streaming, audio streaming등)의 전송을 지원한다. 

2-2. Non-CPM Interworking
CPM은 기존 서비스 들에 대한 역호환성을 제공한다. 즉, 기존의 SMS, MMS, Email 메세지를 IP기반의 CPM 사용자가 받아보거나 전송할 수 있게 함으로써, CPM 서비스에 가입하지 않은 일반 메세징 서비스 사용자와도 communication이 가능하도록 한다.

2-3. Multiple Devices(다중 단말) 지원
CPM은 한 개 이상의 서로 다른 capability를 가지고 있는 사용자의 단말을 지원한다. 각 단말은 하나의 CPM 사용자 주소에 맵핑되고 사용자는 device capability나 communication capability에 따라 어떤 단말로 어떤 형태의 메세지를 전송받을 지 미리 설정 할 수 있다.

2-4. Multiple User Preferences Profile
CPM 사용자는 한 개 이상의 user preference set을 정의(예: office, meeting, do-not-disturb, home 등)함으로써 상황에 맞는 개인화된 communication 환경을 구성할 수 있다. 

2-5. Network-based Storage
CPM은 사용자에게 네트웍 기반의 스토리지를 제공한다. 네트웍 기반 스토리지는 사용자에게 수신된 메세지 및 미디어를 백업 또는 저장할 수 있는 기능을 제공한다. 또한, CPM 사용자는 네트웍 기반 스토리지에 저장된 미디어를 다른  CPM사용자와 공유하거나 Foward 할 수 있다. 

2-6. Standalone Messaging
Standalone Message는 discrete media를 포함하는 메세지를 의미한다. Standalone Messaging에서는 discrete media를 포함한 메세지의 크기가 1300byte보다 작은 경우는 Pager Mode로, 이보다 큰 경우는 Large Message Mode로 메세지가 전송된다. Standalone Messaging에서는 사용자의 User preference에 따라 Disposition Notification(예: 전송확인, 읽기확인)을 교환할 수 있다.

2-7. Session Mode Messaging
Session Mode Messaging은 종단간 미디어 계층에서의 세션이 맺어진 상태에서 이루어지는 communication을 의미한다. 세션이 맺어진 상태에서 이루어지는 communication은 별도의 Disposition Notification이 존재하지 않는다. Session Mode Messaging은 크게 1-1과 Group Session으로 구분된다. Group 세션에서는 한 명이상의 사용자간에 교환되는 미디어의 분배가 이루어지며, 사용자의 초대 및 퇴장 관련 호처리 기능이 포함된다. 또한, Group 세션에 참여하고 있는 참여자는 Group 관련 참여자 정보를 받아볼 수 있다.

2-8. File Transfer
파일전송 기능은 기존 SIMPLE IM에서와 동일하게 이루어진다. 발신자가 원하는 파일을 선택하여 착신측으로 전송을 하면 착신측의 수락여부에 따라 파일의 전송여부가 결정된다. 파일전송이 완료되면 파일전송을 위한 세션은 자동 종료된다.

2-9. Recording
CPM 사용자는 수신되는 모든 메세지 및 미디어를 네트웍 기반의 스토리지에 저장할 수 있다. Message Delivery의 일부 기능으로서의 'Storing'의 경우 수신되는 메세지 및 미디어를 단말에 착신하는 대신에 네트웍 기반 스토리지에 저장하도록 하는 사용자의 설정에 의해 이루어지고 따라서, 이 경우 메세지가 착신되었다고 간주되지만, 반면에 Recording의 경우 실제로 단말에 착신이 이루어진 메세지 및 미디어를 네트웍 기반 저장소에 저장한다.

3. 아키텍쳐





그림에서 보는 바와 같이 CPM Enabler는 CPM Partcipating Function, CPM Controlling Function, Interworking Selection Function, Inteworking Funciton, Message Storage Server 그리고 CPM Client 및 Message Storage Client로 구성된다. 이들 각 Component에 대한 간략한 설명은 다음과 같다.
  • Message Storage Client: CPM Message Storage와 연동하여 단말과 Storage간의 메세지 동기화, 메세지 조회 및 관리를 수행한다.
  • CPM Client: CPM Participating Function과 연동하며 사용자의 다양한 설정에 따라 메세지를 송수신한다. 
  • CPM Participating Function: CPM Client와 직접 연동하여 메세지를 송수신한다. Multiple  CPM Client를 관리하고, User Preference를 참조하여 착신자에게 메세지를 전송한다. 그룹세션인 경우 CPM Controlling Function과 연동한다.
  • CPM Controlling Function: CPM Group 세션을 담당한다. Signal 및 Media를 그룹세션 참여자에게 분배하는 conference focus의 역할을 수행한다.
  • Message Storage Server: 네트웍 기반의 메세지 저장소로서 발수신 메세지 관리 및 CPM 단말과의 동기화 기능을 제공한다.
  • Interworking Selection Function: Legacy Messaging Service로 라우팅 되는 메세지에 대해 특정 Legacy Messaging Service(i.e., SMS, MMS, Email)를 user preference 및 operator policy에 따라 결정하고 해당 Inteworking Function으로 메세지를 라우팅한다.
  • Interworking Function: CPM메세지를 각 Legacy Messaging 서비스로 라우팅한다. 이를 위해 프로토콜 변환 기능등을 수행한다.


CPM Enabler를 구성하는 각 component간의 signaling은 SIP에 기반하며, discrete media 및 continuous media 전송을 위해 MSRP와 RTP/RTCP를 지원한다. 또한, 외부의 XDMS Enabler로부터 User preference 및 Operator policy를 끌어오기 위해 XCAP을 사용하며 Message Storage Client 및 Server간에는 IMAPv4를 사용한다.

4. 사용자 설정(User Preference)
CPM Participating Function은 user preference에 기반한 communication을 수행해야 한다. CPM 서비스를 위해 사용된 User preference는 SIMPLE IM의 그것에 비해 다소 복잡해진 면은 있으나, 반면에 다양한 형태의 메세징 환경을 제공할 수 있도록 표준화가 진행되었다. CPM System Description Document에 정의된 user preference는 다음과 같다.
  • General request handling
    • Do not disturb : 착신자가 Do-not-disturb로 설정해 놓은 경우 해당 사용자에게는 어떠한 Message나 Notification이 전송될 수 없다.
  • Message  Handling
    • Reject Message based on black list: 착신자가 설정한 blacklist에 해당하는 사용자로부터 메세지 전송시 해당 메세지는 전송되지 않는다.
    • Handling of Messages
      • Defer: 착신 단말이 메세지를 착신할 수 없는 상태인 경우 해당 메세지는 시스템의 temporary queue에 저장된다. 이후 CPM Client가 다시 메세지를 받을 수 있는 상황이 되면 저장되었던 메세지가 전송된다.
      • Deliver to Message Storage: Defer와 동일하나 메세지를 네트웍 기반 스토리지에 저장한다.
      • Forward: 수신된 메세지를 착신 단말로 착신하는 대신 착신자가 설정해 놓은 제 3의 단말로 해당 메세지를 Forwarding한다.
      • Delivery using Non-CPM Communication Service: 착신자가 메세지를 CPM이 아닌 SMS,MMS 또는 Email로 착신하기를 원한다면 해당 메세지를 CPM Client가 아닌 해당 사용자의 SMS Client, MMS Client 또는 Email Client로 전송해야 한다.
      • Deliver by providing a link to stored media instead of the media itself: 메세지에 미디어가 첨부되어 있는 경우, 해당 메세지를 모두 보내는 대신 미디어를 네트웍 기반 스토리지에 저장하고 저장된 각 미디어에 대한 link를 전송한다. 향후 착신자가 해당 미디어를 복원하고자 하는 경우, Message Storage Client를 통해 다운로드 될 수 있다.
  • Handling of expired Deferred CPM Messages
    • Discard: deferred message가 아직 단말로 착신되지 않은 상태에서 그 유효 시간이 만료된 경우 해당 메세지를 폐기처분한다.
    • Delivery to Message Storage Server: deferred message가 아직 단말로 착신되지 않은 상태에서 그 유효시간이 만료된 경우 해당 메세지를  Message Storage Server에 저장한다.
  • Session Handling
    • Automatically accept/reject specific types of media during a session : 특정 조건(예: 발신자, 미디어타입 등)을 만족하는 세션에 대한 요청이 수신된 경우 착신자의 동의를 구하지 않고 자동으로 수락/거부 한다.
    • handling of session invitation when CPM user not available, reject/interworking: 특정조건을 만족하는 세션에 대한 요청이 수신되고 착신단말이 메세지를 착신할 수 없는 상태인 경우 해당 메세지에 대해 거부/non-CPM inteworking 을 수행한다.
  • Recording handling
    • Automatically record/not record: 착신 메세지, 세션, 대화내용을 녹음한다.
  • Multi-Device handling
    • Delivery message or notification to all or subset of user's devices: 착신 메세지나 notification을 CPM 사용자의  등록된 모든 단말기나 일부 단말기로 전송한다.
    • Deliver session invitation to all or a subset of user's devices: Session 요청 메세지를 CPM 사용자의 모든 등록된 단말기나 일부 단말기로 전송한다.
    • Deliver based on active user Preference Profile, message size, content type: 활성화되어 있는 UPP나 메세지의 크기, 컨텐츠 종류에 따라 해당 메세지를 특정단말로 전송할 지의 여부를 결정한다.
  • Non-CPM Interworking
    • 연동할 특정 Non-CPM 서비스(i.e., SMS, MMS, Email)를 선택하기 위해 ISF는 XDMS로터 획득한 User Preference를 참조하여, 미디어 타입, 메세지크기에 따라 이를 결정한다.

5. 맺음말
CPM Enabler는 지난 2006년 6월에 표준화 작업이 시작되어 지난 8월 종료를 했으니, v1.0 표준화 완료까지 장장 4년이란 시간이 걸린 셈이다. 그렇게 표준화를 하는 과정에서, 당시 Work Item이 나왔을 때까지만 해도 초기시장이었던 통합메세징 시장이 어느덧 지금에는 모든 메세징 관련 서비스들의 당연한 Feature로 자리잡고 있을 만큼 보편화 된 듯 하다. 그런 점에서 CPM 표준의 완성 시점이 time to market을 맞추지 못했다는 지적에 대해 자유롭지는 못할 듯 싶다. 하지만, 글로벌 이통사들이 4G 네트웍을 점차 구축해 나가고 많은 솔루션 벤더들이 4G관련 솔루션들을 쏟아내고 있는 지금 All-IP에 기반을 두고 있는 CPM 표준이 가지는 의미는 주목할 만하다. 특히, CPM 표준에서 정의하고 있는 Non-CPM Interworking, Multiple Device지원, Multiple User Preference Profile, Multiple Streaming과 같은 기능은 앞으로 메시징 시장이 All-IP기반으로 진화하면서 과도기적으로 또는 항상적으로 수용해 가야 하는 특징이라고 보여진다. 





2010년 8월 17일 화요일

LTE에서의 IMS Telephony 부가서비스




GSMA IR.92에서 IMS UE IMS TAS가 지원해야 할 부가서비스를 명시하고 있다. 다음은 해당 문서에서 명시하고 있는 부가서비스의 종류와 그 각각에 대해 기술한다.


부가서비스
내용
규격
1
XCAP
부가 서비스를 위한 단말 설정 파라미터 설정
TS24.263
2
Ad-hoc Multi Party Conference
그룹 통화 및 3자 통화
TS24.605
TS24.147
RFC4575
3
Communication Waiting
통화 중 대기
TS24.615
4
Message Waiting Indication(MWI)
부재중 메시지 수신 알림
RFC24.606
RFC3842
5
Originating Identification Restriction(OIR)
발신자 번호 제한
TS24.607
6
Terminating Identification Restriction(TIR)
착신자 번호 제한
TS24.608
7
Communication Diversion(CDIV)
호 전환
TS24.604
8
Communication Barring(CB)
호 금지
TS24.611

1.     XCAP 지원
UE는 부가서비스와의 연동구간(Ut)에서 부가서비스 관련 단말 파라미터를 설정할 수 있도록 XCAP을 지원해야 한다.

2.     Ad-hoc Multi Party Conference
UE는 다자간 통화를 위한 기능을 제공해야 한다. 다자간 통화를 위한 세부기능은 다음과 같다.

       그룹 통화 생성/삭제/관리
       그룹 초대/탈퇴
       그룹 정보 및 이벤트 조회
       발언권 관리
       그룹 정책 관리
       미디어 처리

3.     Communication Waitng
착신자가 통화중인 상태에서 호가 도착한 경우 UE는 이를 착신자에게 알리고, 착신자의 응답을 기다릴 수 있다. 만일 TAS에서 사용자의 상태를 알 수 있는 충분한 정보를 가지고 있다면, 사용자의 설정에 따라 발신자에게 호대기 상태임을 알릴 수 있다.

4.     Messaging Waitng Indication(MWI)
이는 Deferred Message 처리를 위한 서비스로서, UE가 메시지를 착신할 수 없는 상태에 있어 착신되지 못하고 서버에 저장되어 있는 메시지들을 UE가 메시지를 착신할 수 있는 상태로 천이했을 때 전송해주는 기능을 제공한다. 이를 위해 Subscription/Notification 메커니즘을 이용해 UE는 저장되어 있는 각 메시지들에 대한 정보를 받아 올 수 있고, 사용자의 요청에 따라 해당 메시지들을 단말로 착신한다.




5.     Originating Identificaiton Restriction(OIR)
발신자가 익명을 요청할 경우 인증과정을 거쳐 이를 처리할 수 있는 서비스를 제공한다. 발신자가 익명을 요청하더라도  발신자의 실제 주소값은 P-Asserted-Identity 헤더에 설정되어야 하며, 이 값은 trusted network안에서는 항상 존재한다. 착신단말은 발신자가 익명을 요청한 경우, 발신자의 실제 주소값인 P-Asserted-Identity를 착신자에게 노출하지 않아야 한다.


6.     Terminating Identification Restriction(TIR)
착신자가 익명을 요청할 경우 인증과정을 거쳐 이를 처리할 수 있는 서비스를 제공한다. 착신자가 익명을 요청하기 위해서는 SIP INVITE에 대한 응답 전송 시 P-Preferred-Identity에 사용자가 원하는 Nickname을 설정할 수 있다. P-CSCF To헤더의 값을 P-Preferred-Identity의 값으로 설정하고 P-Assereted-Identity To헤더에 있던 실제 주소값으로 설정한다.


7.     Communication Diversion(CDIV)
착신호를 제 3 UE forwarding하는 서비스의 집합을 의미한다. Communication Service는 사용자가 설정한 조건을 기반으로 제 3 UE 또는 사용자에게 해당 호를 Forwarding할 수 있다. 다 음은 호를 Forwarding할 수 있는 조건과 그 동작을 기술한다.


Type
Conditions
Descriptions
Comment
CFU
Unconditional
착신 주소 기준 무조건 착신전환
GSMA requested
CFB
Busy
통화중
GSMA requested
CFNR
No Answer
무응답
GSMA requested
CFNL
Not registered
네트웍 미접속
GSMA requested
CD
N/A
3자에게 호 전환

CFNRc
Not reachable
메시지 전송불가
GSMA requested
CDIVN
After Call forwarding
착신자에게 호전환 통보

Others
Presence status
상태

Media
미디어
GSMA requested
Caller identity or lack of identity
발신주소

Time of the call
시간


* CFU: Communication Forwarding Unconditioinal
* CFB: Communication Forwarding Busy
* CFNR: Communication Forwarding No Reply
* CFNL: Communication Forwarding No Logged-in
* CD: Communication Deflection
* CFNRc: Communication diversion on mobile subscriber not reachable
* CDIVN: Communication Diversion Notification

8.     Communication Barring(CB)
사용자는 User preference 설정을 통해 착신호 또는 발신호를 선택적으로 금지할 수 있다. 이는 크게 Incoming Communication Barring(ICB), Outgoing Communication Barrging(OCB), Anonymous Communication Barring(ACB)로 구분할 수 있고, 각각 수신호, 발신호, 익명호에 대한 호 금지를 의미한다. TAS는 호시도를 위한 SIP INVITE 수신 시, 착신사용자의 User preference를 확인하여 메시지를 착신할 지 여부를 결정한다.

3GPP [TS24.611] CB 서비스를 위해 설정할 수 있는 조건을 다음과 같이 정의하고 있다.

   Presence-status: 착신사용자의 상태값
   Cp:identity: 발신자의 ID

< ?xml version="1.0" encoding="UTF-8"? >
   < ruleset xmlns="urn:ietf:params:xml:ns:common-policy" >
       < rule id="f3g44r1" >
           < conditions >
               < identity >
                   < one id="sip:alice@example.com"/ >
                   < one id="tel:+1-212-555-1234" / >
                   < one id="mailto:bob@example.net" / >
               < /identity >
           < /conditions >
           < actions/ >
           < transformations/ >
       < /rule >
   < /ruleset >




   Anonymous: 익명 발신자
   Cp: validity : 특정 시간대
   Media: 특정 미디어
   Communication-delivered: 호가 전환된 경우
   Roaming: 로밍 호인 경우(P-Visisted-Network-ID, P-Access-Network-Info)
   Ocp:external-list : user id가 외부에 저장되어 있는 경우
   Ocp:other-entity : 다른 조건에서 설정되었던 ID를 제외한 다른 모든 identity.
   International : request-URI tel uri이거나 SIP uri이고, 발신지가 home network이 아닌 경우
   International-exHC: International의 조건을 만족하고, 착신네트웍이 착신자의 home network이 아닌 경우.
   Rule-deactivated: Rule을 비활성화 하기 위해 사용.

사용자는 위의 한 개 또는 그 이상의 조건을 사용하여, 특정 착신호를 금지할 수 있다.


< Red Mouse >



2010년 7월 25일 일요일

스마트 모바일 Biz. 컨퍼런스 요약


날짜: 2010 7 21-22 / 한국 과학 기술원

1.       내용
l       스마트 디바이스 – Smart Phone, Smart Book(Tablet PC), Smart TV
n         Features
-          Networking
-          Personalized(i.e., Self-Customized)
n         Smart Phone
-          과거에는 H/W Phone 구별하는 것이 통상적이었으나, 근래에는 OS 구분함(e.g., Android Phone, iPhone etc)
-          개인용 기기
n         Smart Book
-          Galaxy Tab, Apple iPad, Google Tablet, Qualcomm 미라솔
-          개인용 기기, 가족 기기
-          컨텐츠 소비용(주로 인터넷, 이메일, 독서 용으로 사용)
n         Smart TV
-          Features: Integrated & Interactive
-          Google TV 컨소시엄 : Google, Sony, Logitech, Intel, Dish networks, Best Buy
-          Service Delivery platform 구글이 담당하고, 나머지는 eco-system components.
-          국내에서는 Sony-Google vs SEC vs LGE 구도가 것으로 예상

l       iOS4
n         User Interface, Stability, Data Sync, Fair DRM 측면에서의 일관성 제공
n         새로운 경제적 가치(User Experience) 제공
n         광고 , 게임, 기업, E-book등의 다양한 BM 마련될 있는 기반.
n         HW-SW-Chip-Contents 수직적 통합
n         모바일 시장의 통제력이 기존 이통사에서 단말사업자에게로 이전

l       Application vs Native Application

Web Application
Native Application
H/W platform
독립적 : 사양일 필요 없음
의존적
OS platform
독립적
의존적
-          같은 Android라도 device별로 개발 필요
-          최근 Google 어느 정도 통제의 필요성을 언급함
유지/보수
용이
여러움. 버전별 device 관리
보안위험
낮음
높음
Look & Feel
Low Quality
High Quality: User friendly하고 다양한 기능 구현이 가능. 사용자의 만족도 제고
네트웍
의존적: 네트웍 연결이 반드시 필요
독립적 구동이 가능
             ** Hybrid App: Application 장점(Web OS 독립성과 App Look & Feel) 취함.

n         구글
-          클라우드 컴퓨팅의 강자인 구글의 경우 기반 서비스를 선호
-          안드로이드 기반 TV에서 웹기반 플랫폼을 제공하고 검색 기반의 광고 도입 예상
n         애플
-          독자적인 Ecosystem 가지고 있는 애플의 경우 Native App 선호
-          모바일에서와 마찬가지로 애플 TV에서 Native App기반의 광고 도입 선호(iAd) 예상

l       서비스의 성공요인
n         필수성: 사용자들이 필요로 하는 것인가?, AND/OR
n         중독성: 사용자들의 재미를 느끼고 해당 앱을 실행시킬 욕구를 가지게 하는가?, AND/OR
n         가치: 실생활에 필요한가?, AND/OR
n         H/W활용: H/W 기능의 장점을 활용하고 있는가? , AND/OR
n         마케팅: 사용자들에게 널리 알릴 있는 방법을 확보했는가?

l       소셜 서비스
n         소셜 서비스의 3요소: Media, Relationship, Diffusion

l       모바일 광고
n         사용자들이 모바일 광고에 대한 거부감은 여전히 있으나, 자신에게 득이 된다면 OK
n         사용자의 연령/성별/지역별 타겟 광고가 가능
n         유형
-          행태 기반 광고: 사용자의 행태정보 분석 맞춤형 광고 전송
-          사용자 참여형 광고(e.g., Facebook)
-          검색 기반 광고(e.g., twitter)
-          기반 광고(e.g., iAd)




2.       결론

l        스마트 디바이스는 각 디바이스별 Usage에 따라 마켓 포지셔닝될 것임. , Smart Book의 경우, 기존의 Net book을 대체할 가능성이 있음.
l        스마트 디바이스 그 자체특성이나 사양 보다는OS에 따라 구분되는 경향이 강하며 이는 각 OS에 따라 구축된 나름의 접근방법이구글과 애플의 접근방법의 상이함(e.g., App기반, Web기반)만큼 조금씩 다르기 때문임. 그러나, 결국 종착점(i.e., 광고/컨텐츠/App을 통한 수익창출의 방식)은 같을 것임.
l       스마트 디바이스 기반의 Application 위해서 디바이스에 대한 사용자의 행태와 구축된 Eco-System, OS 제약에 대한 검토가 선행되어야 .