KR20020015965A - Method and system for establishing connections between terminals connected to network environments having different IP-addressing schemes - Google Patents

Method and system for establishing connections between terminals connected to network environments having different IP-addressing schemes Download PDF

Info

Publication number
KR20020015965A
KR20020015965A KR1020010050795A KR20010050795A KR20020015965A KR 20020015965 A KR20020015965 A KR 20020015965A KR 1020010050795 A KR1020010050795 A KR 1020010050795A KR 20010050795 A KR20010050795 A KR 20010050795A KR 20020015965 A KR20020015965 A KR 20020015965A
Authority
KR
South Korea
Prior art keywords
terminal
server
address
connection
router
Prior art date
Application number
KR1020010050795A
Other languages
Korean (ko)
Other versions
KR100422375B1 (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 이종우
Publication of KR20020015965A publication Critical patent/KR20020015965A/en
Application granted granted Critical
Publication of KR100422375B1 publication Critical patent/KR100422375B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2564NAT traversal for a higher-layer protocol, e.g. for session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2567NAT traversal for reachability, e.g. inquiring the address of a correspondent behind a NAT server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2575NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2578NAT traversal without involvement of the NAT server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/663Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)

Abstract

PURPOSE: A method for setting up the connection between the terminals connected to network environments having different IP addressing systems is provided to set up the connection between the first terminal in the first network environment and the second terminal in the second network environment. CONSTITUTION: If a terminal(102) is connected to a computer network(106), an interface program, installed in the terminal(102), transmits a GRQ(Gatekeeper ReQuest) to a gatekeeper(108) and registers the terminal in the gatekeeper(108). In response to the request, the gatekeeper(108) transmits a GCF(Gatekeeper ConFirm) message to the terminal(102). Afterwards, the terminal transmits an RRQ(Registration ReQuest) message to the gatekeeper(108). In response to the RRQ message, the gatekeeper(108) transmits an RCF(Registration ConFirm) message to the terminal(102). All those messages are transmitted through a UDP(User Datagram Protocol).

Description

상이한 아이피 어드레싱 체계를 갖는 네트워크 환경에 접속된 터미널간의 연결을 설정하기 위한 방법 및 시스템 {Method and system for establishing connections between terminals connected to network environments having different IP-addressing schemes}Methods and system for establishing connections between terminals connected to network environments having different IP addressing schemes having different IP-addressing schemes

본 발명은 터미널간의 연결 설정에 관한 것으로, 특히 상이한 인터넷 프로토콜(IP) 어드레싱 체계를 갖는 네트워크 환경에 접속된 터미널간의 연결 설정에 관한 것이다.The present invention relates to connection establishment between terminals, and more particularly, to connection establishment between terminals connected to a network environment having different Internet protocol (IP) addressing schemes.

일반적으로, 라우터는 상이한 IP-어드레싱 체계를 이용하는 네트워크 환경들을 연결하기 위해 사용된다. 예를 들면, 가상사설망(VPN : Virtual Private Network) 라우터는 라우터 후단의 터미널을 인터넷에 연결하기 위해 사용될 수 있다. 라우터 후단의 터미널에는 InterNIC에 의해 할당되는 것과 같은 표준-IP 어드레스 보다 오히려 가상-IP 어드레스가 할당된다. 따라서, 라우터 후단의 터미널이 VPN 라우터 외측의 터미널로 패킷을 전송하면 라우터 후단의 터미널의 가상-IP 어드레스는 VPN 라우터의 리얼-IP 어드레스에 의해 대체된다.In general, routers are used to connect network environments that use different IP-addressing schemes. For example, a virtual private network (VPN) router can be used to connect the terminal behind the router to the Internet. Terminals behind the router are assigned virtual-IP addresses rather than standard-IP addresses such as those assigned by InterNIC. Thus, when a terminal behind the router sends a packet to a terminal outside the VPN router, the virtual-IP address of the terminal behind the router is replaced by the real-IP address of the VPN router.

라우터 사용시의 문제점중 하나는 라우터 외측의 터미널이 라우터 후단의 터미널과 연결을 개시할 수 없다는 것이다. 예를 들면, 상기된 VPN-네트워크 환경에서는 VPN 라우터 후단의 터미널이 가상-IP 어드레스만을 갖는다. 따라서, VPN 라우터 외측의 터미널은 VPN 라우터 후단의 터미널과의 연결을 개시할 수 없다.One problem with using a router is that terminals outside the router cannot initiate connections with terminals behind the router. For example, in the above VPN-network environment, the terminal behind the VPN router has only the virtual-IP address. Thus, a terminal outside the VPN router cannot initiate a connection with a terminal behind the VPN router.

본 발명은 제1 네트워크 환경내의 제1 터미널과 제2 네트워크 환경내의 제2터미널간의 연결을 설정하기 위한 방법 및 시스템에 관한 것이다. 본 발명의 일 양상에 따르면, 제1 네트워크 환경과 제2 네트워크 환경은 상이한 인터넷 프로토콜(IP) 어드레싱 체계를 이용한다. 따라서, 제1 터미널은 라우터에 연결된다. 일 실시예에서 제1 터미널로부터 제1 네트워크 환경의 외측에 있는 서버로 연결이 설정된다. 그 후, 제1 터미널이 라우터를 통해 서버로 패킷을 전송한다. 그 후, 서버는 패킷을 서버로 전송하기 위해 라우터에 의해 이용되는 IP 어드레스와 포트 번호를 결정한다. 그 후, 이 IP 어드레스와 포트 번호가 제2 터미널로 전송되어 제1 터미널로의 연결을 설정한다.The present invention relates to a method and system for establishing a connection between a first terminal in a first network environment and a second terminal in a second network environment. According to one aspect of the present invention, the first network environment and the second network environment use different Internet Protocol (IP) addressing schemes. Thus, the first terminal is connected to the router. In one embodiment, a connection is established from a first terminal to a server outside of the first network environment. The first terminal then sends a packet to the server via the router. The server then determines the IP address and port number used by the router to send the packet to the server. This IP address and port number are then sent to the second terminal to establish a connection to the first terminal.

도 1은 본 발명의 일 실시예의 블록도,1 is a block diagram of one embodiment of the present invention;

도 2는 본 발명의 다른 실시예의 블록도,2 is a block diagram of another embodiment of the present invention;

도 3은 본 발명의 또 다른 실시예의 블록도,3 is a block diagram of another embodiment of the present invention;

도 4는 본 발명의 또 다른 실시예의 블록도,4 is a block diagram of another embodiment of the present invention;

도 5는 흐름도.5 is a flowchart.

도면의 주요부분에 대한 부호의 설명Explanation of symbols for main parts of the drawings

100 : IP 전화 시스템 102,104 : 터미널100: IP telephone system 102,104: terminal

106 : 컴퓨터 네트워크 108 : 게이트키퍼106: computer network 108: gatekeeper

110 : 게이트웨이(110) 112 : 전화기 유니트110: gateway 110 112: telephone unit

114 : MCU 116 : 인터페이스 프로그램114: MCU 116: interface program

118 : 마이크로 폰 120 : 스피커118: microphone 120: speaker

122 : CODEC 202,402 : 라우터122: CODEC 202,402: Router

302 : 방화벽 406 : 제1 네트워크 환경302: firewall 406: first network environment

408 : 제2 네트워크 환경408: second network environment

본 발명의 이해를 돕기 위한 다음의 설명은 다수의 특정한 구성, 파라미터 등을 언급하고 있다. 그러나, 그러한 설명이 본 발명의 범위를 제한하기 위한 것이 아니라 보다 전형적인 실시예에 대한 설명을 제공하기 위한 것임을 이해할 것이다.The following description to help understand the present invention refers to a number of specific configurations, parameters, and the like. However, it will be understood that such descriptions are not intended to limit the scope of the present invention but to provide a description of more typical embodiments.

본 발명의 전형적인 일 실시예로, 도 1을 참조하면 IP 전화 시스템(100)은 컴퓨터 네트워크(106)에 접속된 터미널(102)(104)을 포함한다. 본 실시예에서 터미널(102)(104)은 컴퓨터 네트워크(106)를 통한 IP 기반의 전화통화를 수행하도록 구성된다. 특히, 다음에 더욱 상세하게 설명되는 것처럼 터미널(102)(104)은 국제전기통신연합(ITU)에 의해 설정된 H.323 표준에 따라 컴퓨터 네트워크(106)를 통해 데이터를 송수신하도록 구성된다.In one exemplary embodiment of the present invention, referring to FIG. 1, IP telephone system 100 includes terminals 102 and 104 connected to computer network 106. In this embodiment, terminals 102 and 104 are configured to perform IP-based telephony over computer network 106. In particular, the terminals 102 and 104 are configured to transmit and receive data via the computer network 106 in accordance with the H.323 standard established by the International Telecommunication Union (ITU), as described in more detail below.

H.323 표준은 오디오, 비디오 및 데이터 통신을 위해 제공되지만 이 표준의 일부분은 IP 기반의 전화통화에 주로 사용되는 오디오 통신과 관련된 것이다. 특히, H.323 표준에 따라 터미널(102)(104)은 채널 사용량 및 특성을 극복하기 위해 H.245를 지원하도록 구성된다. 터미널(102)(104)은 또한 신호를 호출하고 셋업하기 위해 Q.931을 지원하도록 구성된다.The H.323 standard is provided for audio, video and data communications, but part of this standard relates to audio communications, which are primarily used for IP-based telephony. In particular, in accordance with the H.323 standard, terminals 102 and 104 are configured to support H.245 to overcome channel usage and characteristics. Terminals 102 and 104 are also configured to support Q.931 for calling and setting up signals.

본 실시예에서 각 터미널(102)(104)은 오디오 신호를 캡쳐하고 재생하도록 구성된 마이크로 폰(118)과 스피커(120)를 각각 포함한다. 마이크로 폰(118)과 스피커(120)는 터미널(102)(104)과 일체로 제작될 수 있다. 그들은 터미널(102)(104)에 선택적으로 연결되는 악세서리로 제작될 수 있다.Each terminal 102, 104 in this embodiment includes a microphone 118 and a speaker 120, respectively, configured to capture and reproduce audio signals. The microphone 118 and the speaker 120 may be manufactured integrally with the terminals 102 and 104. They may be fabricated with accessories that are selectively connected to terminals 102 and 104.

각 터미널(102)(104)은 또한 아날로그 신호를 디지털 신호로 또는 그 반대로 변환하도록 구성된 코더/디코더(CODEC)(122)를 포함한다. 또한, 본 실시예에서 CODEC(122)은 G.729 표준에 따라 신호 압축을 돕도록 구성된다. 그러나, G.711, G.723 등과 같은 임의의 H.323 컴프라이언트 시그널 컴프레션 루틴이 사용될 수 있다.Each terminal 102, 104 also includes a coder / decoder (CODEC) 122 configured to convert analog signals into digital signals and vice versa. In this embodiment, the CODEC 122 is also configured to help signal compression according to the G.729 standard. However, any H.323 compliant signal compression routine can be used, such as G.711, G.723, or the like.

각 터미널(102)(104)은 인터페이스 프로그램(116)을 더 포함한다. 본 실시예에서 인터페이스 프로그램(116)은 H.245와 Q.931을 포함하는 H.323 표준에 따라 통신을 수행하기 위하여 시스템 컨트롤 루틴을 포함한다. 인터페이스 프로그램(116)은 RTP/RTCP와 RAS(Registration/Admission/Status) 프로토콜을 지원하도록 구성된다. 더욱 상세하게 설명되는 것처럼, 인터페이스 프로그램(116)은 또한 컴퓨터 네트워크(106)를 통해 전화통화를 수행하기 위한 다양한 추가적인 루틴을 포함할 수 있다.Each terminal 102, 104 further includes an interface program 116. In this embodiment, the interface program 116 includes a system control routine to perform communication in accordance with the H.323 standard, including H.245 and Q.931. The interface program 116 is configured to support the RTP / RTCP and Registration / Admission / Status (RAS) protocols. As described in greater detail, the interface program 116 may also include various additional routines for conducting telephony over the computer network 106.

