KR20080020121A - Apparatus and method for providing internet-phone service - Google Patents

Apparatus and method for providing internet-phone service Download PDF

Info

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
Application number
KR1020060083109A
Other languages
Korean (ko)
Other versions
KR100871422B1 (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 KR1020060083109A priority Critical patent/KR100871422B1/en
Priority to PCT/KR2007/003695 priority patent/WO2008026833A1/en
Publication of KR20080020121A publication Critical patent/KR20080020121A/en
Application granted granted Critical
Publication of KR100871422B1 publication Critical patent/KR100871422B1/en

Links

Images

Classifications

    • 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/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • 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/1069Session establishment or de-establishment
    • 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/08Protocols for interworking; Protocol conversion
    • 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/80Responding 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

An apparatus for providing an Internet phone service and a method therefor are provided to enable application to transmit a signaling message in a TCP protocol or a UDP protocol according to the environment of a client, thereby providing high stability and speech quality. A TCP(Transmission Control Protocol) transceiving unit(500) receives a TCP protocol signaling message from a client. A TCP/UDP(User Datagram Protocol) converting unit(520) converts the TCP protocol signaling message into a UDP protocol. A UDP transceiving unit(530) transmits the signaling message converted into the UDP protocol to a soft switch and receives the UDP protocol signaling message from the soft switch. A UDP/TCP converting unit(550) converts the protocol of a UDP protocol signaling message from the soft switch into a TCP protocol.

Description

인터넷폰 서비스 제공 장치 및 그 방법{Apparatus and method for providing internet-phone service}Apparatus and method for providing internet-phone service

도 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 client 100, a web server 120, a media gateway 130, and a softswitch. 140, wherein the client 100 searches the web server 120 to allow the client 100 to be connected to the web server 120 and the Internet through a communication network with a web browser 102. An application 104 is included that can be provided with a phone service.

웹서버(120)는 통신망을 통해 사용자가 인터넷폰 서비스를 제공하기 위한 사용자 인증에 필요한 웹페이지를 제공한다.The web server 120 provides a web page necessary for user authentication for providing an Internet phone service by a user through a communication network.

미디어 게이트웨이(130)는 클라이언트(100)와 연결되며 통신망의 종류에 따라 트래픽(traffic) 포맷의 형식을 변환하는 장치이다.The media gateway 130 is connected to the client 100 and converts the format of the traffic format according to the type of communication network.

미디어 게이트웨이(130)는 소프트 스위치(140)와 연동되며, 소프트 스위치(140)는 음성 신호를 전달하는 전화망과 데이터를 전달하는 데이터 패킷망 사이를 연결하는 장치로서 미디어 게이트웨이(130) 또는 클라이언트(100)와 연결되어 클라이언트(100)에서 입력된 음성 데이터를 전화망과 연결하는 역할을 수행한다.The media gateway 130 is interlocked with the soft switch 140, and the soft switch 140 is a device for connecting between a telephone network for transmitting a voice signal and a data packet network for transmitting data, and the media gateway 130 or the client 100. It is connected to the and performs the role of connecting the voice data input from the client 100 to the telephone network.

이러한 종래의 인터넷폰 서비스 제공 시스템에서 각각의 구성 요소들간의 연결을 위한 프로토콜은 각각 다른 프로토콜을 사용한다.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 connection 110 between the client 100 and the web server 120 uses HTTP (HyperText Transfer Protocol) as a protocol.

또한, 소프트 스위치(140)와 클라이언트(100)간의 연결(112)에서는 전송 계층에서는 UDP(User Datagram Protocol)를 응용 계층에서는 SIP(Session Initiation Protocol)를 프로토콜로 사용한다.In addition, the connection 112 between the soft switch 140 and the client 100 uses UDP (User Datagram Protocol) in the transport layer and Session Initiation Protocol (SIP) in the application layer.

또한, 클라이언트(100)가 미디어 게이트웨이(130)간의 연결(114)에서 전송 계층의 프로토콜은 RTP(Real-time Transport Protocol)를 프로토콜로 사용한다.In addition, the client 100 uses the Real-time Transport Protocol (RTP) as the protocol of the transport layer in the connection 114 between the media gateways 130.

클라이언트(100)와 클라이언트(100), 일반 전화 또는 휴대 전화와의 연결을 위한 클라이언트(100)와 소프트 스위치(140)간의 연결(112)의 안정성은 인터넷폰 제공 서비스의 품질과 직접적으로 관련된다.The stability of the connection 112 between the client 100 and the soft switch 140 for the connection between the client 100 and the client 100, a regular telephone or a mobile phone is directly related to the quality of the Internet phone providing service.

이러한 소프트 스위치(140)와 클라이언트(100)의 연결(112)에 사용되는 전송 계층의 프로토콜인 UDP는 속도가 빠르고 그 구조가 간단하다는 장점으로 인하여 널리 사용되고 있으며, 또한 현재 생산되어 제공되는 소프트 스위치(140)의 경우에도 UDP를 프로토콜로 기준으로 하고 있다.UDP, a transport layer protocol used for the connection 112 of the soft switch 140 and the client 100, is widely used because of its speed and its simple structure. 140 also uses UDP as a protocol.

그러나, 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 proxy device 220, a web server 240, a softswitch 250, and a media gateway. media gateway 260, and the client 200 may access an Internet phone service system through a network. .

클라이언트(200)는 인터넷을 경유해서 인터넷폰 연결을 위한 통화 연결 설정 과정을 수행하고 음성 데이터를 송수신하여 통상의 전화처럼 사용이 가능하도록 하는 인터넷폰 서비스를 제공받을 수 있는 단말 장치이다.The client 200 is a terminal device that can be provided with an Internet phone service that performs a call connection setting process for connecting an Internet phone via the Internet, and transmits and receives voice data so that it can be used like a normal phone.

클라이언트(200)는 통신 기능을 구비하여 웹서버(240), 소프트 스위치(250), 미디어 게이트웨이(260)에 접속될 수 있으며 웹브라우저(202)와 어플리케이션(204)이 설치 가능한 장치이면 아무런 제한이 없다.The client 200 may be connected to the web server 240, the soft switch 250, and the media gateway 260 by having a communication function, and any limitations may be provided as long as the web browser 202 and the application 204 can be installed. none.

클라이언트(200)는 퍼스널 컴퓨터(PC) 외에도 예를 들어, 노트북 컴퓨터, 개인 휴대 단말기(PDA : Personal Digital Assistant) 등이 있을 수 있다.The client 200 may include, for example, a notebook computer, a personal digital assistant (PDA) in addition to the personal computer (PC).

클라이언트(200)에는 인터넷을 통해 웹서버(240)를 검색하여 클라이언트(200)를 웹서버(240)와 연결할 수 있도록 하는 웹브라우저(202)와 인터넷폰 서비스를 제공받을 수 있는 어플리케이션(204)이 포함된다.The client 200 has a web browser 202 for searching the web server 240 through the Internet and a web browser 202 for connecting the client 200 with the web server 240 and an application 204 for receiving an Internet phone service. Included.

어플리케이션(204)은 인터넷폰 통화를 위한 통화 연결 설정 과정 및 시그널링 이후 음성 데이터를 송수신하는 기능을 수행한다. 통화 연결 설정을 위해 송수신되는 메시지를 시그널링 메시지라 하며, 시그널링 메시지는 호(call)의 접속과 해제 또는 기타 호의 제어와 관련된 메시지를 포함한다. The application 204 performs a function of transmitting and receiving voice data after signaling and establishing a call connection for an internet phone call. A message transmitted and received for establishing a call connection is called a signaling message, and the signaling message includes a message related to connection and release of a call or control of another call.

종래의 경우, 어플리케이션(204)은 시그널링 메시지를 소프트 스위치로 직접 전송하나, 본 발명에 의하면, 어플리케이션(204)은 시그널링 메시지를 프록시 장치(220)에 전송한다. 어플리케이션(204)의 보다 상세한 구성은 도 3을 참조하여 설명하기로 한다.In the conventional case, the application 204 sends the signaling message directly to the soft switch, but in accordance with the present invention, the application 204 sends the signaling message to the proxy device 220. A more detailed configuration of the application 204 will be described with reference to FIG. 3.

어플리케이션(204)은 사용자 클라이언트(200)에 설치되어 구동되는 소프트웨어 프로그램의 형태로 구현될 수 있을 것이다. 본 발명의 바람직한 실시예에 따르면, 어플리케이션(204)은 인터넷폰 서비스를 위한 웹페이지와 연동되는 ActiveX Control 형태의 프로그램일 수 있다. The application 204 may be implemented in the form of a software program installed and driven in the user client 200. According to a preferred embodiment of the present invention, the application 204 may be an ActiveX control type program linked to a web page for an Internet phone service.

클라이언트(200)는 프록시 장치(220)와 연결되며 프록시 장치(220)를 경유하여 소프트 스위치(250)와 시그널링 메시지를 송수신한다. 본 발명의 바람직한 실시예에 따르면, 상기 시그널링 메시지는 SIP(Session Initiation Protocol) 기반의 메시지일 수 있다. 그러나, 본 발명이 SIP 기반의 메시지에만 적용되는 것은 아니며, 다른 프로토콜의 시그널링 메시지에도 적용될 수 있다는 점은 당업자에게 있어 자명할 것이다. The client 200 is connected to the proxy device 220 and transmits / receives a signaling message with the soft switch 250 via the proxy device 220. According to a preferred embodiment of the present invention, the signaling message may be a Session Initiation Protocol (SIP) based message. However, it will be apparent to those skilled in the art that the present invention is not only applicable to SIP-based messages but also to signaling messages of other protocols.

종래에 있어서, 소프트 스위치는 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 proxy device 220 to provide a stable Internet phone service without replacing the devices included in such a conventional Internet phone service providing system.

프록시 장치(220)는 클라이언트(200)와 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)와 각각 연결되어 인터넷폰 서비스를 제공하기 위한 인터넷폰 서비스 제공 장치이다.The proxy device 220 is an Internet phone service providing device connected to the client 200, the web server 240, the soft switch 250, and the media gateway 260 to provide an Internet phone service.

