[go: up one dir, main page]

KR20100061295A - 통합 메시징 서비스에서 인터워킹을 위한 세션 제어 방법 및 시스템 - Google Patents

통합 메시징 서비스에서 인터워킹을 위한 세션 제어 방법 및 시스템 Download PDF

Info

Publication number
KR20100061295A
KR20100061295A KR1020090055705A KR20090055705A KR20100061295A KR 20100061295 A KR20100061295 A KR 20100061295A KR 1020090055705 A KR1020090055705 A KR 1020090055705A KR 20090055705 A KR20090055705 A KR 20090055705A KR 20100061295 A KR20100061295 A KR 20100061295A
Authority
KR
South Korea
Prior art keywords
media
interworking
session
cpm
client
Prior art date
Application number
KR1020090055705A
Other languages
English (en)
Inventor
이승용
이경탁
박성진
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to EP09829346.7A priority Critical patent/EP2351391B1/en
Priority to JP2011538550A priority patent/JP5274668B2/ja
Priority to CN200980155456.2A priority patent/CN102301754B/zh
Priority to PCT/KR2009/007047 priority patent/WO2010062139A2/en
Priority to KR1020090117168A priority patent/KR101720989B1/ko
Priority to US12/627,856 priority patent/US8566405B2/en
Publication of KR20100061295A publication Critical patent/KR20100061295A/ko
Priority to US13/970,014 priority patent/US9118616B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1089In-session procedures by adding media; by removing media
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/56Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/20Manipulation of established connections

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명의 제1 방법은, 제1 엔터티가, 상기 제1 엔터티와 제2 엔터티를 포함하는 네트워크를 통하여 송신측 제1 클라이언트와 수신측 제2 클라이언트와의 세션을 제어하는 방법에 있어서, 상기 제1 클라이언트로부터의 특정 미디어의 세션 요청에 대하여, 상기 제2 엔터티로부터 거절의 원인을 포함하는 응답을 수신하여 확인하는 과정과, 상기 거절의 원인이, 상기 제2 엔터티가 상기 특정 미디어를 지원하지 않는 것인 경우 상기 거절된 특정 미디어의 세션을 재요청하는 과정을 포함한다.
Figure P1020090055705
통합 메시징 서비스(Converged IP Messaging), 인터워킹, 인터워킹 수행부

Description

