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

Apparatus and method for providing internet-phone service Download PDF

Info

Publication number
WO2008026833A1
WO2008026833A1 PCT/KR2007/003695 KR2007003695W WO2008026833A1 WO 2008026833 A1 WO2008026833 A1 WO 2008026833A1 KR 2007003695 W KR2007003695 W KR 2007003695W WO 2008026833 A1 WO2008026833 A1 WO 2008026833A1
Authority
WO
WIPO (PCT)
Prior art keywords
signaling message
tcp
udp
client
internet phone
Prior art date
Application number
PCT/KR2007/003695
Other languages
French (fr)
Inventor
Chan Seok Jeon
Original Assignee
Nhn Corporation
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 Nhn Corporation filed Critical Nhn Corporation
Publication of WO2008026833A1 publication Critical patent/WO2008026833A1/en

Links

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

Definitions

  • the present invention relates to an Internet phone service, and more particularly to an apparatus and method for providing an Internet phone service, which can improve the quality of a call.
  • the Internet phone service is a service that enables a terminal to transmit and receive voice data over the Internet so that the terminal can be used like a general telephone, and is also called an Internet Protocol (IP) phone service.
  • IP Internet Protocol
  • FIG. 1 is a block diagram showing the configuration of the conventional Internet phone service provision system.
  • the conventional Internet phone service provision system comprises a client 100, Web server 120, media gateway 140, and Softswitch 130.
  • the client 100 includes a Web browser 102 for searching for the Web server 120 to connect the client 100 with the Web server 120, and an application 104 for receiving the Internet phone service over a communication network.
  • the Web server 120 provides a Web page necessary for user authentication for provision of the Internet phone service to the user over the communication network.
  • the media gateway 140 is connected with the client 100, and is a device that converts a traffic format according to the type of the communication network.
  • the media gateway 140 interworks with the Softswitch 130.
  • the Softswitch 130 is a device that connects a telephone network transferring a voice signal and a data packet network transferring data.
  • the Softswitch 130 is also connected with the media gateway 140 or client 100 to transfer voice data inputted from the client 100 to the telephone network.
  • HTTP HyperText Transfer Protocol
  • a Real-time Transport Protocol is used at a transport layer as a protocol for a connection 114 between the client 100 and the media gateway 140.
  • UDP User Datagram Protocol
  • IP Initiation Protocol
  • the Softswitch 130 and the client 100 is directly associated with the quality of the Internet phone service. That is, the UDP, which is the protocol of the transport layer used for the connection 112 between the Softswitch 130 and the client 100, is widely used owing to its advantages of a high data rate and a simple structure. The UDP is also adopted as a standard protocol for softswitches 130 currently commercially available.
  • the UDP is disadvantageous in that it is a communication protocol of an irrelevant service just transferring data one-sidedly, resulting in a degradation in stability of data transmission and reception. It was investigated that an error rate of about 5% occurs where the Internet phone service is practically provided using the UDP as a protocol. As a result, the quality of a call cannot be guaranteed, thereby making it impossible to widely spread the Internet phone service to users.
  • TCP Transmission Control Protocol
  • the present invention has been made in view of the above problems, and it is an object of the present invention to provide an apparatus and method for providing an Internet phone service, which can guarantee high stability and reliability of the Internet phone service.
  • NAT Network Address Translation
  • an apparatus for providing an Internet phone service comprising: a Transmission Control Protocol (TCP) transceiver for receiving a first signaling message based on a TCP from a client; a TCP/User Datagram Protocol (UDP) converter for converting the protocol of the TCP-based first signaling message received by the TCP transceiver to a UDP to output the first signaling message based on the UDP; a UDP transceiver for transmitting the UDP-based first signaling message from the TCP/UDP converter to a Softswitch and receiving a second signaling message based on the UDP from the Softswitch; and a UDP/TCP converter for converting the protocol of the UDP-based second signaling message received by the UDP transceiver to the TCP to output the second signaling message based on the TCP, wherein the TCP transceiver transmits the TCP-based second signal
  • Each of the first and second signaling messages may be based on a Session
  • IP Initiation Protocol
  • the TCP transceiver comprises: a TCP session creator for creating a TCP session with the client; a TCP detector for detecting whether the protocol of the first signaling message is the TCP, using header information of the first signaling message; and a TCP session controller for controlling maintenance and release of the created TCP session.
  • the UDP transceiver comprises: a UDP session creator for creating a UDP session with the Softswitch; a UDP detector for detecting whether the protocol of the second signaling message is the UDP, using header information of the second signaling message; and a UDP session controller for controlling maintenance and release of the created UDP session.
  • the apparatus may further comprise a decryptor for decrypting the TCP-based first signaling message when the TCP-based first signaling message received by the TCP transceiver is an encrypted signaling message.
  • the TCP/UDP converter converts the protocol of the decrypted TCP-based first signaling message to the UDP to output the decrypted first signaling message based on the UDP, and the UDP transceiver transmits the decrypted UDP-based first signaling message to the Softswitch.
  • the apparatus may further comprise an encryptor for encrypting the UDP-based second signaling message received by the UDP transceiver.
  • the UDP/TCP converter converts the protocol of the encrypted UDP-based second signaling message to the TCP to output the encrypted second signaling message based on the TCP, and the TCP transceiver transmits the encrypted TCP-based second signaling message to the client.
  • An application may be installed in the client to provide the Internet phone service.
  • the application determines whether the error has occurred between the Internet phone service provision apparatus and the client or between the Internet phone service provision apparatus and the Softswitch, using response information regarding the TCP-based first signaling message.
  • the application may primarily transmit the first signaling message based on the
  • a method for providing an Internet phone service using an Internet phone service provision apparatus comprising: creating a TCP session in response to a request from a client; receiving a first signaling message based on a TCP from the client through the created TCP session; converting the protocol of the received TCP- based first signaling message to a UDP to output the first signaling message based on the UDP; and transmitting the UDP-based first signaling message to a Softswitch.
  • FIG. 1 is a block diagram showing the configuration of a conventional system for providing an Internet phone service
  • FIG. 2 is a block diagram showing the configuration of a system for providing an
  • FIG. 3 is a block diagram showing the configuration of an application which is installed in a client to provide an Internet phone service according to one embodiment of the present invention
  • FIG. 4 is a flowchart illustrating an application driving process according to one embodiment of the present invention
  • FIG. 5 is a block diagram showing the configuration of a proxy device for providing an Internet phone service according to one embodiment of the present invention
  • FIG. 6 is a flowchart illustrating a protocol conversion process in a proxy device according to one embodiment of the present invention
  • FIG. 7 is a flowchart illustrating a sequence of providing an Internet phone service according to one embodiment of the present invention.
  • the Internet phone service provision system comprises a proxy device 220, Web server 240, Softswitch 250, and media gateway 260.
  • a client 200 can be connected to the Internet phone service provision system through a network.
  • the client 200 is a terminal device that performs a call connection setup process for
  • the client 200 can transmit and receive voice data so that it can be used like a general telephone.
  • the client 200 has a communication function, and can be connected to the Web server 240, Softswitch 250 and media gateway 260.
  • the client 200 may be, for example, a notebook computer, personal digital assistant (PDA), or the like, as well as a personal computer (PC).
  • the Web browser 202 is provided in the client 200 to search for the Web server 240 over the Internet to connect the client 200 with the Web server 240, and the application 204 is provided in the client 200 to receive the Internet phone service.
  • the application 204 functions to perform the call connection setup process for
  • signaling messages include messages related to connection and release or control of a call.
  • the application 204 transmits a signaling message directly to a
  • the application 204 transmits a signaling message to the proxy device 220.
  • the configuration of the application 204 will hereinafter be described in more detail with reference to FIG. 3.
  • the application 204 will be able to be implemented in the form of a software program which is installed and driven in the client 200.
  • the application 204 may be an ActiveX Control linked with a Web page for the provision of the Internet phone service.
  • the client 200 is connected with the proxy device 220, and transmits/receives signaling messages to/from the Softswitch 250 via the proxy device 220.
  • these signaling messages may be Session Initiation Protocol (S ⁇ P)-based messages.
  • S ⁇ P Session Initiation Protocol
  • the present invention is applicable to not only SIP-based signaling messages, but also other protocols-based signaling messages.
  • a Softswitch supports only a UDP, and a client and a Softswitch transmit and receive signaling messages according to the UDP.
  • a TCP is referred to as a connection-oriented protocol in comparison with the UDP.
  • the TCP has the advantage of higher reliability than the UDP in that it carries out arranging or debugging of data packets in the order of arrivals thereof.
  • the present invention includes the proxy device 220 to provide a stable
  • the proxy device 220 is an Internet phone service provision apparatus that is connected to each of the client 200, Web server 240, Softswitch 250 and media gateway 260 to provide the Internet phone service.
  • the application 204 installed in the client 200 creates a TCP signaling message and transmits it to the proxy device 220, and the proxy device 220 receives the TCP signaling message from the client 200, converts the received TCP signaling message to a UDP signaling message and transmits the UDP signaling message to the Softswitch 250.
  • the proxy device 220 receives a UDP signaling message from the Softswitch
  • the Web server 240 provides a Web page for use of the Internet phone service.
  • Web server 240 may further provide a Web page for authentication of an Internet phone service user.
  • An HTTP is used as a protocol for a connection 230 between the Web server 240 and the client 200, as in the conventional system.
  • the Softswitch 250 is a device that, in order to provide, in a packet network, a voice service provided by an existing Public Switched Telephone Network (PSTN) as it is, enables the voice service in the packet network while satisfying functions required by existing communication equipment, such as compatibility, interoperability, ex- tendibility and reliability with signaling systems interoperable with the existing PSTN.
  • PSTN Public Switched Telephone Network
  • the Softswitch 250 is based on software capable of accommodating all H.323,
  • Session Initiation Protocol SIP
  • Media Gateway Control Protocol MGCP
  • MEGACO Media Gateway Control/H.248 protocols enabling the voice service in the packet network.
  • the UDP is used as a transport layer protocol for the Softswitch
  • UDP has the advantage of being able to increase the data rate of the Softswitch 250 and make the structure thereof simply.
  • the UDP is used as a protocol for a connection 232 between the Softswitch 250 and the proxy device 220 such that there is no change in the conventional configuration of the Softswitch 250.
  • the media gateway 260 is a device that performs call control and vocoding functions under control of the Softswitch 250. For the call control, the media gateway 260 interworks with the Softswitch 250 based on control protocols, for example, the Media Gateway Control Protocol (MGCP), Media Gateway Control (MEGACO)/H.248 protocols, etc. to determine a flow path of traffic.
  • the media gateway 260 uses a Real-time Transport Protocol (RTP) when it transmits and receives information with a different media gateway in an IP manner, and a Permanent Virtual Connection (PVC) or Switched Virtual Connection (SVC) when in an Asynchronous Transfer Mode (ATM) manner.
  • RTP Real-time Transport Protocol
  • PVC Permanent Virtual Connection
  • SVC Switched Virtual Connection
  • the RTP is a communication protocol of a transport layer for transmitting and receiving a voice or call in real time and is characterized in that it is executed between terminals without depending on communication network equipment such as a router.
  • the RTP is the same transport layer protocol as the UDP or TCP, but is a higher-level communication protocol than the UDP or TCP.
  • the proxy device 220 connected with the Web server 240, Softswitch 250 and media gateway 260, uses protocols conventionally used in the Web server 240, Softswitch 250 and media gateway 260 as they are, so that the Web server 240, Softswitch 250 and media gateway 260 can be used as they are with no change in the configurations thereof.
  • the proxy device 220 transmits and receives data with the client 200 based on the highly reliable TCP, thereby making it possible to increase the reliability of Internet phone connection and guarantee the quality of a call.
  • a public network is directly used for a connection 210 between the client 200 and the proxy device 220 because the connection 210 is based on the TCP, and dedicated networks are used for connections 230, 232 and 234 between the proxy device 220 and the Web server 240, Softswitch 250 and media gateway 260.
  • this proxy device 220 in the Internet phone service provision system to distinguish the communication networks from one another, it is possible to, when a fault occurs in the Internet phone service, accurately grasp a communication network where the fault actually occurs.
  • FIG. 3 is a block diagram showing the configuration of the application 204 which is installed in the client 200 to provide the Internet phone service according to one embodiment of the present invention. It should be noted here that FIG. 3 shows the configuration of the application 204 by functions and the present invention is not limited thereto.
  • the application 204 installed in the client 200 includes a service logic 300, SIP stack 302, codec 304, network layer library 306, encryptor/decryptor 308, and error detector 310.
  • the service logic 300 processes additional functions necessary for the Internet phone service provision, for example, the provision of an additional service such as the provision of a telephone directory.
  • the SIP stack 302 provides methods (regist, invite, ack, etc.) based on Request For
  • the codec 304 converts a voice signal inputted through the client 200 by the user to a digital signal, and also converts a received digital signal to a voice signal.
  • the network layer library 306 executes subroutines or functions included therein to create a network layer structure to enable communication between the client 200 and the proxy device 220.
  • the encryptor/decryptor 308 functions to encrypt a message to be transmitted from the client 200 to the proxy device 220 and decrypt a message transmitted from the proxy device 220 to the client 200.
  • the signaling message and the voice message cannot help being directly transmitted under the condition that they are not encrypted, because the Softswitch, etc. do not support encryption and decryption.
  • the application includes the encryptor/decryptor 308 for security, because the proxy device can perform the message encryption and decryption.
  • known various encryption/decryption algorithms such as a general 3-DES algorithm, will be used.
  • the error detector 310 functions to detect a position where an error occurs during signaling message transmission. According to one embodiment of the present invention, the error detector 310 detects an error position based on a TCP protocol response message. For example, when no response message regarding a transmitted TCP protocol signaling message is received, the error detector 310 determines that an error has occurred between the client 200 and the proxy device 220. Also, when the message transmission to the Softswitch 250 has failed, but a TCP response message is received, the error detector 310 determines that an error has occurred between the proxy device 220 and the Softswitch 250.
  • a client transmits a signaling message directly to a Softswitch and the signaling message is a UDP protocol signaling message, thereby making it impossible to detect the cause of an error.
  • the signaling message is a UDP protocol signaling message, thereby making it impossible to detect the cause of an error.
  • the present invention there is an advantage in that it can be determined whether an error has occurred at whichever position.
  • the user drives the Web browser 202 installed in the client 200 to receive the
  • the Web browser 202 searches for the Web server 240 for the provision of the
  • the Web server 240 provides a Web page for the Internet phone service provision and authentication.
  • an authentication request signal for example, inputs an ID/password
  • the authentication request signal is transmitted to the Web server 240, which then processes the transmitted authentication request signal.
  • the SIP stack 302 provides a method to transmit a call request signal to the Softswitch 250 through the proxy device 220 using the TCP as a transport layer protocol and the SIP as a session layer protocol (S410).
  • FIG. 5 is a block diagram showing the configuration of the proxy device 220 for the
  • FIG. 5 shows the configuration of the proxy device 220 by functions and the present invention is not limited thereto.
  • the proxy device 220 includes a TCP transceiver 500, TCP/UDP converter 520, UDP transceiver 530, UDP/TCP converter 550, and encryptor/decryptor 560.
  • the TCP transceiver 500 includes a TCP detector 502, TCP transmitter 504, TCP session creator 506, TCP receiver 508, and TCP session controller 510.
  • the UDP transceiver 530 includes a UDP detector 532, UDP transmitter 534, UDP session creator 536, UDP receiver 538, and UDP session controller 540.
  • the proxy device 220 can further include a control unit for controlling the aforementioned respective constituent elements.
  • the TCP session controller 510 functions to manage creation, maintenance and release of a TCP session. Upon receiving a TCP connection setup request signal from the client 200, the TCP session controller 510 controls the TCP session creator 506, which then creates a TCP session with the client 200.
  • the TCP detector 502 recognizes a TCP header contained in a header of a signaling message received from the client 200 through a TCP session, and the TCP receiver 508 receives a call connection request signal based on the TCP in response to the recognition of the TCP detector 502.
  • the signaling is information related to connection and release or control of a call, which contains protocol information and is transferred as a message.
  • the TCP/UDP converter 520 converts a transmission protocol of a signaling message from the TCP to UDP.
  • the protocol conversion can be performed by replacing a TCP header of the signaling message containing protocol information with a UDP header.
  • the protocol information is stored in a header of a signaling message, which is made up of fields for storing respective information.
  • the protocol conversion at the same layer is carried out by the header replacement, and there is no change in a header of the upper layer and an original data storage portion.
  • the UDP session controller 540 functions to manage creation, maintenance and release of a UDP session with the Softswitch 250. For transmission of a signaling message from the client 200 to the Softswitch 250 or upon receiving a UDP connection setup request signal from the Softswitch, the UDP session controller 540 controls the UDP session creator 536, which then creates a UDP session with the Softswitch 250.
  • the UDP detector 532 recognizes a UDP header contained in a header of a signaling message received from the Softswitch 250, and the UDP receiver 538 receives the signaling message based on the UDP in response to the recognition of the UDP detector 532.
  • the UDP/TCP converter 550 converts a transmission protocol of a signaling message from the UDP to TCP.
  • the protocol conversion can be performed by replacing a UDP header of the signaling message containing protocol information with a TCP header.
  • TCP and UDP which are protocols of the transport layer
  • SIP can be used as a protocol of session layer which is the upper layer, as described previously, and a different type of signaling protocol may be used as the session layer protocol.
  • the SIP is a signaling protocol of the session layer specifying how intelligent terminals desiring to communicate on the Internet identify one another to find their position and multiple communication sessions are created, deleted, or modified thereamong.
  • the SIP has a request/response structure controlling creation, modification and termination of a multimedia service session, and can be applied to both the TCP and UDP which are protocols of the transport layer.
  • SIP Uniform Resource Locator URL
  • the user can receive the service independent of an IP address.
  • the encryptor/decryptor 560 decrypts a signaling message transmitted from the client 200 to transmit to the Softswitch 250 when the signaling message is an encrypted message.
  • the encryptor/decryptor 560 also encrypts a signaling message transmitted from the Softswitch 250 to transmit to the client 200 when the signaling message is not encrypted. This encryption/decryption will be applicable to a voice call message, as well as a signaling message.
  • the TCP detector 502 in the proxy device 220 recognizes the transmitted signaling message to be the signaling message based on the TCP/SIP (S600).
  • the UDP session creator 536 is requested to create a UDP/SIP session (S602), and then creates the UDP/SIP session (S604). Meanwhile, the received signaling message based on the TCP/SIP is converted to a signaling message based on the UDP/SIP.
  • the created UDP/SIP session is activated under the control of the UDP session controller 540 (S606), and the converted UDP/SIP-based signaling message is transmitted from the UDP transmitter 534 to the Softswitch 250 through the activated UDP/SIP session between the proxy device 220 and the Softswitch 250 (S608).
  • a protocol conversion process of converting a UDP/SIP-based signaling message received from the Softswitch 220 to a TCP/SIP-based signaling message, and a process of transmitting the converted TCP/SIP-based signaling message to the client 200 are the same as the processes of FIG. 6, with the exception that the received protocol is the UDP/SIP and the converted protocol is the TCP/SIP. Therefore, a description of the protocol conversion process of converting UDP/ SIP-based signaling message to the TCP/SIP-based signaling message will be omitted.
  • FIG. 7 is a flowchart illustrating a sequence of providing the Internet phone service according to one embodiment of the present invention. Because the process of the user connecting to the Web server 240 and driving the application 204 to receive the Internet phone service has been described with reference to FIG. 4, a description thereof will be omitted.
  • the created signaling message is transmitted to the proxy device 220 using the
  • TCP as a transport layer protocol (S704).
  • the proxy device 220 Upon receiving the TCP-based signaling message, the proxy device 220 converts the protocol of the received TCP-based signaling message to the UDP (706) and transmits the converted UDP-based signaling message to the Softswitch 250 (S708).
  • a signaling message received from another user and transmitted to the Softswitch 250, is transmitted to the proxy device 220 based on the UDP (S710).
  • the proxy device 220 Upon receiving the UDP-based signaling message, the proxy device 220 converts the protocol of the received UDP-based signaling message to the TCP (712) and transmits the converted TCP-based signaling message to the client 200 (S714).
  • the client 200 When the client 200 transmits and receives the signaling messages, it can output signals such as a signal connection sound and a telephone bell through a device included therein or connected thereto, for example, a speaker.
  • Softswitch 250 and media gateway 260 through the proxy device 220 to distinguish the communication networks therebetween from one another, it is possible to, when a fault occurs in the Internet phone service, accurately grasp a communication network where the fault actually occurs.
  • the communication between the client and the proxy device has been described to be established basically based on the TCP, it may be established selectively based on the TCP.
  • the application transmits and receives signaling messages based on the TCP.
  • the application may transmit and receive signaling messages based on the general UDP.
  • the application primarily transmits a UDP signaling message. At this time, where the application fails to transmit the UDP signaling message, it determines that the UDP signaling message cannot be transmitted due to the NAT, firewall, etc., creates a TCP session with the proxy device and transmits and receives TCP-based signaling messages in the created TCP session.
  • the present invention provides an apparatus and method for providing an Internet phone service, which can guarantee high stability of the Internet phone service and the quality of a call.
  • the guarantee of the high stability of the Internet phone service and the call quality makes it possible to widely spread the Internet phone service.
  • a proxy device is provided between a client and a Softswitch, so that messages can be encrypted and decrypted, thereby maintaining the security of the Internet phone service more highly than a conventional one.
  • the Internet phone service can be used by even clients under environments where the transmission and reception of UDP signaling messages are difficult due to a NAT, firewall, etc.