일실시예에서 인터페이스 프로그램(116)은 C 프로그래밍 언어를 사용하여 작성된 컴퓨터 소프트웨어 프로그램과 같이 실행될 수 있다. 그러나, 인터페이스 프로그램(116)은 임의의 종래 프로그래밍 언어를 사용하여 실행될 수 있다는 것은 인식할 수 있다. 예를 들면, 인터페이스 프로그램(116)은 JAVA 또는 PERL 프로그래밍 언어를 사용하여 실행될 수 있다. 이러한 프로그래밍 언어들은 그들로 작성된 프로그램이 실행되는 터미널의 오퍼레이팅 시스템과 독립적으로 작동될 수 있다는 잇점을 갖고 있다.In one embodiment, the interface program 116 may run like a computer software program written using the C programming language. However, it can be appreciated that the interface program 116 can be executed using any conventional programming language. For example, the interface program 116 can be executed using JAVA or PERL programming language. These programming languages have the advantage that they can operate independently of the operating system of the terminal on which their programs are executed.

본 실시예에서 인터페이스 프로그램(116)은 웹 사이트로부터 다운-로딩하여 터미널(102)(104)에 인스톨시킬 수 있다. 그러나, 인터페이스 프로그램(116)은 임의의 종래 방법을 사용하여 터미널(102)(104)에 인스톨시킬 수 있다. 예를 들면, 인터페이스 프로그램(16)은 디스켓, 콤팩트 디스크 등과 같은 임의의 종래 저장매체로 배포될 수 있다.In this embodiment, the interface program 116 can be downloaded from the web site and installed in the terminal 102 (104). However, the interface program 116 can be installed on the terminals 102 and 104 using any conventional method. For example, the interface program 16 may be distributed on any conventional storage medium, such as diskettes, compact discs, and the like.

터미널(102)(104)은 데스크-탑 컴퓨터, 랩-탑 컴퓨터, 워크스테이션 등과 같은 퍼스널 컴퓨터를 포함할 수 있다. 그러나, 터미널(102)(104)은 텔리컨퍼런스 시스템, PDA(Personal Digital Assistance), 인터넷 기기 등과 같이 컴퓨터 네트워크(106)와 통신하도록 구성된 임의의 디바이스를 포함할 수 있다. 또한, 터미널(102)(104)이 모두 동일한 종류의 디바이스일 필요는 없다. 예를 들면, 터미널 유니트(102)는 유닉스 오퍼레이팅 시스템을 구동하는 워크스테이션일 수 있다. 터미널 유니트(104)는 레드몬드 워싱톤의 마이크로소프트사에 의해 제작된 마이크로소프트 윈도우 오퍼레이팅 시스템을 구동하는 인텔 기반의 컴퓨터일 수 있다. 또한, 터미널(102)(104)이 서술되었지만 IP 전화통화 시스템(100)은 다수의터미널(102)(104)을 포함할 수 있다.Terminals 102 and 104 may include personal computers, such as desk-top computers, laptop-top computers, workstations, and the like. However, terminals 102 and 104 may include any device configured to communicate with computer network 106, such as a teleconferencing system, a personal digital assistance (PDA), Internet device, or the like. In addition, the terminals 102 and 104 need not all be the same type of device. For example, terminal unit 102 may be a workstation that runs a Unix operating system. The terminal unit 104 may be an Intel-based computer running a Microsoft Windows operating system manufactured by Microsoft Corporation of Redmond Washington. In addition, although terminals 102 and 104 have been described, IP telephony system 100 may include multiple terminals 102 and 104.

본 실시예에서 IP 전화통화 시스템(100)은 또한 게이트키퍼(108), 게이트웨이(110) 및 MCU(Multipoint Control Unit)(114)를 포함할 수 있다. 다음에 더욱 상세하게 설명되는 것처럼, IP 전화통화 시스템(100)의 이러한 추가적인 구성요소들은 H.323 표준에 따라 IP 기반의 전화통화를 수행하도록 구성된다.The IP telephony system 100 in this embodiment may also include a gatekeeper 108, a gateway 110, and a multipoint control unit (MCU) 114. As described in more detail below, these additional components of IP telephony system 100 are configured to perform IP-based telephony in accordance with the H.323 standard.

특히, 게이트키퍼(108)는 터미널(102)(104)에 호 제어 서비스를 제공하도록 구성될 수 있다. 게이트키퍼(108)는 LAN(Local Area Network)의 가명(aliases)을 IP 또는 IXP 어드레스로 전환하도록 구성될 수 있다. 게이트키퍼(108)는 또한 대역폭 관리를 제공하고 호를 라우트(route)하도록 구성될 수 있다.In particular, gatekeeper 108 may be configured to provide call control services to terminals 102 and 104. Gatekeeper 108 may be configured to translate aliases of a local area network (LAN) into an IP or IXP address. Gatekeeper 108 may also be configured to provide bandwidth management and to route calls.

게이트웨이(110)는 상이한 종류의 터미널간의 전환기능을 제공하도록 구성될 수 있다. 예를 들면, 게이트웨이(110)는 PSTN(Public Switched Telephone Network)에 연결되는 전화기 유니트(112)에 연결될 수 있다. 따라서, 게이트웨이(110)는 IP 기반의 컴퓨터 네트워크(106)와 스위치 회로 기반의 PSTN간의 전환을 수행할 수 있다. 게이트웨이(110)는 또한 LAN과 PSTN 양측에 콜 셋업(call setup) 및 클리어링(clearing)을 수행할 수 있다.Gateway 110 may be configured to provide switching between different kinds of terminals. For example, the gateway 110 may be connected to a telephone unit 112 that is connected to a public switched telephone network (PSTN). Thus, the gateway 110 may switch between the IP-based computer network 106 and the switch circuit-based PSTN. Gateway 110 may also perform call setup and clearing on both LAN and PSTN.

MCU(114)는 3개 또는 그 이상의 터미널간의 컨퍼런스를 지원하도록 구성될 수 있다. 따라서, MCU(114)는 일반적인 호환성을 결정하는 터미널간의 H.245 협의를 조정하도록 구성될 수 있다.MCU 114 may be configured to support conferences between three or more terminals. Thus, MCU 114 may be configured to coordinate H.245 negotiation between terminals to determine general compatibility.

본 발명의 일 양상에 따르면, 터미널(102)(104)이 컴퓨터 네트워크(106)에 연결되면 인터페이스 프로그램(116)은 터미널(102)(104)을 등록한다. 특히, 본 실시예에서는 터미널(102)이 컴퓨터 네트워크(106)에 연결되면 터미널(102)에 인스톨된 인터페이스 프로그램(116)은 GRQ(Gatekepper Request)를 게이트키퍼(108)로 전송하여 게이트키퍼(108)에 등록한다. 응답으로 게이트키퍼(108)는 GCF(Gatekeeper Confirm) 메시지를 터미널(102)로 전송한다. 그 후, 터미널(102)은 RPQ(Registration Request) 메시지를 게이트키퍼(108)로 전송한다. 응답으로 게이트키퍼(108)는 RCF(Registration Confirm) 메시지를 터미널(102)로 전송한다. 본 실시예에서 이러한 모든 메시지(예를 들면, GRQ, GCF, RPQ 및 RCF 메시지)는 UDP(User Datagram Protocol)를 사용하여 전송된다. 동일한 방식으로 터미널(104)에 인스톨된 인터페이스 프로그램(116)은 게이트키퍼(108)에 등록한다.According to one aspect of the invention, the interface program 116 registers the terminals 102 and 104 when the terminals 102 and 104 are connected to the computer network 106. In particular, in the present embodiment, when the terminal 102 is connected to the computer network 106, the interface program 116 installed in the terminal 102 transmits a gatekeeper 108 to the gatekeeper 108 by sending a GQ (Gatekepper Request) to the gatekeeper 108. Register at). In response, the gatekeeper 108 sends a Gatekeeper Confirm (GCF) message to the terminal 102. Terminal 102 then sends a Registration Request (RPQ) message to gatekeeper 108. In response, the gatekeeper 108 sends a Registration Confirm (RCF) message to the terminal 102. In this embodiment all these messages (eg GRQ, GCF, RPQ and RCF messages) are sent using User Datagram Protocol (UDP). In the same way, the interface program 116 installed in the terminal 104 registers with the gatekeeper 108.

본 실시예에서 터미널(102)(104)의 IP 어드레스는 게이트키퍼(108)에 등록된다. 또한, 추가적인 데이터가 게이트키퍼(108)에 등록될 수 있다. 예를 들면, 변형된 실시예에서는 고유한 PCN(Personal Communication Number)이 IP 전화통화 시스템(100)에 연결된 각각의 터미널에 할당된다.In this embodiment, the IP addresses of terminals 102 and 104 are registered with gatekeeper 108. In addition, additional data may be registered with the gatekeeper 108. For example, in a variant embodiment, a unique Personal Communication Number (PCN) is assigned to each terminal connected to IP telephony system 100.

설명된 방식으로 터미널(102)(104)이 게이트키퍼(108)에 등록하고, 예를 들어 터미널(102)이 터미널(104)의 호출을 원한다고 가정하자. 다음의 설명은 터미널(102)에서 터미널(104)로의 호출을 위해 H.323 표준을 이용하여 터미널(102)(104)간의 연결을 설정하는 일예를 제공한다.Assume that terminals 102 and 104 register with gatekeeper 108 in the manner described, for example, terminal 102 wants to call terminal 104. The following description provides an example of establishing a connection between terminals 102 and 104 using the H.323 standard for a call from terminal 102 to terminal 104.

본 실시예에서는 터미널(102)이 먼저 터미널(104)의 IP 어드레스를 요청하는 ARQ(Admission Request) 메시지를 게이트키퍼(108)로 전송한다. 응답으로 게이트키퍼(108)는 터미널(104)용 IP 어드레스를 전송하는 ACF(Admission Confirm) 메시지를 터미널(104)로 전송한다. 그 후, 터미널(102)은 H.225 표준을 이용하여 터미널(104)과의 신호채널을 개설한다. 그 후, 터미널(102)은 콜 셋업 H.225/Q.931 셋업 메시지를 전송한다. 응답으로 터미널(104)은 경보(Ringing) 메시지 H.225/Q.931 셋업 메시지를 터미널(102)로 전송한다. 그 후, 터미널(104)은 연결 메시지 H.225/Q.931 셋업 메시지를 터미널(102)로 전송한다. 그 후, 터미널(102)은 H.245를 이용하여 신호채널을 개설함으로써 터미널(104)과의 TCP(Transmission Control Protocol) 연결을 설정한다. 그 후, 터미널(102)은 H.245를 이용하여 터미널 호환성 리퀘스트 메시지를 터미널(104)로 전송한다. 응답으로 터미널(104)은 터미널 호환성 ACK(Acknowledgement)를 전송한다. 그 후, 터미널(102)은 H.245를 이용하여 마스터 슬레이브 결정 메시지를 터미널(104)로 전송한다. 응답으로 터미널(104)은 H.245를 이용하여 마스터 슬레이브 결정 ACK(Acknowledgement)를 전송한다. 본 실시예에서 ARQ와 ACF 메시지는 UDP를 이용하여 전송되며 나머지 메시지들은 TCP를 이용하여 전송된다.In this embodiment, the terminal 102 first sends an ARQ (Admission Request) message to the gatekeeper 108 requesting the IP address of the terminal 104. In response, the gatekeeper 108 sends an Admission Confirm (ACF) message to the terminal 104 which sends the IP address for the terminal 104. Terminal 102 then establishes a signal channel with terminal 104 using the H.225 standard. Terminal 102 then sends a call setup H.225 / Q.931 setup message. In response, terminal 104 sends a Ringing message H.225 / Q.931 setup message to terminal 102. The terminal 104 then sends a connection message H.225 / Q.931 setup message to the terminal 102. Terminal 102 then establishes a Transmission Control Protocol (TCP) connection with terminal 104 by establishing a signal channel using H.245. Terminal 102 then sends a terminal compatibility request message to terminal 104 using H.245. In response, terminal 104 sends a terminal compatibility acknowledgment (ACK). Terminal 102 then sends a master slave decision message to terminal 104 using H.245. In response, terminal 104 sends a master slave decision acknowledgment (ACK) using H.245. In this embodiment, ARQ and ACF messages are transmitted using UDP and the remaining messages are transmitted using TCP.