통합 메시징 서비스에서 인터워킹을 위한 세션 제어 방법 및 시스템{METHOD AND SYSTEM FOR CONTROLLING A SESSION FOR INTERWORKING IN Converged IP Messaging SERVICE}
본 발명은 통합 메시징 서비스와 비통합 메시징 서비스 간에 인터워킹을 위한 세션 제어 방법에 관한 것이다. 특히, 본 발명은 통합 메시징 서비스와 비통합 메시징 서비스 간에 세션을 개설하고, 이미 개설된 세션을 변경하는 등의 세션 제어 방법에 관한 것이다.
기존 모바일 환경에서 단말이 단문 메시징 서비스(Short Messaging Service: SMS), 멀티미디어 메시지 서비스(Multimedia Messaging Service: MMS) 등 단발성 메시지를 보내었으나, 사용자들은 점차 유선 환경에서의 인스턴트 메신저를 통하여 대화를 주고 받는데 수월한 메시징 서비스를 기대하고 있다. 이에 인스턴트 메시징 서비스(Instant Messaging Service) 서비스를 SIP(Session Initiation Protocol)/IP(Internet Protocol) 코어(Core) 망을 기반으로 단말 및 네트워크에 도입하였다. 또한 푸시-투-토크(Push To Talk)(예를 들어, 워키토키) 에 대한 고객과 기업들의 요구로 인해 SIP/IP Core 망을 기반으로 하는 PoC(Push to talk over Cellular) 서비스 및 시스템이 개발되었다. 더욱이, 기업, 통신사업 등의 시장이 빠르게 변화함에 따라 사용자들이 자신에게 수신되는 여러 형태의 메시지를 통합 처리하려는 욕구가 증가하고 있다.
이러한 점을 고려하여 최근에 모바일 솔루션 및 서비스의 국제 민간 표준을 제정하는 표준화 단체인 오픈 모바일 얼라이언스(Open Mobile Alliance: OMA)라는 표준 단체에서는 SIP/IP Core망을 통하여 구현되는 통합 메시징(CPM: Converged IP Messaging) 서비스에 대한 표준 기술 개발을 진행하고 있다.
CPM 서비스는 IMS(IP Multimedia Subsytem) 기반의 메시징 서비스로서 기존의 SMS, MMS 등을 IP(Internet Protocol) 기반으로 하여 단일한 서비스 형태로 통합하여 제공하는 것이다. 종래의 메시징 서비스는 제한된 망과 단말기 내에서만 송수신이 가능하지만, CPM 서비스는 단말기의 종류, 미디어의 형태, 네트워크의 종류, 서비스의 형태에 관계없이 IP 기반의 일원화된 메시징 서비스를 제공한다.
이러한 CPM 서비스는 기존의 모든 메시지 유형을 통합 처리할 수 있어야 한다. 따라서 CPM 서비스는 단문메시징 서비스, 멀티미디어 메시징 서비스, 인스턴트 메시징 서비스, PoC 등의 Non-CPM 포맷과 CPM 메시지 포맷 사이에서 상호 변환을 할 필요가 있다. 이처럼 상기 Non-CPM 메시지 포맷과 CPM 메시지 포맷 간의 상호 변환하는 기능을 "인터워킹(Interworking)"이라고 한다.
CPM 서비스는 여러 종류의 Non-CPM 서비스와의 인터워킹을 지원한다. 메시지의 발신자와 수신자가 각각 다른 네트워크 영역에 속해 있다면 각 서비스 시나리오에 따라 인터워킹은 발신측 네트워크에서 수행할 수도 있고 수신측 네트워크에서 수행할 수도 있다. Non-CPM 서비스와의 인터워킹 기능을 제공하기 위해 통합메시징 시스템은 다양한 네트워크 엔터티를 구축해야 한다. 통합메시징 시스템을 구성하는 네트워크 엔터티들의 기능과 상호 간의 관계는 도 1을 통해 설명하기로 한다.
이하에서 CPM 시스템의 구성 요소에 대하여 설명한다.
도 1은 CPM 시스템의 구성 요소를 설명하는 도면이다.
CPM 시스템은 CPM 클라이언트(110), CPM 서버(120), 인터워킹 선택부(130), 인터워킹 수행부(140), SIP/IP 코어망(150), 원격(remote) SIP/IP 코어망(151)을 포함한다. Non-CPM(Non-CPM) 클라이언트(111)와 Non-CPM 서버(160)는 실제로 CPM 시스템의 구성 요소는 아니지만, CPM 시스템의 인터워킹 기능을 설명하기 위해 도시하였다.
CPM 클라이언트(110)는 CPM 서비스 가입자를 말한다. 이러한 CPM 클라이언트(110)는 통합메시지를 생성하여 CPM 서버(120)로 전송하고, 다른 CPM 클라이언트 또는 Non-CPM 클라이언트가 전송한 메시지를 CPM 서버(120)로부터 수신한다. Non-CPM 클라이언트(111)는 Non-CPM 서비스에 가입된 클라이언트로서, 해당 Non-CPM 서버(160)와 메시지를 주고 받는다.
CPM 서버(120)는 CPM 클라이언트(110) 또는 다른 CPM 서버로부터 수신한 메시지를 처리하는데, 상기 메시지 처리를 위해 인터워킹 여부를 판단한다. 즉, CPM 서버(120)는 상기 수신한 메시지에 대해서 Non-CPM 서비스(160)와의 통신을 위해 인터워킹이 필요한지 여부를 판단한다.
예를 들어, CPM 서버(120)는 인터워킹이 필요하다고 판단하면 상기 수신한 메시지를 인터워킹 선택부(130)로 전달한다. 한편, 상기 인터워킹이 필요 없다고 판단하면 수신측 CPM 클라이언트 또는 수신측 CPM 클라이언트가 속한 CPM 서버로 상기 수신한 메시지를 전달한다. 즉, 수신측 CPM 클라이언트가 CPM 서버(120)와 동일한 네트워크 영역에 속한 경우에는 상기 수신측 CPM 클라이언트로 상기 수신한 메시지를 전송하고, 수신측 클라이언트가 CPM 서버(120)와 다른 네트워크 영역에 속해 있다면 상기 다른 네트워크 영역의 CPM 서버로 상기 수신한 메시지를 전송한다. 또한, CPM 서버(120)는 인터워킹을 위해 인터워킹 선택부(130) 또는 인터워킹 실행부(140)로부터 상기 수신한 메시지를 수신 주소의 CPM 클라이언트(111)에게 전달한다.
인터워킹 선택부(130)는 수신측에 CPM 서버(120)로부터 수신한 메시지를 가장 효과적으로 전달할 수 있는 Non-CPM 서버(160)를 선택하고, 선택한 Non-CPM 서버(160)와의 인터워킹을 실질적으로 담당하는 인터워킹 수행부(140)로 상기 수신한 메시지를 전달한다.
인터워킹 수행부(140)는 Non-CPM 서비스와의 직접적인 인터워킹을 제공하는 기능 요소(functional entity)로서, CPM 서비스의 메시지 포맷과 Non-CPM 서비스의 메시지 포맷 사이에서 상호 포맷을 변환하는 동작을 수행한 후 변환된 메시지를 Non-CPM 서버(160)로 전달한다.
SIP/IP 코어망(150)은 세션 개설 프로토콜(Session Initiation Protocol, 이하 SIP)을 기반으로 하는 서비스들의 제어 신호 및 이들 클라이언트 또는 서비스 엔터티들이 생성한 메시지 등을 수신자 또는 다른 엔터티로 전달하는 기능을 수행 한다. 이를 위해서 SIP/IP 코어망(150)은 다른 사업자 영역에 속해 있는 SIP/IP 코어망과도 메시지를 주고 받을 수 있다.
원격(Remote) SIP/IP 코어망(151)은 다른 망 사업자에 의해 제공되고 관리되는 SIP/IP 코어망으로서 그 기능은 상기 SIP/IP 코어망(150)과 동일하다. 도 1에서는 도시되지 않았지만, 원격 SIP/IP 코어망(151)에도 CPM 서비스 및 Non-CPM 서비스를 제공하기 위한 요소장치 및 시스템이 구축될 수 있다.
Non-CPM 서버(160)는 CPM 서비스를 제외한 메시징 서비스를 제공하는 역할을 한다. 이러한 Non-CPM 서버(160)에서 제공되는 메시징 서비스로는 SMS, MMS, 인스턴트 메시징 서비스, PoC 등이 해당된다.
그러면 도 2를 참조하여 인터워킹 동작에 대하여 설명한다.
도 2는 CPM 서비스와 Non-CPM 서비스 간에 인터워킹에 의한 메시지 송수신 동작을 설명하는 도면이다. 특히, 송신측 CPM 클라이언트(110)가 수신측 Non-CPM 클라이언트(111)에게 세션 설정을 요청한 경우의 메시지 송수신 동작을 보여주며, 이때, CPM 클라이언트(110)가 요청하는 어떤 미디어 타입도 임의의 단일 인터워킹 수행부에서 처리될 수 있는 상황을 설명한다.
201단계에서 CPM 클라이언트(110)는 CPM 서버(120)로 세션 요청을 위한 INVITE 메시지를 전송한다. 이때, 상기 INVITE 메시지는 개설하고자 하는 세션에 대한 필요한 정보를 SDP(Session Description Protocol) 형태로 포함한다.
203단계에서 CPM 클라이언트로부터 INVITE 메시지를 수신한 CPM 서버(120)는 수신측 클라이언트가 CPM 서비스 가입자이고 사용 가능한 상태에 있는지 여부를 조 사하여 인터워킹이 필요한지 여부를 판단한다. 여기서 인터워킹이 필요한 경우는 수신측 클라이언트가 Non-CPM 클라이언트인 경우이고, 인터워킹이 필요하지 않은 경우는 수신측 클라이언트가 CPM 클라이언트이면서 현재 사용 가능한 상태이거나, 수신측 클라이언트가 CPM 클라이언트이면서 현재 사용 가능하지 않은 상태를 말한다. 여기서 수신측 클라이언트가 Non-CPM 클라이언트(111)인 경우를 가정한다. 따라서 205단계에서 CPM 서버(120)는 상기 INVITE 메시지를 인터워킹 선택부(130)로 전달한다. 한편, 인터워킹이 필요하지 않은 경우라면 다른 동작이 수행된다. 즉, 상기 수신측 클라이언트가 CPM 서비스 가입자이고 현재 사용 가능한 상태라면 상기 INVITE 메시지를 상기 수신측 CPM 클라이언트에게 전달하여 세션을 개설하고, 수신측 클라이언트가 CPM 서비스 가입자이지만 현재 사용 가능하지 않은 상태라면 사용자의 설정에 따라 상기 INVITE 메시지를 삭제하거나, CPM 서버(120)에 임시 저장하거나, Non-CPM 서비스를 통해 메시지를 전달하기 위해서 인터워킹 선택부(130)로 전달할 수 있다. 그러나 여기서는 상기 인터워킹이 필요하지 않은 경우는 도시되지 않았다.
207단계에서 인터워킹 선택부(130)는 수신측 클라이언트의 프레전스(presence), 프레퍼런스(preference), 상기 INVITE 메시지에 의해 요청되는 미디어 타입, 수신측 클라이언트 가입한 서비스 등을 고려하여 CPM 서비스와 Non-CPM 서비스 간의 인터워킹을 수행하기에 가장 적합한 인터워킹 수행부(140)를 선택하고, 209단계에서 상기 선택된 인터워킹 수행부(140)로 상기 INVITE 메시지를 전달한다. 일 예로 상기 프레전스란 클라이언트가 가입한 서비스의 종류 등의 정보를 말하며, 상기 프레퍼런스란 사용자 설정 등을 말한다.
211단계에서 상기 INVITE 메시지를 수신한 상기 인터워킹 수행부(140)는 상기 INVITE 메시지에 포함되어 세션 개설이 요청된 미디어 타입이 자신이 지원할 수 있는 미디어 타입인지를 판단한다. 상기 요청된 미디어 타입이 상기 인터워킹 수행부(140)에서 지원할 수 있는 미디어 타입인 경우를 가정하면, 상기 인터워킹 수행부(140)는 211단계에서 상기 수신한 INVITE 메시지를 Non-CPM 서비스에 적합한 포맷에 따라 Non-CPM 메시지로 변환한다. 참고로 상기 메시지 변환 방식은 다음과 같다. 인터워킹 수행부(140)에서 지원 가능한 Non-CPM 서비스가 SIMPLE IM, POC 등과 같은 SIP에 기반한 서비스라면 INVITE 내부의 특정 헤더 또는 파라미터 또는 SDP 바디 등을 해당 Non-CPM 메시지 포맷에 적합하도록 변경하고, 지원 가능한 Non-CPM 서비스가 SMS, MMS 등과 같은 SIP에 기반하지 않는 서비스라면 상기 INVITE 메시지를 해당 Non-CPM 서비스의 프로토콜에 적합한 메시지 형태로 변환한다.
한편, 상기 요청된 미디어 타입 모두가 상기 인터워킹 수행부(140)에서 지원할 수 없는 미디어 타입이라면 지원되지 않는 미디어 타입이라는 메시지(예를 들면, "415 Unsupported Media Type")를 인터워킹 선택부(130)에 응답한다. 인터워킹 선택부(130)는 상기 415 Unsupported Media Type을 수신하면 서비스 정책에 따라 CPM 서버(120)를 통하여 송신측 CPM 클라이언트(110)에게 전달하거나 다른 인터워킹 수행부를 선택하여 인터워킹을 재시도할 수 있다. 이때, 요청받은 미디어 타입 중 일부만 지원 가능하다면 지원하지 않는 미디어 타입에 대한 세션 요청은 상기 메시지 변환 과정에서 누락시킨다.
213단계에서 인터워킹 수행부(140)는 상기 변환된 Non-CPM 메시지를 해당 Non-CPM 서버(160)로 전달하고, 상기 Non-CPM 서버(160)는 이를 수신측인 Non-CPM 클라이언트(111)로 전달한다. 217단계에서 및 219단계에서 Non-CPM 클라이언트(111)는 상기 Non-CPM 서버(160)로부터 수신한 Non-CPM 메시지에 대한 응답 메시지를 Non-CPM 서버(160)를 통해 인터워킹 수행부(140)로 전달한다.
221단계에서 인터워킹 수행부(140)는 Non-CPM 서버(160)를 통해 수신한 상기 응답 메시지를 CPM 메시지 포맷에 적합하도록 일 예로서 SIP에 따른 OK 메시지로 변환한 후 223단계에서 인터워킹 선택부(130)로 전달하고, 225단계에서 상기 인터워킹 선택부(130)는 상기 변환된 응답 메시지를 CPM 서버(120)로 전달한다.
227단계에서 CPM 서버(120)는 인터워킹 수행부(140)와 세션 개설이 허락된 미디어 타입을 위한 세션을 개설하고, 229단계에서 송신측 CPM 클라이언트(110)로 상기 201단계의 세션 개설 메시지에 대한 응답인 OK 메시지를 전송한다. 이후, 231단계에서 CPM 클라이언트(110)는 CPM 서버(120)와 상기 세션 개설이 허락된 미디어 타입의 송/수신을 위한 세션을 개설한다.
상기 도 2에서 설명된 종래의 CPM 시스템에서의 인터워킹 동작의 문제점은 다음과 같다.
즉, 상기 211단계에서 설명된 바와 같이 상기 송신측 CPM 클라이언트(110)에 의해서 요청되는 미디어 타입들 중 일부만이 상기 인터워킹 수행부(140)에서 지원되는 경우, 지원되지 않는 미디어 타입에 대해서는 인터워킹이 수행되지 않기 때문에 CPM 서비스가 제공될 수 없다. 이러한 제약은 CPM 서비스의 품질을 저하시키는 요인이 되므로 이러한 제약을 최소화하는 방안이 요구된다.
상술한 문제점을 극복하기 위하여, 본 발명은 CPM 시스템에서 특정 인터워킹 수행부에서 지원되지 않는 미디어 타입에 대해서도 인터워킹을 지원할 수 있는 방법을 제공한다.
또한, 본 발명은 CPM 시스템에서 특정 인터워킹 수행부에서 지원되지 않는 미디어 타입에 대해 다른 인터워킹 수행부를 선택하는 방법을 제공한다.
또한, 본 발명은 CPM 시스템에서 미디어 타입별로 서로 다른 인터워킹 수행부와 세션을 개설하고 이를 제어하는 방법을 제공한다.
또한, 본 발명은 CPM 시스템에서 미디어 타입별로 서로 다른 인터워킹 수행부와 세션이 개설된 경우 새로운 미디어를 상기 개설 세션에 추가하여 상기 세션을 변경하는 방법을 제공한다.
또한, 본 발명은 CPM 시스템에서 미디어 타입별로 서로 다른 인터워킹 수행부와 세션이 개설된 경우 상기 개설된 세션에 포함된 미디어를 삭제하여 상기 세션을 변경하는 방법을 제공한다.
또한, 본 발명은 CPM 시스템에서 미디어 타입별로 서로 다른 인터워킹 수행부와 세션이 개설된 경우 상기 개설된 세션에 포함된 미디어를 삭제하고 새로운 미디어를 추가하여 상기 세션을 변경하는 방법을 제공한다.
본 발명의 제1 방법은, 제1 엔터티가, 상기 제1 엔터티와 제2 엔터티를 포함하는 네트워크를 통하여 송신측 제1 클라이언트와 수신측 제2 클라이언트와의 세션을 제어하는 방법에 있어서, 상기 제1 클라이언트로부터의 특정 미디어의 세션 요청에 대하여, 상기 제2 엔터티로부터 거절의 원인을 포함하는 응답을 수신하여 확인하는 과정과, 상기 거절의 원인이, 상기 제2 엔터티가 상기 특정 미디어를 지원하지 않는 것인 경우 상기 거절된 특정 미디어의 세션을 재요청하는 과정을 포함한다.
본 발명의 제2 방법은, 제2 엔터티가, 상기 제1 엔터티와 제2 엔터티를 포함하는 네트워크를 통하여 송신측 제1 클라이언트와 수신측 제2 클라이언트와의 세션을 제어하는 방법에 있어서, 상기 제1 클라이언트로부터의 특정 미디어의 세션 요청을 거절할 시, 상기 거절의 원인이, 상기 제2 엔터티가 상기 특정 미디어를 지원하지 않는 것인 경우, 상기 제2 엔터티가 상기 특정 미디어를 지원하지 않는다는 내용을 지시하는 거절의 원인을 포함하거나 상기 제2 엔터티가 상기 특정 미디어를 거절하였다는 내용을 지시하는 거절의 주체를 포함하는 응답을 상기 제1 엔터티로 전송하는 과정을 포함한다.
한편, 상기 제1 클라이언트는 통합 메시징 서비스에 가입된 클라이언트이고, 상기 제2 클라이언트는 통합 메시징 서비스에 가입되지 않은 클라이언트이며, 이때, 상기 제1 엔터티는 통합 메시징 서비스 시스템의 서버이고, 상기 제2 엔터티는 상기 통합 메시징 서비스 시스템의 인터워킹 수행부이거나 또는, 상기 제1 엔터티는 통합 메시징 서비스 시스템의 인터워킹 선택부이고, 상기 제2 엔터티는 상기 통 합 메시징 서비스 시스템의 인터워킹 수행부일 수 있다.
본 발명에 따른 효과는 다음과 같다.
본 발명은 송신측 CPM 클라이언트와 수신측 Non-CPM 클라이언트 사이에서 세션을 개설할 뿐만 아니라, 이미 개설된 세션에 대하여 미디어 타입의 종류, 또는 서비스 환경에 따라 상기 개설된 세션을 변경하기 위한 구체적인 절차를 제공한다.
특히, 인터워킹이 필요한 상황에서 CPM 서버가 수신측 클라이언트가 가입한 복수의 Non-CPM 서비스를 동시에 인터워킹 함으로써 CPM 클라이언트 측면에서 하나의 세션으로 주고 받을 수 있는 미디어의 종류가 다양해지고, 수신측 Non-CPM 클라이언트 측면에서는 여러 가지 메시지 서비스를 동시에 이용하여 CPM 클라이언트와 미디어를 교환할 수 있으므로 메시지 서비스에 대한 사용자의 만족도를 높일 수 있다.
이하 본 발명의 바람직한 실시 예들을 첨부한 도면을 참조하여 상세히 설명한다. 도면들 중 동일한 구성 요소들은 가능한 한 어느 곳에서든지 동일한 부호들로 나타내고 있음에 유의해야 한다. 또한, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
본 발명의 설명에 앞서 본 발명의 CPM 시스템에서 적용되는 인터워킹 선택부와 인터워킹 수행부에 대하여 설명한다.
본 발명에서 인터워킹 선택부는 CPM 시스템의 구축 환경에 따라 CPM 서버 또 는 인터워킹 실행부에 포함되거나, 독립적인 엔터티로 구현될 수 있다.
또한, 인터워킹 선택부는 메시지를 처리하는 방식에 따라 프록시(Proxy) 모드로 동작할 수도 있고 백투백 유저 에이전트(Back to Back User Agent: 이하 "B2BUA") 모드로 동작할 수도 있다.
상기 프록시 모드에서 상기 인터워킹 선택부의 주요 동작은 "인터워킹 수행부를 선택"하고, "메시지를 전달"하는 동작 등이다. 상기 메시지 전달이란 CPM 서버로부터 수신한 메시지를 선택한 인터워킹 수행부로 전달하고, 인터워킹 수행부로부터 수신한 응답 메시지를 CPM 서버로 전달하는 동작 등을 말한다. 또한, 상기 수신한 메시지를 전달할 때 수신한 메시지의 특정 헤더 필드 또는 특정 파라미터 등을 변경하는 것이 허용될 수도 있다. 그러나 일반적으로 프록시 모드는 메시지의 바디 부분을 수정하는 행위는 허용되지 않는다. 하지만 시스템 설계에 따라서 프록시 모드로 동작할지라도 메시지의 바디 부분을 수정할 수 있도록 하는 예외적인 경우가 발생할 수도 있기 때문에 본 발명에서는 메시지의 바디 부분을 수정하는 것이 허용되는 경우와 허용되지 않는 경우에 대해서 각각 다른 인터워킹 선택부의 동작을 제안한다. 단, 메시지의 바디 부분의 수정이 허용되는 프록시 모드인 경우 인터워킹 수행부는 개설된 세션상에 위치하지 않으며 따라서 개설된 세션을 통해서 전달되는 미디어는 인터워킹 수행부를 거치지 않고 전달된다.
상기 B2BUA 모드에서 상기 인터워킹 선택부의 주요 동작은 "인터워킹 수행부를 선택"하는 기능 외에 CPM 서버 또는 인터워킹 수행부에 대하여 인터워킹 수행부 또는 CPM 서버의 역할을 수행하는 "유저 에이전트(User Agent: UA)"의 기능을 한 다. 상기 유저 에이전트의 기능은 다음과 같다. 인터워킹 선택부는 CPM 서버로부터 어떤 메시지를 수신하면 그에 대응한 새로운 메시지를 생성하여 CPM 서버로 전송하므로, 인터워킹 선택부는 인터워킹 수행부에 대하여 CPM 서버의 유저 에이전트가 된다. 한편, 인터워킹 선택부는 인터워킹 수행부로부터 어떤 메시지를 수신하면 그에 대응한 새로운 메시지를 생성하여 CPM 서버로 전송하므로, 인터워킹 선택부는 CPM 서버에 대하여 인터워킹 수행부의 유저 에이전트가 된다. 이렇게 B2BUA 모드에서는, 인터워킹 선택부가 유저 에이전트의 기능을 수행하여 세션을 통해 전달되는 미디어의 흐름을 제어할 수 있다. 또한 B2BUA 모드에서, 인터워킹 선택부는 개설된 세션상에 위치하며 따라서 세션을 통해서 전달되는 미디어는 인터워킹 수행부를 거쳐서 전달된다.
한편, CPM 시스템의 구축에 따라 Non-CPM 서비스마다 별도의 인터워킹 수행부를 구비하여 각 인터워킹 수행부가 하나의 지정된 Non-CPM 서비스와의 인터워킹을 담당하거나, 하나의 인터워킹 수행부가 모든 Non-CPM 서비스 또는 복수의 Non-CPM 서비스와의 인터워킹을 담당할 수 있다. 본 명세서에서는 각각의 Non-CPM 서비스에 대해서 개별적인 인터워킹 수행부가 설비된 네트워크 환경을 가정하여 본 발명의 실시예를 설명한다.
먼저, 최초의 세션을 개설하는 실시예의 내용은 아래와 같다.
CPM 클라이언트가 미디어에 대한 세션 요청을 CPM 서버에 전송한다. 상기 CPM 서버는 인터워킹이 필요한 경우, 인터워킹 선택부로 상기 세션 요청을 전달하고, 인터워킹 선택부는 적절한 인터워킹 수행부를 선택하여 상기 세션 요청을 전달 한다. 상기 인터워킹 수행부는 상기 세션 요청의 허락 여부를 결정하여 응답하는데, 이때, 상기 세션 요청을 거절할 경우 상기 거절의 내용을 포함하여 응답한다.
세션 요청이 거절되는 이유 중 수신측 클라이언트의 의사에 의해 거절되는 경우에는 거절된 세션을 다시 요청할 필요가 없다. 다른 인터워킹 수행부가 세션 요청된 미디어를 지원하더라도 상대방 클라이언트가 다시 거절할 것이기 때문이다. 그러나 상기 인터워킹 수행부가 세션 요청된 미디어를 지원하지 않기 때문에 거절되는 경우에는 상기 미디어를 지원하는 다른 인터워킹 수행부에 다시 세션 요청을 하면 세션이 개설될 수 있다.
따라서 상기 인터워킹 수행부가 세션 요청에 대하여 거절의 내용, 즉, 거절의 주체 또는 거절의 원인에 대한 정보를 포함하여 응답하면 상기 거절의 내용에 따라 거절된 세션의 재요청 여부가 판단될 수 있다. 만일 CPM 클라이언트가 복수의 미디어에 대한 세션 요청을 하고 그 중 일부의 미디어가 거절된 경우에는 상기 거절 내용에는 상기 거절된 미디어 정보가 포함된다. 일 실시예로서 상기 세션 재요청 여부의 판단은 CPM 서버 또는 인터워킹 선택부에 의해서 수행된다.
한편, 이미 생성된 세션을 변경하는 실시예들의 내용은 다음과 같다. 세션을 변경하는 예들은 크게 세션에 새로운 미디어를 추가하는 경우, 세션에 포함된 미디어의 삭제하는 경우, 상기 세션에서 기존의 미디어를 삭제하고 새로운 미디어를 추가하거나 기존 미디어의 타입을 변경하는 등의 경우를 생각할 수 있다. 이 경우에는 세션 개설 요청이 아니라 세션 변경 요청을 하게 될 것이다. 인터워킹 수행부는 새롭게 추가가 요청되는 세션에 대해서 거절할 경우에 거절의 원인을 포함하는 응 답을 하게 되며, CPM 서버는 상기 거절의 원인을 보고 어떻게 세션을 변경할지 여부를 결정하게 된다. 이에 대한 구체적인 설명은 후술한다.
상기 본 발명은 <프록시 모드>와 <B2B UA 모드>에서 각각 실시될 수 있으며, 이하에서는 상술한 본 발명의 주요 개념에 바탕하여 본 발명의 실시예들을 설명한다.
본 발명의 제1 실시예는 프록시 모드에서 초기에 복수의 미디어에 대한 세션을 개설하는 내용으로서 도 3 내지 도 5 그리고 도 13에서 설명될 것이다.
본 발명의 제2 실시예는 프록시 모드에서 이미 생성된 세션의 변경 시 새로운 미디어 타입을 추가하는 내용으로서 도 6 및 도 15에서 설명될 것이다.
본 발명의 제3 실시예는 프록시 모드에서 이미 생성된 세션의 변경 시 특정 미디어 타입을 삭제하는 내용으로서 도 7에서 설명될 것이다.
본 발명의 제4 실시예는 프록시 모드에서 이미 생성된 세션의 변경 시 특정 미디어 타입을 변경하는 내용으로 도 8에서 설명될 것이다.
본 발명의 제5 실시예는 B2BUA 모드에서 초기에 복수의 미디어에 대한 세션을 개설하는 내용으로서 도 11 및 도 14에서 설명될 것이다.
본 발명의 제6 실시예는 B2BUA 모드에서 이미 생성된 세션의 변경시 특정 미디어 타입을 변경하는 내용으로 도 12에서 설명될 것이다.
<인터워킹 선택부: 프록시 모드>
A. 메시지 바디 부분의 수정이 허용되지 않는 경우
도 3은 본 발명의 제1 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 세션을 개설하는 메시지 흐름도이다. 도 3의 동작은 다음의 상황을 가정한다.
(1) CPM 클라이언트(110)는 제1 미디어와 제2 미디어를 포함하는 세션을 개설하고자 한다.
(2) 수신측 클라이언트는 Non-CPM 클라이언트이며, 제1 Non-CPM 서비스, 제2 Non-CPM 서비스, 제3 Non-CPM 서비스에 가입되어 있다.
(3) 제1 인터워킹 수행부(141)는 상기 제1 Non-CPM 서비스와 인터워킹을 수행하고, 제2 인터워킹 수행부(142)는 제2 Non-CPM 서비스와 인터워킹을 수행하며, 제3 인터워킹 수행부(143)는 제3 Non-CPM 서비스와 인터워킹을 수행한다.
(4) 상기 제1 Non-CPM 서비스는 상기 제1 미디어는 지원하나 상기 제2 미디어는 지원하지 않는다. 따라서 제1 인터워킹 수행부(141)도 같다.
(5) 상기 제2 Non-CPM 서비스는 상기 제2 미디어는 지원하나 상기 제1 미디어는 지원하지 않는다. 따라서 제2 인터워킹 수행부(142)도 같다.
(6) 상기 제3 Non-CPM 서비스는 상기 제1 미디어와 상기 제2 미디어를 모두 지원하지 않는다. 따라서 제3 인터워킹 수행부(143)도 같다.
한편, 도 3에서는 각각의 인터워킹 수행부로부터 수신측 Non-CPM 클라이언트로 세션 개설 요청이 전달되고 이에 대한 응답을 수신하는 과정은 생략되었다.
301단계에서 CPM 클라이언트(110)는 CPM 서버(120)로 제1 미디어와 제2 미디어를 포함하는 세션 개설 요청 메시지(INVITE)를 전송하면, 303단계에서 CPM 서 버(120)는 세션 개설을 위하여 인터워킹이 필요한지를 판단한다. 도 3에서 수신측 클라이언트는 Non-CPM 클라이언트이므로 인터워킹이 필요하다. 따라서 305단계에서 CPM 서버(120)는 상기 세션 개설 요청메시지를 인터워킹 선택부(130)로 전송한다.
307단계에서 인터워킹 선택부(130)는 수신측 클라이언트의 프레퍼런스(preference), 프레전스(presence), 세션 개설이 요청된 미디어 타입, 수신측 클라이언트가 가입한 서비스, 서비스 정책 등의 정보에 기초하여 세션 개설을 수행하기에 가장 적합한 인터워킹 선택부(130)를 선택한다. 307단계에서 인터워킹 선택부(130)는 제3 인터워킹 수행부(143)를 선택한 것으로 가정하였다.
309단계에서 인터워킹 선택부(130)는 제3 인터워킹 수행부(143)로 세션 개설 요청메시지를 전송한다. 311단계에서 제3 인터워킹 수행부(143)는 상기 제1 미디어 및 제2 미디어를 지원하지 않으므로 상기 세션 개설 요청에 대하여 거절의 응답 메시지를 생성하여 회신하고, 313단계에서 인터워킹 선택부(130)는 상기 수신한 거절의 응답 메시지를 CPM 서버(120)로 전달한다. 여기서 상기 거절의 응답 메시지에는 거절의 내용, 일 예로서, 거절의 원인 또는 거절의 주체, 거절된 미디어 중 적어도 하나 이상의 정보가 포함될 수 있다.
상기 거절의 내용을 포함하는 방법으로서 특정 코드 번호가 이용될 수 있다. 모든 SIP 응답메시지는 특유의 코드번호를 포함하는데, 이러한 코드번호는 응답메시지와 상관하는 SIP 요청메시지의 처리결과 또는 오류 등의 원인 등에 따라 달라질 수 있다. 예를 들어, 세션 개설 요청 또는 미디어 추가 요청 등의 SIP 요청 메시지가 인터워킹 수행부에 의해서 거절된 경우에는 응답메시지는 '488' 코드번호를 포함하게 되고, SIP 요청 메시지가 수신측 클라이언트에 의해서 거절된 경우에는 '606' 코드번호를 포함할 수 있다. 상기 코드 번호는 일 예일 뿐이며, 구체적인 코드번호는 시스템 구현에 따라서 변경이 가능하다. 그러나 코드번호만으로는 CPM 서버(120)가 정확한 판단을 내리지 못하는 경우가 발생할 수 있는데, 복수의 미디어 타입을 지원하는 세션의 개설을 요청한 경우 요청된 미디어 중 일부는 사용자에 의해서 거절되고, 일부는 인터워킹 수행부에 의해서 거절된 경우가 그러한 경우이다. 이런 경우에는 거절된 각각의 미디어 별 구체적인 거절의 내용이 직접적 또는 간접적으로 응답메시지에 명시될 수 있어야 한다. 미디어 별로 거절의 내용을 명시하는 거절의 응답 메시지의 포맷에 대해서는 <표 1> 내지 <표 3>에서 후술하기로 한다.
315단계에서 CPM 서버(120)는 거절의 응답 메시지의 코드 번호로부터 인터워킹 수행부에 의해서 세션 요청이 거절된 것을 알 수 있고, 거절된 세션에 대하여 세션 개설을 재시도하는 것이 허용되는지 여부를 조사한다. 도 3에서는 세션 개설 요청을 재시도하는 것이 허용된다고 가정한다. 따라서 CPM 서버(120)는 317단계에서 세션 개설을 재시도하기 위하여 세션 개설 요청메시지를 인터워킹 선택부(130)로 전송한다.
319단계에서 인터워킹 선택부(130)는 적합한 인터워킹 수행부를 선택한다. 단, 이때 이전의 세션 요청에 대하여 거절의 응답 메시지를 회신한 인터워킹 수행부(즉, 제3 인터워킹 수행부(143))는 선택되지 않는다. 319단계에서 인터워킹 선택부(130)는 제1 인터워킹 수행부(141)를 선택한 것으로 가정한다. 따라서 321단계에서 인터워킹 선택부(130)는 제1 인터워킹 수행부(141)로 세션 개설 요청메시지를 전송한다.
제1 인터워킹 수행부(141)가 제1 미디어를 지원하고, 제2 미디어를 지원하지 않는 것으로 가정하였기 때문에 제1 인터워킹 수행부(141)는 제1 미디어에 대한 세션 개설을 허락할 수 있다. 따라서 323단계에서 제1 인터워킹 수행부(141)는 세션 개설 요청에 대한 허락의 응답 메시지(200 OK)를 생성하여 회신한다. 반면에 제2 미디어는 인터워킹 수행부에 의해서 거절되기 때문에 후술되는 "세션 개설 요청에 대한 부분 허락의 응답 메시지" 방법에 따라, 제1 인터워킹 수행부(141)는 제2 미디어는 인터워킹 수행부에 의해서 거절됨을 알리는 정보를 상기 응답 메시지에 포함한다.
325단계에서 인터워킹 선택부(130)는 수신한 응답 메시지를 CPM 서버(120)로 전달하며, 327단계에서 CPM 서버(120)와 제1 인터워킹 수행부(141) 간에 제1 미디어를 포함하는 세션이 개설된다.
329단계에서 CPM 서버(120)는 제2 미디어가 제1 인터워킹 수행부(141)에 의해서 거절되었기 때문에 거절된 제2 미디어에 대한 세션 개설 요청메시지를 생성하고, 이를 331단계에서 상기 생성한 세션 개설 요청메시지를 인터워킹 선택부(130)로 전송한다. 333단계에서 인터워킹 선택부(130)는 요청받은 세션 개설을 수행하기에 가장 적합한 인터워킹 수행부를 선택한다. 이때에도 이전의 제2 미디어를 포함하는 세션 요청에 대하여 거절의 응답 메시지를 회신한 제1 인터워킹 수행부(141)는 선택되지 않는다.
333단계에서 인터워킹 선택부(130)는 제2 인터워킹 수행부(142)를 선택한 것 으로 가정하였다. 따라서 335단계에서 인터워킹 선택부(130)는 제2 인터워킹 수행부(142)로 세션 개설 요청메시지를 전송한다. 337단계에서 제2 인터워킹 수행부(142)는 세션 개설 요청에 대한 허락의 응답 메시지(200 OK)를 생성하여 회신하면, 339단계에서 인터워킹 선택부(130)는 수신한 응답 메시지를 CPM 서버(120)로 전달한다. 이후, 341단계에서 CPM 서버(120)와 제2 인터워킹 수행부(142) 간에 제2 미디어를 포함하는 세션이 개설된다.
343단계에서 CPM 서버(120)는 상기 301단계에서 수신한 세션 개설 요청에 대한 응답 메시지를 생성하여 CPM 클라이언트(110)로 회신한다. 이때, 상기 응답 메시지는 제1 미디어와 제2 미디어를 포함하는 세션이 모두 허락되었다는 내용을 포함한다. 이후, 345단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간에 제1 미디어와 제2 미디어를 포함하는 세션이 개설된다.
도 13은 본 발명의 제1 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 세션을 개설하는 다른 메시지 흐름도이다.
도 13의 동작을 도 3의 동작과 비교하면 다음과 같다. 도 3에서 CPM 서버(120)는 제1 인터워킹 수행부(141)와 제2 인터워킹 수행부(142)로부터 응답메시지를 모두 수신한 후에 이를 통합하여 CPM 클라이언트(110)로 응답메시지를 전송하였다. 반면, 도 13에서 CPM 서버(120)는 각각의 인터워킹 수행부로부터 수신한 응답메시지들을 개별적으로 처리한다는 차이점이 있다. 즉, 도 13에서 CPM 서버(120)는 최초로 인터워킹을 시도하는 인터워킹 수행부(제1 인터워킹 수행부)로부터 수신 한 응답메시지에 따라서 우선적으로 CPM 클라이언트(110)와 세션을 개설하고 2차적으로 인터워킹을 시도한 인터워킹 수행부(제2 인터워킹 수행부)로부터 수락의 응답메시지를 수신한 경우에는 CPM 서버(120) 와 CPM 클라이언트(110) 사이에 이미 개설된 세션에 제2 인터워킹 수행부에 의해서 추가로 수락된 미디어를 추가하는 과정을 수행한다. 한편, 도 13의 동작은 수신측 클라이언트가 제3 Non-CPM 서비스에 가입되어 있지 않다는 점, 즉, 제1 및 제2 Non-CPM 서비스에만 가입되어 있다는 점을 제외하고는 도 3과 동일한 상황을 가정한 것이다. 따라서 도 13의 동작 중 상기 차이점으로 설명한 부분을 제외한 나머지 동작은 도 3과 동일하다. 이하에서 상세히 설명한다.
1301 단계에서 CPM 클라이언트(110)가 CPM 서버(120)에게 제1 미디어와 제2 미디어를 포함하는 세션 개설 요청 메시지(INVITE)를 전송하면, 1303 단계에서 CPM 서버(120)는 세션 개설을 위하여 인터워킹이 필요한지를 판단한다. 도 13에서 수신측 클라이언트는 Non-CPM 클라이언트이므로 인터워킹이 필요하다. 따라서 1305 단계에서 CPM 서버(120)는 상기 세션 개설 요청메시지를 인터워킹 선택부(130)로 전송한다.
1307 단계에서 인터워킹 선택부(130)는 수신측 클라이언트의 프레퍼런스(preference), 프레전스(presence), 세션 개설이 요청된 미디어 타입, 수신측 클라이언트가 가입한 서비스, 서비스 정책 등의 정보에 기초하여 세션 개설을 수행하기에 가장 적합한 인터워킹 선택부(130)를 선택한다. 1307 단계에서 인터워킹 선택부(130)는 제1 인터워킹 수행부(141)를 선택한 것으로 가정하였다.
1309 단계에서 인터워킹 선택부(130)는 제1 인터워킹 수행부(141)로 세션 개설 요청메시지를 전송한다. 1311 단계에서 제1 인터워킹 수행부(141)는 상기 제1 미디어를 지원하므로 상기 세션 개설 요청에 대하여 응답메시지로서 200 OK를 생성하여 회신하고, 1313 단계에서 인터워킹 선택부(130)는 상기 수신한 응답 메시지를 CPM 서버(120)로 전달한다. 상기 1311 단계에서 제1 인터워킹 수행부(141)은 상기 응답메시지에 제1 미디어는 수신측 사용자에 의해서 수락되었고 제2 미디어는 지원되지 않기 때문에 인터워킹 수행부에 의해서 자동 거절되었다는 내용을 포함시킨다.
1315 단계에서 CPM 서버(120)와 제1 인터워킹 수행부(141) 간에 수락된 제1 미디어에 대한 세션이 개설되고, 1317 단계에서 CPM 서버(120)는 거절된 제2 미디어 타입에 대한 신규 세션 개설 요청을 작성한 후 1319 단계에서 인터워킹 선택부(130)로 전송한다. 1315 단계에서 제1 미디어 세션은 CPM 서버(120)의 동작 방식에 따라서 1317 단계 이후에 개설될 수도 있다.
1321 단계에서 CPM 서버(120)는 1301 단계에서 수신한 세션 개설 요청에 대한 응답메시지로 200 OK를 CPM 클라이언트(110)로 전송한다. 이때, 응답메시지에는 단순히 제1 미디어는 수락되고, 제2 미디어는 거절되었다는 내용이 포함될 수 있다. 한편, 1321 단계에서 응답메시지를 CPM 클라이언트(110)로 전달하는 시점은 CPM 서버(120)의 동작 방식에 따라 달라질 수 있다. 다시 말해서, CPM 서버(120)는 1319 단계에서 전송한 신규 세션 개설 요청에 대한 응답메시지를 수신하기 위해서 일정 시간 동안 대기할 수도 있거나, 또는 인터워킹 선택부(130)로부터 최초로 응 답메시지를 수신한 즉시 CPM 클라이언트(110)로 전송할 수도 있다. 도 13에서는 후자의 경우를 가정하여 도시하였다. 전자의 경우에는 정해진 시간 동안 신규 개설 요청에 대한 응답메시지가 수신되면 CPM 서버(120)는 도 3의 동작과 같이 이들 응답메시지들을 종합한 후 최종적으로 CPM 클라이언트로(110)로 응답메시지를 전송한다. 만약 정해진 시간을 넘어서 신규 세션 개설 요청에 대한 응답메시지가 수신되면 도13에서와 같이 먼저 수신된 응답메시지를 CPM 클라이언트(110)로 전송하여 일단 수락된 미디어에 대해서 세션을 개설하고, 신규 세션 개설 요청에 대한 응답메시지의 내용에 따라서 개설된 세션을 수정하거나 또는 그대로 유지할 수도 있다.
1323 단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간에 제1 미디어 세션이 개설된다.
1325 단계에서 인터워킹 선택부(130)는 수신한 신규 세션 개설 요청에 대해서 세션 개설 요청을 수행하기에 적합한 인터워킹 수행부를 선택하고, 선택한 인터워킹 수행부로 세션 개설 요청을 전송한다. 도13에서는 제2 인터워킹 수행부(142)를 선택한다고 가정한다. 1327단계에서 인터워킹 선택부(130)는 제2 인터워킹 수행부(142)로 세션 개설 요청메시지를 전송한다. 1329 단계에서 제2 인터워킹 수행부(142)는 상기 제2 미디어를 지원하므로 상기 세션 개설 요청에 대하여 응답메시지로서 200 OK를 생성하여 회신하고, 1331 단계에서 인터워킹 선택부(130)는 상기 수신한 응답 메시지를 CPM 서버(120)로 전달한다.
1333 단계에서 CPM 서버(120)와 제2 인터워킹 수행부(142) 간에 제2 미디어 세션이 개설된다.
1335 단계에서 CPM 서버(120)는 CPM 클라이언트(110)로 세션 변경 요청을 전송한다. 여기에서 세션 변경 요청은 CPM 클라이언트(110)와 CPM 서버(120) 간에 개설된 제1 미디어 세션에 제2 미디어를 추가할 것을 요청하는 것이다.
1337 단계에서 CPM 클라이언트(110)는 세션 변경 요청에 대한 수락의 응답메시지로서 200 OK를 CPM 서버(120)로 전송하고 1339 단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간 개설된 세션은 제1 미디어와 제2 미디어를 모두 포함하도록 변경된다.
도 4는 본 발명의 제1 실시예에 따라 프록시 모드에서 인터워킹 수행부의 동작을 설명하는 도면이다. 여기서 인터워킹 수행부는 세션 개설 요청에 대한 응답 메시지를 회신하기 위한 동작을 수행한다.
401단계에서 인터워킹 수행부는 세션 개설 요청이 거절되었는지를 여부를 확인하고, 거절되었다면 403단계를 진행한다. 403단계에서는 세션 개설이 거절되었기 때문에 거절의 응답 메시지를 생성한 후 인터워킹 선택부로 회신한다. 회신된 응답 메시지는 인터워킹 수행부를 거쳐서 CPM 서버로 전송된다. 인터워킹 수행부는 거절의 원인에 따라서 [RFC 3261]에서 정의하는 거절 응답 메시지 생성한다. 401단계에서 세션 개설 요청이 허락되었다면 405단계로 진행한다. 405단계에서는 요청된 모든 미디어에 대해서 세션이 허락되었는지, 일부 미디어에 대해서만 세션이 허락되었는지를 확인한다. 요청된 미디어의 일부분에 대해서 세션이 허락된 경우에는 407단계로 진행한다.
407단계에서는 허락의 응답 메시지(200 OK)를 생성한 후 인터워킹 선택부로 회신한다. 이때, 인터워킹 수행부는 거절된 미디어 타입이 인터워킹 수행부에 의해서 거절되었는지 혹은 수신측 클라이언트에 의해서 거절되었는지를 명시한 정보를 응답 메시지에 포함시킨다. 이러한 방법을 응답 메시지에 표현하는 방법은 뒤에서 설명하기로 한다.
405단계에서 미디어 전부에 대해서 세션이 허락된 경우에는 409단계로 진행하여 허락의 응답 메시지(200 OK)를 생성한 후 인터워킹 선택부로 회신한다.
상기 407단계에서 세션 개설이 요청된 미디어 중에서 일부분이 거절된 경우에 인터워킹 수행부는 거절된 이유를 응답 메시지에 명시한다. 본 발명에서는 미디어에 대한 세션 개설 요청이 거절되는 이유를 두 가지로 구분한다. 첫째는 수신측 클라이언트의 의사표현에 의해서 거절하는 경우이고, 둘째는 인터워킹 수행부가 지원하지 못하는 미디어에 대해서 거절하는 경우이다. 본 발명에서 인터워킹 수행부는 거절된 미디어에 대한 거절의 이유를 응답 메시지에 표현함으로써, 인터워킹 수행부에 의해서 거절된 미디어 타입에 대해서는 세션 개설을 재시도하도록 한다.
본 발명에서는 세션 개설이 거절된 미디어에 대한 거절의 원인 또는 거절의 주체에 대한 정보를 응답 메시지에 포함시키는 방법으로써, 세 가지 Case를 제공한다.
<Case 1>은 <표 1>에서 설명한다.
SIP/2.0 200 OK
From: <sip:cpm_user@example1.com>;tag=a6c85cf
To: <sip:non-cpm-user@example2.com>;tag=1928301774
CSeq: 314159 INVITE
Call-ID: a84b4c76e66710
Contact: <sip:interworking_function@example2.com>
- 중략
Content-Type: application/sdp
Content-Disposition: session