Abstract

An apparatus and a method for providing an Internet phone service are disclosed. The apparatus includes a Transmission Control Protocol (TCP) transceiver for receiving a first signaling message based on a TCP from a client, a TCP/User Datagram Protocol (UDP) converter for converting the protocol of the TCP-based first signaling message received by the TCP transceiver to a UDP to output the first signaling message based on the UDP, a UDP transceiver for transmitting the UDP-based first signaling message from the TCP/UDP converter to a Softswitch and receiving a second signaling message based on the UDP from the Softswitch, and a UDP/TCP converter for converting the protocol of the UDP-based second signaling message received by the UDP transceiver to the TCP to output the second signaling message based on the TCP, wherein the TCP transceiver transmits the TCP-based second signaling message from the UDP/TCP converter to the client.

Description

Description
APPARATUS AND METHOD FOR PROVIDING INTERNET
PHONE SERVICE
Technical Field
[1] The present invention relates to an Internet phone service, and more particularly to an apparatus and method for providing an Internet phone service, which can improve the quality of a call. Background Art
[2] Nowadays, with the development of digital and communication technologies, the use of the Internet becomes popular and the use of an Internet phone service whose call fee is low is thus on an increasing trend. The Internet phone service is a service that enables a terminal to transmit and receive voice data over the Internet so that the terminal can be used like a general telephone, and is also called an Internet Protocol (IP) phone service.
[3] The configuration of a conventional system for providing this Internet phone service will hereinafter be described with reference to FIG. 1, which is a block diagram showing the configuration of the conventional Internet phone service provision system.
[4] As shown in FIG. 1, the conventional Internet phone service provision system comprises a client 100, Web server 120, media gateway 140, and Softswitch 130. The client 100 includes a Web browser 102 for searching for the Web server 120 to connect the client 100 with the Web server 120, and an application 104 for receiving the Internet phone service over a communication network.
[5] The Web server 120 provides a Web page necessary for user authentication for provision of the Internet phone service to the user over the communication network.
[6] The media gateway 140 is connected with the client 100, and is a device that converts a traffic format according to the type of the communication network. The media gateway 140 interworks with the Softswitch 130.
[7] The Softswitch 130 is a device that connects a telephone network transferring a voice signal and a data packet network transferring data. The Softswitch 130 is also connected with the media gateway 140 or client 100 to transfer voice data inputted from the client 100 to the telephone network.
[8] In this conventional Internet phone service provision system, different protocols are used for the respective connections between the respective constituent elements.
[9] Particularly, a HyperText Transfer Protocol (HTTP) is used at an application layer as a protocol for a connection 110 between the client 100 and the Web server 120.
[10] A Real-time Transport Protocol (RTP) is used at a transport layer as a protocol for a connection 114 between the client 100 and the media gateway 140.
[11] A User Datagram Protocol (UDP) is used at the transport layer and a Session
Initiation Protocol (SIP) is used at the application layer, as protocols for a connection 112 between the Softswitch 130 and the client 100.
[12] It should be noted here that the stability of the connection 112 between the
Softswitch 130 and the client 100 is directly associated with the quality of the Internet phone service. That is, the UDP, which is the protocol of the transport layer used for the connection 112 between the Softswitch 130 and the client 100, is widely used owing to its advantages of a high data rate and a simple structure. The UDP is also adopted as a standard protocol for softswitches 130 currently commercially available.
[13] However, the UDP is disadvantageous in that it is a communication protocol of an irrelevant service just transferring data one-sidedly, resulting in a degradation in stability of data transmission and reception. It was investigated that an error rate of about 5% occurs where the Internet phone service is practically provided using the UDP as a protocol. As a result, the quality of a call cannot be guaranteed, thereby making it impossible to widely spread the Internet phone service to users.
[14] In order to solve this problem, a Transmission Control Protocol (TCP) with high stability may be used as a protocol for the provision of the Internet phone service. In this case, however, there is a problem in that the devices constituting the Internet phone service provision system must be replaced with different ones.
[15] On the other hand, in the conventional Internet phone service provision system, different protocols are used for the respective devices connected with the client. For this reason, when a fault occurs in the Internet phone service, it is difficult to grasp in which layer of the communication network using whichever protocol the fault has occurred.
Disclosure of Invention Technical Problem
[16] Therefore, the present invention has been made in view of the above problems, and it is an object of the present invention to provide an apparatus and method for providing an Internet phone service, which can guarantee high stability and reliability of the Internet phone service.
[17] It is another object of the present invention to provide an apparatus and method for providing an Internet phone service, which can guarantee high stability of the Internet phone service and the quality of a call, thereby making it possible to widely spread the Internet phone service.
[18] It is another object of the present invention to provide an apparatus and method for providing an Internet phone service, which can stably provide the Internet phone service without replacing conventional devices for the provision of the Internet phone service.
[19] It is a further object of the present invention to provide an apparatus and method for providing an Internet phone service, which, when a fault occurs in the Internet phone service, can accurately grasp a communication network where the fault actually occurs, so as to easily cope with the service fault.
[20] It is another object of the present invention to provide an apparatus and method for providing an Internet phone service, wherein a proxy device is provided between a client and a Softswitch, so that messages can be encrypted and decrypted, thereby maintaining the security of the Internet phone service more highly than a conventional one.
[21] It is yet another object of the present invention to provide an apparatus and method for providing an Internet phone service, wherein the Internet phone service can be used by even clients under environments where the transmission and reception of UDP signaling messages are difficult due to a Network Address Translation (NAT), firewall, etc. Technical Solution
[22] In accordance with an aspect of the present invention, the above and other objects can be accomplished by the provision of an apparatus for providing an Internet phone service, comprising: a Transmission Control Protocol (TCP) transceiver for receiving a first signaling message based on a TCP from a client; a TCP/User Datagram Protocol (UDP) converter for converting the protocol of the TCP-based first signaling message received by the TCP transceiver to a UDP to output the first signaling message based on the UDP; a UDP transceiver for transmitting the UDP-based first signaling message from the TCP/UDP converter to a Softswitch and receiving a second signaling message based on the UDP from the Softswitch; and a UDP/TCP converter for converting the protocol of the UDP-based second signaling message received by the UDP transceiver to the TCP to output the second signaling message based on the TCP, wherein the TCP transceiver transmits the TCP-based second signaling message from the UDP/TCP converter to the client.
[23] Each of the first and second signaling messages may be based on a Session
Initiation Protocol (SIP) and include at least one of information related to connection, release and control of a call.
[24] The TCP transceiver comprises: a TCP session creator for creating a TCP session with the client; a TCP detector for detecting whether the protocol of the first signaling message is the TCP, using header information of the first signaling message; and a TCP session controller for controlling maintenance and release of the created TCP session.
[25] The UDP transceiver comprises: a UDP session creator for creating a UDP session with the Softswitch; a UDP detector for detecting whether the protocol of the second signaling message is the UDP, using header information of the second signaling message; and a UDP session controller for controlling maintenance and release of the created UDP session.
[26] The apparatus may further comprise a decryptor for decrypting the TCP-based first signaling message when the TCP-based first signaling message received by the TCP transceiver is an encrypted signaling message. In this case, the TCP/UDP converter converts the protocol of the decrypted TCP-based first signaling message to the UDP to output the decrypted first signaling message based on the UDP, and the UDP transceiver transmits the decrypted UDP-based first signaling message to the Softswitch.
[27] The apparatus may further comprise an encryptor for encrypting the UDP-based second signaling message received by the UDP transceiver. In this case, the UDP/TCP converter converts the protocol of the encrypted UDP-based second signaling message to the TCP to output the encrypted second signaling message based on the TCP, and the TCP transceiver transmits the encrypted TCP-based second signaling message to the client.
[28] An application may be installed in the client to provide the Internet phone service.
When an error occurs, the application determines whether the error has occurred between the Internet phone service provision apparatus and the client or between the Internet phone service provision apparatus and the Softswitch, using response information regarding the TCP-based first signaling message.
[29] The application may primarily transmit the first signaling message based on the
UDP, and secondarily transmit the first signaling message based on the TCP when failing to transmit the first signaling message based on the UDP.
[30] In accordance with another aspect of the present invention, there is provided a method for providing an Internet phone service using an Internet phone service provision apparatus, the method comprising: creating a TCP session in response to a request from a client; receiving a first signaling message based on a TCP from the client through the created TCP session; converting the protocol of the received TCP- based first signaling message to a UDP to output the first signaling message based on the UDP; and transmitting the UDP-based first signaling message to a Softswitch.
[31] In accordance with yet another aspect of the present invention, there is provided a storage medium for storing programs of commands for execution of the above method, the programs being typically implemented and readable by an electronic information processor. Brief Description of the Drawings
[32] The above and other objects, features and other advantages of the present invention will be more clearly understood from the following detailed description taken in conju nction with the accompanying drawings, in which: [33] FIG. 1 is a block diagram showing the configuration of a conventional system for providing an Internet phone service; [34] FIG. 2 is a block diagram showing the configuration of a system for providing an
Internet phone service according to one embodiment of the present invention; [35] FIG. 3 is a block diagram showing the configuration of an application which is installed in a client to provide an Internet phone service according to one embodiment of the present invention; [36] FIG. 4 is a flowchart illustrating an application driving process according to one embodiment of the present invention; [37] FIG. 5 is a block diagram showing the configuration of a proxy device for providing an Internet phone service according to one embodiment of the present invention; [38] FIG. 6 is a flowchart illustrating a protocol conversion process in a proxy device according to one embodiment of the present invention; and [39] FIG. 7 is a flowchart illustrating a sequence of providing an Internet phone service according to one embodiment of the present invention.
Mode for the Invention [40] Reference will now be made in detail to the embodiments of the present invention, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts, and a duplicate description thereof will be omitted. [41] First, a system for providing an Internet phone service according to one embodiment of the present invention will be described with reference to FIG. 2. [42] As shown in FIG. 2, the Internet phone service provision system according to this embodiment comprises a proxy device 220, Web server 240, Softswitch 250, and media gateway 260. A client 200 can be connected to the Internet phone service provision system through a network. [43] The client 200 is a terminal device that performs a call connection setup process for
Internet phone connection via the Internet to receive the Internet phone service.
Through the Internet phone service, the client 200 can transmit and receive voice data so that it can be used like a general telephone. [44] The client 200 has a communication function, and can be connected to the Web server 240, Softswitch 250 and media gateway 260. [45] There is no limit to the client 200 as long as a Web browser 202 and an application 204 are installable therein. The client 200 may be, for example, a notebook computer, personal digital assistant (PDA), or the like, as well as a personal computer (PC).
[46] The Web browser 202 is provided in the client 200 to search for the Web server 240 over the Internet to connect the client 200 with the Web server 240, and the application 204 is provided in the client 200 to receive the Internet phone service.
[47] The application 204 functions to perform the call connection setup process for
Internet phone connection and transmit and receive voice data after signaling. Messages transmitted and received for call connection setup are referred to as signaling messages, which include messages related to connection and release or control of a call.
[48] Conventionally, the application 204 transmits a signaling message directly to a
Softswitch. However, according to the present invention, the application 204 transmits a signaling message to the proxy device 220. The configuration of the application 204 will hereinafter be described in more detail with reference to FIG. 3.
[49] The application 204 will be able to be implemented in the form of a software program which is installed and driven in the client 200. According to one embodiment of the present invention, the application 204 may be an ActiveX Control linked with a Web page for the provision of the Internet phone service.
[50] The client 200 is connected with the proxy device 220, and transmits/receives signaling messages to/from the Softswitch 250 via the proxy device 220. According to one embodiment of the present invention, these signaling messages may be Session Initiation Protocol (SΙP)-based messages. However, it will be understood that the present invention is applicable to not only SIP-based signaling messages, but also other protocols-based signaling messages.
[51] Conventionally, it is common that a Softswitch supports only a UDP, and a client and a Softswitch transmit and receive signaling messages according to the UDP.
[52] A TCP is referred to as a connection-oriented protocol in comparison with the UDP.
The TCP has the advantage of higher reliability than the UDP in that it carries out arranging or debugging of data packets in the order of arrivals thereof.
[53] However, because devices included in a conventional Internet phone service provision system, including a Softswitch, use the UDP as a protocol owing to its advantages of a high data rate and a simple structure as stated previously, there is a need to use the stable TCP as a protocol without replacing these devices.
[54] Therefore, the present invention includes the proxy device 220 to provide a stable
Internet phone service without replacing the devices included in the conventional Internet phone service provision system.
[55] The proxy device 220 is an Internet phone service provision apparatus that is connected to each of the client 200, Web server 240, Softswitch 250 and media gateway 260 to provide the Internet phone service.
[56] For more stable transmission of signaling messages, the application 204 installed in the client 200 creates a TCP signaling message and transmits it to the proxy device 220, and the proxy device 220 receives the TCP signaling message from the client 200, converts the received TCP signaling message to a UDP signaling message and transmits the UDP signaling message to the Softswitch 250.
[57] Also, the proxy device 220 receives a UDP signaling message from the Softswitch
250, converts the received UDP signaling message to a TCP signaling message and transmits the TCP signaling message to the client 200.
[58] The configuration and function of the proxy device 220 will be described later in more detail with reference to FIG. 4.
[59] The Web server 240 provides a Web page for use of the Internet phone service. The
Web server 240 may further provide a Web page for authentication of an Internet phone service user.
[60] An HTTP is used as a protocol for a connection 230 between the Web server 240 and the client 200, as in the conventional system.
[61] The Softswitch 250 is a device that, in order to provide, in a packet network, a voice service provided by an existing Public Switched Telephone Network (PSTN) as it is, enables the voice service in the packet network while satisfying functions required by existing communication equipment, such as compatibility, interoperability, ex- tendibility and reliability with signaling systems interoperable with the existing PSTN.
[62] The Softswitch 250 is based on software capable of accommodating all H.323,
Session Initiation Protocol (SIP), Media Gateway Control Protocol (MGCP), and Media Gateway Control (MEGACO)/H.248 protocols enabling the voice service in the packet network.
[63] On the other hand, the UDP is used as a transport layer protocol for the Softswitch
250 currently commercially available. The use of the UDP has the advantage of being able to increase the data rate of the Softswitch 250 and make the structure thereof simply.
[64] Therefore, according to one embodiment of the present invention, in the Internet phone service provision system, the UDP is used as a protocol for a connection 232 between the Softswitch 250 and the proxy device 220 such that there is no change in the conventional configuration of the Softswitch 250.
[65] The media gateway 260 is a device that performs call control and vocoding functions under control of the Softswitch 250. For the call control, the media gateway 260 interworks with the Softswitch 250 based on control protocols, for example, the Media Gateway Control Protocol (MGCP), Media Gateway Control (MEGACO)/H.248 protocols, etc. to determine a flow path of traffic. [66] The media gateway 260 uses a Real-time Transport Protocol (RTP) when it transmits and receives information with a different media gateway in an IP manner, and a Permanent Virtual Connection (PVC) or Switched Virtual Connection (SVC) when in an Asynchronous Transfer Mode (ATM) manner.
[67] The RTP is a communication protocol of a transport layer for transmitting and receiving a voice or call in real time and is characterized in that it is executed between terminals without depending on communication network equipment such as a router. In principle, the RTP is the same transport layer protocol as the UDP or TCP, but is a higher-level communication protocol than the UDP or TCP.
[68] Therefore, in the case of providing the Internet phone service, signaling is carried out based on the SIP, H.323, etc, and the contents of a call, namely, voice call data is transmitted based on the RTP when an actual call connection is established between clients or between a client and a general telephone or mobile telephone.
[69] The proxy device 220, connected with the Web server 240, Softswitch 250 and media gateway 260, uses protocols conventionally used in the Web server 240, Softswitch 250 and media gateway 260 as they are, so that the Web server 240, Softswitch 250 and media gateway 260 can be used as they are with no change in the configurations thereof.
[70] In contrast, the proxy device 220 transmits and receives data with the client 200 based on the highly reliable TCP, thereby making it possible to increase the reliability of Internet phone connection and guarantee the quality of a call.
[71] Also, a public network is directly used for a connection 210 between the client 200 and the proxy device 220 because the connection 210 is based on the TCP, and dedicated networks are used for connections 230, 232 and 234 between the proxy device 220 and the Web server 240, Softswitch 250 and media gateway 260.
[72] By including this proxy device 220 in the Internet phone service provision system to distinguish the communication networks from one another, it is possible to, when a fault occurs in the Internet phone service, accurately grasp a communication network where the fault actually occurs.
[73] For example, provided that a signal or data transmitted from the client 200 is not transferred to the proxy device 220, it will be easily known that a fault has occurred in the public network for the connection 210 between the client 200 and the proxy device 220.
[74] In addition, provided that a signal or data transmitted from the client 200 is received by the proxy device 220, but not transferred to any one of the Web server 240, Softswitch 250 and media gateway 260, it will be easily known that a fault has occurred in the dedicated network for the connections between the proxy device 220 and whichever constituent element. Therefore, it is possible to readily cope with the occurrence of a fault in the Internet phone service.
[75] With reference to FIGS. 3 and 4, a description will hereinafter be given of the configuration and driving process of the application 204, installed in the client 200 to enable the Internet phone service provision, among these constituent elements of the Internet phone service provision system.
[76] FIG. 3 is a block diagram showing the configuration of the application 204 which is installed in the client 200 to provide the Internet phone service according to one embodiment of the present invention. It should be noted here that FIG. 3 shows the configuration of the application 204 by functions and the present invention is not limited thereto.
[77] As shown in FIG. 3, according to one embodiment of the present invention, the application 204 installed in the client 200 includes a service logic 300, SIP stack 302, codec 304, network layer library 306, encryptor/decryptor 308, and error detector 310.
[78] The service logic 300 processes additional functions necessary for the Internet phone service provision, for example, the provision of an additional service such as the provision of a telephone directory.
[79] The SIP stack 302 provides methods (regist, invite, ack, etc.) based on Request For
Comments (RFC) 2543 to perform authentication and call request.
[80] The codec 304 converts a voice signal inputted through the client 200 by the user to a digital signal, and also converts a received digital signal to a voice signal.
[81] The network layer library 306 executes subroutines or functions included therein to create a network layer structure to enable communication between the client 200 and the proxy device 220.
[82] The encryptor/decryptor 308 functions to encrypt a message to be transmitted from the client 200 to the proxy device 220 and decrypt a message transmitted from the proxy device 220 to the client 200.
[83] Conventionally, a message created by an application for an Internet phone call, is directly transmitted to a Softswitch when it is a signaling message, and to a gateway or a client of another party when it is a voice message.
[84] In this case, the signaling message and the voice message cannot help being directly transmitted under the condition that they are not encrypted, because the Softswitch, etc. do not support encryption and decryption.
[85] For this reason, when the signaling message and the voice message are hooked on a network, it is difficult to maintain the security of those messages. However, in the configuration comprising the proxy device according to the present invention, the application includes the encryptor/decryptor 308 for security, because the proxy device can perform the message encryption and decryption. In the present invention, known various encryption/decryption algorithms, such as a general 3-DES algorithm, will be used.
[86] The error detector 310 functions to detect a position where an error occurs during signaling message transmission. According to one embodiment of the present invention, the error detector 310 detects an error position based on a TCP protocol response message. For example, when no response message regarding a transmitted TCP protocol signaling message is received, the error detector 310 determines that an error has occurred between the client 200 and the proxy device 220. Also, when the message transmission to the Softswitch 250 has failed, but a TCP response message is received, the error detector 310 determines that an error has occurred between the proxy device 220 and the Softswitch 250.
[87] Conventionally, a client transmits a signaling message directly to a Softswitch and the signaling message is a UDP protocol signaling message, thereby making it impossible to detect the cause of an error. However, according to the present invention, there is an advantage in that it can be determined whether an error has occurred at whichever position.
[88] A process for providing the Internet phone service using the client 200 installed the application 204 will hereinafter be described with reference to FIG. 4.
[89] First, the user drives the Web browser 202 installed in the client 200 to receive the
Internet phone service (S400).
[90] The Web browser 202 searches for the Web server 240 for the provision of the
Internet phone service and the client 200 is connected with the searched Web server 240 (S402).
[91] The Web server 240 provides a Web page for the Internet phone service provision and authentication. When the user inputs an authentication request signal (for example, inputs an ID/password) to the client 200, the authentication request signal is transmitted to the Web server 240, which then processes the transmitted authentication request signal.
[92] When the user is an authenticated user, he/she requests the initiation of the Internet phone service through the Web page (S404) and drives the application 204 included in the client 200 (S406).
[93] When the application 204 is driven and the user requests an Internet call with a specific user (for example, inputs a telephone number) (S408), the SIP stack 302 provides a method to transmit a call request signal to the Softswitch 250 through the proxy device 220 using the TCP as a transport layer protocol and the SIP as a session layer protocol (S410).
[94] The call request signal transmitted to the Softswitch 250 is in turn transmitted to an
Internet phone, general telephone or mobile telephone desired to be connected by the user. As a result, upon receiving the call request signal, another user recognizes that a call has arrived.
[95] With reference to FIG. 5, a description will hereinafter be given of the proxy device
220 which is connected with this client 200 to relay connections between the client 200 and the Web server 240, Softswitch 250 and media gateway 260, and performs conversion to a protocol appropriate to each device.
[96] FIG. 5 is a block diagram showing the configuration of the proxy device 220 for the
Internet phone service provision according to one embodiment of the present invention. It should be noted here that FIG. 5 shows the configuration of the proxy device 220 by functions and the present invention is not limited thereto.
[97] As shown in FIG. 5, according to one embodiment of the present invention, the proxy device 220 includes a TCP transceiver 500, TCP/UDP converter 520, UDP transceiver 530, UDP/TCP converter 550, and encryptor/decryptor 560.
[98] The TCP transceiver 500 includes a TCP detector 502, TCP transmitter 504, TCP session creator 506, TCP receiver 508, and TCP session controller 510. The UDP transceiver 530 includes a UDP detector 532, UDP transmitter 534, UDP session creator 536, UDP receiver 538, and UDP session controller 540.
[99] Although not shown in FIG. 5, it will be understood that the proxy device 220 can further include a control unit for controlling the aforementioned respective constituent elements.
[100] The TCP session controller 510 functions to manage creation, maintenance and release of a TCP session. Upon receiving a TCP connection setup request signal from the client 200, the TCP session controller 510 controls the TCP session creator 506, which then creates a TCP session with the client 200.
[101] The TCP detector 502 recognizes a TCP header contained in a header of a signaling message received from the client 200 through a TCP session, and the TCP receiver 508 receives a call connection request signal based on the TCP in response to the recognition of the TCP detector 502.
[102] As stated previously, the signaling is information related to connection and release or control of a call, which contains protocol information and is transferred as a message.
[103] The TCP/UDP converter 520 converts a transmission protocol of a signaling message from the TCP to UDP. The protocol conversion can be performed by replacing a TCP header of the signaling message containing protocol information with a UDP header.
[104] The protocol information is stored in a header of a signaling message, which is made up of fields for storing respective information. The protocol conversion at the same layer is carried out by the header replacement, and there is no change in a header of the upper layer and an original data storage portion. [105] On the other hand, the UDP session controller 540 functions to manage creation, maintenance and release of a UDP session with the Softswitch 250. For transmission of a signaling message from the client 200 to the Softswitch 250 or upon receiving a UDP connection setup request signal from the Softswitch, the UDP session controller 540 controls the UDP session creator 536, which then creates a UDP session with the Softswitch 250.
[106] The UDP detector 532 recognizes a UDP header contained in a header of a signaling message received from the Softswitch 250, and the UDP receiver 538 receives the signaling message based on the UDP in response to the recognition of the UDP detector 532.
[107] The UDP/TCP converter 550 converts a transmission protocol of a signaling message from the UDP to TCP. The protocol conversion can be performed by replacing a UDP header of the signaling message containing protocol information with a TCP header.
[108] Although only the TCP and UDP, which are protocols of the transport layer, are shown in FIG. 5, it should be noted that the SIP can be used as a protocol of session layer which is the upper layer, as described previously, and a different type of signaling protocol may be used as the session layer protocol.
[109] The SIP is a signaling protocol of the session layer specifying how intelligent terminals desiring to communicate on the Internet identify one another to find their position and multiple communication sessions are created, deleted, or modified thereamong.
[110] The SIP has a request/response structure controlling creation, modification and termination of a multimedia service session, and can be applied to both the TCP and UDP which are protocols of the transport layer. By using an SIP Uniform Resource Locator (URL) for user identification, the user can receive the service independent of an IP address.
[I l l] The encryptor/decryptor 560 decrypts a signaling message transmitted from the client 200 to transmit to the Softswitch 250 when the signaling message is an encrypted message. The encryptor/decryptor 560 also encrypts a signaling message transmitted from the Softswitch 250 to transmit to the client 200 when the signaling message is not encrypted. This encryption/decryption will be applicable to a voice call message, as well as a signaling message.
[112] With reference to FIG. 6, a description will hereinafter be given of a protocol conversion process of converting a signaling message based on the TCP/SIP to a signaling message based on the UDP/SIP.
[113] First, when the signaling message based on the TCP/SIP is transmitted from the client 200 to the proxy device 220, the TCP detector 502 in the proxy device 220 recognizes the transmitted signaling message to be the signaling message based on the TCP/SIP (S600).
[114] After the transmitted signaling message is recognized to be the signaling message based on the TCP/SIP, the UDP session creator 536 is requested to create a UDP/SIP session (S602), and then creates the UDP/SIP session (S604). Meanwhile, the received signaling message based on the TCP/SIP is converted to a signaling message based on the UDP/SIP.
[115] The created UDP/SIP session is activated under the control of the UDP session controller 540 (S606), and the converted UDP/SIP-based signaling message is transmitted from the UDP transmitter 534 to the Softswitch 250 through the activated UDP/SIP session between the proxy device 220 and the Softswitch 250 (S608).
[116] On the other hand, a protocol conversion process of converting a UDP/SIP-based signaling message received from the Softswitch 220 to a TCP/SIP-based signaling message, and a process of transmitting the converted TCP/SIP-based signaling message to the client 200 are the same as the processes of FIG. 6, with the exception that the received protocol is the UDP/SIP and the converted protocol is the TCP/SIP. Therefore, a description of the protocol conversion process of converting UDP/ SIP-based signaling message to the TCP/SIP-based signaling message will be omitted.
[117] With reference to FIG. 7, a description will hereinafter be given of a process of actually providing the Internet phone service according to the driving of the application 204 installed in the client 200 and the protocol conversion of the proxy device 220 as described above.
[118] FIG. 7 is a flowchart illustrating a sequence of providing the Internet phone service according to one embodiment of the present invention. Because the process of the user connecting to the Web server 240 and driving the application 204 to receive the Internet phone service has been described with reference to FIG. 4, a description thereof will be omitted.
[119] First, when a call connection request (for example, inputs a telephone number) is inputted to client 200 by a user (S700), a signaling message is created using the inputted telephone number (S702).
[120] Then, the created signaling message is transmitted to the proxy device 220 using the
TCP as a transport layer protocol (S704).
[121] Upon receiving the TCP-based signaling message, the proxy device 220 converts the protocol of the received TCP-based signaling message to the UDP (706) and transmits the converted UDP-based signaling message to the Softswitch 250 (S708).
[122] On the other hand, a signaling message, received from another user and transmitted to the Softswitch 250, is transmitted to the proxy device 220 based on the UDP (S710).
[123] Upon receiving the UDP-based signaling message, the proxy device 220 converts the protocol of the received UDP-based signaling message to the TCP (712) and transmits the converted TCP-based signaling message to the client 200 (S714).
[124] When the client 200 transmits and receives the signaling messages, it can output signals such as a signal connection sound and a telephone bell through a device included therein or connected thereto, for example, a speaker.
[125] When another party receives a call or clicks an Internet phone connection in response to the signal connection sound, a call connection is established to enable a mutual telephone conversation.
[126] By providing the Internet phone service according to this sequence, it is possible to use conventional constituent elements, such as the Web server 240, Softswitch 250 and media gateway 260, as they are. Also, by using the TCP as a protocol of the transport layer between the client 200 and the proxy device 220, it is possible to guarantee the reliability of transmission and reception of signaling messages.
[127] In addition, by relaying the connections between the client 200 and the Web server
240, Softswitch 250 and media gateway 260 through the proxy device 220 to distinguish the communication networks therebetween from one another, it is possible to, when a fault occurs in the Internet phone service, accurately grasp a communication network where the fault actually occurs.
[128] On the other hand, although the communication between the client and the proxy device has been described to be established basically based on the TCP, it may be established selectively based on the TCP. For example, when the client is in an environment where the transmission and reception of UDP protocol messages are difficult due to a NAT, firewall, etc., the application transmits and receives signaling messages based on the TCP. In contrast, when the client is in other environments, the application may transmit and receive signaling messages based on the general UDP.
[129] For example, the application primarily transmits a UDP signaling message. At this time, where the application fails to transmit the UDP signaling message, it determines that the UDP signaling message cannot be transmitted due to the NAT, firewall, etc., creates a TCP session with the proxy device and transmits and receives TCP-based signaling messages in the created TCP session. Industrial Applicability
[130] As apparent from the above description, the present invention provides an apparatus and method for providing an Internet phone service, which can guarantee high stability of the Internet phone service and the quality of a call.
[131] Further, according to the present apparatus and method, the guarantee of the high stability of the Internet phone service and the call quality makes it possible to widely spread the Internet phone service. [132] Further, it is possible to stably provide the Internet phone service without replacing conventional devices for the provision of the Internet phone service.
[133] In addition, when an error occurs in the Internet phone service, it is possible to grasp a position where the error actually occurs, so as to more easily cope with the error.
[134] In addition, a proxy device is provided between a client and a Softswitch, so that messages can be encrypted and decrypted, thereby maintaining the security of the Internet phone service more highly than a conventional one.
[135] Furthermore, according to the system of the present invention, the Internet phone service can be used by even clients under environments where the transmission and reception of UDP signaling messages are difficult due to a NAT, firewall, etc.
[136] Although the preferred embodiments of the present invention have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as disclosed in the accompanying claims.