상기의 예에서 터미널(102)(104)이 리얼 IP 어드레스를 갖는 것으로 가정하되, 각 IP 어드레스는 고유한 것이다. 컴퓨터 네트워크(106)가 인터넷을 포함하면 리얼 IP 어드레스는 InterNIC에 의해 할당되며 상기 리얼 IP 어드레스는 인터넷에 연결된 각 터미널에 고유한 것이다.In the above example, assume that terminals 102 and 104 have real IP addresses, each IP address being unique. If computer network 106 includes the Internet, a real IP address is assigned by the InterNIC, and the real IP address is unique to each terminal connected to the Internet.

그러나, 본 발명의 일부 응용에서는 터미널(102) 및/또는 터미널(104)이 가상 IP 어드레스를 가질 수 있다. 특히 본 발명의 다른 실시예로, 도 2를 참조하면 터미널(102)은 VPN(Virtual Private Network) 라우터(202)를 통해 컴퓨터네트워크(106)에 연결될 수 있다. 그로인해, 터미널(102)에는 리얼 IP 어드레스 보다 오히려 가상 IP 어드레스가 할당된다. 따라서, 터미널(102)이 컴퓨터 네트워크(102)로 데이터를 전송하는 경우에 그 데이터에는 터미널(102)의 가상 IP 어드레스 보다 오히려 VPN 라우터(202)의 리얼 IP 어드레스가 포함된다. 이는 터미널(102)(104)간에 IP 기반의 전화통화를 수행함에 있어서 문제가 될 수 있다.However, in some applications of the present invention, terminal 102 and / or terminal 104 may have a virtual IP address. In particular, in another embodiment of the present invention, referring to FIG. 2, the terminal 102 may be connected to the computer network 106 through a virtual private network (VPN) router 202. As such, terminal 102 is assigned a virtual IP address rather than a real IP address. Thus, when terminal 102 transmits data to computer network 102, the data includes the real IP address of VPN router 202 rather than the virtual IP address of terminal 102. This can be a problem in conducting IP-based telephony between terminals 102 and 104.

상기된 문제점을 더욱 명확하게 설명하기 위해, 예를 들면 터미널(102)이 10.10.10.20의 가상 IP 어드레스를 갖고 VPN 라우터(202)가 10.10.10.1의 가상 IP 어드레스와 210.119.58.40.의 리얼 IP 어드레스를 갖는다고 가정하자. 상기에 언급된 것처럼 터미널(102)이 패킷을, 예를 들면 게이트키퍼(108) 또는 터미널(104)로 전송하면 그 패킷과 관련된 IP 어드레스는 터미널(102)의 어드레스 보다 오히려 VPN 라우터(202)의 리얼 IP 어드레스(예를 들면, 201.119.58.40)일 것이다. 따라서, 게이트키퍼(108)와 터미널(104)은 터미널(102)의 IP 어드레스를 알지 못한다. 더욱이, 터미널(102)은 패킷을 전송하기 위해 사용되는 VPN 라우터(202)의 리얼 IP 어드레스를 알지 못한다. 이는 IP 기반의 전화통화를 수행하기 위해 H.323 표준에 따른 오디오 패킷의 전송을 방해할 수 있다.To more clearly illustrate the above problem, for example, terminal 102 has a virtual IP address of 10.10.10.20 and VPN router 202 has a virtual IP address of 10.10.10.1 and a real IP address of 210.119.58.40. Suppose we have As mentioned above, when terminal 102 sends a packet to, for example, gatekeeper 108 or terminal 104, the IP address associated with the packet is determined by the VPN router 202 rather than the address of terminal 102. Real IP address (eg, 201.119.58.40). Thus, gatekeeper 108 and terminal 104 do not know the IP address of terminal 102. Moreover, terminal 102 does not know the real IP address of VPN router 202 used to transmit the packet. This may interfere with the transmission of audio packets according to the H.323 standard to perform IP-based telephony.

결과적으로, 본 발명의 일 실시예에서는 터미널(102)과 게이트키퍼(108)가 터미널(102)이 VPN 라우터(202)의 후단에 있더라도 H.323 표준을 이용하여 IP 기반의 전화통화를 수행하도록 구성된다. 특히, 터미널(102)에 인스톨된 인터페이스 프로그램(116)은 패킷을 게이트키퍼(108)로 전송하도록 구성된다. 이 패킷이 수신되면 게이트키퍼(108)는 패킷을 전송하기 위해 사용된 포트번호와 IP 어드레스를 결정하기 위해 그것을 검사하도록 구성된다. 그 후, 게이트키퍼(108)는 다른 패킷에 이 정보를 실어 수신된 패킷을 전송하기 위해 사용된 포트번호와 IP 어드레스로 전송한다. 이 후속 패킷은 VPN 라우터(202)에 의해 터미널(102)로 중계된다. 이 패킷이 수신된 후, 터미널(102)에 인스톨된 인터페이스 프로그램(116)은 그것을 검사하고 게이트키퍼(108)로 오리지널 패킷을 전송하기 위해 사용된 포트번호와 IP 어드레스를 얻도록 구성된다. 이 정보를 이용하면 터미널(102)은 IP 기반의 전화통화를 수행하기 위해 컴퓨터 네트워크(106)에 연결된 터미널(104) 또는 임의의 터미널과 H.323 표준을 이용하여 통신할 수 있다.As a result, in one embodiment of the present invention, terminal 102 and gatekeeper 108 are configured to perform IP-based telephony using the H.323 standard even if terminal 102 is behind a VPN router 202. It is composed. In particular, the interface program 116 installed in the terminal 102 is configured to send packets to the gatekeeper 108. When this packet is received, gatekeeper 108 is configured to check it to determine the port number and IP address used to send the packet. The gatekeeper 108 then loads this information into another packet and sends it to the port number and IP address used to send the received packet. This subsequent packet is relayed to the terminal 102 by the VPN router 202. After this packet is received, the interface program 116 installed in the terminal 102 is configured to inspect it and obtain the port number and IP address used to send the original packet to the gatekeeper 108. With this information, terminal 102 can communicate using the H.323 standard with any terminal 104 or any terminal connected to computer network 106 to perform an IP-based telephony call.

본 발명의 이러한 양상을 더욱 명확하게 설명하기 위해, 터미널(102)이 10.10.10.20.의 가상 IP 어드레스를 갖고 VPN 라우터(202)는 10.10.10.1의 가상 어드레스와 210.119.58.40의 리얼 IP 어드레스를 갖는다고 가정하자. 또한, 게이트키퍼(108)가 211.104.18.60의 리얼 IP 어드레스를 갖는다고 가정하자.To more clearly illustrate this aspect of the invention, terminal 102 has a virtual IP address of 10.10.10.20. And VPN router 202 has a virtual address of 10.10.10.1 and a real IP address of 210.119.58.40. Assume that Also assume that gatekeeper 108 has a real IP address of 211.104.18.60.

본 실시예에서 터미널(102)은 VPN 라우터(202)를 통해 패킷을 게이트키퍼(108)로 전송한다. 특히, 패킷을 전송하기 위해 포트가 터미널(102)의 가상 IP 어드레스(예를 들면, 10.10.10.20)에 형성된다(이 포트는 포트번호 1720이라고 가정한다). 터미널(102)로부터 패킷을 수신하기 위해 포트가 또한 VPN 라우터의 가상 IP 어드레스(예를 들면, 10.10.10.1)에 형성된다(이 포트는 포트번호 2500이라고 가정한다). 이 패킷을 게이트키퍼(102)로 전송하기 위해 포트가 또한 VPN 라우터(202)의 리얼 IP 어드레스(예를 들면, 210.119.58.40)에 형성된다(이 포트는 포트번호 3000이라고 가정한다). 이 패킷을 수신하기 위해 포트가 또한게이트키퍼(108)의 리얼 IP 어드레스(예를 들면, 211.104.18.60)에 형성된다(이 포트는 포트번호 1720이라고 가정한다).In this embodiment terminal 102 sends the packet to gatekeeper 108 via VPN router 202. In particular, a port is formed at the virtual IP address (eg, 10.10.10.20) of terminal 102 to transmit the packet (assuming that port is port number 1720). A port is also formed at the virtual router's virtual IP address (e.g., 10.10.10.1) to receive packets from terminal 102 (assuming this port is port number 2500). A port is also formed at the real IP address of the VPN router 202 (eg, 210.119.58.40) to send this packet to the gatekeeper 102 (assuming this port is port number 3000). To receive this packet, a port is also formed at the real IP address of the gatekeeper 108 (eg, 211.104.18.60) (assuming this port is port number 1720).

패킷을 수신한 후, 게이트키퍼(108)는 그 패킷을 검사하고 그것이 IP 어드레스 210.119.58.40(예를 들면, VPN 라우터(202))의 포트번호 3000을 통해 수신되었는지 결정한다. 그 후, 게이트키퍼(108)는 이 정보를 다른 패킷에 위치시키고 이 패킷을 IP 어드레스 210.119.58.40의 포트번호 3000으로 전송한다. 따라서, 이 후속 패킷은 VPN 라우터(202)에 의해 수신되고 IP 어드레스 10.10.10.1의 포트번호 2500을 통해 터미널(102)로 라우트된다. 그 후, 이 패킷은 IP 어드레스 10.10.10.20의 포트번호 1720에서 수신된다. 그 후, 터미널(102)의 인터페이스 프로그램(116)은 오리지널 패킷을 게이트키퍼(108)로 전송하기 위해 사용된 포트번호와 IP 어드레스를 얻기 위해 이 패킷을 검사한다. 이 정보가 얻어지면 터미널(102)은 H.323 표준을 이용하여 터미널(104)과 IP 기반의 전화통화를 수행할 수 있다. 상기된 과정을 이용하면 터미널(102)은 또한 PSTN에 연결된 전화 유니트(112)와 IP 기반의 전화통화를 수행하기 위하여 게이트웨이(110)에 연결될 수 있다.After receiving the packet, gatekeeper 108 examines the packet and determines if it was received via port number 3000 of IP address 210.119.58.40 (eg, VPN router 202). Gatekeeper 108 then locates this information in another packet and sends the packet to port number 3000 at IP address 210.119.58.40. Thus, this subsequent packet is received by VPN router 202 and routed to terminal 102 over port number 2500 at IP address 10.10.10.1. This packet is then received at port number 1720 at IP address 10.10.10.20. The interface program 116 of terminal 102 then examines this packet to obtain the port number and IP address used to send the original packet to the gatekeeper 108. Once this information is obtained, the terminal 102 can make an IP-based telephone call with the terminal 104 using the H.323 standard. Using the process described above, the terminal 102 may also be connected to the gateway 110 to perform an IP-based telephone call with the telephone unit 112 connected to the PSTN.

본 발명의 다른 응용으로, 도 3을 참조하면 터미널(102)은 방화벽(302)을 통해 컴퓨터 네트워크(106)에 연결될 수 있다. 전형적으로 방화벽(302)은 패킷 필터링을 수행하도록 구성된 라우터이다. 이 점에서 방화벽(302)은 상기된 VPN 라우터(202)(도 2)와 유사한 문제점을 나타낸다. 특히, 방화벽(302)은 가상 IP 어드레스와 리얼 IP 어드레스를 갖는다는 점에서 VPN 라우터와 같이 기능할 수 있다. 그러한 경우에 리얼 IP 어드레스 보다 오히려 가상 IP 어드레스가 할당된터미널(102)이 패킷을 컴퓨터 네트워크(106)로 전송하면 그 패킷에는 터미널(102) 보다 오히려 방화벽(302)의 리얼 IP 어드레스가 포함된다. 결과적으로, IP 기반의 전화통화가 VPN 라우터(202)(도 2)를 위해 상기에 설명된 동일한 프로세스를 사용하여 방화벽(302)을 통해 수행될 수 있다.In another application of the present invention, referring to FIG. 3, terminal 102 may be connected to computer network 106 through firewall 302. Typically firewall 302 is a router configured to perform packet filtering. In this respect, the firewall 302 presents a similar problem as the VPN router 202 (FIG. 2) described above. In particular, the firewall 302 can function like a VPN router in that it has a virtual IP address and a real IP address. In such a case, when a terminal 102 assigned a virtual IP address rather than a real IP address transmits the packet to the computer network 106, the packet includes the real IP address of the firewall 302 rather than the terminal 102. As a result, IP-based telephony can be performed through the firewall 302 using the same process described above for the VPN router 202 (FIG. 2).