//SDP ANSWER//
v=0
o=-1357924 1357924 IN IP6 5555::1:2:3:4
s=-
c=IN IP6 5555::1:2:3:4
t=0 0
m=audio 3458 RTP/AVP 97 98
a=rtpmap:97 AMR-WB
a=rtpmap:98 telephone-event
- 중략 -
m=video 0 RTP/AVP 98 99
a=rejected-by:network
<Case 1>에서는 세션 개설이 거절된 미디어에 대한 거절 원인 또는 거절 주체의 정보를 표현하는 "rejected-by" SDP Attribute(속성)을 정의한다. 상기 'rejected-by'는 미디어 레벨의 속성으로서 해당 미디어 타입에 대한 세션 개설을 거절한 주체에 대한 식별값을 가진다. 본 발명에서는 "user" 또는 "network"를 속성값으로 예시한다. 실제 구현에 있어서 상기 속성값은 다른 값으로 변경되거나 대체될 수 있다. 속성값 "user"는 수신측 클라이언트에 의해서 거절된 경우를 나타내고, 속성값 "network"는 인터워킹 수행부 또는 수신측 클라이언트의 Non-CPM 서버가 해당 미디어를 지원하지 못한 이유에 의하여 거절된 경우를 표시한다.
<표 1>에서 video의 미디어 라인(m=video 0 RTP/AVP 98 99)에서 포트 번호가 '0'으로 설정되어 있기 때문에 video는 어떤 이유에서든지 거절되었음을 알 수 있다. 그리고 "rejected-by" 속성값이 "network"로 설정되어 있기 때문에 인터워킹 수행부가 지원할 수 없는 미디어 타입이기 때문에 인터워킹 수행부에 의해서 세션 요청이 거절된 것을 확인할 수 있다.
거절된 미디어 타입에 대한 거절의 주체 또는 원인에 대한 정보를 명시하는 인터워킹 수행부의 동작은 세션 개설 요청 외에도 이미 개설된 세션에 대한 미디어 추가 요청에도 동일하게 수행될 수 있다.
<Case 2>는 <표 2>에서 설명한다.
SIP/2.0 200 OK
From: <sip:cpm_user@example1.com>;tag=a6c85cf
To: <sip:non-cpm-user@example2.com>;tag=1928301774
CSeq: 314159 INVITE
Call-ID: a84b4c76e66710
Contact: <sip:interworking_function@example2.com>;audio;video
- 중략
Content-Type: application/sdp
Content-Disposition: session