보다 안정성 있는 시그널링 메시지 전송을 위해, 클라이언트에 설치된 어플리케이션은 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 proxy device 220, and the proxy device 220 receives a signaling message of the TCP protocol from the user client, and receives the TCP protocol. The signaling message is converted into the UDP protocol and transmitted to the soft switch 250.

또한, 프록시 장치(220)는 소프트 스위치(250)로부터 UDP 프로토콜 시그널링 메시지를 수신하며, UDP 프로토콜 시그널링 메시지를 TCP 프로토콜 시그널링 메시지로 변환하여 클라이언트(200)로 전송한다.In addition, the proxy device 220 receives a UDP protocol signaling message from the soft switch 250, converts the UDP protocol signaling message into a TCP protocol signaling message, and transmits the UDP protocol signaling message to the client 200.

프록시 장치의 구성과 기능은 도 4에서 보다 상세하게 살펴보기로 한다.The configuration and function of the proxy device will be described in more detail with reference to FIG. 4.

웹서버(240)는 인터넷폰 서비스를 이용하기 위한 웹 페이지를 제공한다. 또 한, 인터넷폰 서비스 사용자의 인증을 위한 웹 페이지를 더 제공할 수 있다.The web server 240 provides a web page for using the Internet phone service. In addition, a web page for authenticating an Internet phone service user may be further provided.

웹서버(240)와 클라이언트간의 연결(230)은 종래와 같이 HTTP를 프로토콜로 사용한다. The connection 230 between the web server 240 and the client uses HTTP as a protocol.