그러나, 일부 방화벽에서는 하나의 포트가 패킷을 전송하기 위해 형성되고 다른 포트가 패킷을 수신하기 위해 형성된다. 만약, 이것이 그 경우에 해당되면 VPN 라우터(202)를 위해 상기에 설명된 프로세스가 방화벽(302)을 위해 사용될 수 없다. 그러나, 본 발명의 다른 양상에 따르면 인터페이스 프로그램은 방화벽(302)이 SOCKS 프로토콜을 지원하는 경우에 방화벽을 통해 IP 기반의 전화통화를 가능하게 하기 위하여 SOCKS 프로토콜을 이용하도록 구성될 수 있다.However, in some firewalls, one port is formed for sending packets and the other port is formed for receiving packets. If this is the case, then the process described above for VPN router 202 may not be used for firewall 302. However, according to another aspect of the present invention, the interface program may be configured to use the SOCKS protocol to enable IP-based telephony through the firewall when the firewall 302 supports the SOCKS protocol.

전술한 것처럼, 예를 들면 터미널(102)이 터미널(104)을 호출하기 원한다고 가정하자. 또한, 터미널(102)이 10.10.10.20의 가상 IP 어드레스를 갖고 방화벽(302)은 10.10.10.1의 가상 IP 어드레스 및 210.119.58.40의 리얼 IP 어드레스를 갖는다고 가정하자. 터미널(102)이 패킷을 방화벽(302)으로 전송하면 포트(포트번호 1720으로 가정한다)가 패킷을 전송하기 위해 터미널의 가상 IP 어드레스(예를 들면, 10.10.10.20)에 형성된다. 또한, 포트(포트번호 2500으로 가정한다)가 패킷을 수신하기 위해 방화벽(302)의 가상 IP 어드레스(예를 들면, 10.10.10.1)에 개설된다. 포트(포트번호 3000으로 가정한다)가 또한 방화벽(302)의 리얼 IP 어드레스(예를 들면, 201.119.58.40)에 개설된다. SOCKS 프로토콜에 따르면, 이 포트와 IP 어드레스가 방화벽(302)에 의해 터미널(102)로 전송된다. 따라서, 터미널(102)은 이 정보를 게이트키퍼(108)에 등록하고 H.323 표준을 이용하여 터미널(104)과 IP 기반의 전화통화를 수행할 수 있다. 더욱이, 터미널(102)은 또한 게이트웨이(110)를 통해 PSTN에 연결된 전화 유니트(112)와 IP 기반의 전화통화를 수행할 수 있다.As mentioned above, for example, assume that terminal 102 wants to call terminal 104. Also assume that terminal 102 has a virtual IP address of 10.10.10.20 and firewall 302 has a virtual IP address of 10.10.10.1 and a real IP address of 210.119.58.40. When terminal 102 sends a packet to firewall 302, a port (assuming port number 1720) is formed at the terminal's virtual IP address (e.g., 10.10.10.20) to send the packet. In addition, a port (assuming port number 2500) is established at the virtual IP address (e.g., 10.10.10.1) of the firewall 302 to receive the packet. A port (assuming port number 3000) is also established at the real IP address of the firewall 302 (eg, 201.119.58.40). According to the SOCKS protocol, this port and IP address are transmitted to the terminal 102 by the firewall 302. Thus, terminal 102 may register this information with gatekeeper 108 and perform an IP-based telephony call with terminal 104 using the H.323 standard. Moreover, terminal 102 may also conduct IP-based telephony with telephony unit 112 connected to PSTN via gateway 110.

상기의 설명에서는 호출이 방화벽(302)의 후단인 터미널(102)로부터 방화벽(302)의 외측인 터미널(104)로 이루어졌다고 가정하였다. 그러나, 다음 설명은 호출이 터미널(104)로부터 터미널(102)로 이루어진다고 가정한다.In the above description, it is assumed that the call was made from terminal 102, which is the rear end of firewall 302, to terminal 104, which is outside of firewall 302. However, the following description assumes that a call is made from terminal 104 to terminal 102.

본 실시예에서 터미널(102)은 상기된 SOCKS 프로토콜 프로세스를 이용하여 방화벽(302)을 통해 게이트키퍼(108)와 TCP/IP 연결을 형성한다. 또한, 터미널(102)과 게이트키퍼(108)간의 이러한 TCP/IP 연결은 지속적으로 유지된다. 터미널(104)은 또한 게이트키퍼(108)와 TCP/IP 연결을 형성하며 이러한 연결은 지속적으로 유지된다.In this embodiment terminal 102 forms a TCP / IP connection with gatekeeper 108 through firewall 302 using the SOCKS protocol process described above. In addition, this TCP / IP connection between the terminal 102 and the gatekeeper 108 is maintained continuously. Terminal 104 also forms a TCP / IP connection with gatekeeper 108, and this connection is persistent.

터미널(104)이 터미널(102)이 호출을 원하면 터미널(104)과 게이트키퍼(108)간의 TCP/IP 연결을 이용하여 터미널(104)에 인스톨된 인터페이스 프로그램(116)이 게이트키퍼(108)에게 터미널(104)이 터미널(102)과의 연결을 원하고 있음을 알려준다. 이 메시지가 수신되면 게이트키퍼(108)와 터미널(102)간에 형성된 TCP/IP 연결을 이용하여 게이트키퍼(108)는 터미널(102)에게 터미널(104)이 터미널(102)과의 연결을 원하고 있음을 알려준다. 게이트키퍼(108)는 또한 터미널(104)의 IP 어드레스를 터미널(102)로 전송한다. 그 후, 터미널(102)에 인스톨된 인터페이스 프로그램(116)이 방화벽(302)에게 SOCKS 바인드 기능을 이용하여 터미널(104)로부터 진행중인 연결을 위해 대기하도록 통지한다. 응답으로 방화벽(302)은 터미널(104)과의 연결을 위한 포트를 생성하고 그 포트번호와 IP 어드레스를 터미널(102)로 전송한다. 터미널(102)과 게이트키퍼(108)간의 TCP/IP 연결을 이용하여 터미널(102)에 인스톨된 인터페이스 프로그램(116)은 게이트키퍼(108)로부터 수신된 포트와 IP 어드레스를 사용하여 터미널(102)에 연결할 것을 게이트키퍼(108)에게 알려준다. 응답으로 게이트키퍼(108)는 터미널(102)로부터 수신한 포트와 IP 어드레스를 이용하여 방화벽(302)에 연결할 것을 터미널(104)에게 알려준다. 그 후, 터미널(104)은 방화벽(302)으로 이러한 연결을 개설한다. 방화벽(302)은 연결이 허여되기 이전의 터미널(102)의 IP 어드레스와 기타 정보가 진실임을 터미널(104)에 입증한다. 방화벽(302)과 터미널(104)간의 연결이 개설되면 방화벽(302)은 통지문을 터미널(102)로 전송한다. 이 통지문을 수신한 후, 터미널(102)은 IP 기반의 전화통화를 수행하기 위하여 방화벽(302)과 터미널(104)간의 이 연결을 이용한다.If terminal 104 wishes terminal 102 to call, then interface program 116 installed on terminal 104 to gatekeeper 108 using a TCP / IP connection between terminal 104 and gatekeeper 108. The terminal 104 indicates that it wants to connect with the terminal 102. When this message is received, using the TCP / IP connection established between the gatekeeper 108 and the terminal 102, the gatekeeper 108 wants the terminal 102 to connect to the terminal 102. Notify Gatekeeper 108 also sends the IP address of terminal 104 to terminal 102. The interface program 116 installed on the terminal 102 then notifies the firewall 302 to wait for an ongoing connection from the terminal 104 using the SOCKS bind function. In response, firewall 302 creates a port for connection with terminal 104 and sends the port number and IP address to terminal 102. The interface program 116 installed on the terminal 102 using the TCP / IP connection between the terminal 102 and the gatekeeper 108 may use the port 102 and the IP address received from the gatekeeper 108. Tells gatekeeper 108 to connect to. In response, gatekeeper 108 tells terminal 104 to connect to firewall 302 using the port and IP address received from terminal 102. Terminal 104 then establishes this connection to firewall 302. Firewall 302 proves to terminal 104 that the IP address and other information of terminal 102 before the connection is granted is true. When the connection between the firewall 302 and the terminal 104 is established, the firewall 302 sends a notification to the terminal 102. After receiving this notification, terminal 102 uses this connection between firewall 302 and terminal 104 to perform an IP-based telephone call.

본 발명의 다른 실시예에서 인터페이스 프로그램(116)과 게이트키퍼(108)는 PSTN에 연결된 전화 유니트로부터 호출을 수신하도록 구성될 수 있다. 예를 들면, PSTN에 연결된 전화 유니트(112)가 유니트(102)를 호출하기 원한다고 가정하자. 전화 유니트(112)는 또한 IP 기반의 컴퓨터 네트워크(106)와 PSTN간의 전환을 위해 구성된 게이트웨이(110)에 연결된다.In another embodiment of the present invention, interface program 116 and gatekeeper 108 may be configured to receive calls from telephone units connected to the PSTN. For example, assume that telephone unit 112 connected to the PSTN wants to call unit 102. The telephone unit 112 is also connected to a gateway 110 configured for switching between the IP-based computer network 106 and the PSTN.

본 발명의 실시예에서 게이트웨이(110)는 게이트키퍼(108)에 등록한다. 특히, 게이트웨이(110)는 RRQ(Register Request) 메시지를 게이트키퍼(108)로 전송한다. 응답으로 게이트키퍼(110)는 RCF(Request Confirm) 메시지를 게이트웨이(110)로 전송한다. RRQ 메시지중 일부분으로 게이트웨이(110)는 자신의 IP 어드레스를 전송한다.In an embodiment of the present invention, the gateway 110 registers with the gatekeeper 108. In particular, the gateway 110 transmits a register request (RRQ) message to the gatekeeper 108. In response, the gatekeeper 110 transmits a Request Confirm (RCF) message to the gateway 110. As part of the RRQ message, the gateway 110 sends its IP address.

또한, 상기된 것처럼 터미널(102)은 게이트키퍼(108)에 등록한다. 특히, 터미널(102)은 또한 RRQ(Register Request) 메시지를 게이트키퍼(108)로 전송한다. 응답으로 게이트키퍼(110)는 RCF(Request Confirm) 메시지를 터미널(102)로 전송한다. 터미널(102)은 상기된 소정의 과정을 이용하여 방화벽(303)을 통해 자신의 IP 어드레스와 포트번호를 게이트키퍼(108)로 전송할 수 있다.In addition, the terminal 102 registers with the gatekeeper 108 as described above. In particular, terminal 102 also sends a Register Request (RRQ) message to gatekeeper 108. In response, the gatekeeper 110 transmits a Request Confirm (RCF) message to the terminal 102. The terminal 102 may transmit its IP address and port number to the gatekeeper 108 through the firewall 303 using the predetermined process described above.