v=0
o=-1357924 1357924 IN IP6 5555::1:2:3:4
s=-
c=IN IP6 5555::1:2:3:4
t=0 0
m=audio 3458 RTP/AVP 97 98
a=rtpmap:97 AMR-WB
a=rtpmap:98 telephone-event
- 중략
m=video 0 RTP/AVP 98 99
<Case 2>에서 인터워킹 수행부는 자신이 지원하는 미디어 타입들을 응답 메시지에 표현한다. 이를 위해서 인터워킹 수행부는 [RFC 3840] 미디어 특성 태그(media feature tag) 중에서 자신이 지원하는 미디어의 특성 태그를 응답 메시지에 포함시킨다. <표 2>에서 인터워킹 수행부는 오디오(audio) 미디어와 비디오(video) 미디어를 지원하기 때문에 "Contact" 헤더에 audio 태그와 video 태그를 포함시켰다.
상기 <Case 2>에 따라 생성된 응답 메시지가 세션 개설이 거절된 미디어 타입에 해당하는 미디어 태그를 포함하면, 해당 미디어는 수신측 클라이언트에 의해서 거절된 것으로 간주되고 거절된 미디어 타입에 해당하는 미디어 태그를 포함하지 않으면 그 미디어는 인터워킹 수행부에 의해서 거절된 것으로 간주된다.
<Case 3>은 <표 3>에서 설명한다.
SIP/2.0 200 OK
From: <sip:cpm_user@example1.com>;tag=a6c85cf
To: <sip:non-cpm-user@example2.com>;tag=1928301774
CSeq: 314159 INVITE
Call-ID: a84b4c76e66710
Contact: <sip:interworking_function@example2.com>
Content-Type: multipart/mixed; boundary="abcd"

- 중략

//SDP ANSWER//
--abcd
Content-Type: application/sdp
Content-Disposition: session

v=0
o=-1357924 1357924 IN IP6 5555::1:2:3:4
s=-
c=IN IP6 5555::1:2:3:4
t=0 0
m=audio 3458 RTP/AVP 97 98
a=rtpmap:97 AMR-WB
a=rtpmap:98 telephone-event
- 중략
m=video 0 RTP/AVP 98 99
--abcd
//SDP CAPABILITY//
Content-Type: application/sdp
Content-Disposition: capability