Claims

Claims
[1] An apparatus for providing an Internet phone service, comprising: a Transmission Control Protocol (TCP) transceiver for receiving a first signaling message based on a TCP from a client; a TCP/User Datagram Protocol (UDP) converter for converting the protocol of the TCP-based first signaling message received by the TCP transceiver to a UDP to output the first signaling message based on the UDP; a UDP transceiver for transmitting the UDP-based first signaling message from the TCP/UDP converter to a Softswitch and receiving a second signaling message based on the UDP from the Softswitch; and a UDP/TCP converter for converting the protocol of the UDP-based second signaling message received by the UDP transceiver to the TCP to output the second signaling message based on the TCP, wherein the TCP transceiver transmits the TCP-based second signaling message from the UDP/TCP converter to the client.
[2] The apparatus according to claim 1, wherein each of the first and second signaling messages is based on a Session Initiation Protocol (SIP) and includes at least one of information related to connection, release and control of a call.
[3] The apparatus according to claim 1, wherein the TCP transceiver comprises: a TCP session creator for creating a TCP session between with the client; a TCP detector for detecting whether the protocol of the first signaling message is the TCP, using header information of the first signaling message; and a TCP session controller for controlling maintenance and release of the created TCP session.
[4] The apparatus according to claim 1, wherein the UDP transceiver comprises: a UDP session creator for creating a UDP session with the Softswitch; a UDP detector for detecting whether the protocol of the second signaling message is the UDP, using header information of the second signaling message; and a UDP session controller for controlling maintenance and release of the created UDP session.
[5] The apparatus according to claim 1, further comprising a decryptor for decrypting the TCP-based first signaling message when the TCP-based first signaling message received by the TCP transceiver is an encrypted signaling message, wherein the TCP/UDP converter converts the protocol of the decrypted TCP- based first signaling message to the UDP to output the decrypted first signaling message based on the UDP, wherein the UDP transceiver transmits the decrypted UDP-based first signaling message to the Softswitch.
[6] The apparatus according to claim 1, further comprising an encryptor for encrypting the UDP-based second signaling message received by the UDP transceiver, wherein the UDP/TCP converter converts the protocol of the encrypted UDP- based second signaling message to the TCP to output the encrypted second signaling message based on the TCP, wherein the TCP transceiver transmits the encrypted TCP-based second signaling message to the client.
[7] The apparatus according to claim 1, wherein an application is installed in the client to provide the Internet phone service, the application comprising an error detector for, when an error occurs, determining whether the error has occurred between the Internet phone service provision apparatus and the client or between the Internet phone service provision apparatus and the Softswitch, using response information regarding the TCP-based first signaling message.
[8] The apparatus according to claim 7, wherein the application further comprises an encryptor for encrypting the TCP-based first signaling message.
[9] The apparatus according to claim 7, wherein the application further comprises a decryptor for decrypting the TCP-based second signaling message when the TCP-based second signaling message is an encrypted signaling message.
[10] The apparatus according to claim 7, wherein the application primarily transmits the first signaling message based on the UDP, and secondarily transmits the first signaling message based on the TCP when failing to transmit the first signaling message based on the UDP.
[11] A method for providing an Internet phone service using an Internet phone service provision apparatus, the method comprising: creating a TCP session in response to a request from a client; receiving a first signaling message based on a TCP from the client through the created TCP session; converting the protocol of the received TCP-based first signaling message to a UDP to output the first signaling message based on the UDP; and transmitting the UDP-based first signaling message to a Softswitch.
[12] The method according to claim 11, further comprising: receiving a second signaling message based on the UDP from the Softswitch; converting the protocol of the received UDP-based second signaling message to the TCP to output the second signaling message based on the TCP; and transmitting the TCP-based second signaling message to the client through the created TCP session. [13] The method according to claim 11, further comprising decrypting the TCP-based first signaling message received from the client when it is an encrypted signaling message, wherein the step of converting comprises converting the protocol of the decrypted TCP-based first signaling message to the UDP to output the decrypted first signaling message based on the UDP, wherein the step of transmitting comprises transmitting the decrypted UDP-based first signaling message to the Softswitch. [14] The method according to claim 12, further comprising encrypting the UDP-based second signaling message received from the Softswitch, wherein the step of converting comprises converting the protocol of the encrypted UDP-based second signaling message to the TCP to output the encrypted second signaling message based on the TCP, wherein the step of transmitting comprises transmitting the encrypted TCP-based second signaling message to the client. [15] A method for providing an Internet phone service using an application installed in a client interworking with an Internet phone proxy device, the method comprising: receiving an Internet call request from a user; creating a first signaling message including a call request signal corresponding to the Internet call request; and transmitting the first signaling message to the Internet phone proxy device based on any one of a TCP or UDP. [16] The method according to claim 15, further comprising: receiving response information regarding the first signaling message from the
Internet phone proxy device; and when a transmission error occurs, determining whether the error has occurred between the Internet phone proxy device and the client or between the Internet phone service proxy device and a Softswitch, using the received response information. [17] The method according to claim 15, wherein the step of transmitting comprises primarily transmitting the first signaling message based on the UDP, and secondarily transmitting the first signaling message based on the TCP when failing to transmit the first signaling message based on the UDP. [18] The method according to claim 15, further comprising encrypting the first signaling message, wherein the step of transmitting comprises transmitting the encrypted first signaling message to the Internet phone proxy device. [19] The method according to claim 15, further comprising: receiving a second signaling message from the Internet phone proxy device; and decrypting the received second signaling message when the received second signaling message is an encrypted signaling message. [20] A storage medium for storing programs of commands for execution of the method according to any one of claims 11 to 19, the programs being typically implemented and readable by an electronic information processor.
PCT/KR2007/003695 2006-08-30 2007-08-01 Apparatus and method for providing internet-phone service WO2008026833A1 (en)