전화 유니트(112)가 호출을 시작하면 게이트웨이(110)는 ARQ(Admission Request)를 게이트키퍼(108)로 전송한다. 응답으로 게이트키퍼(108)는 이전에 등록된 터미널(102)의 포트번호와 IP 어드레스를 이용하여 ARQ 메시지를 터미널(102)로 전송한다. ARQ 메시지가 수신되면 터미널(102)에 인스톨된 인터페이스 프로그램(116)이 포트를 방화벽(302)에 바인드하고 바인드된 포트 정보를 게이트키퍼(108)로 전송한다. 응답으로 게이트키퍼(108)는 RCF(Registration Confirm) 메시지를 터미널(102)로 전송하고 ACF(Admission Confirm) 메시지를 게이트웨이(110)로 전송한다. 게이트키퍼(108)는 또한 게이트웨이(110)로 게이트키퍼(108)에 등록된 터미널(102)의 포트번호와 IP 어드레스를 전송한다. 결과적으로, 터미널(10)과 게이트웨이(110)는 H.323 표준을 이용한 IP 기반의 전화통화를 수행하기 위해 요구되는 IP 어드레스를 갖는다.The gateway 110 sends an ARQ (Admission Request) to the gatekeeper 108 when the telephone unit 112 starts a call. In response, gatekeeper 108 sends an ARQ message to terminal 102 using the port number and IP address of terminal 102 previously registered. When the ARQ message is received, the interface program 116 installed in the terminal 102 binds the port to the firewall 302 and transmits the bound port information to the gatekeeper 108. In response, the gatekeeper 108 transmits a Registration Confirm (RCF) message to the terminal 102 and an ACF (Admission Confirm) message to the gateway 110. Gatekeeper 108 also transmits the port number and IP address of terminal 102 registered to gatekeeper 108 to gateway 110. As a result, the terminal 10 and the gateway 110 have IP addresses required to perform IP-based telephony using the H.323 standard.

본 발명의 전형적인 일 실시예에서 컴퓨터 네트워크(106)는 인터넷이다. 그러나, 컴퓨터 네트워크(106)는 IP 기반의 프로토콜을 이용하여 동작하는 사설, 공중 또는 사설과 공중 컴퓨터 네트워크가 결합된 임의의 네트워크를 포함할 수 있다. 또한, 상기된 IP 프로토콜은 IPv4, IPv6 등을 포함할 수 있다.In a typical embodiment of the present invention, the computer network 106 is the Internet. However, computer network 106 may include any network that combines private, public or private and public computer networks that operate using IP-based protocols. In addition, the above-described IP protocol may include IPv4, IPv6, and the like.

지금까지 본 발명은 컴퓨터 네트워크를 통한 IP 기반의 전화통화의 수행에 대해서 설명하였다. 그러나, 본 발명은 또한 IP 기반의 전화통화의 다양한 변형에 이용될 수 있다.Thus far, the present invention has been described for performing an IP-based telephone call through a computer network. However, the present invention can also be used for various modifications of IP-based telephony.

특히 도 2를 참조하면, VPN 라우터(202)에 연결된 터미널(102)과 IP 기반의 전화통화를 실시하기 위한 본 발명의 전형적인 실시예와 관련된 방법과 시스템이 설명되어 있다. 이 전형적인 실시예에서 터미널(102)에는 가상 IP 어드레스가 할당된다. 따라서, 터미널(102)이 패킷을 전송하면 VPN 라우터(202)(도 2)는 터미널(102)의 가상 IP 어드레스를 VPN 라우터(202)(도 2)의 리얼 IP 어드레스로 대체한다. 터미널(102)과 IP 기반의 전화통화를 수행하기 위해 터미널(102)에 인스톨된 인터페이스 프로그램(116)은 라우터(202)를 통해 패킷을 게이트키퍼(108)로 전송하도록 구성될 수 있다. 게이트키퍼(108)가 이 패킷을 수신하면 게이트키퍼(108)는 터미널(102)로부터 패킷을 전송하기 위해 라우터(202)에 의해 이용되는 포트번호와 IP 어드레스를 결정한다.In particular, referring to FIG. 2, a method and system related to an exemplary embodiment of the present invention for conducting IP-based telephony with a terminal 102 connected to a VPN router 202 is described. In this exemplary embodiment, terminal 102 is assigned a virtual IP address. Thus, when terminal 102 sends a packet, VPN router 202 (FIG. 2) replaces the virtual IP address of terminal 102 with the real IP address of VPN router 202 (FIG. 2). The interface program 116 installed on the terminal 102 to perform IP-based telephony with the terminal 102 may be configured to send packets to the gatekeeper 108 via the router 202. When the gatekeeper 108 receives this packet, the gatekeeper 108 determines the port number and IP address used by the router 202 to transmit the packet from the terminal 102.

상기에 설명된 것처럼, 상기에 개괄된 이 방법과 시스템은 IP 기반의 전화통화에 관하여 설명되어 있으나 이 방법과 시스템은 다수의 응용에 이용될 수 있다. 다음의 설명에서는 두개의 상이한 IP 어드레싱 체계를 이용하는 두개의 상이한 네트워크 환경내의 두개의 터미널간의 통신을 위한 더욱 일반적인 응용예에 관하여 설명할 것이다.As described above, the method and system outlined above have been described with regard to IP-based telephony, but the method and system can be used for a number of applications. The following description will describe a more general application for communication between two terminals in two different network environments using two different IP addressing schemes.

도 4를 참조하면, 게이트키퍼(108)는 게이트키퍼 기능을 수행하지 않고 H.323 표준에 따라 터미널(102)(104)간의 통신을 실시하도록 구성될 수 있다. 따라서, 다음의 설명에서 게이트키퍼(108)는 서버(108)로 불리울 것이다. 게이트키퍼(서버)는 다수의 터미널, 컴퓨터, 프로세서 등으로 구성될 수 있다.Referring to FIG. 4, the gatekeeper 108 may be configured to perform communication between terminals 102 and 104 according to the H.323 standard without performing a gatekeeper function. Thus, gatekeeper 108 will be referred to as server 108 in the following description. The gatekeeper (server) may be composed of a plurality of terminals, computers, processors, and the like.

본 발명의 전형적인 일 실시예에 따르면, 터미널(102)은 라우터(402)를 통해 서버(108)에 연결될 수 있다. 본 실시예에서 라우터(402)는 제1 네트워크 환경(406)내에서 이용되는 IP 어드레스를 제2 네트워크 환경(408)내에서 이용되는 다른 IP 어드레스로 전환하도록 구성될 수 있다. 따라서, 라우터(402)는 VPN(Virtual Private Network) 라우터, NAT(Network Address Translation) 라우터 등과 같이 구성될 수 있다. 또한, 라우터(402)는 방화벽의 일부로 구성될 수 있다.According to one exemplary embodiment of the present invention, terminal 102 may be connected to server 108 via router 402. In this embodiment, the router 402 may be configured to translate the IP address used in the first network environment 406 into another IP address used in the second network environment 408. Accordingly, the router 402 may be configured as a virtual private network (VPN) router, a network address translation (NAT) router, or the like. In addition, the router 402 may be configured as part of a firewall.

도 4에 도시된 것처럼, 서버(108)가 네트워크 환경(406)의 외측에 존재하는 동안 터미널(102)과 라우터(402)는 네트워크 환경(406)내에 존재한다. 특히, 본 실시예에서 서버(108)와 터미널(104)은 네트워크 환경(408)내에 존재한다. 그러나, 네트워크 환경(406)과 네트워크 환경(408)은 VPN 환경, NAT 환경, 방화벽 후단의 네트워크 등을 포함할 수 있다. 더욱이, 서버(108)는 네트워크 환경(406)(408)으로 부터 분리된 제3 네트워크 환경내에 존재할 수 있다.As shown in FIG. 4, the terminal 102 and the router 402 reside in the network environment 406 while the server 108 is outside of the network environment 406. In particular, in this embodiment server 108 and terminal 104 reside within network environment 408. However, network environment 406 and network environment 408 may include a VPN environment, a NAT environment, a network behind the firewall, and the like. Moreover, server 108 may reside in a third network environment that is separate from network environment 406 and 408.

상기된 것처럼, 네트워크 환경(406)은 네트워크 환경(408)과는 다른 IP 어드레싱 체계를 이용할 수 있다. 또한, 상기된 것처럼 라우터(402)는 네트워크 환경(406)(408)내에서 이용되는 상이한 IP 어드레싱 체계간을 전환하도록 구성될 수 있다. 따라서, 터미널(102)이 터미널(104)과 통신하기를 원하면 라우터(402)는네트워크 환경(406)내에서 이용되는 IP 어드레싱 체계를 네트워크 환경(408)내에서 이용되는 IP 어드레싱 체계로 전환한다. 그러나, 터미널(104)은 네트워크 환경(406)내의 터미널(102)의 IP 어드레스를 갖지 않는 터미널(102)과 통신을 개시할 수 없다.As noted above, the network environment 406 may use a different IP addressing scheme than the network environment 408. In addition, as described above, the router 402 may be configured to switch between different IP addressing schemes used within the network environment 406 and 408. Thus, if terminal 102 wishes to communicate with terminal 104, router 402 converts the IP addressing scheme used in network environment 406 to the IP addressing scheme used in network environment 408. However, terminal 104 cannot initiate communication with terminal 102 that does not have the IP address of terminal 102 in network environment 406.

따라서, 터미널(102)(104)간의 IP 기반의 전화통화의 실시에 관련된 상기 방법과 시스템은 터미널(102)과 통신을 개시하도록 터미널(104)을 허여하기 위해 이용될 수 있다. 명료 및 편의를 위해 터미널(102)(104)만이 다음에 설명되고 도 4에 도시되었다. 그러나, 본 발명은 다수의 터미널(102)(104)간의 통신을 실시하기 위해 이용될 수 있다.Thus, the method and system related to the implementation of an IP-based telephony between terminals 102 and 104 may be used to permit terminal 104 to initiate communication with terminal 102. For clarity and convenience only terminals 102 and 104 are described next and shown in FIG. 4. However, the present invention may be used to effect communication between multiple terminals 102 and 104.

도 4를 참조하면, 본 실시예에서 터미널(102)은 서버(108)(도 5의 블록 502)와 초기 연결을 설정하도록 구성될 수 있다. 상기된 것처럼, 터미널(102)은 서버(108)와 연결을 설정하기 위해 구성된 인터페이스 프로그램(116)을 포함할 수 있다. 이러한 초기 연결은 인터페이스 프로그램(116)이 터미널(102)에 최초로 장착되어 구동될 때에 설정될 수 있다. 일 실시예에서 이러한 초기 연결은 TCP/IP 프로토콜을 이용하여 설정될 수 있다. TCP/IP 프로토콜 이용시의 잇점중 하나는 터미널(102)과 서버(108)간의 연결이 유지된다는 것이다. 특히, 본 실시예에서 라우터(402)는 터미널(102)을 서버(108)에 연결하기 위한 포트를 개방한다. TCP/IP 프로토콜이 이용되면 라우터(402)는 이 포트의 개방 상태를 유지한다. 그러나, UDP 프로토콜이 이용되면 라우터는 짧은 시간, 예를 들면 수분내에 이 포트를 폐쇄한다. 따라서, 다른 실시예에서 UDP 프로토콜이 터미널(102)과 서버(108)간의 초기연결을 설정하기 위해 이용되면 인터페이스 프로그램(116)은 이 연결을 유지하기 위해 패킷을 서버(108)로 반복적으로 전송하도록 구성될 수 있다. 특히, 인터페이스 프로그램(116)은 라우터(402)가 터미널(102)과 서버(108)간의 초기 연결을 설정하기 위해 개방된 포트를 폐쇄하기 이전에 패킷을 서버(108)로 반복적으로 전송하도록 구성될 수 있다. 예를 들면, 인터페이스 프로그램(116)은 매분 마다 패킷을 서버(108)로 전송하도록 구성될 수 있다. 인터페이스 프로그램(116)은 수초, 수분 마다 등과 같이 소정의 편리한 시간내에 패킷을 전송하도록 구성될 수 있다. 또한, 서버(108)는 터미널(102)과 서버(108)간의 연결을 유지하기 위해 패킷을 전송할 수 있다.Referring to FIG. 4, in this embodiment, the terminal 102 may be configured to establish an initial connection with the server 108 (block 502 of FIG. 5). As noted above, terminal 102 may include an interface program 116 configured to establish a connection with server 108. This initial connection can be established when the interface program 116 is first mounted and driven in the terminal 102. In one embodiment this initial connection may be established using the TCP / IP protocol. One of the advantages of using the TCP / IP protocol is that the connection between terminal 102 and server 108 is maintained. In particular, the router 402 in this embodiment opens a port for connecting the terminal 102 to the server 108. Router 402 keeps this port open if TCP / IP protocol is used. However, if the UDP protocol is used, the router closes this port in a short time, for example within a few minutes. Thus, in another embodiment, if the UDP protocol is used to establish an initial connection between the terminal 102 and the server 108, the interface program 116 may repeatedly send packets to the server 108 to maintain this connection. Can be configured. In particular, the interface program 116 may be configured to repeatedly send packets to the server 108 before the router 402 closes open ports to establish an initial connection between the terminal 102 and the server 108. Can be. For example, the interface program 116 may be configured to send a packet to the server 108 every minute. The interface program 116 may be configured to transmit packets within some convenient time, such as every few seconds, every few minutes, and the like. In addition, server 108 may send a packet to maintain a connection between terminal 102 and server 108.