소프트 스위치(250)는 기존 PSTN(Public Switched Telephone Network)에서 제공하던 음성 서비스를 패킷망에서 그대로 제공하기 위하여, 기존의 PSTN과 연동이 가능한 신호 방식의 호환 및 운용성, 확장성, 신뢰성 등 기존 통신 장비에서 요구되었던 기능들을 만족시키면서 동시에 패킷망에서 음성 서비스를 가능하게 하는 장치이다.The soft switch 250 provides a voice service provided by a public switched telephone network (PSTN) in a packet network as it is. It is a device that enables voice service in packet network while satisfying required functions.

소프트 스위치(250)는 패킷망에서 음성서비스를 가능하게 하는 H.323, SIP(Session Initiation Protocol), MGCP(Media Gateway Control Protocol), MEGACO(Media Gateway Control)/H.248 프로토콜 등을 모두 수용할 수 있는 소프트웨어를 기반으로 한다. The soft switch 250 can accommodate all of H.323, Session Initiation Protocol (SIP), Media Gateway Control Protocol (MGCP), Media Gateway Control (MEGACO) /H.248 protocol, etc., which enable voice services in a packet network. Is based on software.

한편, 현재 생산되어 제공되는 소프트 스위치(250)의 전송 계층의 프로토콜의 경우 UDP를 사용하고 있다. UDP를 프로토콜로 사용함으로써 속도가 빠르고 소프트 스위치(250)의 구조를 간단히 할 수 있는 이점이 있기 때문이다.On the other hand, the protocol of the transport layer of the soft switch 250 that is currently produced and provided is using UDP. This is because the use of UDP as a protocol is advantageous in that the speed is high and the structure of the soft switch 250 can be simplified.

따라서, 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공 시스템에서는 종래의 소프트 스위치(250)의 구성을 변경하지 않아도 되도록 소프트 스위치(250)와 프록시 장치(220)간의 연결(232)은 UDP를 프로토콜로 사용한다.Therefore, in the Internet phone service providing system according to an exemplary embodiment of the present invention, the connection 232 between the soft switch 250 and the proxy device 220 does not need to change the configuration of the conventional soft switch 250. Use as a protocol.

미디어 게이트웨이(media gateway)(260)는 소프트 스위치(250)의 제어에 의해 통화 호 제어 및 보코딩(vocoding) 기능을 수행하는 장치이다. 통화 호 제어를 위해 소프트 스위치(250)와 제어 프로토콜, 예를 들면, MGCP(Media Gateway Control Protocol), MEGACO(Media Gateway Control)/H.248 프로토콜 등으로 연동하여 트래픽 흐름 경로를 결정한다.The media gateway 260 is a device that performs call call control and vocoding functions by the control of the soft switch 250. For call call control, the traffic flow path is determined by interworking with the soft switch 250 and a control protocol, for example, MGCP (Media Gateway Control Protocol), MEGACO (Media Gateway Control) /H.248 protocol.

미디어 게이트웨이(260)는 미디어 게이트웨이(260) 간의 정보 전달이 IP 방식인 경우 RTP(Real-time Transport Protocol)를 이용하며, ATM 방식인 경우 영구 가상 연결(PVC : Permanent Virtual Connection) 혹은 교환 가상 연결(SVC : Switched Virtual Connection)을 이용한다. The media gateway 260 uses a real-time transport protocol (RTP) when information transmission between the media gateways 260 is IP, and in the case of ATM, a permanent virtual connection (PVC) or a switched virtual connection (PVC). SVC: Switched Virtual Connection.

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 proxy device 220 connected to the web server 240, the soft switch 250, and the media gateway 260 is used in the web server 240, the soft switch 250, and the media gateway 260 as in the related art. By using the protocol as it is, the configuration of the web server 240, the soft switch 560 and the media gateway 260 can be used as it is without changing.

반면, 클라이언트(200)와의 데이터 송수신은 신뢰성이 높은 TCP를 기반으로 함으로써 인터넷폰의 연결의 신뢰성을 높이고 통화 품질을 보장할 수 있게 된다.On the other hand, the data transmission and reception with the client 200 is based on the highly reliable TCP can increase the reliability of the connection of the Internet phone and ensure the call quality.

