KR20080020121A - Apparatus and method for providing internet-phone service - Google Patents
Apparatus and method for providing internet-phone service Download PDFInfo
- Publication number
- KR20080020121A KR20080020121A KR1020060083109A KR20060083109A KR20080020121A KR 20080020121 A KR20080020121 A KR 20080020121A KR 1020060083109 A KR1020060083109 A KR 1020060083109A KR 20060083109 A KR20060083109 A KR 20060083109A KR 20080020121 A KR20080020121 A KR 20080020121A
- Authority
- KR
- South Korea
- Prior art keywords
- protocol
- tcp
- signaling message
- udp
- client
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000011664 signaling Effects 0.000 claims abstract description 134
- 230000005540 biological transmission Effects 0.000 claims abstract description 11
- 230000004044 response Effects 0.000 claims description 10
- 238000012423 maintenance Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 3
- 230000010365 information processing Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 11
- 230000008901 benefit Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000000977 initiatory effect Effects 0.000 description 4
- 238000007792 addition Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
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/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0281—Proxies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/12—Arrangements for remote connection or disconnection of substations or of equipment thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- 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/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- 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/80—Responding to QoS
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
도 1은 종래의 인터넷폰 서비스 제공을 위한 시스템의 구성을 도시한 도면.1 is a diagram showing the configuration of a system for providing a conventional Internet phone service.
도 2는 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공을 위한 시스템의 구성을 도시한 도면.2 is a diagram showing the configuration of a system for providing an Internet phone service according to an embodiment of the present invention.
도 3은 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공을 위해 클라이언트에 설치되는 어플리케이션의 구성을 도시한 블록도.3 is a block diagram showing a configuration of an application installed in a client for providing an Internet phone service according to an embodiment of the present invention.
도 4는 본 발명의 바람직한 일 실시예에 따른 어플리케이션이 구동되는 과정을 나타낸 순서도.4 is a flowchart illustrating a process of driving an application according to an exemplary embodiment of the present invention.
도 5는 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공을 위한 프록시 장치의 구성을 도시한 블록도.Figure 5 is a block diagram showing the configuration of a proxy device for providing an Internet phone service according to an embodiment of the present invention.
도 6은 본 발명의 바람직한 일 실시예에 따른 프록시 장치에서 프로토콜의 변환이 수행되는 과정을 도시한 순서도.6 is a flowchart illustrating a process of converting a protocol in a proxy device according to an embodiment of the present invention.
도 7은 본 발명의 바람직한 일 실시예에 따라 인터넷폰 서비스의 제공이 이루어지는 순서를 도시한 순서도.Figure 7 is a flow chart showing the order in which the Internet phone service is provided according to an embodiment of the present invention.
본 발명은 인터넷폰 서비스에 관한 것으로서, 보다 상세하게는 통화 품질을 개선할 수 있는 인터넷폰 서비스 제공 장치 및 그 방법에 관한 것이다.The present invention relates to an internet phone service, and more particularly, to an apparatus and method for providing an internet phone service capable of improving call quality.
디지털 기술과 통신 기술의 발달로 인터넷의 사용이 보편화되면서 통화 요금이 저렴한 인터넷폰의 사용이 증가하고 있다.As the use of the Internet is becoming more common due to the development of digital and communication technologies, the use of low-cost Internet phones is increasing.
인터넷폰(Internet telephone) 서비스는 인터넷을 경유해서 음성 데이터의 송수신을 수행함으로써 통상의 전화처럼 사용이 가능하도록 하는 서비스로서 인터넷 전화 서비스 또는 IP 전화 서비스라고도 한다.An Internet telephone service is a service that enables use as a normal telephone by transmitting and receiving voice data via the Internet, also called an Internet telephone service or an IP telephone service.
이러한 종래의 인터넷폰 서비스 제공을 위한 시스템의 구성을 도 1을 참조하여 살펴본다.The configuration of a system for providing a conventional Internet phone service will be described with reference to FIG. 1.
도 1은 종래의 인터넷폰 서비스 제공을 위한 시스템의 구성을 도시한 도면이다.1 is a diagram showing the configuration of a system for providing a conventional Internet phone service.
도 1에 도시된 바와 같이, 종래의 인터넷폰 서비스 제공을 위한 시스템은 클라이언트(client)(100), 웹서버(web server)(120), 미디어 게이트웨이(media gateway)(130), 소프트 스위치(softswitch)(140)를 포함하며, 클라이언트(100)에는 웹서버(120)를 검색하여 클라이언트(100)가 웹서버(120)와 연결될 수 있도록 하는 웹브라우저(web browser)(102)와 통신망을 통해 인터넷폰 서비스를 제공받을 수 있는 어플리케이션(104)이 포함된다.As shown in FIG. 1, a system for providing a conventional Internet phone service includes a
웹서버(120)는 통신망을 통해 사용자가 인터넷폰 서비스를 제공하기 위한 사용자 인증에 필요한 웹페이지를 제공한다.The
미디어 게이트웨이(130)는 클라이언트(100)와 연결되며 통신망의 종류에 따라 트래픽(traffic) 포맷의 형식을 변환하는 장치이다.The
미디어 게이트웨이(130)는 소프트 스위치(140)와 연동되며, 소프트 스위치(140)는 음성 신호를 전달하는 전화망과 데이터를 전달하는 데이터 패킷망 사이를 연결하는 장치로서 미디어 게이트웨이(130) 또는 클라이언트(100)와 연결되어 클라이언트(100)에서 입력된 음성 데이터를 전화망과 연결하는 역할을 수행한다.The
이러한 종래의 인터넷폰 서비스 제공 시스템에서 각각의 구성 요소들간의 연결을 위한 프로토콜은 각각 다른 프로토콜을 사용한다.In the conventional Internet phone service providing system, protocols for connection between each component use different protocols.
이러한 종래의 인터넷폰 서비스 제공 시스템에서 먼저 클라이언트(100)와 웹서버(120)간의 연결(110)에서 응용 계층에서의 프로토콜은 HTTP(HyperText Transfer Protocol)을 프로토콜로 사용한다.In the conventional Internet phone service providing system, the protocol at the application layer in the
또한, 소프트 스위치(140)와 클라이언트(100)간의 연결(112)에서는 전송 계층에서는 UDP(User Datagram Protocol)를 응용 계층에서는 SIP(Session Initiation Protocol)를 프로토콜로 사용한다.In addition, the
또한, 클라이언트(100)가 미디어 게이트웨이(130)간의 연결(114)에서 전송 계층의 프로토콜은 RTP(Real-time Transport Protocol)를 프로토콜로 사용한다.In addition, the
클라이언트(100)와 클라이언트(100), 일반 전화 또는 휴대 전화와의 연결을 위한 클라이언트(100)와 소프트 스위치(140)간의 연결(112)의 안정성은 인터넷폰 제공 서비스의 품질과 직접적으로 관련된다.The stability of the
이러한 소프트 스위치(140)와 클라이언트(100)의 연결(112)에 사용되는 전송 계층의 프로토콜인 UDP는 속도가 빠르고 그 구조가 간단하다는 장점으로 인하여 널리 사용되고 있으며, 또한 현재 생산되어 제공되는 소프트 스위치(140)의 경우에도 UDP를 프로토콜로 기준으로 하고 있다.UDP, a transport layer protocol used for the
그러나, UDP의 경우 일방적으로 데이터를 전달하는 방식으로 소위 이러한 일방적으로 데이터를 전달하기만 하는 무관계 서비스의 통신 규약이므로 데이터의 송수신에 안정성이 떨어지는 문제점이 있다.However, in case of UDP, since it is a communication protocol of a relationless service that only transfers data unilaterally in such a manner that data is unilaterally transmitted, there is a problem in that data transmission and reception are inferior in stability.
실제 UDP를 프로토콜로 사용하여 인터넷폰 서비스를 구현하는 경우 약 5%의 에러율이 발생하는 것으로 조사되었으며, 이는 사용자에게 통화 품질을 보장하지 못하여 사용자들에게 인터넷폰 서비스를 널리 보급하는데 장애가 되는 문제점이 있다.In fact, when the Internet phone service is implemented using UDP as a protocol, an error rate of about 5% occurs. This is a problem that does not guarantee the call quality to the user, which impedes the spread of the Internet phone service to the users. .
또한, 이러한 문제점을 해결하기 위해 안정성이 높은 TCP를 프로토콜로 사용할 수 있으나 인터넷폰 제공 서비스 시스템을 구성하는 장치들을 교체하여야 하는 문제점이 있다.In addition, in order to solve this problem, TCP having high stability may be used as a protocol, but there is a problem in that the devices constituting the Internet phone providing service system need to be replaced.
그리고, 클라이언트와 연결되는 각각의 장치마다 서로 다른 프로토콜을 사용함으로써 인터넷폰 서비스의 장애가 발생하는 경우 통신망의 어떤 프로토콜을 사용하는 어느 계층에서 장애가 발생하였는지 파악하기 어려운 문제점이 있다.In addition, when a failure of an Internet phone service occurs by using a different protocol for each device connected to a client, there is a problem that it is difficult to identify which layer of a protocol uses a communication network.
상기한 바와 같은 종래의 문제점을 해결하기 위해, 본 발명은 안정성이 높아 신뢰성을 보장할 수 있는 인터넷폰 서비스 제공 장치 및 그 방법을 제안하는 것이다.In order to solve the conventional problems as described above, the present invention proposes an apparatus and method for providing an Internet phone service that can ensure the high reliability.
본 발명의 다른 목적은 이러한 높은 안정성과 통화 품질의 보장으로 인터넷폰 서비스를 널리 제공할 수 있는 인터넷폰 서비스 제공 장치 및 그 방법을 제안하는 것이다.Another object of the present invention is to propose an apparatus and method for providing an internet phone service capable of widely providing an internet phone service with such a high stability and guarantee of call quality.
본 발명의 또 다른 목적은 종래의 인터넷폰 서비스 제공을 위한 장치들을 교체 하지 않고도 안정성있는 인터넷폰 서비스를 제공할 수 있는 인터넷폰 서비스 제공 장치 및 그 방법을 제안하는 것이다.It is still another object of the present invention to propose an apparatus and method for providing an internet phone service capable of providing a stable internet phone service without replacing devices for providing a conventional internet phone service.
본 발명의 또 다른 목적은 인터넷폰 서비스의 장애가 발생하는 경우 실제 장애가 발생한 통신망을 정확히 파악할 수 있어 서비스 장애에 쉽게 대처할 수 있는 인터넷폰 서비스 제공 장치 및 그 방법을 제안하는 것이다.It is still another object of the present invention to propose an apparatus and method for providing an internet phone service, which can accurately grasp a network in which an actual failure occurs when an internet phone service failure occurs and easily cope with the service failure.
본 발명의 또 다른 목적은 프록시 장치를 클라이언트와 소프트 스위치 사이에 구비함으로써 메시지의 암호화 및 복호화가 가능하여 종래의 인터넷폰 서비스에 비해 보안이 유지될 수 있는 인터넷폰 서비스 제공 장치 및 그 방법을 제안하는 것이다.Still another object of the present invention is to provide an internet phone service providing apparatus and method capable of maintaining security as compared to a conventional internet phone service by providing a proxy device between a client and a soft switch. will be.
본 발명의 또 다른 목적은 NAT, 방화벽 등으로 인해 UDP 시그널링 메시지의 송수신이 어려운 환경의 클라이언트들도 인터넷폰 서비스를 이용할 수 있는 인터넷폰 서비스 제공 장치 및 그 방법을 제안하는 것이다.It is still another object of the present invention to propose an apparatus and method for providing an internet phone service in which clients in an environment in which it is difficult to transmit and receive UDP signaling messages due to NAT, firewall, and the like can use the internet phone service.
본 발명의 또 다른 목적들은 이하의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.Still other objects of the present invention will be readily understood through the following description of the embodiments.
상기한 바와 같은 목적을 달성하기 위해, 본 발명의 일 측면에 따르면 클라이언트와 소프트 스위치를 포함하는 인터넷폰 제공 시스템에 연결되는 인터넷폰 프록시 장치로서, 상기 클라이언트로부터 TCP 프로토콜 시그널링 메시지를 수신하는 TCP 송수신부; 상기 TCP 송수신부에 의해 수신된 TCP 프로토콜 시그널링 메시지의 프로토콜을 UDP 프로토콜로 변환하는 TCP/UDP 변환부; 상기 TCP/UDP 변환부에 의해 UDP 프로토콜로 변환된 시그널링 메시지를 상기 소프트 스위치에 전송하고, 상기 소프트 스위치로부터 UDP 프로토콜 시그널링 메시지를 수신하는 UDP 송수신부; 및 상기 UDP 송수신부가 수신한 상기 소프트 스위치로부터의 UDP 프로토콜 시그널링 메시지의 프로토콜을 TCP 프로토콜로 변환하는 UDP/TCP 변환부를 포함하되, 상기 TCP 송수신부는 상기 UDP/TCP 변환부에 의해 변환된 TCP 프로토콜 시그널링 메시지를 상기 클라이언트에 전송하는 인터넷폰 프록시 장치가 제공된다. In order to achieve the above object, according to an aspect of the present invention, an Internet phone proxy device connected to an Internet phone providing system including a client and a soft switch, TCP transceiver for receiving a TCP protocol signaling message from the client ; A TCP / UDP converter for converting a protocol of a TCP protocol signaling message received by the TCP transceiver into a UDP protocol; A UDP transceiver for transmitting a signaling message converted into a UDP protocol by the TCP / UDP converter to the soft switch, and receiving a UDP protocol signaling message from the soft switch; And a UDP / TCP converter converting a protocol of a UDP protocol signaling message from the soft switch received by the UDP transceiver into a TCP protocol, wherein the TCP transceiver transmits a TCP protocol signaling message converted by the UDP / TCP converter. There is provided an internet phone proxy device for transmitting to the client.
상기 시그널링 메시지는 SIP 프로토콜에 기반한 메시지이며, 호(call)의 접속, 호의 해제 및 호의 제어와 관련된 정보 중 적어도 하나의 정보를 포함하는 메시지이다. The signaling message is a message based on the SIP protocol and includes at least one of information related to connection of a call, release of a call, and control of a call.
상기 TCP 송수신부는, 상기 클라이언트와 TCP 세션을 생성하는 TCP 세션 생성부; 상기 수신되는 시그널링 메시지의 프로토콜이 TCP 프로토콜인지 여부를 시그널링 메시지의 헤더 정보를 이용하여 검출하는 TCP 검출부; 및 상기 생성된 TCP 세 션의 유지 및 해제를 제어하는 TCP 세션 제어부를 포함할 수 있다. The TCP transceiving unit may include a TCP session generating unit generating a TCP session with the client; A TCP detector for detecting whether a protocol of the received signaling message is a TCP protocol using header information of a signaling message; And it may include a TCP session control unit for controlling the maintenance and release of the generated TCP session.
상기 UDP 송수신부는, 상기 소프트 스위치와 UDP 세션을 생성하는 UDP 세션 생성부; 상기 수신되는 시그널링 메시지의 프로토콜이 UDP 프로토콜인지 여부를 시그널링 메시지의 헤더 정보를 이용하여 검출하는 UDP 검출부; 및 상기 생성된 UDP 세션의 유지 및 해제를 제어하는 UDP 세션 제어부를 포함할 수 있다. The UDP transceiver, UDP session generating unit for generating a UDP session with the soft switch; A UDP detector for detecting whether a protocol of the received signaling message is a UDP protocol; And a UDP session controller for controlling maintenance and release of the generated UDP session.
상기 클라이언트에는 인터넷폰 서비스를 위한 클라이언트 어플리케이션이 설치되며, 상기 클라이언트 어플리케이션은 에러 발생 시 상기 TCP 프로토콜 시그널링 메시지의 응답 정보를 이용하여 상기 인터넷폰 프록시 장치와 클라이언트 사이에서 발생한 에러인지 또는 상기 인터넷폰 프록시 장치와 상기 소프트 스위치 사이에서 발생한 에러인지 여부를 판단한다. The client is installed with a client application for Internet phone service, the client application is an error occurred between the Internet phone proxy device and the client using the response information of the TCP protocol signaling message when an error occurs or the Internet phone proxy device It is determined whether or not an error occurred between and the soft switch.
한편 상술한 본 발명의 인터넷폰 프록시 장치는 클라이언트로부터 전송되는 TCP 프로토콜 시그널링 메시지는 암호화된 시그널링 메시지이며, 상기 암호화된 시그널링 메시지를 복호화하기 위한 복호화부를 더 포함하고, 상기 UDP 송수신부는 상기 복호화부에 의해 복호화된 시그널링 메시지를 UDP 프로토콜로 상기 소프트 스위치에 송신한다. Meanwhile, in the above-described Internet phone proxy apparatus of the present invention, the TCP protocol signaling message transmitted from the client is an encrypted signaling message, and further includes a decryption unit for decrypting the encrypted signaling message. The decoded signaling message is sent to the soft switch in UDP protocol.
또한, 상술한 본 발명의 인터넷폰 프록시 장치는 상기 소프트 스위치로부터 전송되는 시그널링 메시지를 암호화하는 암호화부를 더 포함하며, 상기 TCP 송수신부는 상기 암호화부에 의해 암호화된 시그널링 메시지를 TCP 프로토콜로 상기 클라이언트에 송신한다. In addition, the above-described Internet phone proxy apparatus of the present invention further comprises an encryption unit for encrypting the signaling message transmitted from the soft switch, the TCP transceiver unit transmits the signaling message encrypted by the encryption unit to the client in the TCP protocol do.
상기 클라이언트 어플리케이션은 UDP 프로토콜 시그널링 메시지를 1차적으로 송신하며, 상기 UDP 프로토콜 시그널링 메시지 전송에 실패할 경우 TCP 프로토콜 시그널링 메시지를 송신한다. The client application primarily transmits a UDP protocol signaling message, and when it fails to transmit the UDP protocol signaling message, transmits a TCP protocol signaling message.
본 발명의 다른 측면에 따르면, 클라이언트, 프록시 장치 및 소프트 스위치를 포함하는 인터넷폰 서비스 시스템에서 상기 프록시 장치에서 실행되는 방법으로서, 상기 클라이언트의 요청에 응답하여 TCP 세션을 생성하는 단계(a); 상기 TCP 세션을 통해 TCP 프로토콜 시그널링 메시지를 수신하는 단계(b); 상기 수신된 TCP 프로토콜 시그널링 메시지의 프로토콜을 UDP 프로토콜로 변환하는 단계(c); 상기 단계(c)에서 변환된 UDP 프로토콜 시그널링 메시지를 상기 소프트 스위치에 송신하는 단계(d)를 포함하는 인터넷폰 서비스 제공 방법이 제공된다. According to another aspect of the present invention, a method executed in the proxy apparatus in an Internet phone service system including a client, a proxy apparatus and a soft switch, the method comprising: generating a TCP session in response to a request of the client; (B) receiving a TCP protocol signaling message over the TCP session; (C) converting a protocol of the received TCP protocol signaling message into a UDP protocol; An internet phone service providing method comprising the step (d) of transmitting the UDP protocol signaling message converted in step (c) to the soft switch is provided.
본 발명의 또 다른 측면에 따르면, 상술한 방법을 수행하기 위한 명령어들의 프로그램이 유형적으로 구현되어 있으며 전자 정보 처리 장치에 의해 판독될 수 있는 프로그램을 기록한 기록 매체가 제공된다. According to another aspect of the present invention, there is provided a recording medium in which a program of instructions for performing the above-described method is tangibly embodied and which records a program that can be read by an electronic information processing apparatus.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, and the same or corresponding components will be denoted by the same reference numerals regardless of the reference numerals and redundant description thereof will be omitted.
먼저 도 2를 참조하여 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공 시스템에 대해 살펴본다.First, an Internet phone service providing system according to an exemplary embodiment of the present invention will be described with reference to FIG. 2.
도 2는 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공을 위한 시스템의 구성을 도시한 도면이다.2 is a diagram showing the configuration of a system for providing an Internet phone service according to an embodiment of the present invention.
도 2에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공 시스템은 프록시 장치(220), 웹서버(web server)(240), 소프트 스위치(softswitch)(250) 및 미디어 게이트웨이(media gateway)(260)를 포함할 수 있으며 클라이언트(200)가 네트워크를 통해 인터넷폰 서비스 시스템에 접속할 수 있다. .As shown in FIG. 2, the Internet phone service providing system according to an exemplary embodiment of the present invention includes a
클라이언트(200)는 인터넷을 경유해서 인터넷폰 연결을 위한 통화 연결 설정 과정을 수행하고 음성 데이터를 송수신하여 통상의 전화처럼 사용이 가능하도록 하는 인터넷폰 서비스를 제공받을 수 있는 단말 장치이다.The
클라이언트(200)는 통신 기능을 구비하여 웹서버(240), 소프트 스위치(250), 미디어 게이트웨이(260)에 접속될 수 있으며 웹브라우저(202)와 어플리케이션(204)이 설치 가능한 장치이면 아무런 제한이 없다.The
클라이언트(200)는 퍼스널 컴퓨터(PC) 외에도 예를 들어, 노트북 컴퓨터, 개인 휴대 단말기(PDA : Personal Digital Assistant) 등이 있을 수 있다.The
클라이언트(200)에는 인터넷을 통해 웹서버(240)를 검색하여 클라이언트(200)를 웹서버(240)와 연결할 수 있도록 하는 웹브라우저(202)와 인터넷폰 서비스를 제공받을 수 있는 어플리케이션(204)이 포함된다.The
어플리케이션(204)은 인터넷폰 통화를 위한 통화 연결 설정 과정 및 시그널링 이후 음성 데이터를 송수신하는 기능을 수행한다. 통화 연결 설정을 위해 송수신되는 메시지를 시그널링 메시지라 하며, 시그널링 메시지는 호(call)의 접속과 해제 또는 기타 호의 제어와 관련된 메시지를 포함한다. The
종래의 경우, 어플리케이션(204)은 시그널링 메시지를 소프트 스위치로 직접 전송하나, 본 발명에 의하면, 어플리케이션(204)은 시그널링 메시지를 프록시 장치(220)에 전송한다. 어플리케이션(204)의 보다 상세한 구성은 도 3을 참조하여 설명하기로 한다.In the conventional case, the
어플리케이션(204)은 사용자 클라이언트(200)에 설치되어 구동되는 소프트웨어 프로그램의 형태로 구현될 수 있을 것이다. 본 발명의 바람직한 실시예에 따르면, 어플리케이션(204)은 인터넷폰 서비스를 위한 웹페이지와 연동되는 ActiveX Control 형태의 프로그램일 수 있다. The
클라이언트(200)는 프록시 장치(220)와 연결되며 프록시 장치(220)를 경유하여 소프트 스위치(250)와 시그널링 메시지를 송수신한다. 본 발명의 바람직한 실시예에 따르면, 상기 시그널링 메시지는 SIP(Session Initiation Protocol) 기반의 메시지일 수 있다. 그러나, 본 발명이 SIP 기반의 메시지에만 적용되는 것은 아니며, 다른 프로토콜의 시그널링 메시지에도 적용될 수 있다는 점은 당업자에게 있어 자명할 것이다. The
종래에 있어서, 소프트 스위치는 UDP 프로토콜만을 지원하는 경우가 일반적이었으며, 클라이언트와 소프트 스위치는 시그널링 메시지 송수신 시 UDP 프로토콜에 의해 메시지를 송수신하였다. In the related art, the soft switch generally supports only the UDP protocol, and the client and the soft switch transmit and receive the message by the UDP protocol when transmitting and receiving the signaling message.
TCP는 UDP와 비교하여 연결지향 프로토콜이라고 하며, TCP는 데이터 패킷의 도착 순서대로 배열이나 오류 수정(debugging) 등이 행해지므로 UDP에 비해 신뢰성이 높은 이점이 있다.Compared with UDP, TCP is called a connection-oriented protocol, and TCP has an advantage of being more reliable than UDP because arrangement or error correction is performed in the order of arrival of data packets.
그러나, 소프트 스위치를 포함하는 종래의 인터넷폰 서비스 제공 시스템에 포함되는 장치들에서는 전술한 바와 같이 속도가 빠르고 그 구조가 간단하다는 장점으로 인하여 UDP를 프로토콜을 사용하고 있으므로 이러한 장치들을 교체하지 않고도 안정성을 가진 TCP를 프로토콜로 사용할 수 있도록 하는 것이 요구된다.However, the devices included in the conventional Internet phone service providing system including the soft switch use the UDP protocol due to the advantages of the speed and the simple structure, as described above. It is required to be able to use TCP with the protocol.
따라서 본 발명에서는 이러한 종래의 인터넷폰 서비스 제공 시스템에 포함되는 장치들의 교체 없이 안정성 있는 인터넷폰 서비스를 제공하기 위해 프록시 장치(220)를 포함한다.Therefore, the present invention includes a
프록시 장치(220)는 클라이언트(200)와 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)와 각각 연결되어 인터넷폰 서비스를 제공하기 위한 인터넷폰 서비스 제공 장치이다.The
보다 안정성 있는 시그널링 메시지 전송을 위해, 클라이언트에 설치된 어플리케이션은 TCP 프로토콜 시그널링 메시지를 생성하여 프록시 장치(220)에 전송하며, 프록시 장치(220)는 사용자 클라이언트로부터 TCP 프로토콜의 시그널링 메시지를 수신하며, TCP 프로토콜의 시그널링 메시지를 UDP 프로토콜로 변환하여 소프트 스위치(250)로 전송한다. In order to transmit a more stable signaling message, an application installed in the client generates a TCP protocol signaling message and transmits it to the
또한, 프록시 장치(220)는 소프트 스위치(250)로부터 UDP 프로토콜 시그널링 메시지를 수신하며, UDP 프로토콜 시그널링 메시지를 TCP 프로토콜 시그널링 메시지로 변환하여 클라이언트(200)로 전송한다.In addition, the
프록시 장치의 구성과 기능은 도 4에서 보다 상세하게 살펴보기로 한다.The configuration and function of the proxy device will be described in more detail with reference to FIG. 4.
웹서버(240)는 인터넷폰 서비스를 이용하기 위한 웹 페이지를 제공한다. 또 한, 인터넷폰 서비스 사용자의 인증을 위한 웹 페이지를 더 제공할 수 있다.The
웹서버(240)와 클라이언트간의 연결(230)은 종래와 같이 HTTP를 프로토콜로 사용한다. The
소프트 스위치(250)는 기존 PSTN(Public Switched Telephone Network)에서 제공하던 음성 서비스를 패킷망에서 그대로 제공하기 위하여, 기존의 PSTN과 연동이 가능한 신호 방식의 호환 및 운용성, 확장성, 신뢰성 등 기존 통신 장비에서 요구되었던 기능들을 만족시키면서 동시에 패킷망에서 음성 서비스를 가능하게 하는 장치이다.The
소프트 스위치(250)는 패킷망에서 음성서비스를 가능하게 하는 H.323, SIP(Session Initiation Protocol), MGCP(Media Gateway Control Protocol), MEGACO(Media Gateway Control)/H.248 프로토콜 등을 모두 수용할 수 있는 소프트웨어를 기반으로 한다. The
한편, 현재 생산되어 제공되는 소프트 스위치(250)의 전송 계층의 프로토콜의 경우 UDP를 사용하고 있다. UDP를 프로토콜로 사용함으로써 속도가 빠르고 소프트 스위치(250)의 구조를 간단히 할 수 있는 이점이 있기 때문이다.On the other hand, the protocol of the transport layer of the
따라서, 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공 시스템에서는 종래의 소프트 스위치(250)의 구성을 변경하지 않아도 되도록 소프트 스위치(250)와 프록시 장치(220)간의 연결(232)은 UDP를 프로토콜로 사용한다.Therefore, in the Internet phone service providing system according to an exemplary embodiment of the present invention, the
미디어 게이트웨이(media gateway)(260)는 소프트 스위치(250)의 제어에 의해 통화 호 제어 및 보코딩(vocoding) 기능을 수행하는 장치이다. 통화 호 제어를 위해 소프트 스위치(250)와 제어 프로토콜, 예를 들면, MGCP(Media Gateway Control Protocol), MEGACO(Media Gateway Control)/H.248 프로토콜 등으로 연동하여 트래픽 흐름 경로를 결정한다.The
미디어 게이트웨이(260)는 미디어 게이트웨이(260) 간의 정보 전달이 IP 방식인 경우 RTP(Real-time Transport Protocol)를 이용하며, ATM 방식인 경우 영구 가상 연결(PVC : Permanent Virtual Connection) 혹은 교환 가상 연결(SVC : Switched Virtual Connection)을 이용한다. The
RTP는 실시간으로 음성이나 통화를 송수신하기 위한 전송 계층의 통신 규약으로, 라우터(router) 등의 통신망 기기에 의지하지 않고 단말 간에 실행되는 것이 특징이며, 원칙적으로 UDP나 TCP와 같은 전송 계층의 프로토콜이나 UDP나 TCP보다 상위 통신 규약으로 이용된다.RTP is a communication protocol of the transport layer for transmitting and receiving voice and calls in real time, and is characterized by being executed between terminals without relying on communication network devices such as routers. It is used as a communication protocol higher than UDP or TCP.
따라서, 인터넷폰 서비스 제공의 경우 시그널링은 SIP, H.323 등을 기반으로 하고, 실제 통화가 이루어져 클라이언트들간의 연결 또는 클라이언트와 일반 전화 또는 이동통신 전화와의 연결에 의해 상호간의 통화 내용인 음성 통화 데이터의 전송은 RTP에 의해 이루어진다. Therefore, in the case of providing Internet phone service, signaling is based on SIP, H.323, etc., and the actual call is made and the voice call, which is the contents of the call between each other, by the connection between the clients or the connection between the client and the general telephone or the mobile telephone The transmission of data is done by RTP.
이러한 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)와 연결되는 프록시 장치(220)는 종래와 같이 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)에서 사용되던 프로토콜을 그대로 이용함으로써 웹서버(240), 소프트 스위치(560) 및 미디어 게이트웨이(260)의 구성을 변경하지 않고 그대로 이용할 수 있게 한다.The
반면, 클라이언트(200)와의 데이터 송수신은 신뢰성이 높은 TCP를 기반으로 함으로써 인터넷폰의 연결의 신뢰성을 높이고 통화 품질을 보장할 수 있게 된다.On the other hand, the data transmission and reception with the
또한, 클라이언트(200)와 프록시 장치(220)간의 연결(210)은 TCP 기반이므로 공중망을 그대로 사용하고, 프록시 장치와 웹서버(240), 소프트 스위치(250), 미디어 게이트웨이(260) 간의 연결(230, 232 234)은 전용망을 사용할 수 있다.In addition, since the
이러한 프록시 장치(220)를 인터넷폰 서비스 제공 시스템에 포함하여 통신망을 구분함으로써 인터넷폰 서비스에 장애가 발생하는 경우 실제 장애가 발생한 통신망을 정확히 파악할 수 있게 한다.The
예를 들어, 클라이언트(200)로부터 전송된 신호나 데이터가 프록시 장치(220)로 전달되지 않는 경우라면 클라이언트(200)와 프록시 장치(220)간을 연결(210)하는 공중망에서의 장애가 발생한 것임을 쉽게 알 수 있게 된다.For example, if a signal or data transmitted from the
또한, 프록시 장치(220)에 클라이언트(200)로부터 수신된 신호나 데이터가 전송되었으나, 웹서버(240), 소프트 스위치(250), 미디어 게이트웨이(260) 중 하나의 장치로 데이터가 전송되지 않는 경우라면 전용망에서 어느 구성 요소와의 연결 부분에 장애가 발생한 것인지 쉽게 알수 있게 되어, 인터넷폰 서비스에 장애가 발생하는 경우 쉽게 대처할 수 있게 된다.In addition, when a signal or data received from the
이러한 인터넷폰 서비스 제공 시스템의 구성 요소 중 클라이언트(200)에 설치되어 인터넷폰 서비스의 제공이 가능하도록 하는 어플리케이션(204)의 구성과 어플리케이션(204)의 구동 순서를 도 3과 도 4을 참조하여 살펴본다.Among the components of the Internet phone service providing system, the configuration of the
먼저 도 3은 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공을 위해 클라이언트에 설치되는 어플리케이션의 구성을 도시한 블록도이다. 도 3은 어플리케이션(204)의 구성을 기능별로 도시한 것으로, 실제적인 구현예는 이에 제한되지 않음은 자명하다.First, FIG. 3 is a block diagram illustrating a configuration of an application installed in a client to provide an Internet phone service according to an exemplary embodiment of the present invention. 3 illustrates the configuration of the
도 3에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따라 클라이언트(200)에 설치되는 어플리케이션(204)은 서비스 로직(Service Logic)(300), SIP 스택(stack)(302), 코덱(codec)(304) 및 네트워크 레이어 라이브러리(Network Layer Library)(306), 암호화/복호화부(308) 및 에러 검출부(310)를 포함할 수 있다.As shown in FIG. 3, the
서비스 로직(300)은 인터넷폰 서비스 제공에 필요한 부가적인 기능들 예를 들면, 전화번호부 제공 등의 부가적인 서비스의 제공을 처리한다.The
SIP 스택(302)은 RFC(Request For Comments) 2543에 따른 메소드(regist, invite, ack 등)을 제공하여 인증 및 호 요청을 수행한다.The
코덱(codec)(304)은 사용자가 클라이언트(200)를 통해 입력한 음성 신호를 디지털 신호로 변환하고, 또한 수신한 디지털 신호를 음성 신호로 변환한다.The
네트워크 레이어 라이브러리(Network Layer Library)(306)는 클라이언트(200)와 프록시 장치(220) 사이의 통신이 가능하도록 네트워크 레이어 라이브러리(Network Layer Library)(306)에 포함된 서브루틴 또는 함수들을 수행하여 네트워크 계층 구조를 생성할 수 있게 한다.The
암호화/복호화부(306)는 클라이언트(200)에서 프록시 장치(220)로 전송되는 메시지를 암호화하고, 프록시 장치(220)에서 클라이언트(200)로 전송되는 메시지를 복호화하는 기능을 한다. The encryption /
종래의 경우, 인터넷폰 통화를 위해 어플리케이션에서 생성되는 메시지는 시그널링 메시지의 경우 소프트 스위치로 직접 전송되었고, 음성 통화의 경우 게이트웨이 또는 통화 상대방의 클라이언트로 직접 전송되었다. In the conventional case, a message generated in an application for an internet phone call was sent directly to a soft switch in the case of a signaling message, and directly to a gateway or a client of a call counterpart in the case of a voice call.
이와 같은 종래의 방식에 의할 경우, 소프트 스위치 등이 암호화 및 복호화를 지원하지 않으므로 시그널링 메시지 및 음성 메시지 등이 암호화되지 않은 상태에서 직접 전송될 수 밖에 없었다. According to the conventional method, since the soft switch and the like do not support encryption and decryption, the signaling message and the voice message have to be transmitted directly in the unencrypted state.
따라서, 시그널링 메시지 및 음성 메시지 등이 네트워크에서 후킹될 경우 보안이 유지되기 어려운 문제점이 있었다. 그러나, 본 발명에 의한 프록시 장치를 구비하는 구성에 의할 경우, 프록시 장치가 메시지의 암호화 및 복호화를 수행할 수 있으므로 클라이언트 어플리케이션은 보안을 위해 암호화/복호화부(306)를 구비한다. 암호화/복호화 알고리즘은 일반적인 3-DES 알고리즘 등 공지된 다양한 암호화/복호화 알고리즘이 이용될 수 있을 것이다. Therefore, there is a problem that security is difficult to maintain when signaling messages and voice messages are hooked in a network. However, according to the configuration including the proxy device according to the present invention, since the proxy device can encrypt and decrypt the message, the client application includes an encryption /
에러 검출부(308)는 시그널링 메시지 전송 시 에러가 발생한 위치를 검출하는 기능을 한다. 본 발명의 일 실시예에 따르면, 에러 검출부(308)는 TCP 프로토콜에서의 응답 메시지를 통해 에러 위치를 검출한다. 예를 들어, 에러 검출부(308)는 송신한 TCP 프로토콜 시그널링 메시지에 대한 응답 메시지가 수신되지 않을 경우 클라이언트와 프록시 장치 사이에서 에러가 발생하였다고 판단한다. 소프트 스위치로의 메시지 전송에 실패하였으나 TCP 응답 메시지가 수신된 경우, 에러 검출 부(308)는 프록시 장치와 소프트 스위치 사이에서 에러가 발생하였다고 판단한다. The
종래의 경우, 클라이언트에서 소프트 스위치로 시그널링 메시지가 직접 전송되고, UDP 프로토콜의 시그널링 메시지가 전송되기 때문에 에러가 발생한 원인을 검출할 수 없었으나, 본 발명에 의하면 어떠한 위치에서 에러가 발생하였는지를 판단할 수 있는 장점이 있다. In the related art, since the signaling message is directly transmitted from the client to the soft switch and the signaling message of the UDP protocol is transmitted, the cause of the error cannot be detected, but according to the present invention, it is possible to determine in which position the error occurred. There is an advantage.
이러한 어플리케이션(204)의 구성에 따라 사용자가 클라이언트(200)를 이용하여 인터넷폰 서비스를 제공받은 과정을 도 4를 참조하여 살펴본다.According to the configuration of the
먼저 사용자가 인터넷폰 서비스를 제공받기 위해 클라이언트(200)에 설치된 웹브라우저(202)를 구동한다(S400).First, the user drives the
웹브라우저(202)가 인터넷폰 서비스 제공을 위한 웹서버(240)를 검색하고, 클라이언트(200)는 웹서버(240)와 연결된다(S402).The
웹서버(240)는 인증과 인터넷폰 서비스 제공을 위한 웹페이지를 제공하며, 인증 요청의 전송은 사용자가 클라이언트(200)에 인증 요청 신호를 입력하면(예를 들면, ID/password의 입력) 인증 요청 신호가 웹서버(240)로 전송되고 웹서버(240)에서 처리된 인증 요청 정보를 처리한다. The
사용자가 인증된 사용자일 경우, 사용자는 웹 페이지를 통해 인터넷폰 서비스 시작을 요청하고(S404), 클라이언트(200)에 포함된 어플리케이션(204)을 구동한다(S406).If the user is an authenticated user, the user requests to start the Internet phone service through the web page (S404), and drives the
어플리케이션(204)이 구동되고, 사용자가 특정 사용자와의 인터넷 통화를 요청하면(예를 들면, 전화번호 입력)(S408), SIP 스택(302)은 메소드(method)를 제공 하여 호(call) 요청 신호를 TCP를 전송 계층의 프로토콜로 하고, SIP를 세션 계층의 프로토콜로 하여 프록시 장치(220)를 통해 소프트 스위치(250)로 전송한다(S410).When the
소프트 스위치(250)로 전송된 호 요청 신호는 사용자가 연결하고자 하는 인터넷폰, 일반 전화 또는 이동통신 전화로 전송되어 이를 수신한 다른 사용자가 전화가 왔음을 인식하게 된다. The call request signal transmitted to the
이러한 클라이언트(200)와 연결되어 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)와의 연결을 중개하고 각각의 장치에 적합한 프로토콜의 변환을 수행하는 프록시 장치(220)에 대해 도 5를 참조하여 살펴본다.FIG. 5 is a view illustrating a
도 5는 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공을 위한 프록시 장치(220)의 구성을 도시한 블록도이다. 도 5는 프록시 장치(220)의 구성을 기능별로 도시한 것으로, 실제적인 구현예는 이에 제한되지 않음은 자명하다.5 is a block diagram showing the configuration of a
도 5에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따라 프록시 장치(220)는 TCP 송수신부(500), TCP/UDP 변환부(520), UDP 송수신부(530), UDP/TCP 변환부(550) 및 암호화/복호화부(560)를 포함할 수 있다.As shown in FIG. 5, the
TCP 송수신부(500)는 TCP 검출부(502), TCP 송신부(504), TCP 세션 생성부(506), TCP 수신부(508), TCP 세션 제어부(510)를 포함하며, UDP 송수신부(530)는 UDP 검출부(532), UDP 송신부(534), UDP 세션 생성부(536), UDP 수신부(538), UDP 세션 제어부(540)를 포함한다.The
도 5에는 미도시하였으나, 프록시 장치(220)에는 상기한 각 구성 요소들을 제어하는 제어부를 더 포함할 수 있음은 자명하다. Although not shown in FIG. 5, it is obvious that the
TCP 세션 제어부(510)는 TCP 세션의 생성, 유지 및 해제를 관리하는 기능을 한다. 클라이언트로부터 TCP 연결 설정 요청 신호를 수신할 경우, TCP 세션 제어부(510)는 TCP 세션 생성부(506)를 생성하며, TCP 세션 생성부는 해당 클라이언트와의 TCP 세션을 생성한다. The
TCP 검출부(502)는 클라이언트(200)로부터 TCP 세션을 통해 수신되는 시그널링 메시지의 헤더(header)에 포함되는 TCP 헤더를 인식하고, TCP 검출부(502)의 인식에 따라 TCP 수신부(508)에서 프로토콜이 TCP인 호 연결 요청 신호를 수신한다.The
시그널링(signaling)은 전술한 바와 같이 호(call)의 접속과 해제 또는 기타 호의 제어와 관련된 정보로서 메시지로 전달되며 프로토콜 정보를 포함한다.Signaling is conveyed in a message as information related to connection and release of a call or control of other calls as described above and includes protocol information.
TCP/UDP 변환부(520)는 시그널링 메시지의 전송 프로토콜을 TCP에서 UDP로 변환한다. 프로토콜의 변환은 프로토콜 정보가 포함된 시그널링 메시지의 TCP 헤더를 UDP 헤더로 교환함으로써 수행될 수 있다.The TCP /
프로토콜 정보는 시그널링 메시지의 헤더에 저장되며 상기 헤더는 다시 각각의 정보를 저장하는 필드로 구성될 수 있다. 동일 계층에서의 프로토콜의 변환은 상기 헤더의 교환에 의해 수행되며 상위 계층의 헤더와 본래의 데이터가 저장된 부분은 변하지 않는다.The protocol information is stored in the header of the signaling message, and the header may be composed of fields for storing each information again. The conversion of the protocol in the same layer is performed by the exchange of the header, and the portion in which the header and the original data of the upper layer are stored does not change.
한편, UDP 세션 제어부(540)는 소프트 스위치와의 UDP 세션의 생성, 유지 및 해제를 관리하는 기능을 한다. 클라이언트로부터의 시그널링 메시지를 소프트 스위치에 전송하고자 하는 경우나 소프트 스위치로부터 UDP 연결 설정 요청 신호를 수 신할 경우, UDP 세션 제어부(510)는 UDP 세션 생성부(530)를 생성하며, UDP 세션 생성부는 해당 소프트 스위치와의 UDP 세션을 생성한다. Meanwhile, the
UDP 검출부(532)는 소프트 스위치(250)로부터 수신되는 시그널링 메시지의 헤더(header)에 포함되는 UDP 헤더를 인식하고, UDP 검출부(532)의 인식에 따라 UDP 수신부(538)에서 프로토콜이 UDP인 시그널링 메시지를 수신한다.The
UDP/TCP 변환부(550)는 시그널링 메시지의 전송 프로토콜을 UDP에서 TCP로 변환한다. 프로토콜의 변환은 프로토콜 정보가 포함된 시그널링 메시지의 UDP 헤더를 TCP 헤더로 교환함으로써 수행될 수 있다.The UDP /
한편, 도 5에서는 전송 계층의 프로토콜인 TCP와 UDP만을 도시하였으나, 상위 계층인 세션 계층의 프로토콜은, 전술한 바와 같이, SIP를 사용할 수 있으며 다른 종류의 시그널링 프로토콜이 사용될 수도 있음은 자명하다. .Meanwhile, although only TCP and UDP, which are protocols of the transport layer, are illustrated in FIG. 5, the protocol of the session layer, which is a higher layer, may use SIP and other types of signaling protocols may be used as described above. .
SIP(Session Initiation Protocol)는 인터넷상에서 통신하고자 하는 지능형 단말들이 서로를 식별하여 그 위치를 찾고, 그들 상호 간에 멀티 통신 세션을 생성하거나 삭제 변경하기 위한 절차를 명시한 세션 계층의 시그널링(signaling) 프로토콜이다.Session Initiation Protocol (SIP) is a signaling protocol of the session layer that specifies the procedures for intelligent terminals to communicate on the Internet to identify each other, find their location, and create or delete a multi-communication session between them.
멀티미디어 서비스 세션의 생성, 수정, 종료를 제어하는 request/response 구조로서 전송 계층의 프로토콜인 TCP와 UDP에 모두 사용할 수 있으며, 각 사용자들을 구분하기 위해 SIP URL(Uniform Resource Locator)을 사용함으로써 IP 주소에 종속되지 않고 서비스를 제공받는다.It is a request / response structure that controls the creation, modification, and termination of multimedia service sessions. It can be used for both transport layer protocols, TCP and UDP, and uses SIP Uniform Resource Locator (URL) to distinguish each user. The service is provided without being dependent.
암호화/복호화부(560)는 클라이언트로부터 전송되는 시그널링 메시지가 암호 화된 메시지일 경우 해당 메시지를 복호화하여 소프트 스위치로 전송한다. 또한, 암호화 복호화부(560)는 소프트 스위치로부터 암호화되지 않은 시그널링 메시지를 수신할 경우 해당 메시지를 암호화하여 클라이언트에 전송한다. 이러한 암호화/복호화는 시그널링 메시지뿐만 아니라 음성 통화 메시지에도 적용될 수 있을 것이다. If the signaling message transmitted from the client is an encrypted message, the encryption /
이러한 프록시 장치(220)에서 TCP/SIP 기반의 시그널링 메시지를 수신하여 UDP/SIP 기반의 시그널링 메시지로 변환하는 프로토콜의 변환을 수행하는 과정을 도 6을 참조하여 살펴본다.A process of converting a protocol for receiving a TCP / SIP-based signaling message and converting it into a UDP / SIP-based signaling message in the
먼저 클라이언트(200)로부터 프록시 장치(220)로 TCP/SIP 기반의 시그널링 메시지가 전송되면, 프록시 장치(220)에 포함되는 TCP 검출부(502)는 TCP/SIP 기반의 시그널링 메시지임을 인식한다(S600).First, when a TCP / SIP based signaling message is transmitted from the
TCP/SIP 기반의 시그널링 메시지임을 인식되면 UDP 세션 생성부(536)로 UDP/SIP 세션의 생성을 요청하고(S602), UDP 세션 생성부(536)는 UDP/SIP 세션을 생성한다(S604). 한편, 수신된 TCP/SIP 기반의 시그널링 메시지는 UDP/SIP 기반의 시그널링 메시지로 변환된다. When it is recognized that the signaling message is based on TCP / SIP, the
생성된 UDP/SIP 세션은 UDP 세션 제어부(540)에 의해 제어되어 활성화되며(S606), 프록시 장치(220)와 소프트 스위치간(250)의 활성화된 세션에 의해 UDP 송신부(534)에서 상기 변환된 UDP/SIP 기반의 시그널링 메시지를 소프트 스위치(250)로 시그널링 메시지가 전송된다(S608).The generated UDP / SIP session is controlled and activated by the UDP session controller 540 (S606), and is converted by the
한편 소프트 스위치(220)에서 UDP/SIP 기반의 시그널링 메시지를 수신하여 TCP/SIP 기반의 시그널링 메시지로 변환하는 프로토콜의 변환을 수행하고 클라이언 트(200)로 전송하는 과정은 도 6의 과정과 동일하다. 다만 수신되는 프로토콜이 UDP/SIP이고, 변환된 프로토콜이 TCP/SIP로 각각 다르므로 이하 UDP/SIP 기반의 시그널링 메시지를 수신하여 TCP/SIP 기반의 시그널링 메시지로 프로토콜 변환하는 과정은 생략하기로 한다.Meanwhile, a process of converting a protocol for receiving a UDP / SIP-based signaling message from the
이상에서 살펴본 바와 같이 클라이언트(200)에 설치되는 어플리케이션(204)의 구동과 프록시 장치(220)에서의 프로토콜 변환에 의해 실제 인터넷폰 서비스가 이루어지는 과정을 도 7을 참조하여 살펴본다.As described above, a process of performing an actual Internet phone service by driving the
도 7은 본 발명의 바람직한 일 실시예에 따라 인터넷폰 서비스의 제공이 이루어지는 순서를 도시한 순서도이다.7 is a flowchart illustrating a procedure of providing an Internet phone service according to a preferred embodiment of the present invention.
도 7에서는 사용자가 인터넷폰 서비스를 제공받기 위해 웹서버(240)에 접속하고 어플리케이션(204)을 구동하는 과정은 도 4에서 설명하였으므로 생략하기로 한다.In FIG. 7, a process in which the user accesses the
인터넷폰 서비스가 수행되는 것은 먼저 사용자가 클라이언트(200)에 전화 연결 요청(예를 들면, 전화번호 입력)을 입력하면(S700), 입력된 전화번호에 따른 시그널링 메시지를 생성한다(S702).Internet phone service is performed first when a user inputs a telephone connection request (for example, a telephone number input) to the client 200 (S700), and generates a signaling message according to the input telephone number (S702).
변환된 시그널링 메시지는 전송 계층의 프로토콜을 TCP 기반으로 프록시 장치(220)로 전송된다(S704).The converted signaling message is transmitted to the
TCP 기반의 시그널링 메시지를 수신한 프록시 장치(220)는 UDP로 프로토콜을 변환하고(S706), 변환된 UDP 기반으로 소프트 스위치(250)로 시그널링 메시지를 전 송한다(S708).The
한편, 다른 사용자로부터 수신되어 소프트 스위치(250)로 전송된 시그널링 메시지는 UDP 기반으로 프록시 장치(220)에 전송된다(S710).Meanwhile, the signaling message received from another user and transmitted to the
UDP 기반의 시그널링 메시지를 수신한 프록시 장치(220)는 TCP로 프로토콜을 변환하고(S712), 변환된 TCP 기반으로 클라이언트(200)로 시그널링 메시지를 전송한다(S714).The
시그널링 메시지를 전송하고 수신하는 클라이언트(200)는 예를 들면, 스피커(speaker)와 같은 클라이언트(200)에 포함되거나 연결되는 장치에 의해 신호 연결음과 전화벨과 같은 신호를 출력할 수 있다.The
상기 신호 연결음에 따라 상대방이 전화를 받거나 인터넷폰의 연결을 클릭하는 경우 호 연결이 이루어져 상호간의 전화 통화가 가능하게 된다.When the other party answers the call or clicks the connection of the Internet phone according to the signal connection sound, a call connection is made and the telephone call is mutually possible.
이러한 순서에 따라 인터넷폰 서비스의 제공이 이루어짐으로써 종래의 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)와 같은 구성 요소를 그대로 이용할 수 있으며, 또한 클라이언트(200)와 프록시 장치(220)간의 전송 계층의 프로토콜은 TCP을 사용하게 되어 시그널링 메시지의 송수신에 신뢰성이 보장될 수 있게 된다.By providing the Internet phone service in this order, components such as the
또한, 프록시 장치(220)에 의해 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)와 클라이언트(200)의 연결을 중개하여 통신망을 구분함으로써 인터넷폰 서비스에 장애가 발생하는 경우 실제 장애가 발생한 통신망을 정확히 파악할 수 있게 된다.In addition, by interfacing the connection between the
한편, 상기에서는 클라이언트와 프록시 장치간의 통신이 기본적으로 TCP 프로토콜에 의해 이루어지는 경우를 설명하였으나, 클라이언트와 프록시 장치간의 통신은 선택적으로 TCP 프로토콜에 의해 이루어질 수도 있다. 예를 들어, NAT, 방화벽 등으로 인해 UDP 프로토콜 메시지의 송수신이 어려운 환경인 경우, 어플리케이션은 이러한 환경의 클라이언트에 대해서만 TCP 프로토콜로 시그널링 메시지를 송수신하도록 하고 다른 클라이언트들은 일반적인 UDP 프로토콜로 시그널링 메시지를 송수신할 수도 있을 것이다. Meanwhile, in the above description, a case where the communication between the client and the proxy device is basically performed by the TCP protocol has been described. For example, in an environment where it is difficult to send and receive UDP protocol messages due to NAT, firewall, etc., the application may send and receive signaling messages through the TCP protocol only for clients in such an environment, and other clients may send and receive signaling messages using the general UDP protocol. Could be
예를 들어, 어플리케이션은 1차적으로 UDP 프로토콜 시그널링 메시지를 전송하고, UDP 프로토콜 시그널링 메시지 전송에 실패할 경우 NAT, 방화벽 등으로 인해 UDP 프로토콜 시그널링 메시지를 전송할 수 없다고 판단하고 프록시 서버와 TCP 세션을 생성하여 TCP 프로토콜 시그널링 메시지를 송수신하도록 한다. For example, an application primarily transmits a UDP protocol signaling message, and if it fails to transmit a UDP protocol signaling message, determines that the UDP protocol signaling message cannot be transmitted due to NAT, firewall, etc., and creates a TCP session with the proxy server. Send and receive TCP protocol signaling messages.
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.Preferred embodiments of the present invention described above are disclosed for purposes of illustration, and those skilled in the art will be able to make various modifications, changes, and additions within the spirit and scope of the present invention. Additions should be considered to be within the scope of the following claims.
이상에서 설명한 바와 같이, 본 발명에 의한 인터넷폰 서비스 제공 장치 및 그 방법에 의하면, 높은 안정성이 제공되고 통화 품질이 보장되는 장점이 있다.As described above, according to the Internet phone service providing apparatus and method according to the present invention, there is an advantage that high stability is provided and call quality is guaranteed.
또한, 이러한 높은 안정성과 통화 품질의 보장으로 인터넷폰 서비스의 제공이 확대될 수 있는 장점이 있다.In addition, there is an advantage that the provision of Internet phone services can be expanded by ensuring such high stability and call quality.
그리고 종래의 인터넷폰 서비스 제공을 위한 장치들을 교체 하지 않고도 안정성있는 인터넷폰 서비스를 제공할 수 있는 장점이 있다.And there is an advantage that can provide a stable Internet phone service without replacing the devices for providing a conventional Internet phone service.
또한, 인터넷폰 서비스의 에러가 발생하는 경우 실제 에러가 발생한 위치를 파악할 수 있는 바 에러에 대해 보다 용이하게 대처할 수 있는 장점이 있다. In addition, when an error of the Internet phone service occurs, it is possible to easily grasp the location where the actual error occurs, which has the advantage of more easily dealing with the error.
아울러, 프록시 장치를 클라이언트와 소프트 스위치 사이에 구비함으로써 메시지의 암호화 및 복호화가 가능하여 종래의 인터넷폰 서비스에 비해 보안이 유지될 수 있는 장점이 있다. In addition, by providing a proxy device between the client and the soft switch, it is possible to encrypt and decrypt the message, which has the advantage that security can be maintained as compared to the conventional Internet phone service.
나아가, 본 발명에 의한 시스템에 의하면, NAT, 방화벽 등으로 인해 UDP 시그널링 메시지의 송수신이 어려운 환경의 클라이언트들도 인터넷폰 서비스를 이용할 수 있는 장점이 있다. Furthermore, according to the system according to the present invention, there is an advantage that the clients of the environment where it is difficult to transmit and receive UDP signaling messages due to NAT, firewall, etc. can also use the Internet phone service.
Claims (15)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060083109A KR100871422B1 (en) | 2006-08-30 | 2006-08-30 | Apparatus and method for providing internet-phone service |
PCT/KR2007/003695 WO2008026833A1 (en) | 2006-08-30 | 2007-08-01 | Apparatus and method for providing internet-phone service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060083109A KR100871422B1 (en) | 2006-08-30 | 2006-08-30 | Apparatus and method for providing internet-phone service |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080020121A true KR20080020121A (en) | 2008-03-05 |
KR100871422B1 KR100871422B1 (en) | 2008-12-03 |
Family
ID=39136082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060083109A KR100871422B1 (en) | 2006-08-30 | 2006-08-30 | Apparatus and method for providing internet-phone service |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR100871422B1 (en) |
WO (1) | WO2008026833A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101142387B1 (en) * | 2010-08-02 | 2012-05-18 | 오픈스택 주식회사 | Apparatus and Method for Spam Blocking in VoIP Environment |
WO2012121514A2 (en) * | 2011-03-04 | 2012-09-13 | 삼성에스디에스 주식회사 | Sip message transmission and receiving system and method |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113067884A (en) * | 2021-03-31 | 2021-07-02 | 北京飞讯数码科技有限公司 | Session method, device, equipment and storage medium of SIP proxy server |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5941988A (en) | 1997-01-27 | 1999-08-24 | International Business Machines Corporation | Session and transport layer proxies via TCP glue |
US6075796A (en) * | 1997-03-17 | 2000-06-13 | At&T | Methods and apparatus for providing improved quality of packet transmission in applications such as internet telephony |
AU5750299A (en) | 1999-08-24 | 2001-03-19 | Leighton Hanna King | On-demand connection system for internet services |
KR20010079255A (en) * | 2001-06-27 | 2001-08-22 | 김태범 | A system and method for calling via an internet using a proxy server |
KR100418246B1 (en) * | 2001-08-10 | 2004-02-11 | (주)웹콜월드 | An internet voice communication method in NAT/Firewall environment using WebCallAgent and WebCallProxy |
KR20030047471A (en) * | 2001-12-10 | 2003-06-18 | (주)애니 유저넷 | Firewall tunneling method for Voip and it's tunneling gateway |
-
2006
- 2006-08-30 KR KR1020060083109A patent/KR100871422B1/en active IP Right Grant
-
2007
- 2007-08-01 WO PCT/KR2007/003695 patent/WO2008026833A1/en active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101142387B1 (en) * | 2010-08-02 | 2012-05-18 | 오픈스택 주식회사 | Apparatus and Method for Spam Blocking in VoIP Environment |
WO2012121514A2 (en) * | 2011-03-04 | 2012-09-13 | 삼성에스디에스 주식회사 | Sip message transmission and receiving system and method |
WO2012121514A3 (en) * | 2011-03-04 | 2012-11-15 | 삼성에스디에스 주식회사 | Sip message transmission and receiving system and method |
US9374264B2 (en) | 2011-03-04 | 2016-06-21 | Samsung Sds Co., Ltd. | System and method for transmitting and receiving session initiation protocol messages |
Also Published As
Publication number | Publication date |
---|---|
WO2008026833A1 (en) | 2008-03-06 |
KR100871422B1 (en) | 2008-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1738508B1 (en) | Method and apparatus for transporting encrypted media streams over a wide area network | |
Fischl et al. | Framework for establishing a secure real-time transport protocol (SRTP) security context using datagram transport layer security (DTLS) | |
EP1326414B1 (en) | Secure voice and data transmission via IP telephones | |
JP5043392B2 (en) | Method for setting up a SIP communication session, system and computer program thereof | |
CN106850399B (en) | Communication method based on WebRTC technology instant message | |
JP2004523828A (en) | System and method for communicating with a network enabled device using session initiation protocol (SIP) | |
Andreasen | Session description protocol (sdp) capability negotiation | |
US20090138697A1 (en) | USER AGENT PROVIDING SECURE VoIP COMMUNICATION AND SECURE COMMUNICATION METHOD USING THE SAME | |
JP4764368B2 (en) | Apparatus for establishing communication and relaying message, method and program for establishing communication | |
US20090070586A1 (en) | Method, Device and Computer Program Product for the Encoded Transmission of Media Data Between the Media Server and the Subscriber Terminal | |
US8181013B2 (en) | Method, media gateway and system for transmitting content in call established via media gateway control protocol | |
KR100871422B1 (en) | Apparatus and method for providing internet-phone service | |
CA2844428C (en) | Real-time encryption of voice and fax over ip | |
US7570765B1 (en) | Method and an apparatus to perform secure real-time transport protocol-on-the-fly | |
Li et al. | VoIP secure session assistance and call monitoring via building security gateway | |
Paulus et al. | SPEECH: Secure personal end-to-end communication with handheld | |
US7823196B1 (en) | Method and an apparatus to perform dynamic secure re-routing of data flows for public services | |
US20200204595A1 (en) | Media protection within the core network of an ims network | |
CN111131182B (en) | VoIP communication network penetration device and method | |
Chakraborty et al. | VoIP Protocol Fundamentals | |
US8160079B1 (en) | Local communication agent | |
KR101269828B1 (en) | Secure call service method using radio communication system | |
Eliasson | Secure Internet telephony: design, implementation and performance measurements | |
Orrblad et al. | Secure VoIP: call establishment and media protection | |
Cumming | Sip Market Overview |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20111010 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20130926 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140925 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20151102 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20161024 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20181105 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20191001 Year of fee payment: 12 |