터미널(102)과 서버(108)간의 연결이 설정되면 터미널(102)내의 인터페이스 프로그램(116)은 라우터(402)(도 5의 블록 504)를 통해 패킷을 서버(108)로 전송하도록 구성될 수 있다. 특히, 터미널(102)은 라우터(402)를 통해 패킷을 서버(108)로 전송한다. 라우터(402)가 패킷을 터미널(102)로부터 서버(108)로 전송하면 그것은 네트워크 환경(406)내에서 이용되는 IP 어드레싱 체계로부터 네트워크 환경(408)내에서 이용되는 IP 어드레싱 체계로 전환된다. 또한, 라우터(402)는 터미널(102)로부터 서버(108)로 패킷을 전송하기 위한 포트를 할당한다.Once the connection between the terminal 102 and the server 108 is established, the interface program 116 within the terminal 102 may be configured to send packets to the server 108 via the router 402 (block 504 of FIG. 5). have. In particular, terminal 102 sends a packet to server 108 via router 402. When the router 402 sends a packet from the terminal 102 to the server 108 it switches from the IP addressing scheme used in the network environment 406 to the IP addressing scheme used in the network environment 408. Router 402 also assigns a port for transmitting packets from terminal 102 to server 108.

따라서, 이 패킷이 수신되면 서버(108)는 이 패킷을 터미널(102)(도 5의 블록 506)로부터 전송하기 위해 라우터(402)에 의해 이용되는 IP 어드레스와 포트 번호를 결정하기 위하여 그것을 검사하도록 구성될 수 있다. 서버(108)는 라우터(402)에 의해 이용되는 IP 어드레스와 포트번호를 결정하기 위한 소정의 종래의 소프트웨어 및/또는 하드웨어를 포함할 수 있다.Thus, when this packet is received, server 108 checks it to determine the IP address and port number used by router 402 to send this packet from terminal 102 (block 506 in FIG. 5). Can be configured. Server 108 may include any conventional software and / or hardware for determining the IP address and port number used by router 402.

이 IP 어드레스와 포트번호가 결정된 후, 서버(108)는 이 정보를 터미널(104)(도 5의 블록 508)로 전송할 수 있다. 서버(108)에 의해 전송된 IP 어드레스와 포트번호를 이용하여 터미널(104)은 라우터(도 5의 블록 510) 후단의 터미널(102)과의 연결을 설정할 수 있다. 이 방법에서 하나의 IP 어드레싱 체계를 갖는 네트워크 환경(408)내의 터미널(104)은 다른 IP 어드레싱 체계를 갖는 네트워크 환경(406)내의 터미널(102)과 연결을 설정하여 통신할 수 있다.After this IP address and port number have been determined, server 108 may send this information to terminal 104 (block 508 of FIG. 5). Using the IP address and port number transmitted by the server 108, the terminal 104 may establish a connection with the terminal 102 behind the router (block 510 of FIG. 5). In this method, a terminal 104 in a network environment 408 having one IP addressing scheme may establish a communication with a terminal 102 in a network environment 406 having another IP addressing scheme.

서버(108)는 또한 패킷을 터미널(102)로부터 전송하기 위해 라우터(402)에 의해 이용되는 IP 어드레스와 포트번호를 저장하도록 구성될 수 있다. 따라서, 터미널(104)이 터미널(102)과의 통신을 원하면 터미널(102)은 서버(108)로 리퀘스트를 전송하고 터미널(102)과 관련된 IP 어드레스와 포트번호를 전송할 수 있다.The server 108 may also be configured to store the IP address and port number used by the router 402 to send packets from the terminal 102. Thus, if terminal 104 wishes to communicate with terminal 102, terminal 102 may send a request to server 108 and may transmit an IP address and port number associated with terminal 102.

특히, 본 발명의 일 실시예에서 터미널(102)(104)의 사용자에게는 고유한 식별코드가 할당될 수 있다. 인터페이스 프로그램(116)이 서버(108)에 연결되면 인터페이스 프로그램(116)은 터미널(102)의 유저와 관련된 고유의 식별코드를 서버(108)로 전송할 수 있다. 그 후, 서버(108)는 터미널(102)과 관련된 IP 어드레스와 포트번호를 갖는 이 식별코드를 저장할 수 있다. 따라서, 터미널(104)의 유저가 터미널(102)의 유저와 통신을 원하면 터미널(102)의 유저와 관련된 식별코드는 터미널(104)로부터 서버(108)로 전송되는 리퀘스트에 포함될 수 있다. 가명(aliases)이 터미널(102)(104)의 유저에게 할당된 식별코드와 연관될 수 있다. 또한, 유저 보다 오히려 터미널(102)(104)에 식별코드가 할당될 수 있다. 그러한식별 코드 시스템의 더욱 상세한 설명은 2000년 4월 24일자로 출원된 미합중국 특허출원 제09/557,746호 "METHOD AND APPARATUS FOR CONDUCTING COMPUTER TELEPHONY"를 살펴보기 바란다.In particular, in one embodiment of the present invention, a unique identification code may be assigned to a user of the terminal 102 (104). When the interface program 116 is connected to the server 108, the interface program 116 may transmit a unique identification code associated with the user of the terminal 102 to the server 108. Server 108 may then store this identification code with the IP address and port number associated with terminal 102. Thus, if a user of terminal 104 wishes to communicate with a user of terminal 102, an identification code associated with the user of terminal 102 may be included in the request sent from terminal 104 to server 108. Aliases may be associated with an identification code assigned to a user of terminals 102 (104). In addition, an identification code may be assigned to terminals 102 and 104 rather than to a user. See US Patent Application Serial No. 09 / 557,746, "METHOD AND APPARATUS FOR CONDUCTING COMPUTER TELEPHONY," filed April 24, 2000, for a more detailed description of such identification code systems.

상기된 것처럼, 본 발명의 일 실시예에서 서버(108)는 터미널(104)로부터 리퀘스트를 수신하면 터미널(102)과 관련된 IP 어드레스와 포트번호를 터미널(104)로 전송하도록 구성될 수 있다. 본 실시예에서 라우터(402)는 TCP/IP 프로토콜을 사용하는 경우와 같이 패킷을 터미널(102)로부터 서버(108)로 전송하기 위해 이용되는 포트의 개방 상태를 유지하도록 구성될 수 있다. 그러나, 일부의 응용에서 라우터(402)는 UDP 프로토콜을 사용하는 경우와 같이 패킷을 터미널(102)로부터 서버(108)로 전송한 후, 이 포트를 즉시 폐쇄하도록 구성할 수 있다. 예를 들면, 라우터(402)가 방화벽의 일부이면 패킷을 터미널(102)로부터 서버(108)로 전송하기 위해 이용되는 포트는 수분내에 폐쇄될 수 있다. 이러한 응용에서 터미널(104)은 포트가 폐쇄되기 이전에 서버(108)로부터 수신된 어드레스와 포트번호를 이용하여 터미널(102)과의 연결을 설정하는 것이 바람직하다.As noted above, in one embodiment of the present invention, server 108 may be configured to send an IP address and port number associated with terminal 102 to terminal 104 upon receiving a request from terminal 104. In this embodiment, the router 402 may be configured to maintain the open state of the port used to send packets from the terminal 102 to the server 108, such as when using the TCP / IP protocol. However, in some applications router 402 may be configured to immediately close this port after sending a packet from terminal 102 to server 108, such as when using the UDP protocol. For example, if router 402 is part of a firewall, the port used to send packets from terminal 102 to server 108 may be closed within minutes. In such an application, terminal 104 preferably establishes a connection with terminal 102 using the address and port number received from server 108 before the port is closed.

특히, 본 발명의 일 실시예에서 터미널(102)(104)은 서버(108)와의 초기 연결을 설정하도록 구성될 수 있다. 특히, 상기된 것처럼 터미널(102)(104)은 터미널(102)(104)을 서버(108)와 연결하기 위해 구성된 인터페이스 프로그램(116)을 포함할 수 있다. 이러한 초기 연결은 인터페이스 프로그램(116)이 터미널(102)(104)에 최초로 장착되거나 구동될 때에 설정될 수 있다. 본 실시예에서 이러한 초기 연결은 TCP/IP 프로토콜을 이용하여 설정된다. 상기된 것처럼, 다른 실시예에서 이러한 초기 연결은 UDP 프로토콜을 이용하여 설정될 수 있다.In particular, in one embodiment of the invention, the terminals 102 and 104 may be configured to establish an initial connection with the server 108. In particular, as described above, the terminals 102 and 104 may include an interface program 116 configured to connect the terminals 102 and 104 to the server 108. This initial connection can be established when the interface program 116 is first mounted or driven in the terminal 102 (104). In this embodiment this initial connection is established using the TCP / IP protocol. As noted above, in other embodiments such an initial connection may be established using the UDP protocol.

본 실시예에서 터미널(104)이 터미널(102)과의 통신을 시작하기를 원하면 터미널(104)의 인터페이스 프로그램(116)은 리퀘스트를 서버(108)로 전송하도록 구성될 수 있다. 터미널(104)이 이 리퀘스트를 서버(108)로 전송하면 포트가 터미널(104)과 서버(108)에 개설된다. 서버(108)가 이 리퀘스트를 수신하면 서버(108)는 이 리퀘스트를 전송하기 위해 이용되는 터미널(104)의 어드레스와 포트번호를 결정하도록 구성될 수 있다. 서버(108)는 이 어드레스와 포트번호를 저장하도록 구성될 수 있다.In this embodiment, if terminal 104 wishes to initiate communication with terminal 102, interface program 116 of terminal 104 may be configured to send a request to server 108. When terminal 104 sends this request to server 108, a port is opened at terminal 104 and server 108. When server 108 receives this request, server 108 may be configured to determine the address and port number of terminal 104 used to send this request. Server 108 may be configured to store this address and port number.

터미널(104)로부터 리퀘스트를 수신한 후, 서버(108)는 리퀘스트를 터미널(102)의 인터페이스 프로그램(116)으로 전송하도록 구성될 수 있다. 본 실시예에서 서버(108)는 터미널(102)과 설정된 초기 연결을 통해 이 리퀘스트를 터미널(102)로 전송할 수 있다.After receiving the request from terminal 104, server 108 may be configured to send the request to interface program 116 of terminal 102. In this embodiment, server 108 may send this request to terminal 102 via an initial connection established with terminal 102.

서버(108)의 이 리퀘스트에 대한 응답으로 터미널(102)의 인터페이스 프로그램(116)은 라우터(402)를 통해 패킷을 서버(108)로 전송하도록 구성될 수 있다. 터미널(102)이 이 패킷을 전송하면 라우터(402)는 패킷을 서버(108)로 전송하기 위해 포트를 개방한다.In response to this request of the server 108, the interface program 116 of the terminal 102 may be configured to send a packet to the server 108 via the router 402. When terminal 102 sends this packet, router 402 opens a port to send the packet to server 108.

서버(108)가 이 패킷을 수신하면 서버는 패킷을 전송하기 위해 이용되는 라우터(402)의 어드레스와 포트번호를 결정하도록 구성될 수 있다. 그 후, 서버(108)는 이 어드레스와 포트번호를 터미널(104)로 전송하는데, 특히 터미널(104)내의 인터페이스 프로그램(116)으로 전송한다. 서버(108)는 터미널(104)과 설정된 초기 연결을 통해 이 정보를 터미널(104)로 전송할 수 있다.When the server 108 receives this packet, the server may be configured to determine the address and port number of the router 402 used to transmit the packet. The server 108 then sends this address and port number to the terminal 104, in particular to the interface program 116 within the terminal 104. The server 108 may send this information to the terminal 104 through the initial connection established with the terminal 104.