Applications Claiming Priority (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
KR10-2006-0083109 2006-08-30

Publications (1)

Publication Number Publication Date
WO2008026833A1 true WO2008026833A1 (en) 2008-03-06

Family

ID=39136082

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2007/003695 WO2008026833A1 (en) 2006-08-30 2007-08-01 Apparatus and method for providing internet-phone service

Country Status (2)

Country Link
KR (1) KR100871422B1 (en)
WO (1) WO2008026833A1 (en)

Cited By (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

Families Citing this family (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
KR20120100376A (en) 2011-03-04 2012-09-12 삼성에스디에스 주식회사 System and method for communication of sip messages

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
KR20010079255A (en) * 2001-06-27 2001-08-22 김태범 A system and method for calling via an internet using a proxy server
KR20030047471A (en) * 2001-12-10 2003-06-18 (주)애니 유저넷 Firewall tunneling method for Voip and it's tunneling gateway

Family Cites Families (3)

* 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
AU5750299A (en) 1999-08-24 2001-03-19 Leighton Hanna King On-demand connection system for internet services
KR100418246B1 (en) * 2001-08-10 2004-02-11 (주)웹콜월드 An internet voice communication method in NAT/Firewall environment using WebCallAgent and WebCallProxy

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
KR20010079255A (en) * 2001-06-27 2001-08-22 김태범 A system and method for calling via an internet using a proxy server
KR20030047471A (en) * 2001-12-10 2003-06-18 (주)애니 유저넷 Firewall tunneling method for Voip and it's tunneling gateway

Cited By (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

Also Published As

Publication number Publication date
KR100871422B1 (en) 2008-12-03
KR20080020121A (en) 2008-03-05

Similar Documents

Publication Publication Date Title
EP1317839B2 (en) Apparatus and method for selectively encrypting the payload portion of multimedia data sent over a network
CN1890945B (en) Communication systems for traversing firewalls and network address translation (NAT) installations
US7865599B2 (en) Methods and apparatus for supporting transmission of streaming data
EP1738508B1 (en) Method and apparatus for transporting encrypted media streams over a wide area network
TW567699B (en) Communication protocols, method, and apparatus operable through network address translation (NAT) type devices
US20170054770A1 (en) Multimedia teleconference streaming architecture between heterogeneous computer systems
US8130395B2 (en) Network communication apparatus
JP2004523828A (en) System and method for communicating with a network enabled device using session initiation protocol (SIP)
US20060187912A1 (en) Method and apparatus for server-side NAT detection
JP2004531110A (en) System and method for outsourcing the function of a SIP user agent to a proxy
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
JP2006067579A (en) System and method of collecting and distributing participant identifying data
US8181013B2 (en) Method, media gateway and system for transmitting content in call established via media gateway control protocol
CN108810475B (en) Android video monitoring device based on Onvif standard and Sip protocol
WO2008026833A1 (en) Apparatus and method for providing internet-phone service
US9143488B2 (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
US7408926B1 (en) Method and apparatus for accessing voice over internet protocol connection
US7823196B1 (en) Method and an apparatus to perform dynamic secure re-routing of data flows for public services
CN111131182B (en) VoIP communication network penetration device and method
Bongard et al. Reverse Shell via Voice (SIP, Skype)
US8160079B1 (en) Local communication agent
Grozev et al. PERC double media encryption for WebRTC 1.0 sender simulcast
Orrblad et al. Secure VoIP: call establishment and media protection

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07793350

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

122 Ep: pct application non-entry in european phase

Ref document number: 07793350

Country of ref document: EP

Kind code of ref document: A1