v=0
o=carol 28908764872 28908764872 IN IP4 100.3.6.6
s=-
t=0 0
c=IN IP4 192.0.2.4
m=audio 0 RTP/AVP 0 1 3
a=rtpmap:0 PCMU/8000
a=rtpmap:1 1016/8000
a=rtpmap:3 GSM/8000
m=video 0 RTP/AVP 31 34
a=rtpmap:31 H261/90000
a=rtpmap:34 H263/90000
--abcd--
<Case 3>에서 인터워킹 수행부는 지원하는 미디어 정보를 SDP 파라미터로써 응답 메시지에 포함시킨다. SDP 파라미터를 이용하여 SIP UA(User Agent)의 Capability 정보를 전달하는 방법은 [RFC 3264]에 정의되어 있다. 인터워킹 수행부는 SDP 파라미터를 이용하여 자신이 지원하는 미디어 타입에 대한 정보를 전달하기 때문에 응답 메시지는 두 개의 SDP 바디를 포함한다.
하나는 세션 개설 요청에 대한 허락 및 거절을 표현하는 SDP 바디(SDP Answer)이고, 다른 하나는 인터워킹 수행부가 지원하는 미디어 정보를 포함하는 SDP 바디이다. 본 발명에서는 후자를 전자와 구분하기 위해서 후자의 "Content-Disposition" 헤더 값으로 "capability"를 정의한다. 상기 "capability"는 해당 SDP 바디가 SDP Answer가 아니라 SIP UA의 Capability 정보를 표현한 것임을 의미한다.
상기 <표 3>에서는 "Content-Disposition" 헤더 값이 "capability"라고 표시된 SDP 바디 부분이 인터워킹 수행부의 capability를 표현한 것이다. <표 3>에서 인터워킹 수행부의 capability에 대한 SDP 바디는 인터워킹 수행부가 오디오(audio) 미디어와 비디오(video) 미디어를 지원한다는 것과 각 미디어에 대해서 지원 가능한 코덱 정보 등을 표현하고 있다.
상기 <Case 3>에 따라 생성된 응답 메시지에서 인터워킹 수행부가 지원하는 미디어 타입이 거절된 경우에 이는 수신측 클라이언트에 의해서 거절된 것으로 간주되고, 인터워킹 수행부가 지원하지 않는 미디어 타입이 거절된 경우에는 인터워킹 수행부에 의해서 거절된 것으로 간주된다.
도 5는 본 발명의 제1 실시예 중 도 3에서 예시된 내용에 따라서 인터워킹 선택부가 메시지 바디 부분 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 CPM 서버의 동작을 설명하는 도면이다.
종래 기술에서 CPM 서버는 CPM 클라이언트로부터 세션 개설 요청 메시지를 수신하면 인터워킹을 수행해야 하는지를 판단한 후에 인터워킹을 수행해야 한다면 인터워킹 선택부로 세션 개설 요청 메시지를 전송한다. 만약 인터워킹의 필요가 없다면, 수신측 클라이언트 주소로 세션 개설 요청메시지를 전송하고 인터워킹할 필요가 있다면, 인터워킹 선택부를 통해서 해당 인터워킹 수행부로 세션 개설 요청 메시지를 전송한다.
본 발명의 제1 실시예에서 세션 개설 요청 메시지를 처리하기 위한 CPM 서버의 동작은 종래 기술과 동일하다. 그러나 세션 개설 요청 메시지에 대한 응답 메시지를 인터워킹 선택부로부터 수신하는 동작은 다르다. 즉, CPM 서버는 세션이 요청된 미디어 중에서 인터워킹 수행부에 의해서 거절된 미디어가 있다면, 상기 응답 메시지에 포함된 거절 내용에 따라 거절된 미디어에 대해서 세션 개설을 재시도한다.
501단계에서 CPM 서버는 인터워킹 선택부로부터 세션 개설 요청에 대한 응답 메시지를 수신한다. 503단계에서 상기 응답 메시지가 허락의 응답 메시지(200 OK)이면 505단계로 진행하여 인터워킹 선택부와 허락된 미디어를 포함하는 세션을 개설한다. 507단계에서 세션 개설을 요청한 미디어 타입 중에서 인터워킹 수행부의 원인, 즉, 인터워킹 수행부가 지원하지 않는 미디어이기 때문에 거절된 미디어가 있는지를 판단하여 거절된 미디어가 있다면 511단계로 진행하고, 인터워킹 수행부의 원인에 의해 거절된 미디어가 없다면 509단계로 진행한다.
상기 인터워킹 수행부의 원인에 의한 거절이 없는 경우란 세션 개설을 요청한 미디어 타입이 모두 허락된 경우이거나, 일부 미디어가 수신측 클라이언트의 원인에 의하여 거절된 경우에 해당한다. 따라서 509단계에서 CPM 서버는 세션 개설 요청에 대한 응답 메시지를 생성하고 세션 개설을 요청한 CPM 클라이언트로 회신한다.
511단계에서 인터워킹 수행부의 원인에 의해 거절된 미디어 타입에 대해서 다시 세션 개설 요청 메시지(INVITE)를 생성하고, 513단계에서 이를 인터워킹 선택부로 전송하고 다시 501단계로 되돌아가 상기 세션 개설 요청에 대한 응답 메시지를 수신한다.
상기 503단계의 판단 결과 상기 세션 개설 요청이 허락되지 않았다면, 515단계로 진행하여 수신측 클라이언트의 원인으로 거절된 것인지를 판단하여 그렇다면 509단계로 진행하고 그렇지 않으면 517단계로 진행한다.
517단계에서 CPM 서버는 응답 메시지에 포함된 미리 약속된 코드번호를 통해서 세션 개설 요청 거절된 원인을 파악하여 세션 개설 요청의 재시도가 허용되는지 여부를 판단한다. 이때, 세션 개설 요청을 재시도할지 여부는 상기 세션 개설 요청의 거절된 원인이 고려된다. 또한, 세션 개설 요청 재시도가 서비스 정책 등에서 허용되는지 여부, 재시도 횟수가 제한되어 있다면 제한된 횟수를 초과하는지 여부 등이 고려될 수도 있을 것이다. 만약 재시도하는 것이 허용된다면 513단계로 진행하여 거절된 미디어에 대한 세션 개설 요청 메시지를 인터워킹 선택부로 다시 전송하고, 재시도가 허용되지 않는다면 509단계로 진행하여 CPM 클라이언트에게 응답 메시지를 회신한다.
인터워킹을 통해서 CPM 클라이언트와 Non-CPM 클라이언트 간에 세션이 개설된 후에는 CPM 클라이언트의 요청에 의해서 세션을 변경할 수 있어야 한다. 이하에서는 이미 개설된 세션을 변경하는 실시예들에 대하여 설명한다.
세션 변경의 종류는 (1) 생성된 세션에 새로운 미디어를 추가하는 경우로서 이는 도 6의 제2 실시예에서 설명된다. (2) 생성된 세션에 포함된 미디어를 삭제하는 경우로서 이는 도 7의 제3 실시예에서 설명된다. (3) 생성된 세션의 미디어 타입을 변경하는 경우, 즉, 기존의 미디어를 삭제하는 동시에 새로운 미디어를 추가하는 경우로서 이는 도 8의 제4 실시예에서 설명된다.
CPM 클라이언트가 CPM 서버에 세션 변경을 요청할 때는 세션 변경 요청 메시지를 전송하는데, 상기 세 가지 경우에 따라 상기 (1)의 경우에서 상기 세션 변경 요청 메시지는 미디어 추가 요청 메시지로 포맷이 변경될 수 있으며, 상기 (2)의 경우에서는 미디어 삭제 요청 메시지로 포맷이 변경될 수 있다. 상기 (3)의 경우에는 세션 변경 요청 메시지로 포맷이 변경될 수 있다.
도 6은 본 발명의 제2 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 이미 생성된 세션에 새로운 미디어 타입을 추가하는 동작을 설명하는 도면이다. 도 6의 동작에서 가정된 상황은 다음과 같다.
(1) CPM 클라이언트와 CPM 서버 간에 제1 미디어와 제2 미디어를 포함하는 세션이 개설되어 있다.
(2) 상기 제1 미디어를 수신측 클라이언트와 송수신하기 위해서 CPM 서버는 제1 인터워킹 수행부와 제1 미디어를 포함하는 세션을 개설하였다.
(3) 상기 제2 미디어를 수신측 클라이언트와 송수신하기 위해서 CPM 서버는 제2 인터워킹 수행부와 제2 미디어를 포함하는 세션을 개설하였다.
(4) 제1 인터워킹 수행부와 제2 인터워킹 수행부는 제3 미디어를 지원하지 않는다. 또한, 제1 인터워킹 수행부는 제4 미디어를 지원한다.
(5) 제3 인터워킹 수행부는 제3 미디어를 지원하고, 제3 Non-CPM 서비스와의 인터워킹을 수행한다.
(6) 수신측 클라이언트는 제3 미디어를 지원하는 제3 Non-CPM 서비스에 가입되어 있다.
601단계에서 CPM 클라이언트(110)는 CPM 클라이언트(110)와 CPM 서버(120) 간에 개설된 제1 미디어+제2 미디어 세션에 제3 미디어와 제4 미디어를 추가하기 위한 미디어 추가 요청메시지를 전송한다. 상기 미디어 추가 요청메시지는 제1 미디어, 제2 미디어, 제3 미디어, 그리고 제4 미디어에 대한 SDP 파라미터를 포함한다.
603단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간 개설된 제1 미디어+제2 미디어 세션에 연결되는 미디어 세션은 CPM 서버(120)와 제1 인터워킹 수행부(141) 간에 개설된 제1 미디어 세션과, CPM 서버(120)와 제2 인터워킹 수행부(142) 간에 개설된 제2 미디어 세션이다.
603단계에서 CPM 서버(120)는 상기 제1 또는 제2 미디어 세션 중 하나를 선택한다. 603단계에서 CPM 서버(120)는 제1 미디어 세션을 선택하였다고 가정한다. 605단계에서 CPM 서버(120)는 상기 제1 미디어 세션이 연결된 제1 인터워킹 수행부(141)로 미디어 추가 요청메시지(Re-INVITE)를 전송한다. 상기 미디어 추가 요청 메시지는 제1 미디어와 제3 미디어 및 제4 미디어에 대한 SDP 파라미터를 포함한다.
607단계에서 제1 인터워킹 수행부(141)는 미디어 추가 요청메시지에 포함된 제1 미디어와 제4 미디어는 허락하지만 제3 미디어는 지원하지 못하기 때문에 거절한다. 따라서 제1 인터워킹 수행부(141)는 이러한 내용을 포함하는 응답 메시지(200 OK)를 회신하는데, 이때, 제1 인터워킹 수행부(141)는 제3 미디어가 제1 인터워킹 수행부(141)의 원인에 의하여 거절된 내용을 상기 응답 메시지에 포함시킨다. 609단계에서 CPM 서버(120)와 제1 인터워킹 수행부(141) 간에 개설된 세션은 제1 미디어와 제4 미디어를 포함하도록 세션이 변경된다.
611단계에서 CPM 서버(120)는 제1 인터워킹 수행부(141)의 원인에 의하여 거절된 제3 미디어에 대한 미디어 추가 요청을 재시도한다. 즉, CPM 서버(120)는 아직까지 미디어 추가 요청이 시도되지 않은 제2 미디어 세션에 대하여 제3 미디어의 추가 요청을 시도한다. 이를 위해서 CPM 서버(120)는 제2 세션에 제3 미디어의 추가를 요청하는 미디어 추가 요청 메시지(Re-INVITE)를 생성하고, 613단계에서 상기 미디어 추가 요청메시지를 제2 인터워킹 수행부(142)로 전송한다. 상기 미디어 추가 요청메시지에는 제2 미디어와 제3 미디어에 대한 SDP 파라미터를 포함된다.
615단계에서 제2 인터워킹 수행부(142)는 미디어 추가 요청메시지에 포함된 제2 미디어는 종래의 세션에 포함된 미디어이기 때문에 허락하지만 제3 미디어는 지원하지 못하기 때문에 거절한다. 따라서 617단계에서 제2 인터워킹 수행부(142)는 이러한 거절의 내용을 포함하는 응답 메시지(200 OK)를 생성해서 회신한다. 이때, 상기 거절의 내용에는 제3 미디어가 제2 인터워킹 수행부(142)의 원인에 의하여 거절되었음을 나타내는 정보가 포함된다.
617단계에서는 제1 및 제2 인터워킹 수행부(141, 142)에 의해서 거절된 제3 미디어에 대해서 추가 요청할 세션이 더 이상 없기 때문에 CPM 서버(120)는 제3 미디어에 대한 세션 개설 요청메시지를 생성하고, 619단계에서 상기 생성된 세션 개설 요청메시지에 대하여 인터워킹이 필요한지 여부를 판단한다. 인터워킹이 필요하다고 가정하면, 621단계에서 CPM 서버(120)는 상기 세션 개설 요청메시지를 인터워킹 선택부(130) 전송한다.
623단계에서 인터워킹 선택부(130)는 세션 개설 요청메시지를 처리하기에 가장 적합한 인터워킹 수행부를 선택하며, 제3 인터워킹 수행부(143)를 선택한 것으로 가정하면, 625단계에서 세션 개설 요청메시지를 제3 인터워킹 수행부(143)로 전송하고, 627단계에서 제3 인터워킹 수행부(143)는 허락의 응답 메시지를 생성한 후 회신한다. 629단계에서 인터워킹 선택부(130)는 응답 메시지를 CPM 서버(120)로 전달하며, 631단계에서 CPM 서버(120)와 제3 인터워킹 수행부(143) 간에 제3 미디어를 포함하는 세션이 개설된다. 633단계에서 CPM 서버(120)는 601단계에서 수신한 미디어 추가 요청 메시지에 대한 응답 메시지를 생성한 후 CPM 클라이언트(110)로 회신한다. 635단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간의 종래 세션은 제1 미디어, 제2 미디어, 제3 미디어, 제4 미디어를 포함하도록 변경된다.
상기 과정들은 상기 603단계에서 CPM 서버(120)가 복수의 인터워킹 수행부와 미디어 세션을 개설한 경우에, 반복적으로 임의의 한 인터워킹 수행부에 대해서만 미디어 추가 요청 작업을 수행한 결과를 나타낸 것이다. 그러나 CPM 서버(120)의 동작에 따라서 CPM 서버(120)와 미디어 세션이 개설된 각각의 인터워킹 수행부로 동시에 미디어 추가 요청을 전송할 수도 있다. 그러나 이런 경우는 동일한 미디어에 대한 추가 요청이 서로 다른 인터워킹 수행부에 의해서 중복적으로 허락되는 경우가 발생할 수 있으므로 CPM 서버(120)는 수신된 모든 응답메시지를 확인하여 동일한 미디어가 다른 인터워킹 수행부에 대하여 중복적으로 추가되지 않도록 하여야 한다.
따라서 미디어가 중복되어 추가되는 것을 방지하기 위한 방안으로써 CPM 서버(120)는 미디어 추가를 요청한 모든 인터워킹 수행부로부터의 응답메시지를 수신할 때까지 대기하여 동일한 미디어가 서로 다른 인터워킹 수행부에 중복되어 추가되지 않도록 할 수 있다. 또는 하나의 인터워킹 수행부로부터 먼저 수신한 OK 응답메시지를 처리하고, 다른 인터워킹 수행부로부터 나중에 수신한 OK 응답메시지에 의해서 미디어가 중복적으로 추가된 경우에는 나중에 수신한 응답메시지에 대해서는 상황에 따라 세션 종료 요청메시지(BYE) 또는 미디어 삭제 요청메시지(Re-INVITE)를 생성하여 해당 인터워킹 수행부로 전송함으로써 해당 미디어의 세션이 중복되어 개설되는 것을 방지할 수 있다.
한편, 도 15는 본 발명의 제2 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 이미 생성된 세션에 새로운 미디어 타입을 추가하는 동작을 설명하는 도면으로서, CPM 서버가 관련된 모든 인터워킹 수행부로 동시에 미디어 추가 요청을 시도한다는 점에서 도 6과 차별된다.
도 15의 동작에서 가정된 상황은 다음을 제외하고는 도 6에서 가정된 상황과 동일하다.
(1) 제1 인터워킹 수행부와 제2 인터워킹 수행부는 제3 미디어를 지원하지 않는다.
(2) 제1 인터워킹 수행부와 제2 인터워킹 수행부는 제4 미디어를 지원한다.
1501단계에서 CPM 클라이언트(110)는 CPM 클라이언트(110)와 CPM 서버(120) 간에 개설된 제1 미디어+제2 미디어 세션에 제3 미디어와 제4 미디어를 추가하기 위한 요청메시지를 전송한다. 상기 요청메시지는 제1 미디어, 제2 미디어, 제3 미디어, 그리고 제4 미디어에 대한 SDP 파라미터를 포함한다.
1503단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간 개설된 제1 미디어+제2 미디어 세션에 연결되는 미디어 세션은 CPM 서버(120)와 제1 인터워킹 수행부(141) 간에 개설된 제1 미디어 세션과, CPM 서버(120)와 제2 인터워킹 수행부(142) 간에 개설된 제2 미디어 세션이다.
1503단계에서 CPM 서버(120)는 상기 제1 미디어 세션이 연결된 제1 인터워킹 수행부(141)로 미디어 추가 요청메시지(Re-INVITE)를 전송한다. 상기 미디어 추가 요청 메시지는 제1 미디어와 제3 미디어 및 제4 미디어에 대한 SDP 파라미터를 포함한다.
1505단계에서 CPM 서버(120)는 상기 제2 미디어 세션이 연결된 제2 인터워킹 수행부(142)로 미디어 추가 요청메시지(Re-INVITE)를 전송한다. 상기 미디어 추가 요청 메시지는 제2 미디어와 제3 미디어 및 제4 미디어에 대한 SDP 파라미터를 포함한다.
1507단계에서 제1 인터워킹 수행부(141)는 미디어 추가 요청메시지에 포함된 제1 미디어와 제4 미디어는 허락하지만 제3 미디어는 지원하지 못하기 때문에 거절한다. 따라서 제1 인터워킹 수행부(141)는 이러한 내용을 포함하는 응답 메시지(200 OK)를 회신하는데, 이때, 제1 인터워킹 수행부(141)는 제3 미디어가 제1 인터워킹 수행부(141)의 원인에 의하여 거절된 내용을 상기 응답 메시지에 포함시킨다. 1509단계에서 CPM 서버(120)와 제1 인터워킹 수행부(141) 간에 개설된 세션은 제1 미디어와 제4 미디어를 포함하도록 세션이 변경된다.
1511단계에서 제2 인터워킹 수행부(142)는 미디어 추가 요청메시지에 포함된 제2 미디어와 제4 미디어는 허락하지만 제3 미디어는 지원하지 못하기 때문에 거절한다. 따라서 제2 인터워킹 수행부(142)는 이러한 내용을 포함하는 응답 메시지(200 OK)를 회신하는데, 이때, 제2 인터워킹 수행부(142)는 제3 미디어가 제2 인터워킹 수행부(142)의 원인에 의하여 거절된 내용을 상기 응답 메시지에 포함시킨다. 1513단계에서 CPM 서버(120)와 제2 인터워킹 수행부(142) 간에 개설된 세션은 제1 미디어와 제4 미디어를 포함하도록 세션이 변경된다.
상기 과정들을 수행한 결과에 따르면, 상기 제4 미디어는 제1 인터워킹 수행부(141)와 제2 인터워킹 수행부(142)에 대하여 중복해서 추가되었다. 따라서 중복 추가된 상기 제4 미디어를 제거하기 위하여 CPM 서버(120)는 나중에 추가된 제4 미디어에 대한 삭제를 요청하는 미디어 삭제 요청메시지(Re-INVITE)를 제2 인터워킹 수행부(142)로 전송한다.
1517단계에서 제2 인터워킹 수행부(142)가 상기 미디어 삭제 요청메시지에 대하여 수락의 응답메시지를 CPM 서버(120)로 전송하면 1519단계에서 CPM 서버(120)와 제2 인터워킹 수행부(142) 간에 개설된 세션은 상기 제4 미디어가 삭제되고, 제2 미디어만 포함하도록 변경된다.
이후의 단계에 대해서는 도 6에서 이미 설명되었기 때문에 설명을 생략한다.
다만, 상기 도 15에서 설명된 CPM서버(141)의 동작은 구현에 따라서 조금씩 달라질 수 있다. 예를 들어, 도 15에서 CPM 서버(141)는 제1 인터워킹 수행부(141) 와 제2 인터워킹 수행부(142)로부터 응답메시지를 수신하지만, 서버의 구현 방식 또는 설정에 따라서 CPM 서버(120)는 제1 인터워킹 수행부(141)로부터 OK 응답메시지를 수신한 후 제2 인터워킹 수행부(142)로부터 응답메시지를 수신하기 전이라면 SIP UPDATE 메시지 또는 SIP CANCEL 메시지를 제2 인터워킹 수행부(142)로 전송할 수도 있다.
상기 SIP CANCEL 메시지는 추가하고자 하는 미디어가 제1 인터워킹 수행부(141)에 의해서 모두 수락된 경우에 전송되는데, 이 메시지의 목적은 제2 인터워킹 수행부(142)로 전송한 미디어 추가 요청메시지를 취소시키는 데 있다.
한편, 상기 SIP UPDATE 메시지는 제1 인터워킹 수행부(141)로 추가 요청한 미디어 중 일부만 수락되고 다른 일부는 거절된 경우에 이용될 수 있으며, 이 메시지의 목적은, 제2 인터워킹 수행부(142)로 전송된 미디어 추가 요청메시지로부터 제1 인터워킹 수행부(141)에서 수락된 미디어를 삭제하는데 있다.
도 7은 본 발명의 제3 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 이미 생성된 세션의 변경 시 특정 미디어 타입을 삭제하는 내용을 설명하는 도면이다. 도 7은 도 6의 과정에 따라서 제3 미디어와 제4 미디어가 추가된 상황에서 이들 미디어를 다시 삭제하는 상황을 가정한 것이다.
701단계에서 CPM 클라이언트(110)는 CPM 클라이언트(110)와 CPM 서버(120) 간에 개설된 세션에서 제3 미디어와 제4 미디어의 삭제를 요청하는 메시지를 CPM 서버(120)로 전송한다. 이때, 요청메시지는 제1 미디어와 제2 미디어에 대한 SDP 파라미터를 포함한다.
703단계에서 CPM 서버(120)는 미디어 삭제를 요청할 대상 세션을 선택한다. 즉, 제3 미디어를 삭제하기 위해서는 CPM 서버(120)와 제3 인터워킹 수행부(143)간에 개설된 제3 미디어 세션을 선택하고, 제4 미디어를 삭제하기 위해서는 CPM 서버(120)와 제1 인터워킹 수행부(141) 간에 개설된 제1 미디어+제4 미디어 세션을 선택한다.
705단계에서 CPM 서버(120)는 상기 선택된 제1 미디어+제4 미디어 세션에 대해서 제4 미디어 삭제를 요청하는 메시지를 생성한 후 제1인터워킹 수행부로 전송한다. 707단계에서 CPM 서버(120)는 상기 선택된 제3 미디어 세션에 대해서 제3 미디어 삭제를 요청하는 메시지를 생성해야 하지만, 제3 미디어 세션은 제3 미디어 이외에 다른 미디어를 포함하지 않기 때문에 CPM 서버(120)는 세션 종료 메시지(BYE)를 생성한 후 제3 인터워킹 수행부(143)로 전송한다.
709단계에서 제1 인터워킹 수행부(141)는 제4 미디어 삭제 요청에 대한 허락의 응답 메시지를 생성한 후 CPM 서버(120)로 회신한다. 711단계에서 CPM 서버(120)와 제1 인터워킹 수행부(141) 간에 개설된 제1 미디어+제4 미디어 세션으로부터 제4 미디어가 제거된다. 713단계에서 제3 인터워킹 수행부(143)는 상기 707단계의 세션 종료 요청에 대한 허락의 응답 메시지를 생성한 후 CPM 서버(120)로 회신한다. 715단계에서 CPM 서버(120)와 제3 인터워킹 수행부(143) 간에 개설된 제3 미디어 세션이 삭제된다.
717단계에서 CPM 서버(120)는 701단계에서 수신한 미디어 삭제 요청에 대한 응답 메시지를 생성하여 CPM 클라이언트(110)로 전송한다. 719단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간에 개설된 제1 미디어+제2 미디어+제3 미디어+제4 미디어 세션으로부터 제3 미디어와 제4 미디어가 삭제된다.
도 8은 본 발명의 제4 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 이미 생성된 세션의 변경 시 새로운 미디어 타입 추가하는 동시에 세션으로부터 기존 미디어 타입을 삭제하는 동작을 하는 내용을 설명하는 도면이다. 즉, 도 8에서는 특정 미디어 타입을 변경하는 동작이다. 도 8은 도 3에 따라 개설된 세션에 제3 미디어와 제4 미디어를 추가하고 제2 미디어를 삭제하는 과정을 나타낸다.
801단계에서 CPM 클라이언트(110)는 CPM 클라이언트(110)와 CPM 서버(120) 간에 개설된 세션에 제3 미디어와 제4 미디어를 추가하고, 제2 미디어를 삭제할 것을 요청하는 세션 변경 요청 메시지를 CPM 서버(120)로 전송한다. 이때, 상기 세션 변경 요청 메시지는 제1 미디어와 제3 미디어와 제4 미디어에 대한 SDP 파라미터를 포함한다.
803단계에서 CPM 서버(120)는 미디어 삭제를 요청할 대상 세션을 선택한다. 즉, 제2 미디어의 삭제를 위해서 CPM 서버(120)와 제2 인터워킹 수행부(142) 간에 개설된 제2 미디어 세션을 선택한다. 805단계에서 CPM 서버(120)는 선택한 제2 미디어 세션에 대해서 제3 미디어와 제4 미디어를 추가하고 제2 미디어를 삭제하는 세션 변경 요청 메시지를 생성하고, 이를 제2 인터워킹 수행부(142)로 전송한다. 이때, 세션 변경 요청 메시지는 제3 미디어와 제4 미디어에 대한 SDP 파라미터를 포함한다.
807단계에서 제2 인터워킹 수행부(142)는 제3 미디어와 제4 미디어를 지원하지 않기 때문에 거절의 응답 메시지를 회신한다. 809단계에서 CPM 서버(120)는 제2 미디어 삭제 요청 메시지를 다시 생성하여 제2 인터워킹 수행부(142)로 전송할 수 있다. 그런데 이때, 제2 미디어 세션은 삭제 대상인 제2 미디어를 제외한 다른 미디어를 포함하지 않기 때문에 CPM 서버(120)는 삭제 요청 메시지 대신 세션 종료 메시지(BYE)를 제2 인터워킹 수행부(142)로 전송한다. 811단계에서 제2 인터워킹 수행부(142)는 상기 세션 종료 요청 메시지에 대해 허락의 응답 메시지를 회신한다. 이후, 813단계에서 CPM 서버(120)와 제2 인터워킹 수행부(142) 간의 제2 미디어 세션이 해제된다.
815단계에서 CPM 서버(120)는 제3 미디어와 제4 미디어가 제2 인터워킹 수행부(142)의 원인에 의하여 세션 추가가 거절되었기 때문에, 미디어 추가 요청을 하지 않았던 제1 미디어 세션에 게 제3 미디어와 제4 미디어의 미디어 추가 요청메시지를 생성하고 817단계에서 이를 제1 인터워킹 수행부(141)로 전송한다. 이때, 상기 미디어 추가 요청 메시지는 제1 미디어와 제3 미디어와 제4 미디어에 대한 SDP 파라미터를 포함한다.
819단계에서 제1 인터워킹 수행부(141)는 제1 미디어와 제4 미디어를 지원하는 반면에 제3 미디어를 지원하지 않기 때문에, 제1 미디어와 제4 미디어는 허락하지만 제3 미디어는 거절한다. 따라서 제1 인터워킹 수행부(141)는 이러한 거절의 내용을 포함하는 응답 메시지를 회신한다. 즉, 제1 인터워킹 수행부(141)는 제3 미디어가 제1 인터워킹 수행부(141)의 원인에 의하여 거절된 것임을 상기 응답 메시지에 포함시킨다. 제1 미디어와 제4 미디어가 허락되었기 때문에 821단계에서 제1 미디어 세션은 제1 미디어와 제4 미디어를 포함하도록 변경된다.
823단계에서 CPM 서버(120)는 제1 또는 제2 인터워킹 수행부(141, 142)의 원인에 의하여 거절된 제3 미디어에 대한 추가 요청을 재시도한다. 하지만, 이전에 이미 생성되어 있는 미디어 세션들에 대해 미디어 추가 요청을 시도한 바 있기 때문에, CPM 서버(120)는 제3 미디어에 대하여 미디어 추가 요청 대신 세션 개설 요청메시지를 생성한다. 이후, 825단계에서 생성된 세션 개설 요청메시지에 대해서 인터워킹이 필요한지를 판단한다. 도 8에서는 인터워킹을 수행하는 것으로 가정한다.
827단계에서 제3 미디어에 대한 세션 개설 요청메시지를 인터워킹 선택부(130)로 전송하고, 829단계에서 인터워킹 선택부(130)는 세션 개설에 가장 적합한 인터워킹 선택부(130)를 선택한다. 여기서는 제3 미디어를 지원하는 제3 인터워킹 수행부(143)를 선택한 것으로 가정한다. 이후, 831단계에서 인터워킹 선택부(130)는 제3 인터워킹 수행부(143)로 세션 개설 요청메시지를 전송하고, 833단계에서 제3 인터워킹 수행부(143)는 세션 개설 요청에 대한 허락의 응답 메시지를 생성하여 회신한다. 835단계에서 인터워킹 선택부(130)는 응답 메시지를 CPM 서버(120)로 전달하면, 837단계에서 CPM 서버(120)와 제3 인터워킹 수행부(143) 간에 제3 미디어 세션이 개설된다.
839단계에서 CPM 서버(120)는 801단계에서 수신한 세션 변경 요청 메시지(제3, 제4 미디어 추가, 제2 미디어 삭제)에 대한 응답 메시지를 생성한 후 CPM 클라이언트(110)로 회신한다. 이때, 상기 응답 메시지는 CPM 클라이언트의 모든 요청이 허락되었다는 내용을 포함한다. 841단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간 세션은 제1 미디어, 제3 미디어, 제4 미디어를 포함하도록 변경된다.
이하에서는 본 발명의 제2 내지 제4 실시예에서 CPM 서버의 동작을 설명한다. 도 9에서는 CPM 서버가 CPM 클라이언트로부터 세션 변경 요청 메시지를 수신한 경우의 동작을 설명하고, 도 10에서는 CPM 서버가 인터워킹 수행부로부터 세션 변경 요청에 대한 응답 메시지를 수신한 경우의 동작을 설명한다.
도 9는 본 발명의 제2 내지 제4 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 세션 변경 요청을 수신한 CPM 서버의 동작을 설명하는 도면이다.
901단계에서 CPM 서버는 CPM 클라이언트로부터 세션 변경 요청메시지(Re-INVITE)를 수신한다. 상기 세션 변경 요청 메시지는 변경 대상 세션이 CPM 클라이언트와 CPM 서버 간에 개설된 세션이라는 정보를 포함한다. 903단계에서는 수신측 클라이언트에 매핑되는 세션들 중에서 세션 변경을 요청할 미디어 세션을 선택한다. 이때, 변경을 요청할 미디어 세션이 여러 개인 경우에는 여러 개의 미디어 세션을 동시에 선택한다. 예를 들어, 세션 변경 요청이 여러 미디어 타입의 미디어를 삭제 또는 미디어 타입의 변경을 요청하는 경우이고, 요청된 미디어들이 하나의 미디어 세션에 모두 포함되지 않는다면 이들 미디어를 포함하는 각각의 미디어 세션들이 모두 선택된다.
한편, 미디어 세션을 선택 시 CPM 서버는 아래와 같이 미디어 세션을 선택할 수 있다.
CPM 클라이언트로부터의 세션 변경 요청이 미디어 추가 요청이라면, CPM 서버는 세션 개설 시 인터워킹 수행부로부터 회신된 응답 메시지에 포함된 내용을 저장하였다가 활용할 수 있다. 즉, 인터워킹 수행부로부터의 응답 메시지가 상술한 <표 2> 또는 <표 3>과 같이 해당 인터워킹 수행부가 지원하는 미디어 타입의 정보를 포함하는 경우, CPM 서버는 해당 미디어 타입의 정보를 저장하였다가 상기 미디어 추가 요청 메시지에서 요청된 미디어가 해당 인터워킹 수행부에서 지원되는지 여부를 판단하고, 상기 요청된 미디어를 추가할 대상 미디어 세션을 선택하는데 이용할 수 있다. 세션 변경 요청이 특정 미디어에 대한 미디어 삭제 요청이거나 특정 미디어를 다른 미디어로 변경하는 요청이라면, CPM 서버는 현재의 미디어 세션에 어떤 미디어가 포함되었는지 알 수 있기 때문에 상기 미디어 세션을 바로 선택할 수 있다.
905단계에서는 903단계에서 선택한 미디어 세션에 적합한 형태에 맞게 세션 변경 요청메시지를 생성하고, 이를 해당 미디어 세션에 관여하는 인터워킹 수행부로 전송한다. 한편, 변경할 미디어 세션이 여러 개가 선택된 경우에는 각각의 미디어 세션에 대하여 변경 요청 메시지를 생성하고 해당 인터워킹 수행부로 전송한다.
만일 세션 변경 요청이 미디어 삭제 요청이고, 선택한 미디어 세션에 상기 삭제 요청된 미디어 외에 다른 미디어가 포함되어 있다면, CPM 서버는 미디어 삭제 요청 메시지(Re-INVITE)를 생성하여 해당 인터워킹 수행부로 전송한다. 반면, 선택한 미디어 세션에 삭제 요청된 미디어 이외의 다른 미디어가 포함되지 않는다면 상기 선택한 미디어 세션에 대한 종료 메시지(BYE)를 생성하여 해당 인터워킹 수행부로 전송한다.
도 10은 본 발명의 제2 내지 제4 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 인터워킹 수행부로부터 응답 메시지를 수신한 CPM 서버의 동작을 설명하는 도면이다. 한편, 도 10에서 세션 변경 요청 중 미디어 추가 요청은 수신측 클라이언트 및 인터워킹 수행부의 원인으로 거절될 수 있으나, 미디어 삭제 요청 및 미디어 타입의 변경 요청은 수신측 클라이언트의 원인에 의해서만 거절 가능한 것으로 가정한다.
1001단계에서 인터워킹 선택부(130)로부터 세션 변경 요청에 대한 응답 메시지를 수신하고, 1003단계에서 상기 응답 메시지가 미디어 추가 요청을 포함하는 세션 변경 요청에 대한 응답이면, 1005단계로 진행하다. 상기 "미디어 추가 요청을 포함하는 세션 변경 요청"이란 새로운 미디어의 추가만을 요청하는 경우 또는 미디어 타입의 변경을 요청하는 경우를 말한다. 1005단계에서 상기 응답이 허락의 응답 메시지(200 OK)이면 1007단계로 진행하여 미디어가 추가되도록 해당 미디어 세션을 변경한다. 반면, 상기 응답이 허락의 응답 메시지가 아니라면 1025단계로 진행한다.
1009단계에서는 추가 요청된 미디어 중에서 인터워킹 수행부의 원인에 의하여 거절된 미디어가 있다면 1011단계로 진행하고 그렇지 않으면 1023단계로 진행하여 CPM 클라이언트의 세션 변경 요청에 대응하는 응답 메시지를 생성하고 이를 CPM 클라이언트에게 회신한다.
1011단계에서는 CPM 서버(120)와 연결된 미디어 세션들 중에서 미디어 세션의 변경 요청이 되지 않은 세션이 있다면 1013단계로 진행한다. 1013단계에서는 아직 변경 요청되지 않은 미디어 세션들 중에서 임의의 한 세션을 선택하고, 선택한 미디어 세션에 적합한 형태로 거절된 미디어에 대한 미디어 추가 요청 메시지를 생성하고, 1015단계에서 상기 선택된 인터워킹 수행부로 전송한다. 이후, 상기 전송된 미디어 추가 요청 메시지에 대한 응답 메시지를 처리하기 위해서 다시 1001단계로 되돌아 간다.
상기 1011단계에서 미디어 세션의 변경 요청이 되지 않은 세션이 없다면 1029단계로 진행한다. 1029단계에서 CPM 서버(120)는 인터워킹 수행부의 원인에 의하여 거절된 미디어에 관한 세션 개설 요청메시지(INVITE)를 생성한다. 1031단계에서는 상기 생성한 세션 개설 요청메시지에 대해 인터워킹이 필요한지 판단하고, 필요하다면 1033단계로 진행하여 세션 개설 요청메시지를 인터워킹 선택부(130)로 전송한다. 인터워킹이 필요하지 않다면 1035단계로 진행한다.
상기 인터워킹이 필요하지 않은 경우란 수신측 클라이언트가 CPM 클라이언트인 경우이기 때문에 세션 개설 요청메시지를 수신측 클라이언트의 주소로 전송한다. 이 경우, 세션 개설 요청 메시지는 수신측 클라이언트가 CPM 서버(120)와 동일한 네트워크 영역에 있다면 수신측 CPM 클라이언트(110)로 전송되고, 다른 네트워크 영역에 있다면 해당 네트워크에 속한 CPM 서버(120)로 전송된다. 이후, 세션 개설 요청에 대한 응답 메시지를 수신하면 응답 메시지를 처리하기 위하여 1001단계로 되돌아간다.
한편, 1003단계에서 수신한 응답 메시지가 미디어 추가 요청을 포함하는 세션 변경 요청에 대한 응답 메시지가 아닌 경우, 즉, 미디어 삭제 요청에 대한 응답 메시지인 경우 1017단계로 진행한다. 1017단계에서는 상기 수신한 응답 메시지가 허락의 응답 메시지(200 OK)인 경우, 즉, 세션 변경 요청이 허락된 경우에는 1019단계를 진행하여 상기 허락된 내용, 즉, 미디어 삭제가 반영되도록 상기 미디어 삭제의 대상이 되는 미디어 세션을 변경한다. 한편, 상기 수신한 응답 메시지가 거절의 응답 메시지라면 1021단계로 진행하여 종래의 세션을 그대로 유지하고, 1023단계에서 CPM 클라이언트(110)로부터의 세션 변경 요청에 대한 응답 메시지를 생성하고 이를 CPM 클라이언트(110)로 회신한다.
한편, 상기 1005단계에서 수신한 응답 메시지가 거절의 응답 메시지라면 1025단계로 진행한다. 1025단계에서는 상기 거절의 응답이 인터워킹 수행부의 원인에 의한 것이 아니라면 세션 변경 요청을 다시 할 필요가 없으므로 1021단계로 진행하여 종래의 세션을 그대로 유지한다. 만일 상기 거절이 인터워킹 수행부의 원인에 의한 것이라면 1026단계로 진행한다. 1026단계에서는 상기 거절이 미디어 추가 요청에 대한 거절인지 또는 미디어 타입 변경에 대한 거절인지를 판단한다. 미디어 추가 요청에 대한 거절이라면 1011단계 이하로 진행하여 미디어 추가 요청 메시지 또는 미디어 개설 메시지를 작성한다.
한편, 미디어 타입 변경 요청에 대한 거절이라면 1011단계와 1027단계의 동작이 동시에 수행된다. 즉, 상기 미디어 타입 변경 요청은 새로운 미디어를 추가하고 종전의 미디어를 삭제하는 요청인데, 상기 새롭게 추가 요청된 미디어가 인터워킹 수행부가 지원하지 않으므로 CPM 서버(120)는 미디어 추가 요청과 미디어 삭제 요청을 개별적으로 요청해야 한다. 따라서 1027단계에서는 미디어 삭제를 요청하는 메시지를 생성하여 해당 인터워킹 수행부로 다시 전송해야 하는 한편, 1011단계 이하로 진행하여 동시에 미디어의 추가를 요청하는 동작도 수행하는 것이다.
B. 메시지 바디 부분 수정이 허용되는 경우
메시지 바디 부분의 수정이 허용되는 프록시 모드로 동작하는 인터워킹 수행부의 동작은 B2B UA 모드로 동작하는 인터워킹 선택부의 동작과 거의 동일하다. 단 차이점은 B2B UA 모드에서 인터워킹 선택부는 인터워킹 수행부로 메시지를 전달하기 전에 메시지의 SDP 바디에 미디어의 수신 주소와 포트를 인터워킹 수행부의 것으로 설정하는 반면에, 프록시 모드로 동작하는 인터워킹 선택부는 메시지 바디를 수정할 수 없기 때문에, CPM 서버로부터 수신한 SDP 바디를 그대로 전송하게 된다. 인터워킹 수행부가 B2B UA 모드로 동작할 때, 세션이 개설 및 수정되는 과정에 대해서는 후술하기로 한다.
<인터워킹 선택부: B2B UA 모드>
인터워킹 수행부가 프록시 모드로 동작할 때, CPM 클라이언트와 CPM 서버 간에는 CPM 클라이언트에 의해 요청된 모든 미디어를 포함하도록 하나의 세션이 개설되고, CPM 서버와 인터워킹 수행부 간에는 인터워킹 수행부가 지원하는 미디어 타입에 따라서 미디어 세션이 각각 개설될 수 있다. 따라서 하나의 세션이 여러 개의 미디어 세션으로 분기되는 지점은 CPM 서버이다.
이에 반하여 인터워킹 수행부가 B2B UA 모드로 동작할 때, CPM 클라이언트와 CPM 서버 간 뿐만 아니라, CPM 서버와 인터워킹 선택부 간에도 CPM 클라이언트에 의해 요청된 모든 미디어를 포함하도록 하나의 세션이 개설된다. 반면, 인터워킹 선택부와 인터워킹 수행부 간에는 인터워킹 수행부가 지원하는 미디어 타입에 따라서 미디어 세션이 각각 개설된다. 따라서 하나의 세션이 여러 개의 세션으로 분기되는 지점은 인터워킹 선택부가 된다는 차이가 있다.
B2B UA 모드에서 각 구성 요소의 동작은 다음과 같다.
CPM 서버는 세션 개설 또는 변경 요청 메시지를 수신하면 인터워킹이 필요한지 여부를 판단한 후 인터워킹을 수행해야 하는 경우에는 상기 세션 개설 또는 변경 요청 메시지를 인터워킹 선택부로 전송한다. 또한, 인터워킹 선택부로부터 상기 세션 개설 또는 변경 요청에 대한 응답 메시지를 수신하면 이를 CPM 클라이언트로 전송한다.
한편, 인터워킹 수행부의 동작은 프록시 모드에서의 동작과 동일하며, 인터워킹 선택부의 동작은 특정 동작을 제외하면 프록시 모드에서의 CPM 서버의 동작과 기본적으로 동일하다.
도 11 본 발명의 제5 실시예에 따라 인터워킹 선택부가 B2BUA 모드로 동작하는 상황에서 세션을 개설하는 동작을 설명하는 도면이다.
1101단계에서 CPM 클라이언트(110)는 CPM 서버(120)로 제1 미디어와 제2 미디어를 포함하는 세션 개설 요청 메시지(INVITE)를 전송한다. 1103단계에서 CPM 서버(120)는 세션 개설을 위한 인터워킹이 필요한지를 판단한다. 여기서 수신측 클라이언트는 Non-CPM 클라이언트로 가정한 상태이므로 인터워킹이 필요하다. 따라서 1105단계에서 CPM 서버(120)는 세션 개설 요청 메시지를 인터워킹 선택부(130)로 전송한다.
1107단계에서 인터워킹 선택부(130)는 세션 개설에 적합한 인터워킹 선택부를 선택한다. 도 11에서 제1 미디어를 지원하는 제1 인터워킹 수행부(141)를 선택한 것으로 가정한다. 따라서 1109단계에서 인터워킹 선택부(130)는 제1 인터워킹 수행부(141)로 세션 개설 요청메시지를 전송한다. 1111단계에서 제1 인터워킹 수행부(141)는 세션 개설 요청에 대한 허락의 응답 메시지(200 OK)를 회신한다. 이때, 제1 미디어는 제1 인터워킹 수행부(141)가 지원하고 제2 미디어는 지원하지 않기 때문에 상기 허락의 응답 메시지에는 제2 미디어는 제1 인터워킹 수행부(141)의 원인, 즉, 제1 인터워킹 수행부(141)가 특정 미디어를 지원하지 않기 때문에 거절되었다는 내용이 포함된다. 1113단계에서는 인터워킹 선택부(130)와 제1 인터워킹 수행부(141) 간에 제1 미디어를 포함하는 미디어 세션이 개설된다.
1115단계에서 인터워킹 선택부(130)는 상기 거절된 제2 미디어에 대해 세션 개설 요청의 재시도가 허용될지 여부를 조사한다. 여기서는 상기 재시도가 허용된다고 가정한다. 따라서 1117단계에서 인터워킹 선택부(130)는 거절된 제2 미디어에 대한 세션 개설 요청 메시지를 생성한다. 1119단계에서 인터워킹 선택부(130)는 상기 세션 개설 요청 메시지를 전송할 인터워킹 수행부로서 제2 인터워킹 선택부(130)를 선택하고, 1121단계에서 선택된 제2 인터워킹 선택부(130)로 세션 개설 요청메시지를 전송한다.
1123단계에서 제2 인터워킹 수행부(142)는 허락의 응답 메시지(200 OK)를 회신하면, 1125단계에서 인터워킹 선택부(130)와 제2 인터워킹 수행부(142) 간에 제2 미디어를 포함하는 미디어 세션이 개설된다. 1127단계에서 인터워킹 선택부(130)는 1105단계에서 수신한 세션 개설 요청에 대한 응답 메시지를 생성하여 CPM 서버(120)로 회신한다. 이때, 응답 메시지는 제1 미디어와 제2 미디어가 모두 허락되었다는 내용을 포함한다. 1129단계에서 CPM 서버(120)와 인터워킹 선택부(130) 간에 제1 미디어와 제2 미디어를 포함하는 세션이 개설된다. 1131단계에서 CPM 서버(120)는 1101단계에서 수신한 세션 개설 요청에 대한 응답 메시지를 생성하여 CPM 클라이언트(110)로 회신한다. 이때, 응답 메시지는 제1 미디어와 제2 미디어가 모두 허락되었다는 내용을 포함한다. 1133단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간에 제1 미디어와 제2 미디어를 포함하는 세션이 개설된다.
도14는 본 발명의 제5 실시예에 따라 인터워킹 선택부가 B2BUA 모드로 동작하는 상황에서 세션을 개설하는 다른 동작을 설명하는 도면이다. 도 4에서는 인터워킹 선택부(130)가 각각의 인터워킹 수행부로부터 응답메시지를 모두 수신한 후에 이를 통합하여 하나의 응답메시지를 CPM 서버(120)로 전달한 후에 최종적으로 세션을 개설한 것에 반하여, 도 14에서 인터워킹 선택부(130)는 최초로 인터워킹 시도한 인터워킹 수행부(제1 인터워킹 수행부)로부터 수신한 응답메시지에 따라서 우선적으로 CPM 서버(120)와 세션을 개설하고 2차적으로 인터워킹을 시도한 인터워킹 수행부(제2 인터워킹 수행부)로부터 수락의 응답메시지를 수신한 경우에는 인터워킹 수행부(130) 와 CPM 서버(120) 사이에 그리고 CPM 서버(120) 와 CPM 클라이언트(110) 사이에 이미 개설된 세션에 제2 인터워킹 수행부에 의해서 추가로 수락된 미디어를 추가하는 과정을 수행한다. 따라서 도 14에서 상기 동작에 대한 부분을 제외한 나머지 부분은 도 4와 동일하다.
1401 단계에서 CPM 클라이언트(110)는 CPM 서버(120)로 제1 미디어와 제2 미디어를 포함하는 세션 개설 요청 메시지(INVITE)를 전송하면, 1403 단계에서 CPM 서버(120)는 세션 개설을 위하여 인터워킹이 필요한지를 판단한다. 도 14에서 수신측 클라이언트는 Non-CPM 클라이언트이므로 인터워킹이 필요하다. 따라서 1405 단계에서 CPM 서버(120)는 상기 세션 개설 요청메시지를 인터워킹 선택부(130)로 전송한다.
1407 단계에서 인터워킹 선택부(130)는 수신측 클라이언트의 프레퍼런스(preference), 프레전스(presence), 세션 개설이 요청된 미디어 타입, 수신측 클라이언트가 가입한 서비스, 서비스 정책 등의 정보에 기초하여 세션 개설을 수행하기에 가장 적합한 인터워킹 선택부(130)를 선택한다. 1407 단계에서 인터워킹 선택부(130)는 제1 인터워킹 수행부(141)를 선택한 것으로 가정하였다.
1409 단계에서 인터워킹 선택부(130)는 제1 인터워킹 수행부(141)로 세션 개설 요청메시지를 전송한다. 1411 단계에서 제1 인터워킹 수행부(141)는 상기 제1 미디어를 지원하므로 상기 세션 개설 요청에 대하여 응답메시지로서 200 OK를 생성하여 회신하고, 1413 단계에서 인터워킹 선택부(130)와 제1 인터워킹 수행부(141) 간에 수락된 제1 미디어에 대한 세션이 개설된다. 상기 1411 단계에서 제1 인터워킹 수행부(141)는 제1 미디어는 수신측 사용자에 의해서 수락되었고 제2 미디어는 지원되지 않기 때문에 인터워킹 수행부에 의해서 자동 거절되었다는 내용을 상기 응답메시지에 포함시킨다.
1415 단계에서 인터워킹 선택부(130)는 CPM 서버(120)로 응답메시지를 전송하고 1417 단계에서 CPM 서버(120)와 인터워킹 선택부(130) 간에 제1 미디어 세션이 개설된다. 여기에서 인터워킹 선택부(130)가 CPM 서버(120)로 응답메시지를 전송하는 시점은 인터워킹 선택부의 동작 모드에 따라서 달라질 수 있다. 다시 말해서, 인터워킹 선택부(130)는 1429 단계에서 전송한 신규 세션 개설 요청에 대한 응답메시지를 수신하기 위해서 일정 시간 동안 대기하거나, 또는 인터워킹 선택부(130)로부터 최초로 응답메시지를 수신한 즉시 통합메시징 서버로 전송할 수도 있다. 도 14에서는 후자의 경우를 도시하였다. 전자의 경우에는 정해진 시간 동안 신규 개설 요청에 대한 응답메시지가 수신되면 인터워킹 선택부(130)는 도 11에서와 같이 이들 응답메시지들을 통합한 후 최종적으로 CPM 서버(120)로 응답메시지를 전송한다. 만약 정해진 시간을 넘어서 신규 세션 개설 요청에 대한 응답메시지가 수신되면 도 14에서와 같이 먼저 수신된 응답메시지를 CPM 서버(120)로 전송하여 일단 수락된 미디어에 대해서 세션을 개설하고, 신규 세션 개설 요청에 대한 응답메시지의 내용에 따라서 개설된 세션을 수정하거나 상기 개설된 세션을 그대로 유지시킨다.
1419 단계에서 인터워킹 서버(120)는 CPM 클라이언트(110)로 응답메시지를 전송하고 1421 단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간에 제1 미디어 세션이 개설된다.
1423 단계에서 인터워킹 선택부(130)는 제1 인터워킹 수행부(141)에 의해서 자동 거절된 제2 미디어에 대해서 세션 개설을 재요청하는 것이 허용되는지를 확인한 후, 허용된다면 1425 단계에서 제2 미디어에 대한 신규 세션 개설 요청을 작성하고, 1427 단계에서 신규 세션 개설 요청을 처리하기에 적합한 인터워킹 수행부를 선택한다. 여기에서 인터워킹 선택부(130)는 제2 미디어 타입을 지원하는 제2 인터워킹 수행부(142)를 선택하고 1429 단계에서 제2 인터워킹 수행부(142)로 신규 세션 개설 요청을 전송한다.
1431 단계에서 제2 인터워킹 수행부(142)는 수락의 응답메시지로서, 200 OK를 인터워킹 선택부(130)로 전송하고, 1433 단계에서 인터워킹 선택부(130)와 제2 인터워킹 수행부(142) 간에 제2 미디어 세션이 개설된다.
1435 단계에서 인터워킹 선택부(130)는 CPM 서버(120)로 세션 변경 요청을 전송한다. 여기에서 세션 변경 요청은 CPM 서버(120)와 인터워킹 선택부(130) 간에 개설된 제1 미디어 세션에 제2 미디어를 추가할 것을 요청한다.
1437 단계에서 CPM 서버(120)는 CPM 클라이언트(110)로 세션 변경 요청을 전송한다. 여기서 세션 변경 요청은 CPM 클라어인트(110)와 CPM 서버(120) 간에 개설된 제1 미디어 세션에 제2 미디어를 추가할 것을 요청한다.
1439 단계에서 CPM 클라이언트(110)는 세션 변경 요청에 대한 응답메시지로서 200 OK를 전송하면 1441 단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간 세션은 제1 미디어와 제2 미디어를 포함하도록 변경된다. 그리고 1443 단계에서 CPM 서버(120)가 인터워킹 선택부(130)로 200 OK를 전송하면 1445 단계에서 CPM 서버(120)와 인터워킹 선택부(130) 간 세션은 제1 미디어와 제2 미디어를 포함하도록 변경된다
한편, 상기 본 발명의 제5 실시예 중 도 11에서 예시된 내용에 따라서 세션 개설 요청을 처리하기 위한 인터워킹 선택부의 동작은 도 5에서 설명된 CPM 서버의 동작과 동일하다. 다만, B2B UA 모드에서는 인터워킹 선택부가 상기 도 5의 동작을 수행하므로 도 5에서 513단계와 509단계는 다음과 같이 변경되어야 한다. 즉, 509단계는 "세션 개설 요청에 대한 응답 메시지를 생성하여 CPM 서버로 회신한다."로 변경되어야 하며, 513단계는 "511단계에서 생성한 세션 개설 요청메시지를 처리하기에 가장 적합한 인터워킹 수행부를 선택하여 전송한다."로 변경된다.
도 12는 본 발명의 제6 실시예에 따라 인터워킹 선택부가 B2BUA 모드로 동작하는 상황에서 이미 생성된 세션의 변경시 특정 미디어 타입을 변경하는 내용을 설명하는 도면이다. 즉, 상기 도 11에서 이미 생성된 제1 미디어와 제2 미디어를 포함하는 세션에 새로운 미디어인 제3 및 제4 미디어를 추가함과 동시에 상기 제2 미디어를 삭제하는 상황을 가정한다.
1201단계에서 CPM 클라이언트(110)는 이미 개설된 세션에 제3 미디어와 제4 미디어를 추가하고, 제2 미디어를 삭제하라는 세션 변경 요청 메시지를 CPM 서버(120)로 전송한다. 이때, 요청메시지는 제1 미디어와 제3 미디어와 제4 미디어에 대한 SDP 파라미터를 포함한다. 1203단계에서 CPM 서버(120)는 상기 수신한 세션 변경 요청 메시지를 인터워킹 선택부(130)로 전송한다.
1205단계에서 인터워킹 선택부(130)는 변경을 요청할 대상 세션으로 제2 미디어 세션을 선택한다. 1207단계에서 인터워킹 선택부(130)는 제2 미디어 세션에 적합한 형태의 세션 변경 요청메시지를 생성하여 제2 인터워킹 수행부(142)로 전송한다. 이때 세션 변경 요청 메시지는 제3 미디어와 제4 미디어에 대한 SDP 파라미터를 포함한다. 1209단계에서 제2 인터워킹 수행부(142)는 제3 미디어와 제4 미디어를 지원하지 않기 때문에 거절의 응답 메시지를 회신한다.
1211단계에서 인터워킹 선택부(130)는 제2 미디어 세션에 대해서 제2 미디어 삭제를 재요청한다. 이때, 현재 제2 미디어 세션에는 제2 미디어 외의 다른 미디어가 없으므로, 인터워킹 선택부(130)는 제2 미디어 세션에 대한 종료메시지(BYE)를 제2 인터워킹 수행부(142)로 전송한다.
1213단계에서 제2 인터워킹 수행부(142)는 세션 종료 요청에 대한 허락의 응답 메시지를 회신하면, 1215단계에서 인터워킹 선택부(130)와 제2 인터워킹 수행부(142)간 제2 미디어 세션이 해제된다.
1217단계에서 인터워킹 선택부(130)는 이전에 미디어 추가의 요청을 하지 않은 제1 미디어 세션에 대해서 상기 거절된 제3 미디어와 제4 미디어에 대한 미디어 추가 요청메시지를 생성하고, 1219단계에서 상기 생성된 미디어 추가 요청 메시지를 제1 인터워킹 수행부(141)로 전송한다. 이때, 상기 미디어 추가 요청메시지는 제1 미디어와 제3 미디어와 제4 미디어에 대한 SDP 파라미터를 포함한다.
제1 인터워킹 수행부(141)는 제1 미디어와 제4 미디어를 지원하는 반면에 제3 미디어는 지원하지 않기 때문에 제1 미디어와 제4 미디어는 허락하지만 제3 미디어는 거절한다. 따라서 1221단계에서 제1 인터워킹 수행부(141)는 이러한 내용을 포함하는 응답 메시지를 회신한다. 상기 응답 메시지에는 상기 제3 미디어가 제1 인터워킹 수행부(141)의 원인에 의해서 거절되었다는 내용이 포함된다. 1223단계에서는 상기 제1 미디어와 상기 제4 미디어가 허락되었기 때문에 제1 미디어 세션은 제1 미디어와 제4 미디어를 포함하도록 변경된다.
1225단계에서 인터워킹 선택부(130)는 상기 거절된 제3 미디어에 대한 세션 개설 요청메시지를 다시 생성한다. 1227단계에서 인터워킹 선택부(130)는 다시 생성된 세션 개설 요청메시지에 대한 인터워킹을 위해 제3 인터워킹 수행부(143)를 선택하고, 1229단계에서는 상기 1225단계에서 생성된 세션 개설 요청메시지를 제3 인터워킹 수행부(143)로 전송한다. 1231단계에서 제3 인터워킹 수행부(143)는 세션 개설 요청에 대한 허락의 응답 메시지를 생성하여 회신하면, 1233단계에서 인터워킹 선택부(130)와 제3 인터워킹 수행부(143) 간에 제3 미디어 세션이 개설된다.
1235단계에서 인터워킹 선택부(130)는 1203단계에서 수신한 세션 변경 요청에 대한 허락의 응답 메시지를 생성하여 CPM 서버(120)로 회신하는데, 이때의 응답 메시지는 모든 요청이 허락되었다는 내용을 포함한다. 이후, 1237단계에서 CPM 서버(120)와 인터워킹 선택부(130) 간 세션은 제1 미디어, 제3 미디어, 제4 미디어를 포함하도록 변경된다.
1239단계에서 CPM 서버(120)는 1201단계에서 수신한 세션 변경 요청에 대한 허락의 응답 메시지를 생성하여 CPM 서버(120)로 회신한다. 이때, 응답 메시지는 모든 요청이 허락되었다는 내용을 포함한다. 1241단계에서 CPM 클라이언트(110)와 CPM 서버(120) 간 세션은 제1 미디어, 제3 미디어, 제4 미디어를 포함하도록 변경된다.
상기 도 12의 과정에서 인터워킹 선택부(130)의 구현에 따라서 상기 1207단계부터 1217 단계는 변경될 수 있다. 다시 말해서 인터워킹 선택부(130)는 제2 인터워킹 수행부(142)로 제2 미디어에 대한 삭제 요청 (Re-INVITE) 또는 세션 종료 요청(BYE)를 전송하고 이와 동시에 제3 미디어와 제4 미디어를 지원하는 인터워킹 수행부로 해당 미디어에 대한 세션 개설 요청(INVITE)를 전송하도록 변경될 수 있다. 이러한 동작은 이미 인터워킹 선택부(130)가 이미 각각의 인터워킹 수행부에 의해서 지원되는 미디어 종류를 알고 있기 때문에 가능한 것이다.
한편, 상기 본 발명의 제6 실시예에서 세션 변경 요청을 처리하기 위한 인터워킹 수행부의 동작은 도 10에서 설명된 CPM 서버의 동작과 동일하다.
다만, 1031단계는 다음과 같이 변경된다. 도 10에서 프록시 모드일 경우에는 CPM 서버가 인터워킹이 필요한지 여부에 따라 1033단계 또는 1035단계로 진행하여 인터워킹 선택부로 전송하거나, 수신측 클라이언트의 주소로 전송하였다. 그러나 B2BUA 모드에서는 인터워킹이 필요한지 여부의 판단을 CPM 서버가 하기 때문에 B2BUA 모드에서는 1031단계는 "1029단계에서 생성한 세션 개설 요청메시지의 처리에 가장 적합한 인터워킹 수행부를 선택하여 전송한다."로 변경되어야 하고, 1033단계와 1035단계의 동작은 필요하지 않으므로 삭제되며, 이후 상기 세션 개설 요청에 대한 응답 메시지를 처리하기 위해서 501단계로 되돌아간다.
도 1은 CPM 시스템의 구성 요소를 설명하는 도면,
도 2는 CPM 서비스와 Non-CPM 서비스 간에 인터워킹에 의한 메시지 송수신 동작을 설명하는 도면,
도 3은 본 발명의 제1 실시예에 따라 CPM 시스템의 프록시 모드에서 세션을 개설하는 메시지 흐름도,
도 4는 본 발명의 제1 실시예에 따라 프록시 모드에서 인터워킹 수행부의 동작을 설명하는 도면,
도 5는 본 발명의 제1 실시예에 따라 프록시 모드에서 CPM 서버의 동작을 설명하는 도면,
도 6은 본 발명의 제2 실시예에 따라 프록시 모드에서 이미 생성된 세션에 새로운 미디어 타입을 추가하는 동작을 설명하는 도면,
도 7은 본 발명의 제3 실시예는 프록시 모드에서 이미 생성된 세션의 변경 시 특정 미디어 타입을 삭제하는 내용을 설명하는 도면,
도 8은 본 발명의 제4 실시예에 따라 프록시 모드에서 이미 생성된 세션의 변경 시 새로운 미디어 타입 추가하는 동시에 세션으로부터 기존 미디어 타입을 삭제하는 동작을 하는 내용을 설명하는 도면,
도 9는 본 발명의 제2 내지 제4 실시예에 따라 프록시 모드에서 세션 변경 요청을 수신한 CPM 서버의 동작을 설명하는 도면,
도 10은 본 발명의 제2 내지 제4 실시예에 따라 프록시 모드에서 인터워킹 수행부로부터 응답 메시지를 수신한 CPM 서버의 동작을 설명하는 도면,
도 11 본 발명의 제5 실시예에 따라 CPM 시스템의 B2BUA 모드에서 세션을 개설하는 동작을 설명하는 도면,
도 12는 본 발명의 제6 실시예에 따라 CPM 시스템의 B2BUA 모드에서 이미 생성된 세션의 변경시 특정 미디어 타입을 변경하는 내용을 설명하는 도면,
도 13은 본 발명의 제1 실시예에 따라 인터워킹 선택부가 메시지 바디 부분의 수정이 허용되지 않는 프록시 모드로 동작하는 상황에서 세션을 개설하는 다른 메시지 흐름도,
도 14는 본 발명의 제5 실시예에 따라 인터워킹 선택부가 B2BUA 모드로 동작하는 상황에서 세션을 개설하는 다른 동작을 설명하는 도면,
도 15는 본 발명의 제2 실시예에 따라 인터워킹 선택부가 프록시 모드로 동작하는 상황에서 이미 생성된 세션에 새로운 미디어를 추가하는 동작을 나탄내 도면.

Claims (19)

  1. 제1 엔터티가, 상기 제1 엔터티와 제2 엔터티를 포함하는 네트워크를 통하여 송신측 제1 클라이언트와 수신측 제2 클라이언트와의 세션을 제어하는 방법에 있어서,
    상기 제1 클라이언트로부터의 특정 미디어의 세션 요청에 대하여, 상기 제2 엔터티로부터 거절의 원인을 포함하는 응답을 수신하여 확인하는 과정과,
    상기 거절의 원인이, 상기 제2 엔터티가 상기 특정 미디어를 지원하지 않는 것인 경우 상기 거절된 특정 미디어의 세션을 재요청하는 과정을 포함하는 세션 제어 방법.
  2. 제 1항에 있어서, 상기 세션을 재요청하는 과정은,
    상기 특정 미디어의 세션을 제3 엔터티에 재요청하는 것을 특징으로 하는 세션 제어 방법.
  3. 제 2항에 있어서, 상기 세션을 재요청하는 과정은,
    상기 거절의 원인이, 상기 제2 클라이언트의 원인에 의한 것인 경우, 상기 특정 미디어의 세션을 재요청하지 않는 것을 특징으로 하는 세션 제어 방법.
  4. 제 1항에 있어서, 상기 세션 요청은,
    이미 설정된 세션에 상기 특정 미디어를 추가할 것을 요청하는 것임을 특징으로 하는 세션 제어 방법.
  5. 제 1항에 있어서, 상기 세션 요청은,
    이미 설정된 세션의 미디어의 삭제를 요청하고, 상기 이미 설정된 세션에 상기 특정 미디어의 추가를 요청하는 것임을 특징으로 하는 세션 제어 방법.
  6. 제 5항에 있어서, 상기 세션을 재요청하는 과정은,
    상기 이미 설정된 세션이 상기 삭제 요청된 미디어 이외의 미디어를 더 포함하는 경우, 상기 이미 설정된 세션에 상기 삭제 요청된 미디어의 삭제를 재요청하는 과정을 더 포함하는 것을 특징으로 하는 세션 제어 방법.
  7. 제 5항에 있어서, 상기 세션을 재요청하는 과정은,
    상기 이미 설정된 세션이 상기 삭제 요청된 미디어만을 포함하는 경우, 상기 이미 설정된 세션의 종료를 요청하는 과정을 더 포함하는 것을 특징으로 하는 세션 제어 방법.
  8. 제 1항에 있어서,
    상기 제1 클라이언트는 통합 메시징 서비스에 가입된 클라이언트이고,
    상기 제2 클라이언트는 통합 메시징 서비스에 가입되지 않은 클라이언트임을 특징으로 하는 세션 제어 방법.
  9. 제 8항에 있어서,
    상기 제1 엔터티는 통합 메시징 서비스 시스템의 서버이고,
    상기 제2 엔터티는 상기 통합 메시징 서비스 시스템의 인터워킹 수행부임을 특징으로 하는 세션 제어 방법.
  10. 제 8항에 있어서,
    상기 제1 엔터티는 통합 메시징 서비스 시스템의 인터워킹 선택부이고,
    상기 제2 엔터티는 상기 통합 메시징 서비스 시스템의 인터워킹 수행부임을 특징으로 하는 세션 제어 방법.
  11. 제2 엔터티가, 제1 엔터티와 상기 제2 엔터티를 포함하는 네트워크를 통하여 송신측 제1 클라이언트와 수신측 제2 클라이언트와의 세션을 제어하는 방법에 있어서,
    상기 제1 클라이언트로부터의 특정 미디어의 세션 요청을 거절할 시, 상기 거절의 원인이, 상기 제2 엔터티가 상기 특정 미디어를 지원하지 않는 것인 경우, 상기 제2 엔터티가 상기 특정 미디어를 지원하지 않는다는 내용을 지시하는 거절의 원인을 포함하거나 상기 제2 엔터티가 상기 특정 미디어의 세션 요청을 거절하였다는 내용을 지시하는 거절의 주체를 포함하는 응답을 상기 제1 엔터티로 전송하는 과정을 포함하는 세션 제어 방법.
  12. 제 11항에 있어서, 상기 거절의 원인을 포함하는 응답은,
    상기 거절의 원인이, 상기 제2 클라이언트의 원인에 의한 것인 경우, 상기 제2 클라이언트가 상기 특정 미디어를 거절하였다는 내용을 지시하는 거절의 원인을 포함하거나 상기 제2 클라이언트가 상기 특정 미디어를 거절하였다는 내용을 지시하는 거절의 주체를 포함하는 응답을 상기 제1 엔터티로 전송하는 과정을 더 포함하는 것을 특징으로 하는 세션 제어 방법.
  13. 제 11항에 있어서, 상기 세션 요청은,
    이미 설정된 세션에 상기 특정 미디어를 추가할 것을 요청하는 것임을 특징으로 하는 세션 제어 방법.
  14. 제 11항에 있어서, 상기 세션 요청은,
    이미 설정된 세션의 미디어의 삭제를 요청하고, 상기 이미 설정된 세션에 상기 특정 미디어의 추가를 요청하는 것임을 특징으로 하는 세션 제어 방법.
  15. 제 14항에 있어서, ,
    상기 이미 설정된 세션이 상기 삭제 요청된 미디어 이외의 미디어를 더 포함하는 경우, 상기 제1 엔터티로부터, 상기 삭제 요청된 미디어의 삭제를 재요청받는 과정을 더 포함하는 것을 특징으로 하는 세션 제어 방법.
  16. 제 14항에 있어서,
    상기 이미 설정된 세션이 상기 삭제 요청된 미디어만을 포함하는 경우, 상기 제1 엔터티로부터 상기 이미 설정된 세션의 종료를 요청받는 과정을 더 포함하는 것을 특징으로 하는 세션 제어 방법.
  17. 제 11항에 있어서,
    상기 제1 클라이언트는 통합 메시징 서비스에 가입된 클라이언트이고,
    상기 제2 클라이언트는 통합 메시징 서비스에 가입되지 않은 클라이언트임을 특징으로 하는 세션 제어 방법.
  18. 제 17항에 있어서,
    상기 제1 엔터티는 통합 메시징 서비스 시스템의 서버이고,
    상기 제2 엔터티는 상기 통합 메시징 서비스 시스템의 인터워킹 수행부임을 특징으로 하는 세션 제어 방법.
  19. 제 17항에 있어서,
    상기 제1 엔터티는 통합 메시징 서비스 시스템의 인터워킹 선택부이고, 상기 제2 엔터티는 상기 통합 메시징 서비스 시스템의 인터워킹 수행부임을 특징으로 하 는 세션 제어 방법.
KR1020090055705A 2008-11-28 2009-06-22 통합 메시징 서비스에서 인터워킹을 위한 세션 제어 방법 및 시스템 KR20100061295A (ko)

Priority Applications (7)

Application Number Priority Date Filing Date Title
EP09829346.7A EP2351391B1 (en) 2008-11-28 2009-11-27 Method and apparatus for controlling session for interworking in converged ip messaging service and system thereof
JP2011538550A JP5274668B2 (ja) 2008-11-28 2009-11-27 統合ipメッセージングサービスにおけるインターワーキングのためのセッションを制御する方法及び装置とそのシステム
CN200980155456.2A CN102301754B (zh) 2008-11-28 2009-11-27 在融合互联网协议消息服务中控制用于互配的会话的方法和装置及其系统
PCT/KR2009/007047 WO2010062139A2 (en) 2008-11-28 2009-11-27 Method and apparatus for controlling session for interworking in converged ip messaging service and system thereof
KR1020090117168A KR101720989B1 (ko) 2008-11-28 2009-11-30 통합 메시지 서비스에서 인터워킹을 위한 세션 제어 방법과 장치 및 시스템
US12/627,856 US8566405B2 (en) 2008-11-28 2009-11-30 Method and system for controlling session for interworking in converged IP messaging service
US13/970,014 US9118616B2 (en) 2008-11-28 2013-08-19 Method and system for controlling session for interworking in converged IP messaging service

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR20080120164 2008-11-28
KR1020080120164 2008-11-28
KR1020080120688 2008-12-01
KR20080120688 2008-12-01
KR1020090008186 2009-02-02
KR20090008186 2009-02-02

Publications (1)

Publication Number Publication Date
KR20100061295A true KR20100061295A (ko) 2010-06-07

Family

ID=42362089

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020090055705A KR20100061295A (ko) 2008-11-28 2009-06-22 통합 메시징 서비스에서 인터워킹을 위한 세션 제어 방법 및 시스템
KR1020090117168A Expired - Fee Related KR101720989B1 (ko) 2008-11-28 2009-11-30 통합 메시지 서비스에서 인터워킹을 위한 세션 제어 방법과 장치 및 시스템

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020090117168A Expired - Fee Related KR101720989B1 (ko) 2008-11-28 2009-11-30 통합 메시지 서비스에서 인터워킹을 위한 세션 제어 방법과 장치 및 시스템

Country Status (6)

Country Link
US (2) US8566405B2 (ko)
EP (1) EP2351391B1 (ko)
JP (1) JP5274668B2 (ko)
KR (2) KR20100061295A (ko)
CN (1) CN102301754B (ko)
WO (1) WO2010062139A2 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9530117B2 (en) * 2007-02-13 2016-12-27 International Business Machines Corporation Method and apparatus for transforming user requests and responses based on a persona
KR101199401B1 (ko) 2010-06-23 2012-11-09 엘지전자 주식회사 Cpm 서비스 메시지의 전달 및 저장 방법 및 그 서버
WO2011162536A2 (en) * 2010-06-23 2011-12-29 Lg Electronics Inc. Method for transferring and storing cpm service message and service thereof
CN102387119B (zh) * 2010-08-26 2015-08-05 阿尔卡特朗讯 一种会话描述协议中会话修改方法
KR101820739B1 (ko) * 2011-10-04 2018-01-23 삼성전자 주식회사 피오씨 서비스 제공 방법 및 장치
CN103067883B (zh) * 2011-10-20 2015-08-19 中国移动通信集团设计院有限公司 一种融合消息业务处理方法、设备以及系统
KR101600422B1 (ko) 2012-08-14 2016-03-21 주식회사 케이티 통화 단말과 다른 단말로 연속적으로 제공하는 감시 정보 서비스 방법 및 시스템
KR101550062B1 (ko) 2013-02-26 2015-09-04 주식회사 케이티 M2m 디바이스의 제어권 공유 방법 및 이를 위한 m2m 서비스 플랫폼
KR101441567B1 (ko) 2013-03-05 2014-09-22 주식회사 케이티 Ims 망을 통한 m2m 데이터 전달 방법 및 이를 위한 m2m 서비스 플랫폼
EP3328103A1 (en) * 2013-11-29 2018-05-30 Nec Corporation Apparatus, system and method for mtc
CN106658440B (zh) * 2015-10-30 2020-10-23 华为技术有限公司 一种消息发送方法、相关装置及系统
US10574769B2 (en) 2017-09-22 2020-02-25 Verizon Patent And Licensing Inc. Internet protocol multimedia subsystem connection management

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030139934A1 (en) * 2001-12-20 2003-07-24 Intel Corporation Requesting and providing services via a registry
CN1278519C (zh) * 2004-07-30 2006-10-04 华为技术有限公司 将终端能力变化通知给网络的方法
DK1808029T6 (da) 2004-11-03 2019-07-22 Vringo Infrastructure Inc Intersystem-handover af en mobilterminal, der er funktionsdygtig med et første og et andet radioadgangsnetværk
KR100880992B1 (ko) * 2005-05-10 2009-02-03 삼성전자주식회사 아이엠에스망과 에이치.323망간 연동 시스템 및 방법
CN100512293C (zh) * 2005-09-07 2009-07-08 华为技术有限公司 一种会话初始化协议消息体内容处理方法及网络
JP2009514278A (ja) * 2005-10-31 2009-04-02 テレフオンアクチーボラゲット エル エム エリクソン(パブル) プッシュツートークセッションの部分の送信
CN101098516B (zh) * 2006-06-30 2012-06-06 华为技术有限公司 实现无线一键通的系统、方法及网关转接装置
FI20060972A0 (fi) * 2006-11-03 2006-11-03 Nokia Corp Instuntopohjainen viestintä
CN102395115B (zh) * 2006-11-13 2016-05-18 三星电子株式会社 用于在融合ip消息业务中管理消息线程的方法和系统
KR20080043134A (ko) * 2006-11-13 2008-05-16 삼성전자주식회사 통합 ip 메시징 서비스 클라이언트와 단문 메시징 서비스클라이언트 간에 메시지 통신을 위한 세션 설정 방법 및시스템
CN101227418B (zh) * 2007-01-19 2012-04-04 华为技术有限公司 一种实现融合ip消息的方法、装置及系统
US20080219241A1 (en) * 2007-03-09 2008-09-11 Nokia Corporation Subscriber access authorization
US9059986B2 (en) * 2007-04-04 2015-06-16 Motorola Solutions, Inc. Method and apparatus to facilitate using a federation-based benefit to facilitate communications mobility
US20080281971A1 (en) * 2007-05-07 2008-11-13 Nokia Corporation Network multimedia communication using multiple devices
US7720974B2 (en) * 2007-05-25 2010-05-18 Microsoft Corporation Global routable and grid identification for audio provider in media session
US20090150562A1 (en) * 2007-12-07 2009-06-11 Research In Motion Limited Apparatus and method for directing a communication session to a communication device of a group of devices having a common registration identity
KR101498731B1 (ko) * 2008-02-13 2015-03-05 삼성전자주식회사 비통합 메시징 서비스와 인터워킹하기 위해 통합 메시징 서비스를 제공하는 서버 및 방법 및 이를 위한 시스템
US8099089B2 (en) * 2008-05-13 2012-01-17 Nokia Corporation Method, user equipment and software product for media stream transfer between devices

Also Published As

Publication number Publication date
KR101720989B1 (ko) 2017-03-31
EP2351391A4 (en) 2015-05-20
EP2351391B1 (en) 2017-07-05
US20130332554A1 (en) 2013-12-12
JP5274668B2 (ja) 2013-08-28
JP2012510753A (ja) 2012-05-10
WO2010062139A2 (en) 2010-06-03
KR20100061406A (ko) 2010-06-07
CN102301754B (zh) 2015-01-07
CN102301754A (zh) 2011-12-28
WO2010062139A3 (en) 2010-08-26
EP2351391A2 (en) 2011-08-03
US8566405B2 (en) 2013-10-22
US9118616B2 (en) 2015-08-25
US20100138484A1 (en) 2010-06-03

Similar Documents

Publication Publication Date Title
KR20100061295A (ko) 통합 메시징 서비스에서 인터워킹을 위한 세션 제어 방법 및 시스템
ES2542965T3 (es) Un método, un dispositivo y un sistema para la puesta en convergencia de una mensajería en IP
JP4847608B2 (ja) 事前設定セッションを管理する方法及びそれを実現するためのPoCシステム及びPoC端末装置
RU2447616C2 (ru) Способ и устройство для услуги &#34;нажми и говори&#34;
CN101548556B (zh) 建立和管理用于执行多媒体呼叫业务的多媒体基于蜂窝网络的即按即说会话的系统及其方法和用户设备
CN101453483A (zh) 会话历史记录的存储处理和查询方法、系统和装置
US7953123B2 (en) Method and system for controlling the establishment of communications channels for allowing transmission of multimedia information
US20050243746A1 (en) Session inspection scheme
KR20110050439A (ko) 원격통신 네트워크에서 매체 속성들에 기초한 선택적 호 포워딩을 위한 방법 및 시스템
CN101563903A (zh) Ip多媒体子系统网络中的服务适配
EP1672866A1 (en) Method and system to the instant transfer of multimedia files between mobile radio users within the scope of combinational services
Gouya et al. SCIM (Service Capability Interaction Manager) implementation issues in IMS service architecture
CN100550908C (zh) 一种进行会话能力信息操作的方法及网络实体
CN101388883B (zh) 多媒体会话中特定设备的管理方法、系统和设备
EP1709777B1 (en) Session initiation protocol signalling
CN1984132B (zh) 一种对会话能力信息进行处理的方法和终端
CN103797765A (zh) 用于配置和实现ip多媒体子系统补充服务的方法和设备
CN101577942B (zh) 既建立ims媒体链接又建立cs媒体链接的方法
KR101003944B1 (ko) 인스턴트 메시지 전송 방법
KR101129247B1 (ko) 인스턴트 메시징 서비스에 따른 호 처리 방법 및 장치
Chaudhary et al. Mobile-to-mobile multimedia service provisioning in the ims using rest-based mobile services
EP1672867A1 (en) Method to the fast and reliable transfer of large amount of data between mobile radio users involved in a SIP session
RU2389148C2 (ru) Способ и устройство идентификации ims-услуги
KR100757535B1 (ko) 어플리케이션 구분이 가능한 멀티미디어 서비스 방법 및장치
CN101009664B (zh) 一种处理会话初始化协议消息中内容的方法及网络实体

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20090622

PG1501 Laying open of application
PC1204 Withdrawal of earlier application forming a basis of a priority claim

Patent event date: 20090622

Comment text: Patent Application

Patent event code: PC12041R01I