서버(108)로부터 수신된 IP 어드레스와 포트번호를 이용하여 터미널(104)은 라우터(402) 후단의 터미널(102)과의 연결을 설정할 수 있다. 이 방법에서 하나의 IP 어드레싱 체계를 갖는 네트워크 환경(408)내의 터미널(104)은 다른 IP 어드레싱 체계를 갖는 네트워크 환경(406)내의 터미널(102)과의 연결을 설정할 수 있다.Using the IP address and the port number received from the server 108, the terminal 104 may establish a connection with the terminal 102 behind the router 402. In this method, the terminal 104 in the network environment 408 with one IP addressing scheme may establish a connection with the terminal 102 in the network environment 406 with another IP addressing scheme.

본 실시예에서 서버(108)는 터미널(102)과 관련된 IP 어드레스와 포트번호를 저장하도록 구성될 수 있다. 또한, 상기된 식별 코드 체계가 본 실시예에 이용될 수 있다.In this embodiment server 108 may be configured to store an IP address and a port number associated with terminal 102. In addition, the above-described identification code scheme can be used in this embodiment.

본 발명은 첨부된 도면에 나타낸 특정 실시예에 관해서 설명되었으나, 본 발명의 정신과 범위로부터 벗어나지 않는 다양한 변형이 이루어질 수 있다. 따라서, 본 발명은 상기된 도면과 설명으로 나타낸 특정 형태로 제한되는 것처럼 축소되어서는 안된다.Although the present invention has been described with respect to specific embodiments shown in the accompanying drawings, various modifications may be made without departing from the spirit and scope of the invention. Accordingly, the present invention should not be reduced as limited to the specific forms shown in the drawings and description above.

상기된 것처럼 본 발명은 하나의 IP 어드레싱 체계를 갖는 네트워크 환경내의 터미널과 다른 IP 어드레싱 체계를 갖는 네트워크 환경내의 터미널간의 연결을 설정하여 통신할 수 있다.As described above, the present invention can communicate by establishing a connection between a terminal in a network environment having one IP addressing scheme and a terminal in a network environment having another IP addressing scheme.

Claims (35)

제1 네트워크 환경과 제2 네트워크 환경이 상이한 인터넷 프로토콜(IP) 어드레싱 체계를 이용하고 제1 터미널이 라우터에 연결되어 있는 제1 네트워크 환경내의 제1 터미널과 제2 네트워크 환경내의 제2 터미널간의 연결 설정 방법에 있어서:Establish a connection between a first terminal in a first network environment and a second terminal in a second network environment using an Internet Protocol (IP) addressing scheme that is different from the first network environment and the second network environment. In the way: 제1 터미널로부터 제1 네트워크 환경의 외측에 존재하는 서버로의 연결을 설정하는 단계와;Establishing a connection from the first terminal to a server that is outside of the first network environment; 라우터를 통해 제1 터미널로부터 상기 서버로 패킷을 전송하는 단계와;Sending a packet from a first terminal to the server via a router; 상기 서버로 패킷을 전송하기 위해 라우터에 의해 이용되는 IP 어드레스와 포트번호를 결정하는 단계와;Determining an IP address and a port number used by a router to send a packet to the server; IP 어드레스와 포트번호를 제2 터미널로 전송하는 단계; 및Sending an IP address and a port number to a second terminal; And 서버로부터 수신된 IP 어드레스와 포트번호를 이용하여 제2 터미널로부터 제1 터미널로의 연결을 설정하는 단계를 구비하는 것을 특징으로 하는 방법.Establishing a connection from the second terminal to the first terminal using the IP address and the port number received from the server. 제 1 항에 있어서, 상기 방법은:The method of claim 1 wherein the method is: IP 어드레스와 포트번호를 상기 서버에 저장하는 단계와;Storing an IP address and a port number in the server; 제1 터미널에 연결하기 위해 제2 터미널로부터 리퀘스트를 수신하는 단계; 및Receiving a request from a second terminal to connect to the first terminal; And 저장된 IP 어드레스와 포트번호를 제2 터미널로 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.And transmitting the stored IP address and the port number to the second terminal. 제 2 항에 있어서, 제1 터미널과 제2 터미널 및 상기 서버는 TCP/IP (Transmission Control Protocol/Internet Protocol)를 이용하여 통신하는 것을 특징으로 하는 방법.3. The method of claim 2, wherein the first terminal, the second terminal, and the server communicate using Transmission Control Protocol / Internet Protocol (TCP / IP). 제 1 항에 있어서, 상기 방법은:The method of claim 1 wherein the method is: 제2 터미널로부터 상기 서버로의 연결을 설정하는 단계;Establishing a connection from a second terminal to the server; 제2 터미널과 상기 서버간에 설정된 상기 연결을 이용하여 제2 서버로부터 상기 서버로 리퀘스트를 전송하는 단계; 및Sending a request from a second server to the server using the connection established between a second terminal and the server; And 상기 서버로부터 제1 터미널로 리퀘스트를 전송하는 단계를 더 포함하되;Sending a request from the server to a first terminal; 상기 리퀘스트는 제1 터미널로부터 상기 서버로의 연결을 이용하여 전송되며, 제1 터미널로부터 상기 서버로 전송되는 패킷은 상기 서버로부터 제1 터미널로 전송되는 상기 리퀘스트에 따라 전송되는 것을 특징으로 하는 방법.The request is transmitted using a connection from a first terminal to the server, and a packet transmitted from the first terminal to the server is transmitted according to the request transmitted from the server to the first terminal. 제 4 항에 있어서, 상기 방법은:The method of claim 4 wherein the method is: IP 어드레스와 포트번호를 상기 서버에 저장하는 단계를 더 포함하는 것을 특징으로 하는 방법.And storing an IP address and a port number in the server. 제 4 항에 있어서, 제1 터미널과 제2 터미널 및 상기 서버는 UDP(User Datagram Protocol) 프로토콜을 이용하여 통신하는 것을 특징으로 하는 방법.5. The method of claim 4, wherein the first terminal, the second terminal, and the server communicate using a User Datagram Protocol (UDP) protocol. 제 1 항에 있어서, 제1 터미널로부터 상기 서버로 설정되는 상기 연결은 TCP/IP 프로토콜을 이용하여 설정되는 것을 특징으로 하는 방법.2. The method of claim 1, wherein the connection established from the first terminal to the server is established using a TCP / IP protocol. 제 1 항에 있어서, 제1 터미널로부터 상기 서버로 설정되는 상기 연결은 UDP(User Datagram Protocol)를 이용하여 설정되는 것을 특징으로 하는 방법.2. The method of claim 1, wherein the connection established from the first terminal to the server is established using User Datagram Protocol (UDP). 제 8 항에 있어서, 패킷을 제1 터미널로부터 상기 서버로 반복적으로 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.9. The method of claim 8 further comprising repeatedly transmitting a packet from a first terminal to the server. 제 1 항에 있어서, 제1 네트워크 환경은 VPN(Virtual Private Network) 환경인 것을 특징으로 하는 방법.The method of claim 1, wherein the first network environment is a virtual private network (VPN) environment. 제 1 항에 있어서, 제1 네트워크 환경은 NAT(Network Address Translation) 환경인 것을 특징으로 하는 방법.The method of claim 1, wherein the first network environment is a network address translation (NAT) environment. 제 1 항에 있어서, 제1 네트워크 환경은 방화벽 환경인 것을 특징으로 하는 방법.The method of claim 1 wherein the first network environment is a firewall environment. 제1 터미널이 제1 및 제2 IP(Internet Protocol) 어드레싱 체계간을 전환하기 위해 구성된 라우터에 연결되어 있는 제1 IP 어드레싱 체계를 갖는 제1 네트워크 환경내의 제1 터미널과 제2 IP 어드레싱 체계를 갖는 제2 네트워크 환경내의 제2 터미널간의 연결 설정 방법에 있어서:The first terminal having a first IP addressing scheme and a second terminal in a first network environment having a first IP addressing scheme coupled to a router configured for switching between the first and second Internet Protocol (IP) addressing schemes. In a method for establishing a connection between second terminals in a second network environment: 제1 터미널과 상기 제1 네트워크 환경의 외측에 존재하는 상기 서버간의 초기 연결을 설정하는 단계;Establishing an initial connection between a first terminal and the server that is outside of the first network environment; 제2 터미널로부터 상기 서버로 리퀘스트를 전송하는 단계;Sending a request from a second terminal to the server; 제1 터미널과 상기 서버간에 설정된 상기 초기 연결을 이용하여 제2 터미널로부터 전송된 상기 리퀘스트에 따라 상기 서버로부터 제1 터미널로 리퀘스트를 전송하는 단계;Sending a request from the server to the first terminal according to the request sent from the second terminal using the initial connection established between the first terminal and the server; 상기 서버로부터 전송된 상기 리퀘스트에 따라 라우터를 통해 패킷을 제1 터미널로부터 상기 서버로 전송하는 단계;Sending a packet from a first terminal to the server via a router in accordance with the request sent from the server; 상기 패킷을 상기 서버로 전송하기 위해 라우터에 의해 이용되는 IP 어드레스와 포트번호를 결정하는 단계;Determining an IP address and a port number used by a router to send the packet to the server; 라우터에 의해 이용되는 IP 어드레스와 포트번호를 서버로부터 제2 터미널로 전송하는 단계; 및Transmitting the IP address and the port number used by the router from the server to the second terminal; And 서버로부터 전송된 IP 어드레스와 포트번호를 이용하여 제2 터미널로부터 제1 터미널로의 연결을 설정하는 단계를 구비하는 것을 특징으로 하는 방법.Establishing a connection from the second terminal to the first terminal using the IP address and the port number sent from the server. 제 13 항에 있어서, IP 어드레스와 포트번호를 상기 서버에 저장하는 단계를 더 포함하는 것을 특징으로 하는 방법.14. The method of claim 13, further comprising storing an IP address and a port number on the server. 제 13 항에 있어서, 제2 터미널로부터 상기 서버로의 상기 리퀘스트가 제2 터미널에 인스톨된 인터페이스 프로그램으로부터 전송되며, 상기 서버로부터 제1 터미널로의 상기 리퀘스트는 제1 터미널에 인스톨된 인터페이스 프로그램으로 전송되는 것을 특징으로 하는 방법.14. The method of claim 13, wherein the request from the second terminal to the server is sent from an interface program installed on the second terminal, and the request from the server to the first terminal is sent to an interface program installed on the first terminal. Characterized in that the method. 제 13 항에 있어서, 제2 터미널과 상기 서버간의 초기 연결을 설정하는 단계를 더 포함하되, 서버로부터 제2 터미널로 전송되는 IP 어드레스와 포트번호는 제2 터미널과 상기 서버간의 상기 초기 연결을 이용하여 전송되는 것을 특징으로 하는 방법.14. The method of claim 13, further comprising establishing an initial connection between a second terminal and the server, wherein the IP address and port number transmitted from the server to the second terminal use the initial connection between the second terminal and the server. Is transmitted. 제 16 항에 있어서, 제1 터미널과 제2 터미널 및 상기 서버간에 설정되는 상기 초기 연결은 TCP/IP(Transmission Control Protocol/Internet Protocol) 프로토콜을 이용하여 설정되는 것을 특징으로 하는 방법.17. The method of claim 16, wherein the initial connection established between the first terminal and the second terminal and the server is established using a Transmission Control Protocol / Internet Protocol (TCP / IP) protocol. 제 17 항에 있어서, 제2 터미널로부터 상기 서버로 전송되는 상기 리퀘스트, 상기 서버로부터 제1 터미널로 전송되는 상기 리퀘스트 및 제1 터미널로부터 상기 서버로 전송되는 상기 패킷은 UDP(User Datagram Protocol) 프로토콜을 이용하여 전송되는 것을 특징으로 하는 방법.18. The method of claim 17, wherein the request sent from the second terminal to the server, the request sent from the server to the first terminal, and the packet sent from the first terminal to the server use a User Datagram Protocol (UDP) protocol. And characterized in that the transmission is carried out. 제 13 항에 있어서, 제1 터미널과 상기 서버간에 설정되는 상기 초기 연결은 TCP/IP 프로토콜을 이용하여 설정되는 것을 특징으로 하는 방법.The method of claim 13, wherein the initial connection established between the first terminal and the server is established using a TCP / IP protocol. 제 13 항에 있어서, 제1 터미널과 상기 서버간에 설정되는 상기 초기 연결은 UDP 프로토콜을 이용하여 설정되는 것을 특징으로 하는 방법.The method of claim 13, wherein the initial connection established between the first terminal and the server is established using a UDP protocol. 제 20 항에 있어서, 상기 제1 터미널로부터 상기 서버로 패킷을 반복적으로 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.21. The method of claim 20, further comprising repeatedly transmitting a packet from the first terminal to the server. 제 13 항에 있어서, 제1 네트워크 환경은 VPN(Virtual Private Network) 환경인 것을 특징으로 하는 방법.The method of claim 13, wherein the first network environment is a virtual private network (VPN) environment. 제 13 항에 있어서, 제1 네트워크 환경은 NAT(Network Address Translation) 환경인 것을 특징으로 하는 방법.15. The method of claim 13, wherein the first network environment is a network address translation (NAT) environment. 제 13 항에 있어서, 제1 네트워크 환경은 방화벽 환경인 것을 특징으로 하는 방법.14. The method of claim 13, wherein the first network environment is a firewall environment. 제1 네트워크 환경과 제2 네트워크 환경이 상이한 IP(Internet Protocol) 어드레싱 체계를 이용하고 제1 터미널이 라우터에 연결되어 있는 제1 네트워크 환경내의 제1 터미널과 제2 네트워크 환경내의 제2 터미널간의 연결을 설정하기 위해 구성된 시스템에 있어서:Connection between the first terminal in the first network environment and the second terminal in the second network environment using an Internet Protocol (IP) addressing scheme different from the first network environment and the second network environment is connected to the router. On a system configured to set up: 제1 네트워크 환경의 외측에 존재하는 서버;A server located outside of the first network environment; 제1 터미널에 인스톨된 제1 인터페이스 프로그램, 상기 제1 인터페이스 프로그램은 상기 서버와의 연결을 설정하고 라우터를 통해 상기 서버로 패킷을 전송하도록 구성되고, 상기 서버는 패킷을 상기 서버로 전송하기 위해 라우터에 의해 사용되는 IP 어드레스와 포트번호를 결정하도록 구성되며;A first interface program installed in a first terminal, the first interface program configured to establish a connection with the server and send a packet to the server via a router, the server configured to send a packet to the server Determine an IP address and a port number to be used by; 제2 터미널에 인스톨된 제2 인터페이스 프로그램, 상기 서버는 IP 어드레스와 포트번호를 상기 제2 인터페이스 프로그램으로 전송하도록 구성되고, 상기 제2 인터페이스 프로그램은 서버로부터 수신되는 IP 어드레스와 포트번호를 이용하여 상기 제1 인터페이스 프로그램과의 연결을 설정하도록 구성되는 것을 특징으로 하는 시스템.A second interface program installed in a second terminal, wherein the server is configured to transmit an IP address and a port number to the second interface program, wherein the second interface program uses the IP address and port number received from the server; And establish a connection with the first interface program. 제 25 항에 있어서, 상기 서버는 IP 어드레스와 포트번호가 저장되도록 구성되는 것을 특징으로 하는 시스템.27. The system of claim 25, wherein the server is configured to store an IP address and a port number. 제 26 항에 있어서, 상기 제2 인터페이스 프로그램은 상기 제1 인터페이스 프로그램에 연결하기 위해 상기 서버로 리퀘스트를 전송하도록 구성되며, 상기 서버는 상기 리퀘스트에 따라 상기 제2 인터페이스 프로그램으로 저장된 IP 어드레스와 포트번호를 전송하도록 구성되는 것을 특징으로 하는 시스템.27. The method of claim 26, wherein the second interface program is configured to send a request to the server to connect to the first interface program, wherein the server is an IP address and a port number stored in the second interface program according to the request. The system, characterized in that configured to transmit. 제 25 항에 있어서, 상기 제2 인터페이스 프로그램은 상기 서버와 연결을 설정하고 상기 서버와 설정된 상기 연결을 이용하여 상기 서버로 리퀘스트를 전송하도록 구성되고, 상기 서버는 상기 제1 인터페이스 프로그램의 상기 리퀘스트에 따라 상기 제1 인터페이스 프로그램으로 리퀘스트를 전송하도록 구성되며, 상기 제2 인터페이스 프로그램은 상기 서버의 리퀘스트에 따라 상기 서버로 상기 패킷을 전송하도록 구성되는 것을 특징으로 하는 시스템.26. The method of claim 25, wherein the second interface program is configured to establish a connection with the server and send a request to the server using the connection established with the server, the server to the request of the first interface program. And according to the request of the server, the second interface program is configured to send the packet to the server according to the request of the server. 제 28 항에 있어서, 상기 서버는 IP 어드레스와 포트번호를 저장하도록 구성되는 것을 특징으로 하는 시스템.29. The system of claim 28, wherein said server is configured to store an IP address and a port number. 제 25 항에 있어서, 상기 제1 인터페이스 프로그램은 TCP/IP(Transmission Control Protocol/Internet Protocol) 프로토콜을 이용하여 상기 서버와 연결을 설정하도록 구성되는 것을 특징으로 하는 시스템.27. The system of claim 25, wherein the first interface program is configured to establish a connection with the server using a Transmission Control Protocol / Internet Protocol (TCP / IP) protocol. 제 25 항에 있어서, 상기 제1 인터페이스 프로그램은 UDP(User Datagram Protocol) 프로토콜을 이용하여 상기 서버와 연결을 설정하도록 구성되는 것을 특징으로 하는 시스템.27. The system of claim 25, wherein the first interface program is configured to establish a connection with the server using a User Datagram Protocol (UDP) protocol. 제 31 항에 있어서, 상기 제1 인터페이스 프로그램은 상기 서버와의 연결을유지하기 위해 상기 서버로 패킷을 반복적으로 전송하도록 구성되는 것을 특징으로 하는 시스템.32. The system of claim 31, wherein the first interface program is configured to repeatedly transmit a packet to the server to maintain a connection with the server. 제 25 항에 있어서, 라우터는 VPN(Virtual Private Router) 라우터로 구성되는 것을 특징으로 하는 시스템.27. The system of claim 25, wherein the router is configured as a virtual private router (VPN) router. 제 25 항에 있어서, 라우터는 NAT(Network Address Translation) 라우터로 구성되는 것을 특징으로 하는 시스템.27. The system of claim 25, wherein the router is configured as a network address translation (NAT) router. 제 25 항에 있어서, 라우터는 방화벽의 일부로 구성되는 것을 특징으로 하는 시스템.27. The system of claim 25, wherein the router is configured as part of a firewall.
KR10-2001-0050795A 2000-08-23 2001-08-22 Method and system for establishing connections between terminals connected to network environments having different IP-addressing schemes KR100422375B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US22756900P 2000-08-23 2000-08-23
US60/227,569 2000-08-23
US75697901A 2001-01-09 2001-01-09
US09/756979 2001-01-09

