KR101499354B1 - RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 서버 - Google Patents
RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 서버 Download PDFInfo
- Publication number
- KR101499354B1 KR101499354B1 KR1020130127764A KR20130127764A KR101499354B1 KR 101499354 B1 KR101499354 B1 KR 101499354B1 KR 1020130127764 A KR1020130127764 A KR 1020130127764A KR 20130127764 A KR20130127764 A KR 20130127764A KR 101499354 B1 KR101499354 B1 KR 101499354B1
- Authority
- KR
- South Korea
- Prior art keywords
- rtcweb
- ims
- module
- message
- client
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1016—IP multimedia subsystem [IMS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
Abstract
RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 서버가 제공된다. 개시된 서버는 RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 RTCWeb 서버에 있어서, 적어도 하나의 RTCWeb 클라이언트와 통신하며, RTCWeb 서비스에 관련된 동작을 수행하기 위한 RTCWeb 모듈; IMS의 S-CSCF와 통신을 수행하며, IMS 클라이언트로서의 동작을 수행하기 위한 IMS 모듈; 및 IMS와 관련된 메시지와 RTCWeb와 관련된 메시지 사이의 번역을 수행하는 메시지 번역 모듈;를 포함한다.
Description
본 발명의 실시예들은 RTCWeb(Real-Time Communication in WEB-browsers) 서비스를 IMS(IP Multimedia Subsystem) 네트워크에 제공하기 위한 서버에 관한 것이다.
웹 브라우저에서의 음성 통신, 화상 회의 등과 같은 실시간 멀티미디어 통신을 위한 표준기술이 IETF(Internet Engineering Task Force)의 RTCWeb(Real-Time Communication in WEB-browsers) 워킹 그룹을 통해 표준화되고 있다. 그 동안 웹 브라우저에서의 실시간 멀티미디어 통신은 응용 프로그램에 따라 각 개발사 별로 비표준적인 방법에 의해 진행되어 왔는데, 이를 표준화하기 위한 노력이 W3C(World Wide Web Consortium) 및 IETF에서 진행되고 있다.
표준화를 위해 고려하고 있는 서비스는 기본적으로 웹 브라우저 간의 실시간 멀티미디어 통신 서비스들이다. 일례로서, 각각의 웹 브라우저 사이에 음성 통신 및 영상 통신을 이용하는 화상 회의, 멀티 유저 네트워크 게임 등이 있다.
도 1은 기존의 웹 브라우저에서의 실시간 멀티미디어 통신의 개념을 도시하고 있다.
도 1을 참조하면, 음성, 영상 등의 멀티미디어 데이터는 웹 브라우저 간에 직접 연결을 통해 전송된다. 이에 비해 웹 브라우저 간의 세션 연결을 위한 신호 경로는 웹 서버와 같은 별도의 서버를 통해 이루어질 수 있다. 또한, 신호 프로토콜은 기존의 세션 제어 프로토콜(SIP: Session Initiation Protocol)이 사용될 수 있으며, 그 밖에 XMPP(Extensible Messaging and Presence Protocol)등 다양한 프로토콜이 이용될 수 있다.
이러한 모델 이외에 다양한 형태의 신호 프로토콜의 연결이 가능하면 본 표준에서는 웹 브라우저 간의 직접연결을 통한 미디어 경로에 대해서 사전에 미디어 호환성 등 표준적인 방법에 의한 설정이 필수적으로 요구된다.
또한, 웹 브라우저와 웹 서버 간에는 표준적인 방식이나 독자적인 방식 등 어떤 형태의 방식이 사용되어도 된다. 다만 웹 브라우저로 내려오게 되는 응용은 표준적인 웹 브라우저 내의 API(Application Program Interface)를 통해서 동작되기만 하면 된다. 이러한 응용은 Javascript, HTML 등 다양한 형태가 될 수 있으며, 현재 W3C에서는 WebRTC(Web Applications and Device API) 워킹 그룹을 통해, Javascript를 위한 HTML5 기반에서의 웹 브라우저 내의 API 표준을 개발하고 있다.
더불어, IMS(IP Multimedia Subsystem)는 인터넷 프로토콜(IP: Internet Protocol)을 기반으로 음성, 오디오, 비디오 및 데이터 등의 멀티미디어 서비스를 제공하는 규격을 의미한다. IMS는 기본적으로 범용의 인터넷 기반 기술과 표준화된 네트워크 기능들을 사용함으로써 서비스의 가격 경쟁력 향상과 신속한 서비스 개발 및 변경을 추구한다.
IMS는 액세스 네트워크와는 독립적이며, 세션 관리 기능의 개선으로 서로 다른 네트워크의 애플리케이션들이 손쉽게 연동되어 서비스 간 글로벌 연동과 유무선망의 컨버전을 촉진시킨다. IMS는 초기 All-IP망 광대역 부호 분할 다중 접속(W-CDMA)망에서 다른 이동 통신 시스템 간의 상호 연동과 컨버전을 위하여 제안되었지만 현재는 이동 통신 시스템뿐만 아니라 IP망을 기반으로 하는 각종 유무선 통합망을 지원하는 기술로 확대되고 있다.
한편, RTCWeb은 고유한 특성을 가지고 있으며 이러한 특성을 이용하여 RTCWeb 서비스를 IMS 네트워크에 제공하기 위해서는 적절한 아키텍처가 필요하다.
상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 본 발명에서는 RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 서버를 제안하고자 한다.
본 발명의 다른 목적들은 하기의 실시예를 통해 당업자에 의해 도출될 수 있을 것이다.
상기한 목적을 달성하기 위해 본 발명의 바람직한 일 실시예에 따르면, RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 RTCWeb 서버에 있어서, 적어도 하나의 RTCWeb 클라이언트와 통신하며, RTCWeb 서비스에 관련된 동작을 수행하기 위한 RTCWeb 모듈; IMS의 S-CSCF와 통신을 수행하며, IMS 클라이언트로서의 동작을 수행하기 위한 IMS 모듈; 및 IMS와 관련된 메시지와 RTCWeb와 관련된 메시지 사이의 번역을 수행하는 메시지 번역 모듈;을 포함하는 것을 특징으로 하는 RTCWeb 서버가 제공된다.
상기 RTCWeb 서버는, 상기 RTCWeb 클라이언트가 웹 애플리케이션을 포함하는 경우, HTTP 요청 서비스를 지원하는 웹 서버 모듈;을 더 포함할 수 있다.
상기 RTCWeb 모듈은, 상기 IMS와 관련된 메시지 또는 상기 RTCWeb와 관련된 메시지의 목적지가 상기 RTCWeb 클라이언트인지 상기 IMS 클라이언트인지를 판단하는 식별 핸들러 모듈; 및 상기 RTCWeb 서버가 상기 RTCWeb 클라이언트처럼 동작하도록 제어하는 RTCWeb 유저 에이전트 모듈;를 포함할 수 있다.
상기 RTCWeb 모듈은, RLS(Resource List Server) 기능을 제공하는 프레즌스 서비스 모듈을 더 포함할 수 있다.
상기 IMS 모듈은, 상기 RTCWeb 서버가 상기 IMS 클라이언트처럼 동작하도록 제어하는 IMS 유저 에이전트 모듈; 및 RTCWeb 네트워크와 IMS 네트워크 사이의 전송자-수신자에 관한 매핑 테이블을 저장하는 루팅 기능 모듈;을 포함할 수 있다.
상기 IMS 모듈은, 프레즌스 서비스를 제공하는 IMS 프레즌스 에이전트 모듈;을 더 포함할 수 있다.
상기 RTCWeb 서버는 IMS 네트워크와 RTCWeb 네트워크 사이의 연동을 수행하되, 상기 RTCWeb 모듈은, RTCWeb과 관련된 "OFFER" 메시지를 상기 RTCWeb 클라이언트부터 수신하고, RTCWeb과 관련된 "WAITING" 메시지를 상기 RTCWeb 클라이언트로 전송하며, 상기 메시지 번역 모듈은 상기 RTCWeb과 관련된 "OFFER"를 상기 IMS과 관련된 "INVITE" 메시지로 번역하고, 상기 IMS 모듈은, 상기 S-CSCF를 통해 목적지인 IMS 클라이언트로 상기 IMS과 관련된 "INVITE" 메시지를 전송하고, 상기 목적지인 IMS 클라이언트로부터 상기 S-CSCF를 통해 IMS과 관련된 "180 Ringing" 메시지를 수신하고, 상기 메시지 번역 모듈은 상기 IMS과 관련된 "180 Ringing" 메시지를 RTCWeb과 관련된 "Ringing" 메시지로 번역하고, 상기 RTCWeb 모듈은, 상기 RTCWeb과 관련된 "Ringing" 메시지를 상기 RTCWeb 클라이언트로 전송하며, 상기 RTCWeb 클라이언트로부터 RTCWeb과 관련된 "PRANSWER" 메시지를 수신하며, 상기 메시지 번역 모듈(330)는 상기 RTCWeb과 관련된 "PRANSWER" 메시지를 IMS과 관련된 "PRACK" 메시지로 번역하고, 상기 IMS 모듈은, 상기 IMS과 관련된 "PRACK" 메시지를 상기 목적지인 IMS 클라이언트로 전송하고, IMS과 관련된 "200 OK"를 상기 S-CSCF를 통해 상기 목적지인 IMS 클라이언트로부터 수신하며, 상기 메시지 번역 모듈은 상기 IMS과 관련된 "200 OK" 메시지를 RTCWeb과 관련된 "OK" 메시지로 번역하고, 상기 RTCWeb 모듈은, 상기 RTCWeb과 관련된 "OK" 메시지를 상기 RTCWeb 클라이언트로 전송하고, RTCWeb 클라이언트로 "ANSWER" 메시지를 수신하고, 상기 메시지 번역 모듈은 상기 RTCWeb와 관련된 "ANSWER" 메시지를 IMS와 관련된 "ACK" 메시지로 번역하고, 상기 IMS 모듈은 상기 IMS와 관련된 "ACK" 메시지를 상기 S-CSCF를 통해 상기 목적지인 IMS 클라이언트로 전송할 수 있다.
상기 RTCWeb 서버는 상기 IMS 네트워크와 상기 RTCWeb 네트워크 간의 프레즌스 정보의 등록 및 업데이트 과정을 수행하되, 상기 RTCWeb 모듈은, RTCWeb와 관련된 "SUBSCRIBE" 메시지를 상기 RTCWeb 클라이언트로부터 수신하고, 상기 RTCWeb와 관련된 "SUBSCRIBE" 메시지에 대응되는 "OK" 메시지를 상기 RTCWeb 클라이언트로 전송하며, 상기 메시지 번역 모듈은 상기 RTCWeb과 관련된 "SUBSCRIBE" 메시지를 IMS과 관련된 "SUBSCRIBE" 메시지로 번역하고, 상기 IMS 모듈은, 상기 S-CSCF를 통해 목적지인 IMS 클라이언트로 상기 IMS과 관련된 "SUBSCRIBE" 메시지를 전송하고, 상기 S-CSCF를 통해 상기 목적지인 IMS 클라이언트로부터 상기 IMS과 관련된 "200 OK" 메시지를 수신하고, 상기 메시지 번역 모듈은 상기 IMS과 관련된 "200 OK" 메시지를 RTCWeb과 관련된 "OK" 메시지로 번역하고, 상기 RTCWeb 모듈은 상기 RTCWeb과 관련된 "OK" 메시지를 상기 RTCWeb 클라이언트로 전송하고, 상기 IMS 모듈은 상기 S-CSCF를 통해 상기 목적지인 IMS 클라이언트로부터 IMS과 관련된 "NOTIFY" 메시지를 수신하며, 상기 RTCWeb 서버의 메시지 번역 모듈은 상기 IMS과 관련된 "NOTIFY" 메시지를 RTCWeb과 관련된 "NOTIFY" 메시지로 번역하고, 상기 RTCWeb 모듈은 상기 RTCWeb과 관련된 "NOTIFY" 메시지를 상기 RTCWeb 클라이언트로 전송할 수 있다.
본 발명에 따르면, RTCWeb 서비스를 효율적으로 IMS 네트워크에 제공할 수 있게 된다.
도 1은 기존의 웹 브라우저에서의 실시간 멀티미디어 통신의 개념을 도시하고 있다.
도 2은 본 발명의 일 실시예에 따른 IMS 네트워크와 RTCWeb 네트워크 간의 연동(interworking)을 위한 시스템의 개략적인 구성을 도시한 도면이다.
도 3는 본 발명의 일 실시예에 따른 RTCWeb 서버의 세부적인 구성을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 RTCWeb 모듈의 세부적인 구성을 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 IMS 모듈(320)의 세부적인 구성을 도시한 도면이다
도 6은 본 발명의 일 실시예에 따라서, SIP과, RTCWeb 클라이언트와 RTCWeb 서버 사이에 사용되는 신호 프로토콜의 번역 과정을 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따라서, 호 시간 동안의 RTCWeb 클라이언트의 상태 다이어그램을 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따라서, IMS 네트워크와 RTCWeb 네트워크 간의 연동(세션 설정) 방법의 일 실시예를 도시한 도면이다.
도 9은 본 발명의 일 실시예에 따라서, IMS 네트워크와 RTCWeb 네트워크 간의 프레즌스 정보의 등록 및 업데이트 과정을 도시한 도면이다.
도 2은 본 발명의 일 실시예에 따른 IMS 네트워크와 RTCWeb 네트워크 간의 연동(interworking)을 위한 시스템의 개략적인 구성을 도시한 도면이다.
도 3는 본 발명의 일 실시예에 따른 RTCWeb 서버의 세부적인 구성을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 RTCWeb 모듈의 세부적인 구성을 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 IMS 모듈(320)의 세부적인 구성을 도시한 도면이다
도 6은 본 발명의 일 실시예에 따라서, SIP과, RTCWeb 클라이언트와 RTCWeb 서버 사이에 사용되는 신호 프로토콜의 번역 과정을 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따라서, 호 시간 동안의 RTCWeb 클라이언트의 상태 다이어그램을 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따라서, IMS 네트워크와 RTCWeb 네트워크 간의 연동(세션 설정) 방법의 일 실시예를 도시한 도면이다.
도 9은 본 발명의 일 실시예에 따라서, IMS 네트워크와 RTCWeb 네트워크 간의 프레즌스 정보의 등록 및 업데이트 과정을 도시한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
도 2은 본 발명의 일 실시예에 따른 IMS(IP Multimedia Subsystem) 네트워크와 RTCWeb(Real-Time Communication in WEB-browsers) 네트워크 간의 연동(interworking)을 위한 시스템의 개략적인 구성을 도시한 도면이다.
도 2을 참조하면, 연동 시스템(200)은 RTCWeb 네트워크(210) 및 IMS 네트워크(220)를 포함한다.
세부적으로, RTCWeb 네트워크(210)는 RTCWeb 서버(211) 및 하나 이상의 RTCWeb 클라이언트(212)를 포함한다. 그리고, IMS 네트워크(220)는 콜 서버(Call Server)로서 동작하는 S-CSCF(Serving-Call Session Control Function)(221), HSS(홈 가입자 서버, Home Subscriber Server)(222) 및 하나 이상의 IMS 클라이언트(223)를 포함한다.
RTCWeb 서버(211)는 웹 서버로서 동작하고, 실시간 통신 서비스와 관련된 요청을 처리한다. 그리고, RTCWeb 서버(211)는 서로 다른 네트워크 사이의 연동을 지원하는 게이트웨이의 역할을 수행한다. 게이트웨이로서의 기능은 서비스 제공자의 특정 요구에 적합하도록 서로 다른 구성요소로 분리되어 지원될 수 있다.
RTCWeb 클라이언트(212)는 RTCWeb 프로토콜로 구현된 애플리케이션을 실행하는 장치이며, RTCWeb 서버(211)와 통신을 수행한다. RTCWeb 프로토콜로 구현된 애플리케이션은 독립된 프로그램 또는 웹 브라우저일 수 있으며, 랩톱 컴퓨터, 노트북, 스마트폰, 태블릿 PC 등과 같은 통신 장치에 설치될 수 있다. 상기한 애플리케이션이 웹 브라우저인 경우, RTCWeb 클라이언트(212)는 HTTP 프로토콜 또는 웹 소켓(Websocket) 프로토콜을 이용하여 RTCWeb 서버(211)와 통신할 수 있다.
또한, S-CSCF(221)는 SIP(Session Initiation Protocol)를 통해 IMS 클라이언트(223)와 통신을 수행하며, IMS 클라이언트(223)는 스마트폰, 태블릿 PC, PDA(Personal Digital Assistant), 휴대폰, 기타 이동 통신 기기 등과 같은 등록된 IMS 지원 가능(subscribed IMS-capable) 장치이다. 특정 IMS 클라이언트(223)는 RTCWeb 클라이언트(212) 또는 다른 IMS 클라이언트(223)와 멀티미디어 통신을 수행하기 위한 요청 메시지를 S-CSCF(221)로 전송하고, S-CSCF(221)는 멀티미디어 통신이 요청된 단말에 대한 정보를 HSS(222)에서 확인한다.
한편, RTCWeb 클라이언트(212)와 IMS 클라이언트(223) 사이의 통신은 RTCWeb 서버(211)를 통해 수행될 수 있다. 즉, RTCWeb 서버(211)는 IMS 인터페이스를 통해 S-CSCF(221)와 연결되고, RTCWeb 클라이언트(212)로부터의 모든 메시지를 처리하기 위해 RTCWeb 인터페이스를 사용한다. IMS의 관점에서, RTCWeb 서버(211)는 일반적인 IMS 가입자로 간주된다.
즉, 서비스 제공자는 IMS 오퍼레이터에 대한 몇몇의 프로파일을 등록하고, 이를 RTCWeb 클라이언트(212)로부터 IMS 클라이언트(223)로의 요청의 처리 시 활용한다. 다시 말해, IMS 네트워크(220)로부터 목적지인 RTCWeb 클라이언트(212)로의 호(call)를 설립하기 위해, IMS 클라이언트(223)는 RTCWeb 서버(211)에 의해 등록된 URI를 가져온다. 따라서, 요청 메시지는 S-CSCF(221)를 통해 RTCWeb 서버(211)로 전달되고, RTCWeb 서버(211)는 해당 요청 메시지를 적합한 RTCWeb 클라이언트(212)로 전달한다. 올바른 목적지(즉, 목적 RTCWeb 클라이언트(212))를 식별하기 위해, RTCWeb 서버(211)는 수신된 SIP 메시지 내의 "To" 필드 값을 확인할 수 있다.
이하, 하기의 도면들을 참조하여, RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 RTCWeb 서버(211)에 대해 보다 상세하게 설명한다.
도 3는 본 발명의 일 실시예에 따른 RTCWeb 서버(211)의 세부적인 구성을 도시한 도면이다.
도 3을 참조하면, RTCWeb 서버(211)는 앞서 설명한 바와 같이 RTCWeb 네트워크(210)와 IMS 네트워크(220)를 연동시키는 게이트웨이의 역할을 수행하는 장치로서, RTCWeb 모듈(310), IMS 모듈(320), 메시지 번역(Message Translator) 모듈(330) 및 웹 서버(Web Server) 모듈(340)을 포함할 수 있다.
RTCWeb 모듈(310)은 적어도 하나의 RTCWeb 클라이언트(212)와 통신하며, RTCWeb 서비스에 관련된 동작을 수행한다. 즉, RTCWeb 모듈(310)은 RTCWeb 서비스의 제공을 위한 일반적인 프로세스 절차(RTCWeb 메시지 처리 절차)를 수행한다.
IMS 모듈(320)은 S-CSCF(221)와 통신을 수행하며, IMS 클라이언트로서의 동작을 수행하기 기능을 담당한다. 즉, IMS 모듈(320)은 IMS 서비스의 제공을 위한 일반적인 프로세스 절차(IMS 메시지 처리 절차)를 수행한다. IMS 모듈(320)에서의 출력은 일반적인 SIP 메시지일 수 있으며, 이는 IMS 네트워크(220)의 S-CSCF(221)로 전달된다.
메시지 번역 모듈(330)은 RTCWeb와 관련된 메시지와 IMS와 관련된 메시지 사이의 번역을 수행한다. 즉, 메시지 번역 모듈(230)은 IMS와 관련된 메시지를 RTCWeb와 관련된 메시지로 번역하거나 RTCWeb와 관련된 메시지를 IMS와 관련된 메시지로 번역한다.
보다 상세하게, 목적지가 IMS 클라이언트(223)인 RTCWeb 관련 메시지가 RTCWeb 모듈(310)을 통해 수신되는 경우, RTCWeb 관련 메시지는 메시지 번역 모듈(330)로 전달되고, 메시지 번역 모듈(330)은 RTCWeb 관련 메시지를 IMS 관련 메시지로 번역하여 IMS 모듈(320)로 전달하며, IMS 모듈(320)은 전달받은 IMS 관련 메시지를 처리한다. 유사하게, S-CSCF(221)를 통해 IMS 관련 메시지가 수신되는 경우 IMS 관련 메시지는 메시지 번역 모듈(330)로 전달되고, 메시지 번역 모듈(330)은 IMS 관련 메시지를 RTCWeb 관련 메시지로 번역하여 RTCWeb 모듈(310)로 전달하며, RTCWeb 모듈(310)은 전달받은 IMS 관련 메시지를 처리한다.
이를 위해, 메시지 번역 모듈(330)은 IMS 관련 메시지와 RTCWeb 관련 메시지 사이의 매핑을 지원할 수 있어야 한다. 이러한 매핑은 서로 유사한 의미를 가지는 명령어들을 매칭시킴으로써 수행될 수 있다. 메시지 번역 모듈(330)은 자신의 최대 한도 내에서 RTCWeb 관련 메시지 내지 IMS 관련 메시지에 대한 번역을 수행하지만, 최대 한도 내에서의 번역이 불가능한 경우, 매개 변수에 대해 미리 정의된 디폴트 값을 이용하여 RTCWeb 관련 메시지 내지 IMS 관련 메시지에 대한 번역을 수행할 수 있다.
그리고, 웹 서버 모듈(340)은 RTCWeb 클라이언트(212)가 웹 애플리케이션을 포함하는 경우, HTTP 요청 서비스를 지원하는 기능을 수행한다. 즉, 웹 서버 모듈(340)은 RTCWeb 클라이언트(212)에서 웹 애플리케이션이 구동되는 경우 발생하는 HTTP 요청을 처리 즉, 일반적인 HTTP 요청을 지원하는 역할을 수행한다.
이하, 하기의 도면들을 참조하여, 본 발명의 일 실시예에 따른 RTCWeb 모듈(310) 및 IMS 모듈(320)에 대해 보다 상세하게 설명한다.
도 4는 본 발명의 일 실시예에 따른 RTCWeb 모듈(310)의 세부적인 구성을 도시한 도면이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 RTCWeb 모듈(310)은 프레즌스 서비스(Presence Server) 모듈(410), 식별 핸들러(Identifying Handler) 모듈(420), RTCWeb 유저 에이전트(RTCWeb User Agent) 모듈(430), ICE 핸들러(Interactive Connectivity Establishment Handler) 모듈(440) 및 웹 소켓(Web Socket) 모듈(450)을 포함한다.
프레즌스 서비스 모듈(410)은 프레즌스 서비스를 위한 RLS(자원 목록 서버, Resource List Server)로서의 기능을 수행한다. 즉, RTCWeb 클라이언트(212) 또는 IMS 클라이언트(223)의 프레즌스 정보 구독 집계(aggregation of presence information subscription)를 제공한다. 따라서, RTCWeb 클라이언트(212)는 다른 RTCWeb 클라이언트(212)/IMS 클라이언트(223)의 리스트의 프레즌스 정보를 구독할 수 있다.
메시지 번역 모듈(330)의 개략적인 변환과 함께, 각 네트워크에서의 RLS는 프레즌스 관련 메시지를 서로 교환한다. 더불어, RTCWeb 네트워크(210) 내에 별도의 RLS를 배치하여 RTCWeb 네트워크(210)와 IMS 네트워크(220)에서 RLS를 분리시킴으로써, 각 네트워크에서 오류 또는 수정이 존재하는 경우 각 네트워크에서의 변동 사항의 발생을 최소화할 수 있다. RTCWeb 클라이언트(212)는 IMS 클라이언트(223) 및 다른 RTCWeb 클라이언트(212) 모두의 목록을 유지할 수 있으므로, 프레즌스 서비스 모듈(410)은 두 종류의 사용자를 분리할 수 있고, 정확한 프레즌스 정보를 검색할 수 있다.
한편, IMS 네트워크(220) 내에 RLS를 구현하는 것은 선택적일 수 있다. 만약, IMS 네트워크(220) 내의 RLS를 사용할 수 없는 경우, RTCWeb 서버(211)는 RTCWeb 네트워크(210) 및 IMS 네트워크(220) 내의 모든 클라이언트 단말(212, 223)을 위한 RLS로 동작할 수 있다.
그리고, RTCWeb 서버(211)는 식별 핸들러 모듈(420)에 의해 아이덴티티 서비스와 통신한다. 그리고, 식별 핸들러 모듈(420)은 IMS와 관련된 메시지 또는 RTCWeb와 관련된 메시지의 목적지가 RTCWeb 클라이언트(212)인지 IMS 클라이언트(223)인지를 판단하며, 서비스 제공업체에 대한 보안 인증 과정을 위해 고객 신원 확인 과정을 수행한다.
RTCWeb 유저 에이전트 모듈(430)은 목적지와의 통신을 위해, RTCWeb 서버(211)가 RTCWeb 클라이언트처럼 동작하도록 제어하는 기능을 수행한다. 즉, RTCWeb 유저 에이전트 모듈(430)은 다른 RTCWeb 클라이언트(212)와 멀티미디어 세션을 설정하거나 해체하는 역할을 수행한다.
RTCWeb 유저 에이전트 모듈(430)에 의해 수행되는 일부 세부적인 작업은 RTCWeb 클라이언트(212)에 RTCWeb 요청(즉, invitation, refer)를 생성하거나, 대응되는 응답 메시지(즉, accept, acknowledgement, trying)를 전송한다.
ICE 핸들러 모듈(440)은 RTCWeb 서버(211)에 대한 RTCWeb 클라이언트 기능을 지원하기 위해 추가 ICE(Interactive Connectivity Establishment) 관련 기능을 제공한다. 또한, ICE 핸들러 모듈(440)은 NAT(Network Address Translation) 장비 뒤에 가려진 사용자를 찾기 위한 릴레이 서버를 알아내는 기능을 수행한다. '
또한, ICE 핸들러 모듈(440)은 RTCWeb 유저 에이전트 모듈(430)에 의해 처리되는 결과를 추출하고, 자바 스크립트에 의해 수행되는 제안(offer)/ 응답(answer) 처리 동안의 지명 ICE 후보 쌍(ICE candidate pair)을 유지하는 기능을 수행한다. 페이지가 실행되는 브라우저가 ICE를 지원하지 않는 경우, 이러한 작업은 서버 측에서 발생할 수 있다.
웹 소켓 모듈(450)은 브라우저에서 동작하는 웹 애플리케이션과 원격 서버 간의 양방향 통신을 제공한다.
보다 상세하게, RTCWeb 클라이언트(212)를 위한 요청은 RTCWeb 모듈(310)에서 수신되고, IMS 모듈(320)은 IMS 네트워크(220)에 전달하기 전에 해당 요청을 처리한다. 또한, 실시간 멀티미디어 통신에 있어, 사용자(단말) 중 일부가 교체된 경우, 노티피케이션 메시지가 모든 사용자에게 통지된다. 즉, 노티피케이션 메시지는 웹 소켓 모듈(450)에 의해 관리되는 웹 소켓 프로토콜을 통해 전송된다.
도 5는 본 발명의 일 실시예에 따른 IMS 모듈(320)의 세부적인 구성을 도시한 도면이다.
도 5를 참조하면, 본 발명의 일 실시예에 따른 IMS 모듈(320)은 IMS 유저 에이전트(IMS User Agent) 모듈(510), IMS 프레즌스 에이전트(IMS Presence Agent) 모듈(520) 및 루팅 기능(Routing Function) 모듈(530)을 포함한다.
IMS 유저 에이전트 모듈(510)은 IMS의 관점에서 RTCWeb 서버(211)가 IMS 클라이언트처럼 동작하도록 제어한다. 즉, 게이트웨이인 RTCWeb 서버(211)는 IMS 등록, 등록 해제 및 기타 기존의 IMS 터미널이 세션 설정을 호출하기 위한 다른 작업과 같은 기본 IMS 기능을 수행할 수 있다.
따라서, IMS 유저 에이전트 모듈(510)은 REGISTER, INVITE, 200 OK 등과 같은 SIP 메시지를 처리하고 수신하는 게이트웨이 기능을 지원한다. 게이트웨이인 RTCWeb 서버(211)은 All-IP 네트워크에 위치하므로, 사전 등록(pre-registrations) 과정은 독립 실행형 프로시저로 수행될 수 있다. 등록 절차는 IMS 네트워크(220)의 프로파일을 등록하는 일반 IMS 터미널로서 RTCWeb 서버(211)에 의해 수행될 수 있다. 이 과정은 RTCWeb 클라이언트(212)와 독립적이며, 게이트웨이인 RTCWeb 서버(211)가 시작될 때 초기 시간에 한 번만 발생될 수 있다.
IMS 프레즌스 에이전트 모듈(520)은 프레즌스 서비스를 제공하며, 다른 IMS 클라이언트(223)나 RTCWeb 클라이언트(212)로부터 현재 상태에 관한 정보를 얻거나 현재 상태 정보를 다른 클라이언트(212, 223)에 전송할 때 사용된다. 또한, IMS 프레즌스 에이전트 모듈(520)은 프레즌스 서비스 모듈(410)로부터 변환된 메시지를 수신하고, 이를 IMS 클라이언트(223)로 전송한다.
루팅 기능 모듈(530)은 RTCWeb 네트워크(210)와 IMS 네트워크(220) 사이의 전송자-수신자에 관한 매핑 테이블을 저장한다(<sender, Receiver, sessionID>)하고, RTCWeb 클라이언트(212)로부터 IMS 클라이언트(223)로의 콜 요청을 서비스할 수 있다.
이하, 하기한 도면들을 참조하여, 본 발명의 일 실시예에 따른 연동 시스템(200)의 동작을 상세히 설명한다.
도 6은 본 발명의 일 실시예에 따라서, SIP과, RTCWeb 클라이언트와 RTCWeb 서버 사이에 사용되는 신호 프로토콜의 번역 과정을 도시한 도면이다. 상기 번역 과정은 RTCWeb 서버(211)에서 수행된다.
먼저, 단계(S602)에서는 메시지를 수신한다. 예를 들어, 메시지는 SIP 프로토콜을 사용하는 IMS 클라이언트(223)에 의해 IMS 네트워크(220)에서 전송되는 것이거나, 또는 RTCWeb 클라이언트(212)에 의해 RTCWeb 네트워크(210)에서 전송되는 것일 수 있다. 그리고, 상기 메시지는 독립 실행형 애플리케이션에서 실행되는 것이거나 특정 신호 프로토콜(SIP, H.323, Jabber)이 실행되는 브라우저의 웹 애플리케이션에서 실행되는 것일 수 있다.
다음으로, 단계(S604)에서는 수신된 메시지가 세션 프로토콜 메시지인지를 판단한다.
만약, 상기 메시지가 세션 프로토콜 메시지가 아니라면, 단계(S620)에서 상기 메시지는 대응되는 RTCWeb 클라이언트(212)로 전송되어 처리된다.
반대로, 상기 메시지가 세션 프로토콜 메시지인 경우, 단계(S606)에서는 목적지가 RTCWeb 클라이언트(212)인지 IMS 클라이언트(223)인지를 판단한다. 이러한 판단은 목적지 어드레스에 기초하여 사용자 프로파일의 정보를 확인하는 등의 다양한 방법을 통해 수행될 수 있다.
만약, 목적지가 IMS 클라이언트(223)인 경우, 단계(S608)는 상기 수신된 메시지의 포맷이 SIP 메시지인지 아닌지를 확인한다. 상기 메시지가 SIP 메시지가 아닌 경우(non-SIP), 즉, 상기 메시지가 다른 포맷(일례로, H.323, Jabber)인 경우, 단계(S610)에서는 다른 포맷의 메시지를 SIP 메시지로 번역하고, 단계(S612)에서 IMS 클라이언트로서 동작하는 RTCWeb 서버(211)는 상기 메시지를 IMS 도메인 즉, S-CSCF 서버(221)로 전송한다. 또한, 상기 메시지가 SIP 메시지인 경우, RTCWeb 서버(211)는 단계(S610)를 생략하고 단계(S612) 만을 수행한다.
만약, 목적지가 RTCWeb 클라이언트(212)인 경우, 단계(S616)에서, RTCWeb 서버(211)는 수신된 메시지의 프로토콜을 지원할 수 있는지는 확인해야 한다. 상기 RTCWeb 서버(211)가 수신된 메시지의 프로토콜을 지원할 수 없는 경우, 단계(S618)에서는 RTCWeb 메시지로 번역하는 과정을 수행하고, 단계(S620)에서 상기 메시지는 대응되는 RTCWeb 클라이언트(212)로 전송되어 처리된다. RTCWeb 서버(211)로 전송된 신호 메시지의 프로토콜은 표준화되지 않았으며, RTCWeb 서비스 제공 업체에 따라 다를 수 있다. 또한, 상기 RTCWeb 서버(211)가 수신된 메시지의 프로토콜을 지원할 수 있는 경우, RTCWeb 서버(211)는 단계(S618)를 생략하고 단계(S620) 만을 수행한다.
도 7은 본 발명의 일 실시예에 따라서, 호 시간 동안의 RTCWeb 클라이언트(212)의 상태 다이어그램을 도시한 도면이다.
RTCWeb 클라이언트(212)가 세션 설립 요청을 하면 "Calling" 상태로 변환된다. "Calling" 상태는 상대 클라이언트가 요청을 수락하여 수락 응답 메시지가 수신될 때까지 대기 상태가 된다.
이후 상대 클라이언트가 요청을 수락하면, "InCall" 상태로 변환된다. "InCall" 상태에서 어플리케이션이 종료되면, "Hangup" 상태가 되어 연결이 종료된다. 만일 "InCall" 상태에서 페이지 리로딩을 하게 되면, 상태는 "Reloading" 상태로 변환되고, 문제가 없다면 "InCall" 상태로 돌아간다. 만일 "Reloading" 과정에서 사용자가 종료버튼을 하게 되거나 세션이 종료된다면 "Hangup" 상태가 되어 어플리케이션의 통화 세션이 종료된다.
도 8은 본 발명의 일 실시예에 따라서, IMS 네트워크(220)와 RTCWeb 네트워크(210) 간의 연동(세션 설정) 방법의 일 실시예를 도시한 도면이다. 이하, 도 8을 참조하여 각 단계 별로 수행되는 과정을 상세히 설명한다.
먼저, 단계(S802)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 업그레이드 오퍼를 위한 일반적인 웹 소켓 핸드쉐이크를 위한 HTTP GET 요청을 RTCWeb 클라이언트(212)로부터 수신한다. 그리고, 단계(S804)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 필요한 정보를 얻기 위해 HTTP GET 요청을 분석한 후, HTTP GET 요청의 응답 메시지인 "101 Switching Protocols" 메시지를 RTCWeb 클라이언트(212)로 전송한다. 일례로서, 단계(S802) 및 단계(S804)는 RTCWeb 모듈(310)의 웹 소켓 모듈(450)에서 수행될 수 있다.
다음으로, 단계(S806)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 컨퍼런스 서비스의 콜 요청 메시지인 "OFFER" 메시지를 RTCWeb 클라이언트(212)부터 수신한다. 그 후, 단계(S808)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 "OFFER" 메시지가 처리되고 있으며, 목적지(즉, IMS 클라이언트(223))로 전송될 것임을 알리는(즉, 콜 요청 시도 중임을 알리는) 대기 메시지인 "WAITING" 메시지를 RTCWeb 클라이언트(212)로 전송한다. 일례로서, 단계(S806) 및 단계(S808)는 RTCWeb 모듈(310)의 RTCWeb 유저 에이전트 모듈(430) 및 웹 소켓 모듈(450)에서 수행될 수 있다.
한편, "OFFER" 메시지 및 "WAITING" 메시지는 RTCWeb 기술 분야와 관련하여 당업자에서 널리 알려진 사항이므로, 해당 메시지에 대한 보다 자세한 설명은 생략하기로 한다.
계속하여, 단계(S810)에서, RTCWeb 서버(211)의 메시지 번역 모듈(330)은 IMS 네트워크(220)에 요청(즉 "OFFER")를 라우팅하기 위해, RTCWeb과 관련된 콜 메시지인 "OFFER"를 IMS과 관련된 초대 메시지인 "INVITE" 메시지로 번역한다.
그 후, RTCWeb 서버(211)의 IMS 모듈(320)의 IMS 유저 에이전트(410)와 IMS 네트워크(220)는 세션 설립 요청 과정을 수행한다.
보다 상세하게, IMS 유저 에이전트(410)는, 단계(S812)에서 S-CSCF(221)를 통해 목적지인 IMS 클라이언트(223)로 "INVITE" 메시지를 전송하고, 단계(S814)에서 IMS 클라이언트(223)로부터 S-CSCF(221)를 통해 "183 Session Progress" 메시지를 수신한다. 그리고, 단계(S816)에서 "INVITE" 메시지에 대한 잠정 응답인 "180 Ringing" 메시지를 S-CSCF(221)를 통해 IMS 클라이언트(223)로부터 수신한다.
그리고, 단계(S818)에서, RTCWeb 서버(211)의 메시지 번역 모듈(330)은 IMS과 관련된 "180 Ringing" 메시지를 RTCWeb과 관련된 "Ringing" 메시지로 번역한다. "Ringing" 메시지는 발신자(RTCWeb 클라이언트(212))에게 수신자(IMS 클라이언트(223))의 현재 상태에 관한 정보를 알려주는 메시지이다. 그 후, 단계(S820)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 "Ringing" 메시지를 RTCWeb 클라이언트(212)로 전송한다. 단계(S820)는 루팅 기능 모듈(530)을 참조하여 RTCWeb 유저 에이전트 모듈(430) 및 웹 소켓 모듈(450)에서 수행된다.
계속하여, 단계(S822)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 RTCWeb 클라이언트(212)로부터 "PRANSWER" 메시지를 수신한다. 단계(S822)은 RTCWeb 유저 에이전트 모듈(430), ICE 핸들러 모듈(440) 및 웹 소켓 모듈(450)에서 수행된다.
그리고, 단계(S824)에서, RTCWeb 서버(211)의 메시지 번역 모듈(330)는 RTCWeb과 관련된 "PRANSWER" 메시지를 IMS과 관련된 "PRACK" 메시지로 번역한다. "PRACK" 메시지는 세션에 대한 신뢰할 수 있는 Provisional ACK를 제공하는 메시지를 의미한다.
또한, RTCWeb 서버(211)의 IMS 모듈(320)의 IMS 유저 에이전트(410)는, 단계(S826)에서 S-CSCF(221)를 통해 "PRACK" 메시지를 목적지인 IMS 클라이언트(223)로 전송하고, 단계(S828)에서 "PRACK" 메시지에 대한 응답 메시지인 "200 OK"를 S-CSCF(221)를 통해 목적지인 IMS 클라이언트(223)로부터 수신한다.
그 후, 단계(S830)에서, RTCWeb 서버(211)의 메시지 번역 모듈(330)은 IMS과 관련된 "200 OK" 메시지를 RTCWeb과 관련된 "OK" 메시지로 번역하고, 단계(S832)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 "OK" 메시지를 RTCWeb 클라이언트(212)로 전송한다. 단계(S832)는 루팅 기능 모듈(530)을 참조하여 RTCWeb 유저 에이전트 모듈(430) 및 웹 소켓 모듈(450)에서 수행된다.
계속하여, 단계(S834)에서는, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 RTCWeb 클라이언트(212)로 최종적인 회신인 "ANSWER" 메시지를 수신한다. 단계(S834)은 RTCWeb 유저 에이전트 모듈(430) 및 웹 소켓 모듈(450)에서 수행된다.
그리고, 단계(S836)에서, RTCWeb 서버(211)의 메시지 번역 모듈(330)은 RTCWeb와 관련된 "ANSWER" 메시지를 IMS와 관련된 "ACK" 메시지로 번역한다. 그리고, 단계(S838)에서, IMS 모듈(320)의 IMS 유저 에이전트(410)는 "ACK" 메시지를 S-CSCF(221)를 통해 목적지인 IMS 클라이언트(223)로 전송한다.
도 9은 본 발명의 일 실시예에 따라서, IMS 네트워크(220)와 RTCWeb 네트워크(210) 간의 프레즌스 정보의 등록 및 업데이트 과정을 도시한 도면이다. 이하, 도 9을 참조하여 각 단계 별로 수행되는 과정을 상세히 설명한다.
먼저, 단계(S902)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 업그레이드 오퍼를 위한 일반적인 웹 소켓 핸드쉐이크를 위한 HTTP GET 요청을 RTCWeb 클라이언트(212)로부터 수신한다. 그리고, 단계(S904)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 필요한 정보를 얻기 위해 HTTP GET 요청을 분석한 후, HTTP GET 요청의 응답 메시지인 "101 Switching Protocols" 메시지를 RTCWeb 클라이언트(212)로 전송한다. 일례로서, 단계(S902) 및 단계(S904)는 RTCWeb 모듈(310)의 웹 소켓 모듈(450)에서 수행될 수 있다.
다음으로, 단계(S906)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 프레즌스 정보의 등록 메시지인 "SUBSCRIBE" 메시지를 RTCWeb 클라이언트로(212)부터 수신한다. 그리고, 단계(S908)에서, "SUBSCRIBE" 메시지에 대응되는 "OK" 메시지를 RTCWeb 클라이언트(212)로 전송한다. 일례로서, 단계(S906) 및 단계(S908)는 RTCWeb 모듈(310)의 프레즌스 서비스 모듈(410) 및 웹 소켓 모듈(450)에서 수행될 수 있다.
계속하여, 단계(S910)에서, RTCWeb 서버(211)의 메시지 번역 모듈(330)은 RTCWeb과 관련된 "SUBSCRIBE" 메시지를 IMS과 관련된 "SUBSCRIBE" 메시지로 번역한다.
그리고, RTCWeb 서버(211)의 IMS 모듈(320)은, 단계(S912)에서 S-CSCF(221)를 통해 목적지인 IMS 클라이언트(220)로 IMS과 관련된 "SUBSCRIBE" 메시지를 전송하며, 단계(S914)에서 S-CSCF(221)를 통해 목적지인 IMS 클라이언트(220)로부터 "200 OK" 메시지를 수신한다. 단계(S912) 및 단계(S914)는 IMS 모듈(320)의 IMS 유저 에이전트(410) 및 IMS 프레즌스 에이전트(420)에서 수행된다.
그 후, 단계(S916)에서, RTCWeb 서버(211)의 메시지 번역 모듈(330)은 IMS과 관련된 "200 OK" 메시지를 RTCWeb과 관련된 "OK" 메시지로 번역하고, 단계(S918)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 "OK" 메시지를 RTCWeb 클라이언트(212)로 전송한다. 단계(S918)는 프레즌스 서비스 모듈(410) 및 식별 핸들러 모듈(420)에 의해 수행될 수 있다.
다음으로, 단계(S920)에서, RTCWeb 서버(211)의 IMS 모듈(320)은 S-CSCF(221)를 통해 IMS 클라이언트(223)로부터 "NOTIFY" 메시지를 수신한다. 단계(S920)는 IMS 모듈(320)의 IMS 유저 에이전트(410) 및 IMS 프레즌스 에이전트(420)에서 수행된다.
그리고, 단계(S922)에서, RTCWeb 서버(211)의 메시지 번역 모듈(330)은 IMS과 관련된 "NOTIFY" 메시지를 RTCWeb과 관련된 "NOTIFY" 메시지로 번역하고, 단계(S924)에서, RTCWeb 서버(211)의 RTCWeb 모듈(310)은 RTCWeb과 관련된 "NOTIFY" 메시지를 RTCWeb 클라이언트(212)로 전송한다. 단계(S924)는 루팅 기능 모듈(530)을 참조하여 프레즌스 서비스 모듈(410) 및 웹 소켓 모듈(450)에서 수행된다.
또한 앞서 설명한 기술적 내용들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예들을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 하드웨어 장치는 실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
Claims (8)
- RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 RTCWeb 서버에 있어서,
적어도 하나의 RTCWeb 클라이언트와 통신하며, RTCWeb 서비스에 관련된 동작을 수행하기 위한 RTCWeb 모듈;
IMS의 S-CSCF와 통신을 수행하며, IMS 클라이언트로서의 동작을 수행하기 위한 IMS 모듈; 및
IMS와 관련된 메시지와 RTCWeb와 관련된 메시지 사이의 번역을 수행하는 메시지 번역 모듈;을 포함하되,
상기 RTCWeb 모듈은, 상기 IMS와 관련된 메시지 또는 상기 RTCWeb와 관련된 메시지의 목적지가 상기 RTCWeb 클라이언트인지 상기 IMS 클라이언트인지를 판단하는 식별 핸들러 모듈; 및 상기 RTCWeb 서버가 상기 RTCWeb 클라이언트처럼 동작하도록 제어하는 RTCWeb 유저 에이전트 모듈;를 포함하는 것을 특징으로 하는 RTCWeb 서버. - 제1항에 있어서,
상기 RTCWeb 서버는,
상기 RTCWeb 클라이언트가 웹 애플리케이션을 포함하는 경우, HTTP 요청 서비스를 지원하는 웹 서버 모듈;
을 더 포함하는 것을 특징으로 하는 RTCWeb 서버. - 삭제
- 제1항에 있어서,
상기 RTCWeb 모듈은,
RLS(Resource List Server) 기능을 제공하는 프레즌스 서비스 모듈을 더 포함하는 것을 특징으로 하는 RTCWeb 서버. - 제1항에 있어서,
상기 IMS 모듈은,
상기 RTCWeb 서버가 상기 IMS 클라이언트처럼 동작하도록 제어하는 IMS 유저 에이전트 모듈; 및
RTCWeb 네트워크와 IMS 네트워크 사이의 전송자-수신자에 관한 매핑 테이블을 저장하는 루팅 기능 모듈;을 포함하는 것을 특징으로 하는 RTCWeb 서버. - 제5항에 있어서,
상기 IMS 모듈은,
프레즌스 서비스를 제공하는 IMS 프레즌스 에이전트 모듈;을 더 포함하는 것을 특징으로 하는 RTCWeb 서버. - 제1항에 있어서,
상기 RTCWeb 서버는 IMS 네트워크와 RTCWeb 네트워크 사이의 연동을 수행하되,
상기 RTCWeb 모듈은, RTCWeb과 관련된 "OFFER" 메시지를 상기 RTCWeb 클라이언트부터 수신하고, RTCWeb과 관련된 "WAITING" 메시지를 상기 RTCWeb 클라이언트로 전송하며,
상기 메시지 번역 모듈은 상기 RTCWeb과 관련된 "OFFER"를 상기 IMS과 관련된 "INVITE" 메시지로 번역하고,
상기 IMS 모듈은, 상기 S-CSCF를 통해 목적지인 IMS 클라이언트로 상기 IMS과 관련된 "INVITE" 메시지를 전송하고, 상기 목적지인 IMS 클라이언트로부터 상기 S-CSCF를 통해 IMS과 관련된 "180 Ringing" 메시지를 수신하고,
상기 메시지 번역 모듈은 상기 IMS과 관련된 "180 Ringing" 메시지를 RTCWeb과 관련된 "Ringing" 메시지로 번역하고,
상기 RTCWeb 모듈은, 상기 RTCWeb과 관련된 "Ringing" 메시지를 상기 RTCWeb 클라이언트로 전송하며, 상기 RTCWeb 클라이언트로부터 RTCWeb과 관련된 "PRANSWER" 메시지를 수신하며,
상기 메시지 번역 모듈(330)는 상기 RTCWeb과 관련된 "PRANSWER" 메시지를 IMS과 관련된 "PRACK" 메시지로 번역하고,
상기 IMS 모듈은, 상기 IMS과 관련된 "PRACK" 메시지를 상기 목적지인 IMS 클라이언트로 전송하고, IMS과 관련된 "200 OK"를 상기 S-CSCF를 통해 상기 목적지인 IMS 클라이언트로부터 수신하며,
상기 메시지 번역 모듈은 상기 IMS과 관련된 "200 OK" 메시지를 RTCWeb과 관련된 "OK" 메시지로 번역하고,
상기 RTCWeb 모듈은, 상기 RTCWeb과 관련된 "OK" 메시지를 상기 RTCWeb 클라이언트로 전송하고, RTCWeb 클라이언트로 "ANSWER" 메시지를 수신하고,
상기 메시지 번역 모듈은 상기 RTCWeb와 관련된 "ANSWER" 메시지를 IMS와 관련된 "ACK" 메시지로 번역하고,
상기 IMS 모듈은 상기 IMS와 관련된 "ACK" 메시지를 상기 S-CSCF를 통해 상기 목적지인 IMS 클라이언트로 전송하는 것을 특징으로 하는 RTCWeb 서버. - 제1항에 있어서,
상기 RTCWeb 서버는 상기 IMS 네트워크와 상기 RTCWeb 네트워크 간의 프레즌스 정보의 등록 및 업데이트 과정을 수행하되,
상기 RTCWeb 모듈은, RTCWeb와 관련된 "SUBSCRIBE" 메시지를 상기 RTCWeb 클라이언트로부터 수신하고, 상기 RTCWeb와 관련된 "SUBSCRIBE" 메시지에 대응되는 "OK" 메시지를 상기 RTCWeb 클라이언트로 전송하며,
상기 메시지 번역 모듈은 상기 RTCWeb과 관련된 "SUBSCRIBE" 메시지를 IMS과 관련된 "SUBSCRIBE" 메시지로 번역하고,
상기 IMS 모듈은, 상기 S-CSCF를 통해 목적지인 IMS 클라이언트로 상기 IMS과 관련된 "SUBSCRIBE" 메시지를 전송하고, 상기 S-CSCF를 통해 상기 목적지인 IMS 클라이언트로부터 상기 IMS과 관련된 "200 OK" 메시지를 수신하고,
상기 메시지 번역 모듈은 상기 IMS과 관련된 "200 OK" 메시지를 RTCWeb과 관련된 "OK" 메시지로 번역하고,
상기 RTCWeb 모듈은 상기 RTCWeb과 관련된 "OK" 메시지를 상기 RTCWeb 클라이언트로 전송하고,
상기 IMS 모듈은 상기 S-CSCF를 통해 상기 목적지인 IMS 클라이언트로부터 IMS과 관련된 "NOTIFY" 메시지를 수신하며,
상기 RTCWeb 서버의 메시지 번역 모듈은 상기 IMS과 관련된 "NOTIFY" 메시지를 RTCWeb과 관련된 "NOTIFY" 메시지로 번역하고,
상기 RTCWeb 모듈은 상기 RTCWeb과 관련된 "NOTIFY" 메시지를 상기 RTCWeb 클라이언트로 전송하는 것을 특징으로 하는 RTCWeb 서버.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120119883 | 2012-10-26 | ||
KR20120119883 | 2012-10-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140053791A KR20140053791A (ko) | 2014-05-08 |
KR101499354B1 true KR101499354B1 (ko) | 2015-03-05 |
Family
ID=50886299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130127764A KR101499354B1 (ko) | 2012-10-26 | 2013-10-25 | RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 서버 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101499354B1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3016341B1 (de) * | 2014-10-27 | 2018-12-12 | Deutsche Telekom AG | Verfahren und Anordnung zur effizienten Gestaltung von Web-basierten Kommunikationsdiensten |
KR20160057873A (ko) | 2014-11-14 | 2016-05-24 | 삼성전자주식회사 | 통신 방법, 전자 장치 및 저장 매체 |
US10412130B2 (en) | 2016-04-04 | 2019-09-10 | Hanwha Techwin Co., Ltd. | Method and apparatus for playing media stream on web browser |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060001777A (ko) * | 2004-06-29 | 2006-01-06 | 삼성전자주식회사 | 인터넷 멀티미디어 서브시스템에서 패킷 호 서비스에관련된 제어 메시지를 송수신하는 방법 및 장치 |
KR20090030268A (ko) * | 2006-06-20 | 2009-03-24 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 시그널링 베어러 전송의 손실 |
KR20110025793A (ko) * | 2008-08-14 | 2011-03-11 | 모토로라 인코포레이티드 | 인터넷 프로토콜 멀티미디어 서브시스템 기반 통신 시스템에서의 베어러 경로의 라우팅을 위한 방법 및 장치 |
CN102347950A (zh) * | 2011-09-29 | 2012-02-08 | 中兴通讯股份有限公司 | 电信网络向互联网提供会话服务的方法及系统 |
KR101159341B1 (ko) * | 2005-08-19 | 2012-06-25 | 삼성전자주식회사 | Xdm 서비스 정보 관리 시스템 및 방법 |
-
2013
- 2013-10-25 KR KR1020130127764A patent/KR101499354B1/ko active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060001777A (ko) * | 2004-06-29 | 2006-01-06 | 삼성전자주식회사 | 인터넷 멀티미디어 서브시스템에서 패킷 호 서비스에관련된 제어 메시지를 송수신하는 방법 및 장치 |
KR101159341B1 (ko) * | 2005-08-19 | 2012-06-25 | 삼성전자주식회사 | Xdm 서비스 정보 관리 시스템 및 방법 |
KR20090030268A (ko) * | 2006-06-20 | 2009-03-24 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 시그널링 베어러 전송의 손실 |
KR20110025793A (ko) * | 2008-08-14 | 2011-03-11 | 모토로라 인코포레이티드 | 인터넷 프로토콜 멀티미디어 서브시스템 기반 통신 시스템에서의 베어러 경로의 라우팅을 위한 방법 및 장치 |
CN102347950A (zh) * | 2011-09-29 | 2012-02-08 | 中兴通讯股份有限公司 | 电信网络向互联网提供会话服务的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
KR20140053791A (ko) | 2014-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10536490B2 (en) | Apparatus and method for communications involving a legacy device | |
US9781167B2 (en) | WebRTC data channel facilitating IMS support of RCS features | |
CN101960822B (zh) | Sip-http应用相关器 | |
EP2870735B1 (en) | Method for adding client capability data to a sip message | |
CN103227788B (zh) | 实现网页应用程序与sip设备进行通信的方法和系统 | |
US11108838B2 (en) | Method, user equipment and application server for adding media stream of multimedia session | |
CN106850399B (zh) | 一种基于WebRTC技术即时消息的通信方法 | |
US9894128B2 (en) | Selective transcoding | |
US20140297879A1 (en) | Method and system for telecom network providing session service to internet | |
US8296447B2 (en) | Method for copying session information, call control server for executing the same, and computer product | |
US8472354B2 (en) | Method and system for providing custom call waiting | |
CN105307144B (zh) | 一种注册方法、呼叫方法、应用服务器及网络域设备 | |
US20200021481A1 (en) | Generic and extensible client agent for enabling third party communications | |
KR101499354B1 (ko) | RTCWeb 서비스를 IMS 네트워크에 제공하기 위한 서버 | |
US9374469B2 (en) | Voice over long term evolution-called party status | |
EP3007401B1 (en) | Integration of webrtc based clients into ims without sip registration | |
US9942280B2 (en) | Data exchange sessions using groups of terminals of a first user and at least one terminal of a second user | |
Rosenberg | A Framework for Application Interaction in the Session Initiation Protocol (SIP) | |
US8009664B2 (en) | Method for exchanging media description information between user agents using session initiation protocol | |
US8842686B2 (en) | Communication system configured with an SIP functioned relay server and communication method using the same | |
KR101791928B1 (ko) | Ip 인프라의 개방형 서비스 장치 | |
Grégoire | Building a House of Cards: On the Intrinsic Challenges of Evolving Communication Standards | |
JP2010232830A (ja) | 呼制御サーバー装置及びその方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180108 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190422 Year of fee payment: 5 |