또한, 클라이언트(200)와 프록시 장치(220)간의 연결(210)은 TCP 기반이므로 공중망을 그대로 사용하고, 프록시 장치와 웹서버(240), 소프트 스위치(250), 미디어 게이트웨이(260) 간의 연결(230, 232 234)은 전용망을 사용할 수 있다.In addition, since the connection 210 between the client 200 and the proxy device 220 is TCP based, the public network is used as it is, and the connection between the proxy device and the web server 240, the soft switch 250, and the media gateway 260 ( 230 and 232 234 may use a dedicated network.

이러한 프록시 장치(220)를 인터넷폰 서비스 제공 시스템에 포함하여 통신망을 구분함으로써 인터넷폰 서비스에 장애가 발생하는 경우 실제 장애가 발생한 통신망을 정확히 파악할 수 있게 한다.The proxy device 220 is included in the Internet phone service providing system to distinguish a communication network, so that when a failure occurs in the Internet phone service, it is possible to accurately identify a communication network in which the actual failure occurs.

예를 들어, 클라이언트(200)로부터 전송된 신호나 데이터가 프록시 장치(220)로 전달되지 않는 경우라면 클라이언트(200)와 프록시 장치(220)간을 연결(210)하는 공중망에서의 장애가 발생한 것임을 쉽게 알 수 있게 된다.For example, if a signal or data transmitted from the client 200 is not transmitted to the proxy device 220, it is easy to indicate that a failure in the public network that connects 210 between the client 200 and the proxy device 220 has occurred. You will know.

또한, 프록시 장치(220)에 클라이언트(200)로부터 수신된 신호나 데이터가 전송되었으나, 웹서버(240), 소프트 스위치(250), 미디어 게이트웨이(260) 중 하나의 장치로 데이터가 전송되지 않는 경우라면 전용망에서 어느 구성 요소와의 연결 부분에 장애가 발생한 것인지 쉽게 알수 있게 되어, 인터넷폰 서비스에 장애가 발생하는 경우 쉽게 대처할 수 있게 된다.In addition, when a signal or data received from the client 200 is transmitted to the proxy device 220, the data is not transmitted to one of the web server 240, the soft switch 250, and the media gateway 260. If it is, it is easy to know which component of the connection network has a failure in the private network, and can easily cope with a failure in the Internet phone service.

이러한 인터넷폰 서비스 제공 시스템의 구성 요소 중 클라이언트(200)에 설치되어 인터넷폰 서비스의 제공이 가능하도록 하는 어플리케이션(204)의 구성과 어플리케이션(204)의 구동 순서를 도 3과 도 4을 참조하여 살펴본다.Among the components of the Internet phone service providing system, the configuration of the application 204 and the driving order of the application 204 installed in the client 200 to provide the Internet phone service will be described with reference to FIGS. 3 and 4. see.

먼저 도 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 application 204 by function, and the actual implementation is not limited thereto.

도 3에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따라 클라이언트(200)에 설치되는 어플리케이션(204)은 서비스 로직(Service Logic)(300), SIP 스택(stack)(302), 코덱(codec)(304) 및 네트워크 레이어 라이브러리(Network Layer Library)(306), 암호화/복호화부(308) 및 에러 검출부(310)를 포함할 수 있다.As shown in FIG. 3, the application 204 installed in the client 200 according to an exemplary embodiment of the present invention may include a service logic 300, a SIP stack 302, and a codec ( codec) 304 and a network layer library 306, an encryption / decryption unit 308, and an error detection unit 310.

서비스 로직(300)은 인터넷폰 서비스 제공에 필요한 부가적인 기능들 예를 들면, 전화번호부 제공 등의 부가적인 서비스의 제공을 처리한다.The service logic 300 handles the provision of additional functions required for providing an Internet phone service, for example, providing an additional service such as providing a phone book.

SIP 스택(302)은 RFC(Request For Comments) 2543에 따른 메소드(regist, invite, ack 등)을 제공하여 인증 및 호 요청을 수행한다.The SIP stack 302 provides methods (regist, invite, ack, etc.) according to Request For Comments (RFC) 2543 to perform authentication and call requests.

코덱(codec)(304)은 사용자가 클라이언트(200)를 통해 입력한 음성 신호를 디지털 신호로 변환하고, 또한 수신한 디지털 신호를 음성 신호로 변환한다.The codec 304 converts a voice signal input by the user through the client 200 into a digital signal, and also converts the received digital signal into a voice signal.

네트워크 레이어 라이브러리(Network Layer Library)(306)는 클라이언트(200)와 프록시 장치(220) 사이의 통신이 가능하도록 네트워크 레이어 라이브러리(Network Layer Library)(306)에 포함된 서브루틴 또는 함수들을 수행하여 네트워크 계층 구조를 생성할 수 있게 한다.The network layer library 306 performs a subroutine or functions included in the network layer library 306 to enable communication between the client 200 and the proxy device 220 to perform a network. Allows you to create hierarchies.

암호화/복호화부(306)는 클라이언트(200)에서 프록시 장치(220)로 전송되는 메시지를 암호화하고, 프록시 장치(220)에서 클라이언트(200)로 전송되는 메시지를 복호화하는 기능을 한다. The encryption / decryption unit 306 encrypts a message transmitted from the client 200 to the proxy device 220 and decrypts a message transmitted from the proxy device 220 to the client 200.

종래의 경우, 인터넷폰 통화를 위해 어플리케이션에서 생성되는 메시지는 시그널링 메시지의 경우 소프트 스위치로 직접 전송되었고, 음성 통화의 경우 게이트웨이 또는 통화 상대방의 클라이언트로 직접 전송되었다. 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 / decryption unit 306 for security. As the encryption / decryption algorithm, various known encryption / decryption algorithms such as the general 3-DES algorithm may be used.

에러 검출부(308)는 시그널링 메시지 전송 시 에러가 발생한 위치를 검출하는 기능을 한다. 본 발명의 일 실시예에 따르면, 에러 검출부(308)는 TCP 프로토콜에서의 응답 메시지를 통해 에러 위치를 검출한다. 예를 들어, 에러 검출부(308)는 송신한 TCP 프로토콜 시그널링 메시지에 대한 응답 메시지가 수신되지 않을 경우 클라이언트와 프록시 장치 사이에서 에러가 발생하였다고 판단한다. 소프트 스위치로의 메시지 전송에 실패하였으나 TCP 응답 메시지가 수신된 경우, 에러 검출 부(308)는 프록시 장치와 소프트 스위치 사이에서 에러가 발생하였다고 판단한다. The error detector 308 detects a location where an error occurs when transmitting a signaling message. According to an embodiment of the present invention, the error detector 308 detects an error position through a response message in the TCP protocol. For example, the error detector 308 determines that an error has occurred between the client and the proxy device when a response message for the transmitted TCP protocol signaling message is not received. If the message transmission to the soft switch fails but the TCP response message is received, the error detection unit 308 determines that an error has occurred between the proxy device and the soft switch.

종래의 경우, 클라이언트에서 소프트 스위치로 시그널링 메시지가 직접 전송되고, 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 application 204, a process in which the user is provided with the Internet phone service using the client 200 will be described with reference to FIG.

먼저 사용자가 인터넷폰 서비스를 제공받기 위해 클라이언트(200)에 설치된 웹브라우저(202)를 구동한다(S400).First, the user drives the web browser 202 installed in the client 200 to receive the Internet phone service (S400).

웹브라우저(202)가 인터넷폰 서비스 제공을 위한 웹서버(240)를 검색하고, 클라이언트(200)는 웹서버(240)와 연결된다(S402).The web browser 202 searches the web server 240 for providing the Internet phone service, and the client 200 is connected to the web server 240 (S402).

웹서버(240)는 인증과 인터넷폰 서비스 제공을 위한 웹페이지를 제공하며, 인증 요청의 전송은 사용자가 클라이언트(200)에 인증 요청 신호를 입력하면(예를 들면, ID/password의 입력) 인증 요청 신호가 웹서버(240)로 전송되고 웹서버(240)에서 처리된 인증 요청 정보를 처리한다. The web server 240 provides a web page for authentication and Internet phone service, and the authentication request is transmitted when the user inputs an authentication request signal to the client 200 (for example, input of ID / password). The request signal is transmitted to the web server 240 and processes the authentication request information processed by the web server 240.

사용자가 인증된 사용자일 경우, 사용자는 웹 페이지를 통해 인터넷폰 서비스 시작을 요청하고(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 application 204 included in the client 200 (S406).

어플리케이션(204)이 구동되고, 사용자가 특정 사용자와의 인터넷 통화를 요청하면(예를 들면, 전화번호 입력)(S408), SIP 스택(302)은 메소드(method)를 제공 하여 호(call) 요청 신호를 TCP를 전송 계층의 프로토콜로 하고, SIP를 세션 계층의 프로토콜로 하여 프록시 장치(220)를 통해 소프트 스위치(250)로 전송한다(S410).When the application 204 is run and the user requests an internet call with a specific user (eg, enters a phone number) (S408), the SIP stack 302 provides a method to request a call. The signal is transmitted to the soft switch 250 via the proxy apparatus 220 using TCP as the protocol of the transport layer and SIP as the protocol of the session layer (S410).

소프트 스위치(250)로 전송된 호 요청 신호는 사용자가 연결하고자 하는 인터넷폰, 일반 전화 또는 이동통신 전화로 전송되어 이를 수신한 다른 사용자가 전화가 왔음을 인식하게 된다. The call request signal transmitted to the soft switch 250 is transmitted to an Internet phone, a general phone, or a mobile phone to which the user wants to connect, and the other user who receives the call request signal recognizes the call.

이러한 클라이언트(200)와 연결되어 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)와의 연결을 중개하고 각각의 장치에 적합한 프로토콜의 변환을 수행하는 프록시 장치(220)에 대해 도 5를 참조하여 살펴본다.FIG. 5 is a view illustrating a proxy device 220 connected to the client 200 to mediate the connection with the web server 240, the soft switch 250, and the media gateway 260, and perform protocol conversion suitable for each device. See for reference.

도 5는 본 발명의 바람직한 일 실시예에 따른 인터넷폰 서비스 제공을 위한 프록시 장치(220)의 구성을 도시한 블록도이다. 도 5는 프록시 장치(220)의 구성을 기능별로 도시한 것으로, 실제적인 구현예는 이에 제한되지 않음은 자명하다.5 is a block diagram showing the configuration of a proxy device 220 for providing an Internet phone service according to an embodiment of the present invention. 5 illustrates the configuration of the proxy apparatus 220 by function, and it is obvious that the actual implementation is not limited thereto.

도 5에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따라 프록시 장치(220)는 TCP 송수신부(500), TCP/UDP 변환부(520), UDP 송수신부(530), UDP/TCP 변환부(550) 및 암호화/복호화부(560)를 포함할 수 있다.As shown in FIG. 5, the proxy apparatus 220 according to an exemplary embodiment of the present invention includes a TCP transceiver 500, a TCP / UDP converter 520, a UDP transceiver 530, and a UDP / TCP conversion. The unit 550 and the encryption / decryption unit 560 may be included.

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 TCP transceiver 500 includes a TCP detector 502, a TCP transmitter 504, a TCP session generator 506, a TCP receiver 508, and a TCP session controller 510. The UDP detector 532, the UDP transmitter 534, the UDP session generator 536, the UDP receiver 538, and the UDP session controller 540 are included.

도 5에는 미도시하였으나, 프록시 장치(220)에는 상기한 각 구성 요소들을 제어하는 제어부를 더 포함할 수 있음은 자명하다. Although not shown in FIG. 5, it is obvious that the proxy device 220 may further include a controller for controlling each of the above components.

TCP 세션 제어부(510)는 TCP 세션의 생성, 유지 및 해제를 관리하는 기능을 한다. 클라이언트로부터 TCP 연결 설정 요청 신호를 수신할 경우, TCP 세션 제어부(510)는 TCP 세션 생성부(506)를 생성하며, TCP 세션 생성부는 해당 클라이언트와의 TCP 세션을 생성한다. The TCP session controller 510 manages the creation, maintenance, and release of a TCP session. When receiving a TCP connection establishment request signal from a client, the TCP session controller 510 generates a TCP session generator 506, and the TCP session generator generates a TCP session with the client.

TCP 검출부(502)는 클라이언트(200)로부터 TCP 세션을 통해 수신되는 시그널링 메시지의 헤더(header)에 포함되는 TCP 헤더를 인식하고, TCP 검출부(502)의 인식에 따라 TCP 수신부(508)에서 프로토콜이 TCP인 호 연결 요청 신호를 수신한다.The TCP detector 502 recognizes the TCP header included in the header of the signaling message received from the client 200 through the TCP session, and the protocol is determined by the TCP receiver 508 according to the recognition of the TCP detector 502. Receives a call connection request signal that is TCP.

시그널링(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 / UDP converter 520 converts the transmission protocol of the signaling message from TCP to UDP. The conversion of the protocol may be performed by exchanging the TCP header of the signaling message including the protocol information with the UDP header.

프로토콜 정보는 시그널링 메시지의 헤더에 저장되며 상기 헤더는 다시 각각의 정보를 저장하는 필드로 구성될 수 있다. 동일 계층에서의 프로토콜의 변환은 상기 헤더의 교환에 의해 수행되며 상위 계층의 헤더와 본래의 데이터가 저장된 부분은 변하지 않는다.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 session controller 540 manages creation, maintenance, and release of a UDP session with a soft switch. When the signaling message from the client is to be transmitted to the soft switch or when the UDP connection establishment request signal is received from the soft switch, the UDP session controller 510 generates a UDP session generator 530, and the UDP session generator Create a UDP session with the soft switch.

UDP 검출부(532)는 소프트 스위치(250)로부터 수신되는 시그널링 메시지의 헤더(header)에 포함되는 UDP 헤더를 인식하고, UDP 검출부(532)의 인식에 따라 UDP 수신부(538)에서 프로토콜이 UDP인 시그널링 메시지를 수신한다.The UDP detector 532 recognizes the UDP header included in the header of the signaling message received from the soft switch 250, and the signaling of the protocol is UDP in the UDP receiver 538 according to the recognition of the UDP detector 532. Receive the message.

UDP/TCP 변환부(550)는 시그널링 메시지의 전송 프로토콜을 UDP에서 TCP로 변환한다. 프로토콜의 변환은 프로토콜 정보가 포함된 시그널링 메시지의 UDP 헤더를 TCP 헤더로 교환함으로써 수행될 수 있다.The UDP / TCP converter 550 converts the transmission protocol of the signaling message from UDP to TCP. The conversion of the protocol may be performed by exchanging the UDP header of the signaling message including the protocol information with the TCP header.

한편, 도 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 / decryption unit 560 decrypts the message and transmits the message to the soft switch. In addition, the encryption decryption unit 560 encrypts the unencrypted signaling message from the soft switch and transmits the encrypted message to the client. This encryption / decryption may be applied to voice call messages as well as signaling messages.

이러한 프록시 장치(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 proxy device 220 will be described with reference to FIG. 6.

먼저 클라이언트(200)로부터 프록시 장치(220)로 TCP/SIP 기반의 시그널링 메시지가 전송되면, 프록시 장치(220)에 포함되는 TCP 검출부(502)는 TCP/SIP 기반의 시그널링 메시지임을 인식한다(S600).First, when a TCP / SIP based signaling message is transmitted from the client 200 to the proxy apparatus 220, the TCP detector 502 included in the proxy apparatus 220 recognizes that the signaling message is based on TCP / SIP (S600). .

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 session generator 536 requests the creation of the UDP / SIP session (S602), and the UDP session generator 536 generates the UDP / SIP session (S604). Meanwhile, the received TCP / SIP based signaling message is converted into a UDP / SIP based signaling message.

생성된 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 UDP transmitter 534 by an activated session between the proxy device 220 and the soft switch 250. The signaling message is transmitted to the soft switch 250 based on the UDP / SIP signaling message (S608).

한편 소프트 스위치(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 soft switch 220 and converting it into a TCP / SIP-based signaling message and transmitting the same to the client 200 is the same as the process of FIG. 6. . However, since the received protocol is UDP / SIP and the converted protocols are different from TCP / SIP, a process of receiving a UDP / SIP-based signaling message and converting the protocol to a TCP / SIP-based signaling message will be omitted.

이상에서 살펴본 바와 같이 클라이언트(200)에 설치되는 어플리케이션(204)의 구동과 프록시 장치(220)에서의 프로토콜 변환에 의해 실제 인터넷폰 서비스가 이루어지는 과정을 도 7을 참조하여 살펴본다.As described above, a process of performing an actual Internet phone service by driving the application 204 installed in the client 200 and protocol conversion in the proxy device 220 will be described with reference to FIG. 7.

도 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 web server 240 and drives the application 204 in order to receive the Internet phone service is described in FIG. 4 and will be omitted.

인터넷폰 서비스가 수행되는 것은 먼저 사용자가 클라이언트(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 proxy device 220 based on the protocol of the transport layer (S704).

TCP 기반의 시그널링 메시지를 수신한 프록시 장치(220)는 UDP로 프로토콜을 변환하고(S706), 변환된 UDP 기반으로 소프트 스위치(250)로 시그널링 메시지를 전 송한다(S708).The proxy device 220 receiving the TCP-based signaling message converts the protocol to UDP (S706), and transmits the signaling message to the soft switch 250 based on the converted UDP (S708).

한편, 다른 사용자로부터 수신되어 소프트 스위치(250)로 전송된 시그널링 메시지는 UDP 기반으로 프록시 장치(220)에 전송된다(S710).Meanwhile, the signaling message received from another user and transmitted to the soft switch 250 is transmitted to the proxy device 220 based on UDP (S710).

UDP 기반의 시그널링 메시지를 수신한 프록시 장치(220)는 TCP로 프로토콜을 변환하고(S712), 변환된 TCP 기반으로 클라이언트(200)로 시그널링 메시지를 전송한다(S714).The proxy device 220 receiving the UDP-based signaling message converts the protocol to TCP (S712), and transmits the signaling message to the client 200 based on the converted TCP (S714).

시그널링 메시지를 전송하고 수신하는 클라이언트(200)는 예를 들면, 스피커(speaker)와 같은 클라이언트(200)에 포함되거나 연결되는 장치에 의해 신호 연결음과 전화벨과 같은 신호를 출력할 수 있다.The client 200 which transmits and receives the signaling message may output a signal such as a signal ring tone and a telephone ring by a device included in or connected to the client 200 such as a speaker.

상기 신호 연결음에 따라 상대방이 전화를 받거나 인터넷폰의 연결을 클릭하는 경우 호 연결이 이루어져 상호간의 전화 통화가 가능하게 된다.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 conventional web server 240, the soft switch 250, and the media gateway 260 can be used as they are, and the client 200 and the proxy device ( The protocol of the transport layer between 220 uses TCP so that reliability of transmission and reception of signaling messages can be ensured.

또한, 프록시 장치(220)에 의해 웹서버(240), 소프트 스위치(250) 및 미디어 게이트웨이(260)와 클라이언트(200)의 연결을 중개하여 통신망을 구분함으로써 인터넷폰 서비스에 장애가 발생하는 경우 실제 장애가 발생한 통신망을 정확히 파악할 수 있게 된다.In addition, by interfacing the connection between the web server 240, the soft switch 250, and the media gateway 260 and the client 200 by the proxy device 220 to distinguish the communication network, if there is a failure in the Internet phone service actual failure Accurately identify the communication network that occurred.

한편, 상기에서는 클라이언트와 프록시 장치간의 통신이 기본적으로 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)

클라이언트와 소프트 스위치를 포함하는 인터넷폰 제공 시스템에 연결되는 인터넷폰 프록시 장치로서,An internet phone proxy device connected to an internet phone providing system including a client and a soft switch. 상기 클라이언트로부터 TCP 프로토콜 시그널링 메시지를 수신하는 TCP 송수신부;A TCP transceiver for receiving a TCP protocol signaling message from the client; 상기 TCP 송수신부에 의해 수신된 TCP 프로토콜 시그널링 메시지의 프로토콜을 UDP 프로토콜로 변환하는 TCP/UDP 변환부;A TCP / UDP converter for converting a protocol of a TCP protocol signaling message received by the TCP transceiver into a UDP protocol; 상기 TCP/UDP 변환부에 의해 UDP 프로토콜로 변환된 시그널링 메시지를 상기 소프트 스위치에 전송하고, 상기 소프트 스위치로부터 UDP 프로토콜 시그널링 메시지를 수신하는 UDP 송수신부; 및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 상기 UDP 송수신부가 수신한 상기 소프트 스위치로부터의 UDP 프로토콜 시그널링 메시지의 프로토콜을 TCP 프로토콜로 변환하는 UDP/TCP 변환부를 포함하되,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, 상기 TCP 송수신부는 상기 UDP/TCP 변환부에 의해 변환된 TCP 프로토콜 시그널링 메시지를 상기 클라이언트에 전송하는 것을 특징으로 하는 인터넷폰 프록시 장치.And the TCP transceiver transmits a TCP protocol signaling message converted by the UDP / TCP converter to the client. 제1항에 있어서,The method of claim 1, 상기 시그널링 메시지는 SIP 프로토콜에 기반한 메시지이며, 호(call)의 접 속, 호의 해제 및 호의 제어와 관련된 정보 중 적어도 하나의 정보를 포함하는 메시지인 것을 특징으로 하는 인터넷폰 프록시 장치.The signaling message is a message based on a SIP protocol, and includes an Internet phone proxy device comprising at least one of information related to call access, call release, and call control. 제1항에 있어서,The method of claim 1, 상기 TCP 송수신부는, The TCP transceiver, 상기 클라이언트와 TCP 세션을 생성하는 TCP 세션 생성부; A TCP session generator for generating a TCP session with the client; 상기 수신되는 시그널링 메시지의 프로토콜이 TCP 프로토콜인지 여부를 시그널링 메시지의 헤더 정보를 이용하여 검출하는 TCP 검출부; 및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 상기 생성된 TCP 세션의 유지 및 해제를 제어하는 TCP 세션 제어부를 포함하는 것을 특징으로 하는 인터넷폰 프록시 장치. And a TCP session controller for controlling the maintenance and release of the created TCP session. 제1항에 있어서,The method of claim 1, 상기 UDP 송수신부는,The UDP transceiver, 상기 소프트 스위치와 UDP 세션을 생성하는 UDP 세션 생성부;A UDP session generator for generating a UDP session with the soft switch; 상기 수신되는 시그널링 메시지의 프로토콜이 UDP 프로토콜인지 여부를 시그널링 메시지의 헤더 정보를 이용하여 검출하는 UDP 검출부; 및A UDP detector for detecting whether a protocol of the received signaling message is a UDP protocol; And 상기 생성된 UDP 세션의 유지 및 해제를 제어하는 UDP 세션 제어부를 포함하는 것을 특징으로 하는 인터넷폰 프록시 장치.And a UDP session controller for controlling maintenance and release of the generated UDP session. 제1항에 있어서,The method of claim 1, 상기 클라이언트에는 인터넷폰 서비스를 위한 클라이언트 어플리케이션이 설치되며, 상기 클라이언트 어플리케이션은 에러 발생 시 상기 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 And an error detection unit for determining whether an error occurred between the soft switch and the soft switch. 제1항에 있어서,The method of claim 1, 상기 클라이언트 어플리케이션은 상기 TCP 프로토콜 시그널링 메시지를 암호하하는 암호화부를 포함하고,The client application includes an encryption unit for encrypting the TCP protocol signaling message, 상기 인터넷폰 프록시 장치는,The Internet phone proxy device, 상기 클라이언트로부터 전송되는 암호화된 TCP 프로토콜 시그널링 메시지를 복호화하기 위한 복호화부를 더 포함하고, Decryption unit for decrypting the encrypted TCP protocol signaling message transmitted from the client, 상기 UDP 송수신부는 상기 복호화부에 의해 복호화된 시그널링 메시지를 UDP 프로토콜로 상기 소프트 스위치에 송신하는 것을 특징으로 하는 인터넷폰 프록시 장치. And the UDP transceiver transmits the signaling message decoded by the decoder to the soft switch using UDP protocol. 제1항에 있어서,The method of claim 1, 상기 소프트 스위치로부터 전송되는 시그널링 메시지를 암호화하는 암호화부를 더 포함하며,Further comprising an encryption unit for encrypting the signaling message transmitted from the soft switch, 상기 TCP 송수신부는 상기 암호화부에 의해 암호화된 시그널링 메시지를 TCP 프로토콜로 상기 클라이언트에 송신하며,The TCP transceiver transmits a signaling message encrypted by the encryption unit to the client by TCP protocol, 상기 클라이언트 어플리케이션은 상기 암호화된 TCP 프로토콜 시그널링 메시지를 복호화하는 복호화부를 포함하는 것을 특징으로 하는 인터넷폰 프록시 장치. And the client application comprises a decryption unit for decrypting the encrypted TCP protocol signaling message. 제5항에 있어서,The method of claim 5, 상기 클라이언트 어플리케이션은 UDP 프로토콜 시그널링 메시지를 1차적으로 송신하며, 상기 UDP 프로토콜 시그널링 메시지 전송에 실패할 경우 TCP 프로토콜 시그널링 메시지를 송신하는 것을 특징으로 하는 인터넷폰 프록시 장치. And the client application transmits a UDP protocol signaling message primarily, and transmits a TCP protocol signaling message when the UDP protocol signaling message fails to be transmitted. 클라이언트, 프록시 장치 및 소프트 스위치를 포함하는 인터넷폰 서비스 시스템에서 상기 프록시 장치에서 실행되는 방법으로서,A method executed in the proxy device in an Internet phone service system including a client, a proxy device and a soft switch, 상기 클라이언트의 요청에 응답하여 TCP 세션을 생성하는 단계(a);(A) creating a TCP session in response to a request of the client; 상기 TCP 세션을 통해 TCP 프로토콜 시그널링 메시지를 수신하는 단계(b);(B) receiving a TCP protocol signaling message over the TCP session; 상기 수신된 TCP 프로토콜 시그널링 메시지의 프로토콜을 UDP 프로토콜로 변환하는 단계(c);(C) converting a protocol of the received TCP protocol signaling message into a UDP protocol; 상기 단계(c)에서 변환된 UDP 프로토콜 시그널링 메시지를 상기 소프트 스위치에 송신하는 단계(d)를 포함하는 것을 특징으로 하는 인터넷폰 서비스 제공 방법. (D) transmitting the UDP protocol signaling message converted in step (c) to the soft switch. 제9항에 있어서,The method of claim 9, 상기 소프트 스위치로부터 UDP 프로토콜 시그널링 메시지를 수신하는 단계(e);(E) receiving a UDP protocol signaling message from the soft switch; 상기 소프트 스위치로부터 수신된 UDP 프로토콜 시그널링 메시지의 프로토콜을 TCP 프로토콜로 변환하는 단계(f);Converting a protocol of a UDP protocol signaling message received from the soft switch to a TCP protocol; 상기 생성된 TCP 세션을 통해 상기 단계 (f)에서 변환된 TCP 프로토콜 시그널링 메시지를 송신하든 단계(g)를 더 포함하는 것을 특징으로 하는 인터넷폰 서비스 제공 방법. Or (g) whether to transmit the converted TCP protocol signaling message in the step (f) through the generated TCP session. 제10항에 있어서,The method of claim 10, 상기 단계(b)에서 전송되는 TCP 프로토콜 시그널링 메시지는 암호화된 시그 널링 메시지이며, The TCP protocol signaling message transmitted in step (b) is an encrypted signaling message. 상기 암호화된 시그널링 메시지를 복호화하는 단계를 더 포함하고,Decrypting the encrypted signaling message, 상기 단계(d)는 상기 복호화된 시그널링 메시지를 UDP 프로토콜로 상기 소프트 스위치에 송신하는 것임을 특징으로 하는 인터넷폰 서비스 제공 방법. The step (d) is the Internet phone service providing method characterized in that for transmitting the decoded signaling message to the soft switch in a UDP protocol. 제10항에 있어서,The method of claim 10, 상기 단계(e)에서 수신한 소프트 스위치로부터의 UDP 프로토콜 시그널링 메시지를 암호화하는 단계를 더 포함하고,Encrypting the UDP protocol signaling message from the soft switch received in step (e); 상기 단계(g)는 암호화된 시그널링 메시지를 TCP 프로토콜로 상기 클라이언트에 송신하는 것임을 특징으로 하는 인터넷폰 서비스 제공 방법. The step (g) is an Internet phone service providing method, characterized in that for transmitting an encrypted signaling message to the client in a TCP protocol. 제10항에 있어서,The method of claim 10, TCP 프로토콜에 기반하여 상기 수신되는 TCP 프로토콜 시그널링 메시지에 대한 응답 정보를 전송하는 단계를 더 포함하고,Transmitting response information on the received TCP protocol signaling message based on a TCP protocol; 상기 클라이언트에는 인터넷폰 서비스를 위한 클라이언트 어플리케이션이 설치되며, 상기 클라이언트 어플리케이션은 전송 에러가 발생할 경우 상기 응답 정보를 이용하여 상기 프록시 장치와 클라이언트 사이에서 발생한 에러인지 또는 상기 프록시 장치와 상기 소프트 스위치 사이에서 발생한 에러인지 여부를 판단하는 것 을 특징으로 하는 인터넷폰 서비스 제공 방법. The client is installed with a client application for the Internet phone service, the client application is an error occurred between the proxy device and the client using the response information when a transmission error occurs or occurs between the proxy device and the soft switch Internet phone service providing method characterized in that it determines whether or not an error. 제13항에 있어서,The method of claim 13, 상기 클라이언트 어플리케이션은 1차적으로 상기 프록시 장치와 UDP 세션을 형성하여 UDP 프로토콜로 시그널링 메시지를 송신하며, 상기 UDP 프로토콜 시그널링 메시지 송신에 실패할 경우, 상기 단계(a)의 TCP 세션 생성을 요청하는 것을 특징으로 하는 인터넷폰 서비스 제공 방법. The client application first establishes a UDP session with the proxy device to transmit a signaling message through a UDP protocol, and when the transmission of the UDP protocol signaling message fails, requesting the creation of a TCP session in step (a). Internet phone service providing method. 제9항 내지 제14항 중 어느 한 항의 방법을 수행하기 위한 명령어들의 프로그램이 유형적으로 구현되어 있으며 전자 정보 처리 장치에 의해 판독될 수 있는 프로그램을 기록한 기록 매체. A recording medium on which a program of instructions for performing the method of any one of claims 9 to 14 is tangibly embodied and which records a program that can be read by an electronic information processing apparatus.
KR1020060083109A 2006-08-30 2006-08-30 Apparatus and method for providing internet-phone service KR100871422B1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (4)

* Cited by examiner, † Cited by third party
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