Publications (2)

Publication Number Publication Date
KR20020015965A true KR20020015965A (en) 2002-03-02
KR100422375B1 KR100422375B1 (en) 2004-03-16

Family

ID=26921546

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0050795A KR100422375B1 (en) 2000-08-23 2001-08-22 Method and system for establishing connections between terminals connected to network environments having different IP-addressing schemes

Country Status (4)

Country Link
JP (1) JP3763058B2 (en)
KR (1) KR100422375B1 (en)
AU (1) AU2001280235A1 (en)
WO (1) WO2002017035A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100485769B1 (en) * 2002-05-14 2005-04-28 삼성전자주식회사 Apparatus and method for offering connection between network devices located in different home networks
KR100485801B1 (en) * 2002-03-07 2005-04-28 삼성전자주식회사 Network connecting apparatus and method for offering direct connection between network devices existing different private networks
KR100496637B1 (en) * 2002-06-07 2005-06-28 (주)아이엠넷피아 A Method of IPv4 communication in IPv6 Wireless LAN
KR100968958B1 (en) * 2008-12-03 2010-07-14 주식회사 케이티 Internet protocol Multimedia Subsystem and Subscriber Authentication method thereof

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4339184B2 (en) * 2004-06-07 2009-10-07 パナソニック株式会社 Server apparatus, communication device, communication system, communication method, program, and recording medium

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI104869B (en) * 1995-05-24 2000-04-14 Ericsson Telefon Ab L M Method for establishing a voice connection between networks and an intelligent network service
WO1997040610A2 (en) * 1996-04-24 1997-10-30 Northern Telecom Limited Internet protocol filter
FI107217B (en) * 1998-09-25 2001-06-15 Ericsson Telefon Ab L M Signaling in a telecommunications system
US6615357B1 (en) * 1999-01-29 2003-09-02 International Business Machines Corporation System and method for network address translation integration with IP security
KR100689540B1 (en) * 2000-03-20 2007-03-08 삼성전자주식회사 Multi telecommunication method by local ip network and method thereof
KR20010094490A (en) * 2000-03-31 2001-11-01 임명관 Ip phone system and network access method thereof
KR101442983B1 (en) * 2013-07-30 2014-11-03 주식회사 포스코 Device and method for controlling ventilation of sintering machine

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100485801B1 (en) * 2002-03-07 2005-04-28 삼성전자주식회사 Network connecting apparatus and method for offering direct connection between network devices existing different private networks
KR100485769B1 (en) * 2002-05-14 2005-04-28 삼성전자주식회사 Apparatus and method for offering connection between network devices located in different home networks
KR100496637B1 (en) * 2002-06-07 2005-06-28 (주)아이엠넷피아 A Method of IPv4 communication in IPv6 Wireless LAN
KR100968958B1 (en) * 2008-12-03 2010-07-14 주식회사 케이티 Internet protocol Multimedia Subsystem and Subscriber Authentication method thereof

Also Published As

Publication number Publication date
WO2002017035A2 (en) 2002-02-28
KR100422375B1 (en) 2004-03-16
WO2002017035A3 (en) 2002-05-10
AU2001280235A1 (en) 2002-03-04
JP2004507914A (en) 2004-03-11
JP3763058B2 (en) 2006-04-05

Similar Documents

Publication Publication Date Title
KR100360274B1 (en) Method for supporting general ip telephone system in nat based private network
AU2005201075B2 (en) Apparatus and method for voice processing of voice over internet protocol (VOIP)
Holdrege et al. Protocol complications with the IP network address translator
KR100511479B1 (en) SIP service method in network with NAT
JP3774191B2 (en) Audio-video circuit technology with firewall and network address translation
US8468259B2 (en) Middlebox control
US8244876B2 (en) Providing telephony services to terminals behind a firewall and/or a network address translator
EP1396138B1 (en) Changing media sessions
US20030033418A1 (en) Method of implementing and configuring an MGCP application layer gateway
JP5351226B2 (en) Call setting system, method and call agent device
JP2001358778A (en) Communication system, communication gateway and communicating method
EP2850813A1 (en) Nat traversal for voip
US20100031339A1 (en) Streaming Media Service For Mobile Telephones
KR20040066117A (en) Virtual gateway
KR101606142B1 (en) Apparatus and method for supporting nat traversal in voice over internet protocol system
Paulsamy et al. Network convergence and the NAT/Firewall problems
KR100422375B1 (en) Method and system for establishing connections between terminals connected to network environments having different IP-addressing schemes
KR100397547B1 (en) An internet voice communication method using WebCallAgent
KR100438182B1 (en) Method of different IP-address attaching for gatekeeper and NAT-PT
KR100639358B1 (en) Nat or fire wall traversal call method for standard internet-phone in lan
KR100606895B1 (en) A telecommunication method via VoIP system in Network Address Port Translation
Mellouk et al. A new methodology to adapt SIP Protocol for voice traffic transported over IP Network
Baharlooei et al. A low cost VoIP architecture for private networks
GB2403627A (en) Communication through network address translation (nat) devices
JP2006340260A (en) Call control method of internet telephone

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090305

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee