KR100726185B1 - System, gateway server and stun server for internetwork communication between networks using various internet protocol address, and method thereof - Google Patents

System, gateway server and stun server for internetwork communication between networks using various internet protocol address, and method thereof Download PDF

Info

Publication number
KR100726185B1
KR100726185B1 KR1020060036568A KR20060036568A KR100726185B1 KR 100726185 B1 KR100726185 B1 KR 100726185B1 KR 1020060036568 A KR1020060036568 A KR 1020060036568A KR 20060036568 A KR20060036568 A KR 20060036568A KR 100726185 B1 KR100726185 B1 KR 100726185B1
Authority
KR
South Korea
Prior art keywords
public
information
binding
address
server
Prior art date
Application number
KR1020060036568A
Other languages
Korean (ko)
Inventor
이장원
이호진
박상만
Original Assignee
주식회사 케이티프리텔
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티프리텔 filed Critical 주식회사 케이티프리텔
Priority to KR1020060036568A priority Critical patent/KR100726185B1/en
Priority to JP2009507587A priority patent/JP4660624B2/en
Priority to EP07746158.0A priority patent/EP2016727B1/en
Priority to EP20090151106 priority patent/EP2056567A3/en
Priority to PCT/KR2007/001996 priority patent/WO2007123359A2/en
Priority to US12/298,426 priority patent/US8140707B2/en
Application granted granted Critical
Publication of KR100726185B1 publication Critical patent/KR100726185B1/en
Priority to JP2010257046A priority patent/JP2011091826A/en
Priority to US13/025,911 priority patent/US8346962B2/en
Priority to US13/692,255 priority patent/US9392029B2/en

Links

Images

Classifications

    • 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
    • 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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types

Abstract

An interworking service system between IP(Internet Protocol) networks using different IP addresses, a gateway device, a server, and an interworking service method are provided to solve an NAT(Network Address Translation)-traversal problem for a protocol where call setup and substantial data transceiving are separated, by using an existing NAT without requiring a large change of an existing STUN(Simple Traversal UDP through NAT) protocol itself. The first server(400) is located outside an NAT(300), and provides public IP binding information for a private IP passing through the NAT. The second server(200) is located in a local network(10), extracts host information for receiving media from a packet payload of a call connection request received from a terminal(100) allocated with the private IP address, and obtains host information bound to the public IP by the first server for the extracted host information, then applies the obtained information to the packet payload of the call connection request to send the information to a receiving terminal(500).

Description

서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 시스템, 게이트웨이 장치, 서버 및 연동 제공 방법{System, gateway server and STUN server for internetwork communication between networks using various internet protocol address, and method thereof}System, gateway server and STUN server for internetwork communication between networks using various internet protocol address, and method

도 1은 본 발명의 제1 실시예에 따른 서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 시스템의 구성도이다.1 is a block diagram of a system for providing interworking between IP networks using different IP addresses according to a first embodiment of the present invention.

도 2는 도 1의 연동 제공 시스템에서 제2 서버의 세부적인 기능별 블록 구성도를 보인 도면이다.FIG. 2 is a block diagram illustrating detailed functional blocks of the second server in the interlock providing system of FIG. 1.

도 3은 도 2의 제2 서버에 의해 설정되는 IP 헤더를 보인 도면이다.3 is a diagram illustrating an IP header set by a second server of FIG. 2.

도 4는 도 2의 제2 서버에 의해 설정되는 UDP 헤더를 보인 도면이다.4 is a diagram illustrating a UDP header set by a second server of FIG. 2.

도 5는 도 1의 연동 제공 시스템에서 제1 서버의 세부적인 기능별 블록 구성도를 보인 도면이다.FIG. 5 is a block diagram illustrating detailed functional blocks of the first server in the interlock providing system of FIG. 1.

도 6은 본 발명의 제1 실시예에 따른 서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 방법을 보인 도면이다.6 is a diagram illustrating a method for providing interworking between IP networks using different IP addresses according to the first embodiment of the present invention.

도 7은 본 발명의 제2 실시예에 따른 연동 제공 시스템을 이동통신망에 구현한 것을 보인 도면이다.7 is a diagram showing an implementation of an interworking providing system according to a second embodiment of the present invention in a mobile communication network.

도 8은 본 발명의 제2 실시예에 따른 연동 제공 방법을 보인 도면이다.8 is a diagram illustrating a linkage providing method according to a second embodiment of the present invention.

본 발명은 서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 시스템, 게이트웨이 장치, 서버 및 연동 제공 방법에 관한 것이다.The present invention relates to an interworking providing system, a gateway device, a server, and an interworking providing method between IP networks using different IP addresses.

3세대 네트워크 플랫폼으로 불리는 IMS(IP Multimedia Subsystem)는 기존 서킷(circuit) 중심의 네트워크 시스템과 달리 모든 서비스를 IP 기반으로 제공하는 기술이다. 서킷 스위치(circuit switch), 소프트 스위치(softswitch)에 이은 3세대 스위칭 시스템인 IMS는 음성과 데이터 서비스를 하나의 구조로 통합하고 이를 IP 네트워크에 고정된 장치 혹은 모바일 장치로 전달한다.IMS (IP Multimedia Subsystem), called the third generation network platform, is a technology that provides all services based on IP, unlike a circuit-oriented network system. IMS, the third-generation switching system, followed by circuit switches and softswitches, integrates voice and data services into a single structure and delivers them to fixed or mobile devices on an IP network.

또한, 인터넷 프로토콜을 사용하여 네트워크를 개방형으로 전환시키는 의미도 가진다. 유무선 네트워크의 서비스 유연성을 높여 네트워크 컨버전스를 가속화하는 기술로 애플리케이션 개발 및 관리 비용을 줄일 뿐 아니라 신규 서비스의 다양성을 높여 준다는 점에서 통신 업계 초미의 관심사다.It also has the meaning of turning the network open using the Internet protocol. Technology that accelerates network convergence by increasing the service flexibility of wired and wireless networks is a concern of the telecom industry in that it not only reduces application development and management costs, but also increases the diversity of new services.

이러한 IP 네트워크는 전세계적으로 공통의 IP, 즉 global IP(이하, 공인 IP라 기술함) 주소(address)를 각 단말기에게 할당하여 각 단말기간의 통신시 송신원 주소를 식별한다.Such an IP network assigns a globally common IP, that is, a global IP (hereinafter, referred to as a public IP) address to each terminal to identify a sender address in communication between the terminals.

그러나 IMS를 비롯한 IP 네트워크 응용이 확장되면서 그 이용률의 증가로 인해 공인 IP 주소는 매우 부족한 상황에 처해있다.However, with the expansion of IP network applications, including IMS, public IP addresses are in short supply due to the increase in utilization.

이에, 대부분의 통신업자들은 부족한 공인 IP 주소의 확보 및 자망의 안정성 확보 등을 위한 이유로 NAT(Network Address Translation) 기술을 이용한다. Accordingly, most carriers use NAT (Network Address Translation) technology for securing insufficient public IP address and securing network stability.

NAT는 사설 IP 주소를 공인 IP 주소로 변환하는 통신망의 주소 변환 기술이다. 즉 단말에게 로컬 네트워크에서만 사용 가능한 사설 IP 주소를 할당한다. 이러한 단말이 타망 또는 공중망(Public Internet)을 이용하는 경우 단말에게 할당된 사설 IP 주소를 공인 IP 주소로, 공인 IP 주소를 사설 IP 주소로 상호 변환한다. 또한, NAT의 하나로서 PAT(Port Address Translation)는 IP 주소뿐만 아니라 TCP/UDP의 포트 번호를 변환한다. 이로써, 공인 IP 주소를 다수가 함께 사용할 수 있게 하여 공인 IP 주소 부족의 문제를 해결한다.NAT is a network address translation technology that translates private IP addresses into public IP addresses. That is, the terminal assigns a private IP address that can be used only in the local network. When such a terminal uses another network or the public network, the private IP address assigned to the terminal is converted into a public IP address, and the public IP address is converted into a private IP address. In addition, as one NAT, Port Address Translation (PAT) translates not only IP addresses but also port numbers of TCP / UDP. This solves the problem of lack of public IP address by allowing a large number of public IP addresses to be used together.

하지만, 이러한 NAT는 OSI 모델의 3계층 및 4계층 헤더까지만 분석이 가능하고 그보다 상위 계층은 분석하지 못하기 때문에 패킷의 4계층 헤더내 Payload에 패킷 생성 호스트의 인식 정보(발신지 주소, 발신 포트)를 포함하는 인터넷 응용은 지원하지 못한다. 이를 NAT-Traversal의 문제라고 한다. However, since NAT can analyze only the 3rd and 4th layer headers of the OSI model and not the upper layers, the NAT recognizes the packet generating host's identification information (source address, originating port) in the payload in the 4th layer header of the packet. Including Internet applications are not supported. This is called a problem with NAT-Traversal.

즉 NAT-Traversal의 문제는 로컬 네트워크 내 단말의 착신 주소 즉 사설 IP 주소로 설정된 패킷 생성 호스트의 인식 정보는 NAT에 의해 공인 IP 주소로 변환되지 못하므로, 외부로부터 착신 라우팅이 불가능한 상황이 발생하는 것을 의미한다.In other words, the problem of NAT-Traversal is that the identification information of the originator address of the terminal in the local network, that is, the packet generating host set to the private IP address, cannot be converted to the public IP address by NAT, so that the incoming routing from the outside cannot occur. it means.

이러한 문제점을 해결하기 위한 종래 기술로서 Simple Traversal under UDP through NAT(이하 STUN이라 기술함) 방식이 있다.As a conventional technique for solving this problem, there is a Simple Traversal under UDP through NAT (hereinafter, referred to as STUN) method.

STUN 방식은 Server-Client를 기반으로 하는 기술로서, NAT 외부에 위치하여 NAT가 할당하는 공인 IP 주소 및 포트 정보를 제공하는 기술이다. 이러한 STUN에 따르면, STUN-Client를 구동하는 개별 단말들이 각각 STUN 서버로부터 NAT 변환된 공인 IP 주소를 취득할 수 있다.STUN is a technology based on Server-Client. It is a technology that provides public IP address and port information allocated by NAT, located outside of NAT. According to this STUN, individual terminals running the STUN-Client can obtain a NAT-translated public IP address from the STUN server, respectively.

하지만, 개별 단말마다 STUN-Client를 구동해야 하므로 네트워크에 바로 적용하기 어려우며 단말에게 일종의 부담으로 작용한다. However, the STUN-Client must be driven for each individual terminal, so it is difficult to apply it directly to the network and acts as a kind of burden on the terminal.

또한, 발신 단말은 호 연결 전에 착신 단말이 동일한 네트워크 상에 존재하는지 여부를 모를 수 있다. 이런 경우, 착신 단말이 NAT 통과가 필요없는 자(自)망에 존재하는데도 불구하고 NAT를 통해 STUN 서버에 접속하는 불필요한 과정이 수행된다. 이로 인해 호처리의 불합리성을 유발하고 무선 채널의 낭비를 가져온다.In addition, the calling terminal may not know whether the called terminal exists on the same network before the call connection. In this case, although the destination terminal exists in the own network that does not need NAT traversal, an unnecessary process of accessing the STUN server through the NAT is performed. This causes irrationality of call processing and waste of radio channel.

따라서, 본 발명이 이루고자 하는 기술적 과제는 NAT-Traversal 문제를 해결하는 서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 시스템, 게이트웨이 장치, 서버 및 연동 제공 방법을 제공하는 것이다.Accordingly, the technical problem to be achieved by the present invention is to provide an interworking providing system, a gateway device, a server, and an interworking providing method between IP networks using different IP addresses to solve the NAT-Traversal problem.

본 발명이 이루고자 하는 다른 기술적 과제는 SIP(Session Initiation Protocol)를 이용하는 서로 다른 IP 주소를 사용하는 IP 네트워크에서 NAT-Traversal 문제를 해결하는 연동 제공 시스템, 게이트웨이 장치, 서버 및 연동 제공 방법을 제공하는 것이다.Another technical problem to be achieved by the present invention is to provide an interworking providing system, a gateway device, a server, and an interworking providing method for solving a NAT-Traversal problem in an IP network using different IP addresses using a Session Initiation Protocol (SIP). .

상기 기술한 바와 같은 과제를 이루기 위하여 본 발명의 특징에 따르면, According to a feature of the present invention in order to achieve the above problems,

연동 제공 시스템은,Interlocking provision system,

사설 IP를 사용하는 로컬 네트워크와 공인 IP를 사용하는 글로벌 네트워크 간에 NAT(Network Address Translation)를 이용한 연동 제공 시스템에 있어서, 상 기 NAT 외부에 위치하고 상기 NAT를 통과한 사설 IP에 대한 공인 IP 바인딩 정보를 제공하는 제1 서버; 및 상기 로컬 네트워크에 위치하며, 상기 사설 IP 주소를 할당받은 단말로부터 수신한 호 연결 요청의 패킷 페이로드에서 미디어 수신을 위한 호스트 정보를 추출하고, 추출된 호스트 정보에 대해 상기 제1 서버에 의해 공인 IP로 바인딩된 호스트 정보를 획득하여 상기 호 연결 요청의 패킷 페이로드에 적용하여 착신 단말로 전송하는 제2 서버를 포함한다.In a system providing interworking using NAT (Network Address Translation) between a local network using a private IP and a global network using a public IP, public IP binding information for the private IP located outside the NAT and passing through the NAT is provided. Providing a first server; And extracting host information for media reception from a packet payload of a call connection request received from a terminal allocated with the private IP address, and located in the local network, and authorized by the first server for the extracted host information. And a second server that acquires IP information bound to IP, applies the packet payload of the call connection request, and transmits the received host information to the called terminal.

본 발명의 다른 특징에 따르면,According to another feature of the invention,

게이트웨이 장치는,Gateway device,

공인 IP의 바인딩 정보를 제공하는 서버를 포함하고 공인 IP를 사용하는 글로벌 네트워크와 사설 IP를 사용하는 로컬 네트워크간에 NAT를 이용하여 연동을 제공하는 게이트웨이 장치에 있어서, 상기 로컬 네트워크의 노드를 구성하고, 호 연결 요청 패킷의 페이로드에서 미디어 수신을 위한 호스트 정보를 추출하고, 상기 공인 IP의 바인딩 정보를 요청하기 위한 헤더 정보를 상기 추출한 사설 IP 형태의 호스트 정보로 치환하는 IP 마스커레이딩 동작을 수행하는 IP 마스커레이딩 모듈; 상기 서버로 상기 IP 마스커레이딩 모듈에 의해 변경된 헤더 정보와 상기 제2 서버의 IP 주소로 설정된 응답 주소를 포함하는 상기 공인 IP 바인딩을 요청하여 공인 IP 바인딩 응답을 수신하는 공인 IP 바인딩 클라이언트 모듈; 및 상기 공인 IP 바인딩 응답에서 공인 IP로 변환된 호스트 정보를 획득하여 상기 패킷 페이로드의 호스트 정보를 변경시키는 응용 계층 게이트웨이 모듈을 포함한다.A gateway device including a server providing binding information of a public IP and providing interworking using a NAT between a global network using a public IP and a local network using a private IP, comprising: configuring a node of the local network; IP masquerading, which extracts host information for media reception from a payload of a call connection request packet and replaces header information for requesting binding information of the public IP with host information of the extracted private IP type. module; A public IP binding client module for requesting the public IP binding including the header information changed by the IP masquerading module and a response address set to the IP address of the second server to receive a public IP binding response; And an application layer gateway module for acquiring host information converted from the public IP binding response to the public IP and changing the host information of the packet payload.

본 발명의 또 다른 특징에 따르면,According to another feature of the invention,

서버는,The server,

IP 바인딩을 위한 클라이언트 기능을 수행하는 게이트웨이 장치를 포함하고 사설 IP를 사용하는 로컬 네트워크와 공인 IP를 사용하는 글로벌 네트워크의 경계에 위치하는 NAT의 외부에 연결되는 서버에 있어서, 상기 게이트웨이 장치와 연동하여 공인 IP 바인딩 동작을 수행하기 위한 설정 정보를 저장하는 제1 모듈; 및 상기 설정 정보에 따라 상기 게이트웨이 장치로부터 수신된 공인 IP 바인딩 요청에서 상기 NAT를 통과하여 상기 공인 IP 주소로 변환된 헤더 정보를 추출하고, 응답 주소를 확인하여 상기 응답 주소를 이용하여 상기 추출한 정보가 실린 공인 IP 바인딩 응답을 상기 게이트웨이 장치로 전송하는 제2 모듈을 포함한다.A server including a gateway device that performs client functions for IP binding and connected to an outside of a NAT located at a boundary between a local network using a private IP and a global network using a public IP. A first module for storing configuration information for performing a public IP binding operation; And extracting header information converted from the public IP binding request received from the gateway device to the public IP address according to the configuration information, checking the response address, and using the response address to extract the header information. And a second module for transmitting the cited public IP binding response to the gateway device.

본 발명의 또 다른 특징에 따르면,According to another feature of the invention,

연동 제공 방법은,The interlocking offer method,

사설 IP를 사용하는 로컬 네트워크와 공인 IP를 사용하는 글로벌 네트워크 간에 NAT(Network Address Translation)를 이용한 연동 제공 방법에 있어서, (a) 상기 로컬 네트워크가 상기 로컬 네트워크 내 단말로부터 수신한 호 연결 요청의 패킷 페이로드에서 사설 IP로 설정된 미디어 수신을 위한 호스트 정보를 추출하는 A method for providing interworking using NAT (Network Address Translation) between a local network using private IP and a global network using public IP, the method comprising: (a) a packet of a call connection request received by the local network from a terminal in the local network; Extract host information for receiving media set to private IP from payload

단계; (b) 상기 추출한 호스트 정보로 헤더 정보를 치환하여 공인 IP의 바인딩 요청을 하는 전송하는 단계; (c) 상기 NAT에 의해 공인 IP로 변환된 헤더 정보가 포함된 공인 IP의 바인딩 응답을 수신하는 단계; 및 (d) 상기 공인 IP의 바인딩 응답에 포함된 상기 헤더 정보에서 상기 공인 IP로 바인딩된 호스트 정보를 획득하여 이를 상기 호 연결 요청 패킷에 적용하여 해당 착신측 단말로 전송하는 단계 를 포함한다.step; (b) replacing the header information with the extracted host information and transmitting a binding request for a public IP; (c) receiving a binding response of a public IP including header information converted into a public IP by the NAT; And (d) obtaining host information bound to the public IP from the header information included in the binding response of the public IP, applying the same to the call connection request packet, and transmitting the host information to the called terminal.

본 발명의 또 다른 특징에 따르면,According to another feature of the invention,

연동 제공 방법은,The interlocking offer method,

사설 IP를 사용하는 로컬 네트워크와 공인 IP를 사용하는 글로벌 네트워크 간에 NAT(Network Address Translation)를 이용한 연동 제공 방법에 있어서, 상기 로컬 네트워크가 SIP(Seesion Initiation Protocol) 시그널링 수행시, INVITE 메시지의 SDP 메시지에 포함된 상기 사설 IP로 설정된 미디어 수신 정보를 추출하는 단계; 상기 미디어 수신 정보의 사설 IP에 대한 공인 IP 바인딩 정보를 획득하기 위한 스턴(STUN, Simple Traversal under UDP through NAT) 바인딩 요청 메시지의 헤더를 상기 추출한 미디어 수신 정보로 치환하는 단계; 상기 스턴 바인딩 요청 메시지를 전송하여 NAT을 통과하여 공인 IP로 변환된 헤더 정보를 포함하는 스턴 바인딩 응답 메시지를 수신하는 단계; 및 상기 공인 IP로 변환된 헤더 정보에서 상기 치환된 상기 미디어 수신 정보의 공인 IP 정보를 획득하여 상기 INVITE 메시지의 미디어 수신 정보를 상기 획득한 정보로 변경시키는 단계를 포함한다.In a method of providing interworking using a network address translation (NAT) between a local network using a private IP and a global network using a public IP, the local network may include an SDP message of an INVITE message when SIP (Seesion Initiation Protocol) is performed. Extracting media reception information set to the private IP included; Replacing a header of a STUN (Simple Traversal under UDP through NAT) binding request message for obtaining public IP binding information for the private IP of the media reception information with the extracted media reception information; Transmitting the stun binding request message and receiving a stun binding response message including header information that is converted to a public IP through NAT; And acquiring the public IP information of the substituted media reception information from the header information converted into the public IP and changing the media reception information of the INVITE message to the obtained information.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.

또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. In addition, when a part is said to "include" a certain component, this means that it may further include other components, except to exclude other components unless otherwise stated.

또한, 본 명세서에서 기재한 모듈(module)이란 용어는 특정한 기능이나 동작을 처리하는 하나의 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현할 수 있다. In addition, the term module described herein refers to a unit for processing a specific function or operation, which may be implemented in hardware or software, or a combination of hardware and software.

이제 본 발명의 실시예에 따른 서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 시스템, 게이트웨이 장치, 서버 및 연동 제공 방법에 대하여 도면을 참고로 하여 상세하게 설명한다.Now, the interworking providing system, the gateway device, the server and the interworking providing method between IP networks using different IP addresses will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 제1 실시예에 따른 서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 시스템의 구성도이다.1 is a block diagram of a system for providing interworking between IP networks using different IP addresses according to a first embodiment of the present invention.

즉 도 1에 따르면, 연동 제공 시스템의 각 호스트(노드)는 발신측 단말(100), 제2 서버(200), 네트워크 주소 변환 수단(300), 제1 서버(400) 및 착신측 단말(500)을 포함한다. That is, according to Figure 1, each host (node) of the interworking providing system is the source terminal 100, the second server 200, network address translation means 300, the first server 400 and the destination terminal 500 ).

여기서, 연동 제공 시스템은 사설 IP 주소를 사용하는 로컬 네트워크(10)와 공인 IP 주소를 사용하는 글로벌 네트워크(20)를 포함하는 IP 네트워크(1)에 구현된다. Here, the interworking providing system is implemented in an IP network 1 including a local network 10 using a private IP address and a global network 20 using a public IP address.

그리고, 연동 제공 시스템은 호 설정을 위한 시그널링 과정과 데이터 송수신을 위한 미디어 세션 과정이 분리되고 패킷 페이로드에 상기 미디어 세션 과정의 협상 정보가 수록되는 프로토콜을 이용한다. 이러한 프로토콜은 응용(Application) 자체의 페이로드(Payload)에 호스트 정보가 포함되어 이를 통해 종단 호스트 즉 발신측 단말(100)과 착신측 단말(500) 간에 미디어 세션 협상이 이루어진다. 이때, 호스트 정보는 보다 구체적으로는, 종단 호스트 간에 음성, 화상 등의 멀티미디어를 실제 서로 주고 받기 위한 미디어 수신 정보 즉 미디어 수신을 위한 착, 발신측 단말(100, 200)의 주소 정보를 의미한다.In addition, the interworking providing system uses a protocol in which a signaling process for call setup and a media session process for data transmission and reception are separated, and negotiation information of the media session process is recorded in a packet payload. In this protocol, host information is included in a payload of an application itself, and thus media session negotiation is performed between an end host, that is, a calling terminal 100 and a called terminal 500. In this case, the host information means more specifically, media reception information for actually exchanging multimedia such as voice and video between end hosts, that is, address information of the destination terminal 100 and 200 for media reception.

발신측 단말(100) 및 착신측 단말(500)은 IP 네트워크(1)의 통신 선로 상에서 종단 호스트이다. 이때, 단말(발신측)(100)은 로컬 IP 네트워크(10)내에 위치하고 사설 IP 주소를 할당받는다. 그리고, 단말(착신측)(500)은 글로벌 IP 네트워크(20)에 위치하여 공인 IP 주소를 할당받은 단말이거나 또는 다른 로컬 IP 네트워크에 위치하여 해당하는 사설 IP 주소를 할당받은 단말일 수 있다.The calling terminal 100 and the called terminal 500 are terminating hosts on the communication line of the IP network 1. At this time, the terminal (calling side) 100 is located in the local IP network 10 and is assigned a private IP address. The terminal 500 may be a terminal that is located in the global IP network 20 and is assigned a public IP address or a terminal that is allocated to a corresponding private IP address in another local IP network.

제2 서버(200)는 발신측 단말(100)이 전송한 패킷의 페이로드에서 사설 IP 주소 형태의 미디어 수신 정보를 공인 IP 주소 형태의 미디어 수신 정보로 변경시켜 해당 단말(착신측)(500)로 전송한다. 즉 응용 계층의 게이트웨이(Application Level Gateway, ALG) 기능을 수행한다. The second server 200 changes the media reception information in the form of a private IP address into the media reception information in the form of a public IP address in the payload of the packet transmitted from the originating terminal 100 to the corresponding terminal (called party) 500. To send. In other words, it performs the application level gateway (ALG) function.

이때, 공인 IP 주소는 제1 서버(400)로 공인 IP의 바인딩 정보를 요청하여 바인딩 응답을 수신함으로써 획득한다. 따라서 제2 서버(200)는 공인 IP 주소의 바인딩을 위한 클라이언트 역할을 수행한다.At this time, the public IP address is obtained by requesting binding information of the public IP to the first server 400 and receiving a binding response. Therefore, the second server 200 serves as a client for binding the public IP address.

여기서, 공인 IP 주소의 바인딩 요청은 IP 마스커레이딩(Masquerading) 기법을 이용한다. IP 마스커레이딩(Masquerading)은 리눅스(Linux)의 네트워킹 기능으로 리눅스 박스에 연결된 내부의 컴퓨터들은 가상 IP 주소를 각각 할당받아 실제 IP 주소 하나로 인터넷 연결이 가능한 기능이다.Here, the binding request of the public IP address uses the IP Masquerading technique. IP Masquerading is a networking feature of Linux that allows computers connected to a Linux box to be assigned a virtual IP address so that they can connect to the Internet with a single IP address.

따라서, IP 마스커레이딩을 이용하면, 바인딩 요청은 그 헤더 정보가 발신측 단말(100)로부터 수신한 패킷의 페이로드에서 추출한 사설 IP 주소 형태의 미디어 수신 정보로 치환되어 제2 서버(300)로 전송된다. 그러면 제2 서버(300)로부터 헤더 정보에 대한 공인 IP 주소의 바인딩 정보가 수신된다. Therefore, when using IP masquerading, the binding request is transmitted to the second server 300 in which the header information is replaced with media reception information in the form of a private IP address extracted from the payload of the packet received from the originating terminal 100. . Then, the binding information of the public IP address with respect to the header information is received from the second server 300.

이때, 수신한 공인 IP 주소의 바인딩 정보는 미디어 수신 정보로 치환된 헤더 정보에 대한 것이므로 이로써 패킷 페이로드에 포함된 사설 IP 주소 형태의 미디어 수신 정보에 대한 공인 IP 주소 형태의 미디어 수신 정보를 획득한다. 따라서, 제2 서버(200)는 IP 마스커레이딩 기능을 수행한다.In this case, since the binding information of the received public IP address is for the header information substituted with the media reception information, thereby obtaining media reception information in the form of public IP address for the media reception information in the form of private IP address included in the packet payload. . Accordingly, the second server 200 performs an IP masquerading function.

네트워크 주소 변환 수단(300)은 NAT(Network Address Translation)를 지칭하는 것으로서, 로컬 네트워크(10)와 글로벌 네트워크(20)의 경계에 위치하여 패킷의 헤더에 포함된 사설 IP 주소 형태의 소스 주소 정보를 공인 IP 주소 형태의 소스 주소 정보로 변환한다. 또한, 공인 IP 주소 형태의 소스 주소 정보를 사설 IP 형태의 소스 주소 정보로 변환한다. 이러한 소스 IP 주소 정보는 IP 어드레스 및 포트를 포함한다. 이때, 주소 변환은 OSI(Open System Interconnection) 모델을 기준으로 할 때, 계층 3 및 4에 해당하는 네트워크 계층과 트랜스포트 계층에 대해 가능하다. The network address translation means 300 refers to a network address translation (NAT), which is located at the boundary between the local network 10 and the global network 20 to obtain source address information in the form of a private IP address included in the header of the packet. Convert to source address information in the form of a public IP address. In addition, source address information in the form of public IP address is converted into source address information in the form of private IP. This source IP address information includes an IP address and a port. In this case, address translation is possible for the network layer and the transport layer corresponding to layers 3 and 4 based on the Open System Interconnection (OSI) model.

제1 서버(400)는 글로벌 네트워크(20)에 접속되고 네트워크 주소 변환 수단(300)에 의한 공인 IP 주소의 바인딩 정보를 제공한다. 즉 제1 서버의 공인 IP 주소의 바인딩을 위한 클라이언트와 대응하는 서버 기능을 수행한다. 따라서 제2 서버(200)로부터 바인딩 요청이 수신되면 네트워크 주소 변환 수단(300)을 거치면서 공인 IP 주소로 변환된 패킷의 헤더 정보를 추출한다. 그리고 이를 바인딩 응답에 실어 제2 서버(200)로 전송한다. 이때, 제1 서버(400)는 바인딩 요청의 응답 수신지 주소를 확인하여 확인한 주소로 바인딩 응답을 전송하는데, 바인딩 응답 주소는 바인딩 요청시 제2 서버(200)가 자신의 IP 주소로 설정해놓은 것이다.The first server 400 is connected to the global network 20 and provides binding information of the public IP address by the network address translation means 300. That is, the server performs a server function corresponding to the client for binding the public IP address of the first server. Therefore, when the binding request is received from the second server 200, the header information of the packet converted to the public IP address is extracted while passing through the network address conversion means 300. In addition, this is transmitted to the second server 200 in a binding response. At this time, the first server 400 transmits the binding response to the address confirmed by confirming the response destination address of the binding request. The binding response address is set by the second server 200 as its own IP address at the time of the binding request. .

도 2는 도 1의 연동 제공 시스템에서 제2 서버의 세부적인 기능별 블록 구성도를 보인 도면이다. FIG. 2 is a block diagram illustrating detailed functional blocks of the second server in the interlock providing system of FIG. 1.

즉 도 2에 따르면, 제2 서버(200)는 제1 모듈(210), 제2 모듈(220), 제3 모듈(230), 제4 모듈(240) 및 제5 모듈(250)을 포함한다.That is, according to FIG. 2, the second server 200 includes a first module 210, a second module 220, a third module 230, a fourth module 240, and a fifth module 250. .

제1 모듈(210)은 IP 마스커레이딩을 수행한다. 보다 세부적으로, 헤더 정보 설정부(220), 헤더 체크섬 계산부(230)를 포함할 수 있다. The first module 210 performs IP masquerading. In more detail, the header information setting unit 220 and the header checksum calculator 230 may be included.

헤더 정보 설정부(220)는 즉 발신측 단말(100)로부터 수신된 패킷의 페이로드에서 추출한 미디어 수신 정보를 제1 서버(400)로 전송할 바인딩 요청을 위한 패킷의 헤더 정보로 설정한다. 이러한 헤더 정보 설정에 관하여 도 3 및 도 4를 참조하여 설명하면 다음과 같다.The header information setting unit 220 sets the media reception information extracted from the payload of the packet received from the originating terminal 100 as header information of the packet for the binding request to be transmitted to the first server 400. This header information setting will be described with reference to FIGS. 3 and 4 as follows.

먼저 도 3을 참조하여 보면, 이는 IP 헤더를 나타낸 도면으로서 파라미터 "Source IP Address"(P100)가 발신측 단말(100)의 미디어 수신 정보로 치환된다.First, referring to FIG. 3, this is an illustration of an IP header, in which a parameter "Source IP Address" (P100) is replaced with media reception information of the calling terminal 100.

다음 도 4를 참조하여 보면, 이는 UDP 헤더로서 파라미터 "Source port"(P200)가 발신측 단말(100)의 미디어 수신 정보로 치환된다. Referring next to Figure 4, this is a UDP header parameter "Source port" (P200) is replaced with the media reception information of the source terminal 100.

여기서, 미디어 수신 정보는 도 1에서 이미 언급한 대로, 착, 발신측 단 말(100, 200)이 미디어 수신을 위한 IP 주소로서, 사설 IP 주소로 할당되어 있다.Here, the media reception information, as already mentioned in FIG. 1, is assigned to the destination IP terminal 100, 200 as a private IP address as an IP address for media reception.

헤더 체크섬 계산부(230)는 헤더 정보 설정부(220)에 의해 치환된 IP 주소 값을 반영하여 IP 헤더의 파라미터 "Header Checksum"(P120)를 재계산한다. 또한, UDP 헤더의 파라미터 "Checksum"(P220)를 재계산할 수 있다. 그러나 UDP 계층에서는 별도의 파라미터 "Checksum"(P220)의 재계산을 수행하지 않으므로 이는 반드시 필요한 것은 아니다.The header checksum calculator 230 recalculates the parameter "Header Checksum" P120 of the IP header by reflecting the IP address value substituted by the header information setting unit 220. In addition, the parameter "Checksum" P220 of the UDP header can be recalculated. However, this is not necessary because the UDP layer does not recalculate a separate parameter "Checksum" (P220).

제2 모듈(220)은 공인 IP 주소의 바인딩 정보를 제공하는 제1 서버(400)에 대응하는 클라이언트 기능을 수행한다. 즉 제1 모듈(210)에 의해 헤더 정보가 치환된 바인딩 요청을 위한 패킷을 제1 서버로(400)로 전송한다. 이때, 바인딩 요청의 응답 주소를 제2 서버(200)의 IP 주소로 설정하여 전송한다.The second module 220 performs a client function corresponding to the first server 400 providing binding information of the public IP address. That is, the packet for the binding request in which the header information is substituted by the first module 210 is transmitted to the first server 400. At this time, the response address of the binding request is set as the IP address of the second server 200 and transmitted.

그리고 제1 서버(400)로부터 바인딩 응답을 수신하면 이로부터 헤더 정보의 공인 IP 바인딩 정보를 추출한다.When receiving the binding response from the first server 400, the public IP binding information of the header information is extracted therefrom.

제3 모듈(230)은 패킷의 페이로드에 포함된 사설 IP 주소 형태의 미디어 수신 정보를 공인 IP 주소 형태의 미디어 수신 정보로 변경하는 응용 계층 게이트웨이 기능을 수행한다. 즉 사설 IP 주소 형태의 미디어 수신 정보를 제2 모듈(220)이 추출한 헤더 정보의 공인 IP 바인딩 정보로 변경한다. 여기서, 헤더 정보는 제1 모듈(210)에 의해 사설 IP 주소 형태의 미디어 수신 정보가 치환된 정보이므로, 이의 공인 IP 바인딩 정보는 공인 IP 주소 형태의 미디어 수신 정보와 동일하다.The third module 230 performs an application layer gateway function of changing media reception information in the form of a private IP address included in the payload of the packet into media reception information in the form of a public IP address. That is, the media reception information in the form of a private IP address is changed to public IP binding information of the header information extracted by the second module 220. Here, since the header information is information obtained by replacing the media reception information in the form of a private IP address by the first module 210, its public IP binding information is the same as the media reception information in the form of a public IP address.

또한, 제2 서버(200)는 도 2에 보인 바와 같이, 제4 모듈(240)을 포함할 수 있다. 여기서, 제4 모듈(240)은 호 중계 기능을 수행한다. 즉 발신측 단말(100)로 부터 호 연결 요청을 수신하여 이를 착신측 단말(500)로 전달하고 착신측 단말(500)로부터 호 연결 응답을 수신하여 이를 발신측 단말(100)로 전달하는 프락시 기능을 수행한다. 이때, 착신측 단말(500)로 전달하는 호 연결 요청은 제3 모듈(230)로부터 제공받은, 페이로드의 미디어 수신 주소 정보가 공인 IP 주소 형태로 변환된 패킷이다.In addition, as shown in FIG. 2, the second server 200 may include a fourth module 240. Here, the fourth module 240 performs a call relay function. In other words, the proxy function receives the call connection request from the calling terminal 100 and delivers it to the called terminal 500 and receives the call connection response from the called terminal 500 and delivers it to the calling terminal 100. Do this. In this case, the call connection request transmitted to the called terminal 500 is a packet in which the media reception address information of the payload provided from the third module 230 is converted into a public IP address.

또한, 제2 서버는(200)는 도 2에 보인 바와 같이, 제5 모듈(250)을 포함할 수 있다. 제5 모듈(250)은 제1 모듈(210) 및 제4 모듈(240)과 연동한다. 수신된 패킷 헤더의 목적지를 확인하여 발신측 단말(100)과 착신측 단말(500)의 네트워크가 동일한지 여부를 판단하여 IP 마스커레이딩의 수행 여부를 결정한다. 이때, IP 마스커레이딩의 수행을 결정하면 이를 제1 모듈(240)에 알린다. In addition, the second server 200 may include a fifth module 250, as shown in FIG. 2. The fifth module 250 interworks with the first module 210 and the fourth module 240. By determining the destination of the received packet header, it is determined whether the network of the calling terminal 100 and the called terminal 500 is the same to determine whether to perform IP masquerading. At this time, if it determines to perform the IP masquerading to inform the first module 240.

따라서, 이러한 제2 서버(200)의 구성에 따르면, 제2 모듈(220)이 공인 IP 바인딩의 클라이언트 기능을 수행하고, 제5 모듈(250)을 포함하여 이를 통해 공인 IP 바인딩의 수행 여부를 결정할 수 있다. 이로 인해, 통신 세션의 협상이 완료되기 전에 네트워크 주소 변환이 필요없는 동일한 네트워크 상에서서는 공인 IP 바인딩을 수행하지 않도록 한다.Therefore, according to the configuration of the second server 200, the second module 220 performs the client function of the public IP binding, including the fifth module 250 to determine whether to perform public IP binding through this Can be. For this reason, do not perform public IP binding on the same network that does not require network address translation before the negotiation of the communication session is completed.

도 5는 도 1의 연동 제공 시스템에서 제1 서버의 세부적인 기능별 블록 구성도를 보인 도면이다. FIG. 5 is a block diagram illustrating detailed functional blocks of the first server in the interlock providing system of FIG. 1.

즉 도 5에 따르면, 제1 서버(400)는 공인 IP 바인딩의 서버 기능을 수행한다. 보다 세부적으로, 제1 모듈(410) 및 제2 모듈(420)을 포함할 수 있다.That is, according to Figure 5, the first server 400 performs the server function of the public IP binding. More specifically, the first module 410 and the second module 420 may be included.

제1 모듈(410)은 제2 서버(200) 특히 제2 모듈(220)과 연동하여 공인 IP 바 인딩의 처리를 수행하기 위한 설정 정보를 저장한다.The first module 410 stores the setting information for performing the process of the public IP binding in conjunction with the second server 200, in particular, the second module 220.

제2 모듈(420)은 제1 모듈(410)의 설정 정보에 따라 제2 모듈(220)로부터 수신한 공인 IP 바인딩 요청의 헤더 정보에서 네트워크 주소 변환 수단(300)에 의해 변환된 공인 IP 주소 정보를 추출한다. 또한, 공인 IP 바인딩의 응답 주소 정보에서 설정된 응답 주소를 추출한다. 그리고 추출한 공인 IP 주소 정보를 공인 IP 바인딩 응답에 실어 추출한 응답 주소로 전송한다. The second module 420 is the public IP address information converted by the network address conversion means 300 in the header information of the public IP binding request received from the second module 220 according to the setting information of the first module 410. Extract In addition, the response address set from the response address information of the public IP binding is extracted. The extracted public IP address information is loaded into the public IP binding response and transmitted to the extracted response address.

도 6은 본 발명의 제1 실시예에 따른 서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 방법을 보인 도면이다. 6 is a diagram illustrating a method for providing interworking between IP networks using different IP addresses according to the first embodiment of the present invention.

즉 도 6에 따르면, 사설 IP 주소를 할당받은 발신측 단말(100)이 제2 서버(200)로 호 연결 요청을 전송한다(S101).That is, according to FIG. 6, the calling terminal 100 assigned the private IP address transmits a call connection request to the second server 200 (S101).

그런데, 단계(S109) 이전에 단계(S103, S105, S107)를 더 포함할 수 있다.By the way, it may further comprise the step (S103, S105, S107) before the step (S109).

즉 제2 서버(200)는 상기 단계(S101)에서 수신한 호 연결 요청에서 발신측 단말(100)과 착신측 단말(500)이 위치한 네트워크가 동일한 네트워크인지 여부를 판단한다(S103). 이때 판단은, 호 연결 요청의 목적지(IP 헤더의 파라미터 "Destination IP Address"에 해당)에 명시된 IP 주소와 소스(IP 헤더의 파라미터 "Source IP Address"에 해당)에 명시된 IP 주소를 비교하여 판단할 수 있다. That is, the second server 200 determines whether the network where the calling terminal 100 and the called terminal 500 are located in the call connection request received in step S101 is the same network (S103). The determination is made by comparing the IP address specified in the destination of the call connection request (corresponding to the parameter "Destination IP Address" in the IP header) with the IP address specified in the source (corresponding to the parameter "Source IP Address" in the IP header). Can be.

먼저, 상기 단계(S103)에서 판단 결과, 발신측 단말(100)과 착신측 단말(500)이 IP 주소 변환이 필요없는 동일한 네트워크에 존재하는 경우 네트워크 주소 변환 수단(300)을 통과할 필요가 없으므로, 발신측 단말(100)의 호 연결 요청을 착신측 단말(500)로 전달한다(S107).First, as a result of the determination in step S103, when the calling terminal 100 and the called terminal 500 exist in the same network that does not require IP address translation, there is no need to pass through the network address translation means 300. In operation S107, the call connection request from the calling party terminal 100 is transmitted to the called party terminal 500.

다음, 상기 단계(S103)에서 판단 결과, 발신측 단말(100)과 착신측 단말(500)이 서로 다른 네트워크에 존재하는 경우 IP 주소 변환이 필요하므로, IP 마스커레이딩의 수행을 결정한다. Next, if the originating terminal 100 and the called terminal 500 are present in different networks as a result of the determination in step S103, IP address translation is required, so that IP masquerading is determined.

그러면, 제2 서버(200)는 IP 마스커레이딩을 수행한다(S109). 즉 상기 단계(S101)에서 수신한 호 연결 요청을 위한 패킷의 페이로드에서 미디어 수신 정보를 추출한다. 그리고 이를 제1 서버(400)로 전송할 공인 IP 바인딩 요청을 위한 패킷의 헤더 정보로 치환시킨다. Then, the second server 200 performs IP masquerading (S109). That is, the media reception information is extracted from the payload of the packet for the call connection request received in step S101. And it is replaced with the header information of the packet for the public IP binding request to be transmitted to the first server (400).

그러면, 제2 서버(200)는 IP 마스커레이딩된 공인 IP 바인딩 요청을 제1 서버(400)로 전송한다(S111). 이때, 공인 IP 바인딩 요청은 제2 서버(200)의 IP 주소로 설정된 응답 주소 정보를 포함한다.Then, the second server 200 transmits the IP masqueraded public IP binding request to the first server 400 (S111). In this case, the public IP binding request includes response address information set as the IP address of the second server 200.

그러면, 제1 서버(400)는 공인 IP 바인딩 동작을 수행한다(S113). 즉 네트워크 주소 변환 수단(300)을 통과하여 수신된 공인 IP 바인딩 요청에서 공인 IP 주소로 변환된 헤더 정보를 추출한다. 그리고 추출한 헤더 정보를 공인 IP 바인딩 응답에 포함시킨다.Then, the first server 400 performs a public IP binding operation (S113). That is, the header information converted to the public IP address is extracted from the public IP binding request received through the network address conversion unit 300. The extracted header information is included in the public IP binding response.

그러면, 제1 서버(400)는 공인 IP 바인딩 요청의 응답 주소 정보에 포함된 제2 서버(200)의 IP 주소를 이용하여 공인 IP 바인딩 응답을 제2 서버(200)로 전송한다(S115).Then, the first server 400 transmits the public IP binding response to the second server 200 by using the IP address of the second server 200 included in the response address information of the public IP binding request (S115).

그러면, 제2 서버(200)는 공인 IP 바인딩 응답을 수신하여 응용 계층 게이트웨이 기능을 수행한다(S117). 즉 상기 단계(S101)에서 수신한 호 연결 요청의 페이로드의 미디어 수신 정보를 공인 IP 바인딩 응답에서 추출한 공인 IP 바인딩된 헤 더 정보로 변경한다.Then, the second server 200 receives the public IP binding response to perform the application layer gateway function (S117). That is, the media reception information of the payload of the call connection request received in step S101 is changed to the public IP-bound header information extracted from the public IP binding response.

그러면, 제2 서버(200)는 공인 IP 주소 형태의 미디어 수신 정보로 패킷 페이로드가 변경된 호 연결 요청을 네트워크 주소 변환 수단(300)을 통과하여 착신측 단말(500)로 전송한다(S119).Then, the second server 200 transmits the call connection request in which the packet payload is changed to the media reception information in the form of a public IP address through the network address translation means 300 to the called terminal 500 (S119).

그러면, 착신측 단말(500)로부터 호 연결 응답을 수신한다(S121).Then, the call connection response is received from the called terminal 500 (S121).

그러면, 발신측 단말(100)과 착신측 단말(500) 간에 호 연결이 이루어진다. Then, a call connection is made between the calling terminal 100 and the called terminal 500.

이로써, 네트워크 주소 변환 수단(300)이 호 연결 요청의 헤더 정보만 공인 IP 주소로 변환하더라도 미디어 수신 정보가 상기 단계(S109, S111, S113, S115,S117)를 통해 이미 공인 IP 주소 형태로 변환되어 있으므로, 미디어 세션 협상이 원활히 이루어질 수 있다. Thus, even if the network address conversion means 300 converts only the header information of the call connection request into the public IP address, the media reception information is already converted into the public IP address through the steps S109, S111, S113, S115, and S117. Therefore, media session negotiation can be performed smoothly.

이상 기술한 내용에 기초하여, 본 발명의 제2 실시예에 따른 서로 다른 IP 주소를 사용하는 IP 네트워크 간 연동 제공 시스템 및 연동 제공 방법에 관하여 이하 도 7 내지 도 8을 참조하여 설명하기로 한다. Based on the above description, the interworking providing system and interworking providing method between IP networks using different IP addresses according to the second embodiment of the present invention will be described with reference to FIGS. 7 to 8.

즉 도 7은 본 발명의 제2 실시예에 따른 연동 제공 시스템을 이동통신망에 구현한 것을 보인 도면이고, 도 8은 본 발명의 제2 실시예에 따른 연동 제공 방법을 보인 도면이다. 이때, 프로토콜은 SIP(Session Initiation Protocol) 프로토콜을 사용한다.That is, FIG. 7 is a diagram illustrating an implementation of an interworking providing system according to a second embodiment of the present invention in a mobile communication network, and FIG. 8 is a diagram illustrating a interworking providing method according to a second embodiment of the present invention. At this time, the protocol uses a Session Initiation Protocol (SIP) protocol.

먼저, 도 7을 참조하면 SIP 사용자 에이전트(User Agent)A(600)는 이동통신 망(30)에 위치하여 무선 접속 네트워크(Radio Access Network, RAN)에 접속되어 있다. 여기서, 무선 접속 네트워크는 기지국(700) 및 PDSN/GGSN(800)을 포함하여 SIP 사용자 에이전트 A(600)와 무선망을 통해 연결된 네트워크를 의미한다. First, referring to FIG. 7, a SIP User Agent A 600 is located in a mobile communication network 30 and is connected to a Radio Access Network (RAN). Here, the radio access network refers to a network connected to the SIP user agent A 600 through a wireless network, including the base station 700 and the PDSN / GGSN 800.

기지국(700)은 서비스 셀 내의 SIP 사용자 에이전트 A(600)로부터 수신된 아날로그 신호를 디지털 신호로 변환하여, 유선으로 연결된 PDSN/GGSN(800)으로 전달한다. 그리고 PDSN/GGSN(800)으로부터 수신되는 디지털 신호를 아날로그 신호로 변환하여 SIP 사용자 에이전트 A(600)로 전달한다.The base station 700 converts an analog signal received from the SIP user agent A 600 in the serving cell into a digital signal and delivers the digital signal to the PDSN / GGSN 800 connected by wire. The digital signal received from the PDSN / GGSN 800 is converted into an analog signal and transmitted to the SIP user agent A 600.

PDSN/GGSN(800)은 IP 주소 할당/관리/라우팅을 수행한다. 즉 기지국(700)으로부터 수신된 디지털 신호를 IP 패킷으로 변환하여 인터넷 망(40)으로 보낸다. 또한 인터넷망(40)으로부터 수신되는 IP 패킷을 디지털 신호로 변환하여 기지국(700)으로 보낸다. 따라서, 이러한 무선 접속 네트워크를 통해 SIP 사용자 에이전트 A(600)는 IP 패킷 형태의 SIP 메시지를 SIP 사용자 에이전트 B(1200)와 교환할 수 있다.PDSN / GGSN 800 performs IP address allocation / management / routing. That is, the digital signal received from the base station 700 is converted into an IP packet and sent to the Internet network 40. In addition, the IP packet received from the Internet network 40 is converted into a digital signal and sent to the base station 700. Accordingly, the SIP user agent A 600 may exchange the SIP packet in the form of an IP packet with the SIP user agent B 1200 through the radio access network.

게이트웨이 장치(900)는 SIP-ALG(Application Level Gateway) 기능, IP 마스커레이딩 기능, 스턴 클라이언트(STUN Client) 기능 및 SIP-Proxy 기능을 수행한다.The gateway device 900 performs an SIP-ALG (Application Level Gateway) function, an IP masquerading function, a STUN client function, and a SIP-Proxy function.

SIP-ALG(Application Level Gateway) 기능은 SIP 메시지의 Source IP 주소 및 Source Port를 인터넷망으로부터 착신 가능한 IP 형태로 할당 및 변환시키는 ALG 기능을 수행한다. 보다 구체적으로 INVITE 메시지의 Content(SDP 부)내 "m(media)/c(connection) line"내 주소/포트 정보를 인터넷망과 연동이 가능한 IP 형태로 변환한다. The SIP-ALG (Application Level Gateway) function performs an ALG function that allocates and converts a source IP address and a source port of a SIP message into an IP form that can be received from the Internet. More specifically, address / port information in “m (media) / c (connection) line” in the Content (SDP section) of the INVITE message is converted into an IP type that can be interworked with the Internet network.

이때, 변환은 IP 마스커레이딩 기능을 통하여 패킷에 SIP 사용자 에이전트 A(600)의 IP 주소 및 포트를 설정함으로써 이루어진다. At this time, the conversion is performed by setting the IP address and port of the SIP user agent A 600 in the packet through the IP masquerading function.

스턴 클라이언트(STUN Client) 기능은 SIP 사용자 에이전트 A(600)가 인터넷망(40)으로부터 미디어 착신이 가능하도록 공인 IP 주소(IP 주소 및 포트)를 획득하기 위해 이를 스턴 서버(STUN Server)(1000)로 요청하여 수신한다. 이를 스턴 바인딩 동작이라 한다.The STUN Client function allows the STUN Server 1000 to obtain a public IP address (IP address and port) for the SIP User Agent A 600 to receive media from the Internet 40. Receive by request. This is called stun binding.

SIP-Proxy 기능은 SIP 사용자 에이전트 A, B(600, 1200)간에 Proxy Server 의 역할을 수행한다.SIP-Proxy functions as a proxy server between SIP user agents A and B (600, 1200).

이와 같이 구성된 게이트웨이 장치(900)는 SIP 메시지를 이용하여 인터넷망(40)과 연동시 NAT-Traversal 문제를 해결한다. 또한, 스턴 클라이언트가 SIP 사용자 에이전트 A(600)가 아닌 노드 상에 별도의 장치로 존재하므로 단말의 부담을 최소화한다. 게다가 INVITE 메시지의 수신 후 스턴 바인딩 동작을 수행할 수 있어, SIP 사용자 에이전트 B(1200)가 이동통신망(30)에 있는 경우 스턴 바인딩 동작없이 바로 세션 연결이 가능하다. 이는 단말에 스턴 클라이언트가 구비되어 착신측 SIP 사용자 에이전트가 위치한 망에 관계없이 스턴 바인딩 동작을 수행함에 따른 호 처리의 불합리성과 무선 채널의 낭비를 막을 수 있게 한다.The gateway device 900 configured as described above solves the NAT-Traversal problem when interworking with the Internet network 40 using the SIP message. In addition, since the stun client exists as a separate device on the node other than the SIP user agent A 600, the burden on the terminal is minimized. In addition, it is possible to perform the stun binding operation after receiving the INVITE message, so that if the SIP user agent B 1200 is in the mobile communication network 30, the session can be directly connected without the stun binding operation. This can prevent the irrationality of call processing and the waste of the radio channel due to the stun binding operation regardless of the network where the called SIP user agent is provided because the stun client is provided in the terminal.

NAT(Network Address Translation)(1000)는 이동통신망(30)과 인터넷망(40)의 연동시 착신이 가능하도록 패킷의 Source IP 주소 및 Source Port를 공인 IP 형태로 할당하고 변환한다.The network address translation (NAT) 1000 allocates and converts a source IP address and a source port of a packet in the form of a public IP so that an incoming call is possible when the mobile communication network 30 and the Internet network 40 interwork.

스턴(STUN, Simple Traversal UDP through NAT) 서버(1100)는 NAT(1000) 외부에 위치한다. 그리고 이동통신망(30)에 위치한 SIP-사용자 에이전트(600)가 인터 넷망(40)과 연동시 NAT(1000)가 할당하는 공인 IP 주소 및 포트를 스턴 클라이언트 즉 게이트웨이 장치(900)에게 통보해준다. The STUN (Simple Traversal UDP through NAT) server 1100 is located outside the NAT 1000. The SIP-user agent 600 located in the mobile communication network 30 notifies the stern client, that is, the gateway device 900, of the public IP address and port assigned by the NAT 1000 when interworking with the internet network 40.

이상 기술한 게이트웨이 장치(900), NAT(1000) 및 스턴 서버(1100)는 도 1 내지 도 4에서 제2 서버(200), 네트워크 주소 변환 수단(300) 및 제1 서버(400)와 각각 대응하는 실시예의 구성이다. The gateway device 900, the NAT 1000, and the stun server 1100 described above correspond to the second server 200, the network address translation means 300, and the first server 400 in FIGS. 1 to 4, respectively. The configuration of the embodiment described.

다음, 도 8을 참조하면, 도 7의 네트워크 상에서 SIP 사용자 에이전트 A, B(600, 1200)간에 세션 협상을 위한 콜 플로우를 보인 도면이다.Next, referring to FIG. 8, a call flow for session negotiation between SIP user agents A and B 600 and 1200 is illustrated in the network of FIG. 7.

즉 도 8에 보인 바와 같이, "INVITE" ,"100 Trying", "183 Session Progress", "PRRACK", "200 OK", "ACK" 등의 SIP 메시지를 이용하여 세션 협상이 이루어진다. That is, as shown in FIG. 8, session negotiation is performed using SIP messages such as "INVITE", "100 Trying", "183 Session Progress", "PRRACK", "200 OK", and "ACK".

그런데, 이때 SIP 사용자 에이전트 A(600)로부터 "INVITE" 메시지를 수신한(S201) 게이트웨이 장치(900)는 IP 마스커레이딩을 수행한다(S203). 즉 "STUN Binding-Request" 메시지에 대한 헤더 정보를 "INVITE" 메시지의 바디(Body)에 포함된 "SDP(Session Description Protocol)" 메시지의 m(media)/c(connection) line에 명시된 IP 주소 및 Port 값으로 치환한다. 이때, 게이트웨이 장치(900)의 IP 주소로 설정한 "Response-Address"를 "STUN Binding-Request" 메시지에 삽입한다.However, at this time, the gateway device 900 receiving the "INVITE" message from the SIP user agent A 600 (S201) performs IP masquerading (S203). That is, the header information for the "STUN Binding-Request" message is assigned to the IP address specified in the m (media) / c (connection) line of the "Session Description Protocol" message contained in the body of the "INVITE" message. Replace with a Port value. At this time, the "Response-Address" set as the IP address of the gateway device 900 is inserted into the "STUN Binding-Request" message.

그러면, 게이트웨이 장치(900)는 상기 단계(S203)를 거친 "STUN Binding-Request" 메시지를 스턴 서버(1100)로 전송한다(S205).Then, the gateway device 900 transmits the " STUN Binding-Request " message, which has passed through the step S203, to the stun server 1100 (S205).

그러면, 스턴 서버(1100)는 "STUN Binding-Request" 메시지의 헤더 정보에서 NAT(1000)을 통과하여 변환된 IP 헤더내 "Source-IP-Address"와 UDP 헤더내 "Source-Port"를 추출한다. 그리고 이를 "STUN Binding-Response" 메시지의 "Mapped-Address" 속성에 명시한다(S207). 그리고 게이트웨이 장치(900)가 전송한 "STUN Binding-Request" 메시지의 "Response-Address" 속성에 명시된 주소로 "STUN Binding-Response"를 전송한다(S209).Then, the stun server 1100 extracts "Source-IP-Address" in the converted IP header and "Source-Port" in the UDP header from the header information of the "STUN Binding-Request" message. . This is specified in the "Mapped-Address" attribute of the "STUN Binding-Response" message (S207). Then, the gateway device 900 transmits the "STUN Binding-Response" to the address specified in the "Response-Address" attribute of the "STUN Binding-Request" message (S209).

그러면, 게이트웨이 장치(900)는 스턴 서버(1100)로부터 "STUN Binding-Response" 메시지의 "Mapped-Address" 속성값을 추출하여 "INVITE"내 미디어 수신용 주소(m/c line)내 IP 주소 및 포트를 상기 추출한 속성값으로 변경시키는 ALG 동작을 수행한다(S211).Then, the gateway device 900 extracts the "Mapped-Address" attribute value of the "STUN Binding-Response" message from the stun server 1100, and the IP address in the media reception address (m / c line) in "INVITE" and An ALG operation of changing a port to the extracted attribute value is performed (S211).

그러면, 게이트웨이 장치(900)가 상기 단계(S209)를 거친 "INVITE" 메시지를 사용자 에이전트 B(1200)로 전송한다(S213).Then, the gateway device 900 transmits the message " INVITE " which has passed through the step S209 to the user agent B 1200 (S213).

이상 기술한 바에 따르면, 호 연결을 위한 시그널링시 "INVITE" 메시지를 착신측 SIP 사용자 에이전트 B(1200)에게 전송하기 전에, "INVITE" 메시지의 "SDP" 메시지에 포함된 미디어 수신 정보를 IP 마스커레이딩과 스턴 바인딩 동작에 따라 인터넷망(40)에서 착신 가능한 형태의 IP 주소로 설정한다.According to the above description, before transmitting the "INVITE" message to the destination SIP user agent B 1200 when signaling for call connection, the media reception information included in the "SDP" message of the "INVITE" message is not associated with IP masquerading. According to the stun binding operation, the Internet network 40 sets an incoming IP address.

따라서, 호 셋업을 위한 시그널링 단계와 실제 데이터 송수신 과정인 미디어 스트림 단계로 구분된 프로토콜의 경우, NAT에 의해 변환되지 못하는 세션 계층에 수록되는 미디어 수신 정보를 미디어 스트림 단계 이전 즉 시그널링 단계의 초기에 공인 IP 주소로 설정해놓음으로써 NAT-Traversal의 문제를 해소할 수 있다.Therefore, in case of a protocol divided into a signaling step for call setup and a media stream step, which is an actual data transmission / reception process, media reception information contained in a session layer that cannot be converted by NAT is authorized before the media stream step, that is, at the beginning of the signaling step. By setting the IP address, NAT-Traversal can be solved.

이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다. The embodiments of the present invention described above are not implemented only through the apparatus and the method, but may be implemented through a program for realizing a function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded. Implementation may be easily implemented by those skilled in the art from the description of the above-described embodiments.

그리고 본 발명의 권리범위는 상술한 실시예에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.The scope of the present invention is not limited to the above-described embodiments, but various modifications and improvements of those skilled in the art using the basic concept of the present invention as defined in the following claims are also within the scope of the present invention.

전술한 구성에 의하여, 종래의 STUN 프로토콜 자체에 대한 변경을 크게 요하지 않고 기존의 NAT를 이용하여 호 설정과 실제 데이터 송수신이 분리된 프로토콜에 대한 NAT-Traversal의 문제를 해소한다.By the above-described configuration, the problem of NAT-Traversal for a protocol in which call setup and actual data transmission and reception are separated using an existing NAT without greatly requiring a change to the conventional STUN protocol itself is solved.

또한, STUN 프로토콜이 서버-클라이언트를 기반으로 하나 단말이 수행하던 스턴 클라이언트(STUN-Client) 역할을 네트워크 노드 상에서 구현하므로, 단말의 부담을 최소화할 뿐만 아니라 기존 단말에 대한 어떠한 변경 또는 추가 사항이 불필요하다.In addition, since the STUN protocol is based on the server-client, but implements the STUN-Client role performed by the terminal on the network node, it minimizes the burden on the terminal and does not require any changes or additions to the existing terminal. Do.

Claims (15)

사설 IP를 사용하는 로컬 네트워크와 공인 IP를 사용하는 글로벌 네트워크 간에 NAT(Network Address Translation)를 이용한 연동 제공 시스템에 있어서,In a system for providing interworking using a network address translation (NAT) between a local network using private IP and a global network using public IP, 상기 NAT 외부에 위치하고 상기 NAT를 통과한 사설 IP에 대한 공인 IP 바인딩 정보를 제공하는 제1 서버; 및A first server located outside the NAT and providing public IP binding information for the private IP passing through the NAT; And 상기 로컬 네트워크에 위치하며, 상기 사설 IP 주소를 할당받은 단말로부터 수신한 호 연결 요청의 패킷 페이로드에서 미디어 수신을 위한 호스트 정보를 추출하고, 추출된 호스트 정보에 대해 상기 제1 서버에 의해 공인 IP로 바인딩된 호스트 정보를 획득하여 상기 호 연결 요청의 패킷 페이로드에 적용하여 착신 단말로 전송하는 제2 서버Host information for media reception is extracted from a packet payload of a call connection request received from a terminal assigned to the private IP address and located in the local network. A second server that acquires host information bound with a packet and applies it to the packet payload of the call connection request and transmits it to the called terminal 를 포함하는 연동 제공 시스템.Interworking providing system comprising a. 제1항에 있어서,The method of claim 1, 상기 제2 서버는,The second server, 상기 호 연결 요청 패킷의 페이로드에서 상기 호스트 정보를 추출하고, 상기 공인 IP 바인딩 요청을 위한 헤더 정보를 상기 추출한 사설 IP 형태의 호스트 정보로 치환하는 IP 마스커레이딩 동작을 수행하는 제1 모듈;A first module for extracting the host information from the payload of the call connection request packet and replacing the header information for the public IP binding request with the extracted private IP type host information; 상기 제1 모듈에 의해 변경된 헤더 정보와 상기 제2 서버의 IP 주소로 설정된 응답 주소를 포함하는 공인 IP 바인딩 요청을 상기 제1 서버로 전송하고 그에 대한 공인 IP 바인딩 응답을 수신하여 상기 제1 서버에 대한 공인 IP 바인딩의 클라이언트 동작을 수행하는 제2 모듈; 및The public IP binding request including the header information changed by the first module and the response address set to the IP address of the second server is transmitted to the first server, and the public IP binding response is received to the first server. A second module for performing a client operation of a public IP binding for the public; And 상기 공인 IP 바인딩 응답에서 공인 IP로 변환된 호스트 정보를 획득하여 상기 패킷 페이로드의 호스트 정보를 변경시키는 제3 모듈A third module for acquiring host information converted from the public IP binding response to public IP and changing host information of the packet payload 을 포함하는 연동 제공 시스템.Interworking providing system comprising a. 제2항에 있어서,The method of claim 2, 제1 모듈은,The first module, 상기 호스트 정보의 IP 주소를 상기 헤더 정보의 소스 IP 어드레스로 설정하고 상기 호스트 정보의 포트를 상기 헤더 정보의 소스 포트로 설정하는 헤더 정보 설정부; 및A header information setting unit which sets an IP address of the host information as a source IP address of the header information and sets a port of the host information as a source port of the header information; And 상기 헤더 정보 설정부에 의해 설정된 값을 반영하여 상기 헤더 정보의 체크섬(Checksum)을 재계산하는 헤더 체크섬 계산부A header checksum calculator for recalculating a checksum of the header information by reflecting a value set by the header information setting unit 를 포함하는 연동 제공 시스템.Interworking providing system comprising a. 제2항에 있어서,The method of claim 2, 상기 제2 서버는,The second server, 상기 호 연결 요청 패킷의 프락시 기능을 수행하는 제4 모듈A fourth module for performing a proxy function of the call connection request packet 을 더 포함하는 연동 제공 시스템.Linkage providing system further comprising. 제2항 내지 제4항 중 어느 한 항에 있어서,The method according to any one of claims 2 to 4, 상기 제2 서버는,The second server, 상기 호 연결 요청 패킷의 헤더에 명시된 목적지의 네트워크가 소스 네트워크와 동일한 지 여부에 따라 상기 제1 모듈의 IP 마스커레이딩 동작 여부를 판단하는 제4 모듈A fourth module for determining whether IP masquerading operation of the first module is performed according to whether a destination network specified in a header of the call connection request packet is identical to a source network; 을 더 포함하는 연동 제공 시스템.Linkage providing system further comprising. 제2항 내지 제4항 중 어느 한 항에 있어서,The method according to any one of claims 2 to 4, 상기 제1 서버는, The first server, 상기 제2 서버와 연동하여 공인 IP 바인딩 동작을 위한 설정 정보를 저장하는 제1 모듈; 및A first module configured to store setting information for a public IP binding operation in association with the second server; And 상기 설정 정보에 따라 수신된 상기 공인 IP 바인딩 요청에서 응답 주소를 확인하고 이를 이용하여 상기 헤더 정보의 공인 IP 바인딩 정보를 공인 IP 바인딩 응답에 실어 상기 제2 서버로 전송하는 제2 모듈A second module for checking a response address in the received public IP binding request received according to the configuration information and using the same, putting public IP binding information of the header information in a public IP binding response to the second server; 을 포함하는 연동 제공 시스템.Interworking providing system comprising a. 제 1항에 있어서,The method of claim 1, 상기 로컬 네트워크와 상기 글로벌 네트워크는,The local network and the global network, SIP(Session Initiation Protocol) 기반의 통신 프로토콜에 의해 연동하는 것을 특징으로 하는 연동 제공 시스템.Interworking providing system, characterized in that the interworking by the SIP (Session Initiation Protocol) based communication protocol. 공인 IP의 바인딩 정보를 제공하는 서버를 포함하고 공인 IP를 사용하는 글로벌 네트워크와 사설 IP를 사용하는 로컬 네트워크간에 NAT를 이용하여 연동을 제공하는 게이트웨이 장치에 있어서,A gateway device including a server providing binding information of a public IP and providing interworking using a NAT between a global network using a public IP and a local network using a private IP, 상기 로컬 네트워크의 노드를 구성하고,Configure a node of the local network, 호 연결 요청 패킷의 페이로드에서 미디어 수신을 위한 호스트 정보를 추출하고, 상기 공인 IP의 바인딩 정보를 요청하기 위한 헤더 정보를 상기 추출한 사설 IP 형태의 호스트 정보로 치환하는 IP 마스커레이딩 동작을 수행하는 IP 마스커레이딩 모듈;IP masquerading, which extracts host information for media reception from a payload of a call connection request packet, and replaces header information for requesting binding information of the public IP with host information of the extracted private IP type. module; 상기 서버로 상기 IP 마스커레이딩 모듈에 의해 변경된 헤더 정보와 상기 제2 서버의 IP 주소로 설정된 응답 주소를 포함하는 상기 공인 IP 바인딩을 요청하여 공인 IP 바인딩 응답을 수신하는 공인 IP 바인딩 클라이언트 모듈; 및A public IP binding client module for requesting the public IP binding including the header information changed by the IP masquerading module and a response address set to the IP address of the second server to receive a public IP binding response; And 상기 공인 IP 바인딩 응답에서 공인 IP로 변환된 호스트 정보를 획득하여 상기 패킷 페이로드의 호스트 정보를 변경시키는 응용 계층 게이트웨이 모듈An application layer gateway module for acquiring host information converted from the public IP binding response to the public IP and changing the host information of the packet payload 을 포함하는 게이트웨이 장치.Gateway device comprising a. 공인 IP 바인딩을 위한 클라이언트 기능을 수행하는 게이트웨이 장치를 포함하고 사설 IP를 사용하는 로컬 네트워크와 공인 IP를 사용하는 글로벌 네트워크의 경계에 위치하는 NAT의 외부에 연결되는 서버에 있어서,A server that includes a gateway device that performs client functions for public IP binding and is connected to the outside of NAT located at the boundary between a local network using private IP and a global network using public IP, 상기 게이트웨이 장치와 연동하여 공인 IP 바인딩 동작을 수행하기 위한 설 정 정보를 저장하는 제1 모듈; 및A first module that stores setting information for performing a public IP binding operation in association with the gateway device; And 상기 설정 정보에 따라 상기 게이트웨이 장치로부터 수신된 공인 IP 바인딩 요청에서 상기 NAT를 통과하여 상기 공인 IP 주소로 변환된 헤더 정보를 추출하고, 응답 주소를 확인하여 상기 응답 주소를 이용하여 상기 추출한 정보가 실린 공인 IP 바인딩 응답을 상기 게이트웨이 장치로 전송하는 제2 모듈In the public IP binding request received from the gateway device according to the configuration information, the header information extracted through the NAT and converted into the public IP address is extracted, and the response address is checked to display the extracted information using the response address. A second module for transmitting a public IP binding response to the gateway device 을 포함하는 서버.Server containing. 사설 IP를 사용하는 로컬 네트워크와 공인 IP를 사용하는 글로벌 네트워크 간에 NAT(Network Address Translation)를 이용한 연동 제공 방법에 있어서,In a method of providing interworking using a network address translation (NAT) between a local network using a private IP and a global network using a public IP, (a) 상기 로컬 네트워크가 상기 로컬 네트워크 내 단말로부터 수신한 호 연결 요청의 패킷 페이로드에서 사설 IP로 설정된 미디어 수신을 위한 호스트 정보를 추출하는 단계;(a) extracting, by the local network, host information for receiving a media set to a private IP from a packet payload of a call connection request received from a terminal in the local network; (b) 상기 추출한 호스트 정보로 헤더 정보를 치환하여 공인 IP의 바인딩 요(b) Substituting the header information with the extracted host information to bind the public IP 청을 하는 전송하는 단계;Transmitting a call; (c) 상기 NAT에 의해 공인 IP로 변환된 헤더 정보가 포함된 공인 IP의 바인딩 응답을 수신하는 단계; 및(c) receiving a binding response of a public IP including header information converted into a public IP by the NAT; And (d) 상기 공인 IP의 바인딩 응답에 포함된 상기 헤더 정보에서 상기 공인 IP(d) the public IP in the header information included in the binding response of the public IP 로 바인딩된 호스트 정보를 획득하여 이를 상기 호 연결 요청 패킷에 적용하여 해당 착신측 단말로 전송하는 단계 Acquiring the host information bound by the MAP, applying the same to the call connection request packet, and transmitting the same to the called terminal; 를 포함하는 연동 제공 방법.Linkage providing method comprising a. 제10항에 있어서,The method of claim 10, 상기 (a)단계는,In step (a), 상기 호 연결 요청의 패킷 헤더의 목적지(Destination)를 확인하여 상기 착신측 단말의 네트워크가 상기 발신측 단말의 네트워크와 동일한 지 여부를 확인하는 단계;Checking a destination of a packet header of the call connection request to determine whether a network of the called terminal is the same as a network of the calling terminal; 상기 확인 결과, 상기 착신측 단말의 네트워크가 상기 발신측 단말의 네트워As a result of the check, the network of the called terminal is connected to the network of the calling terminal. 크와 동일한 경우 상기 호 연결 요청의 패킷을 상기 착신측 단말로 전달하는 단계; 및Forwarding a packet of the call connection request to the called terminal when the same value; And 상기 확인 결과, 상기 착신측 단말의 네트워크가 상기 발신측 단말의 외부 네트워크인 경우 상기 호 연결 요청의 패킷 페이로드에서 상기 호스트 정보를 추출하는 단계Extracting the host information from the packet payload of the call connection request when the network of the called terminal is an external network of the calling terminal; 를 포함하는 연동 제공 방법.Linkage providing method comprising a. 제10항에 있어서,The method of claim 10, 상기 (b)단계는,In step (b), 상기 미디어 수신 정보에서 소스 IP 어드레스를 추출하여 상기 공인 IP 바인딩 요청의 IP 헤더 정보의 소스 IP 어드레스로 설정하는 단계;Extracting a source IP address from the media reception information and setting it as a source IP address of IP header information of the public IP binding request; 상기 미디어 수신 주소 정보에서 소스 포트(port)를 추출하여 상기 공인 IP바인딩 요청의 UDP(User Datagram Protocol) 헤더 정보의 소스 포트로 설정하는 단 계; 및 Extracting a source port from the media reception address information and setting the source port as a source port of UDP (User Datagram Protocol) header information of the public IP binding request; And 상기 설정한 IP 주소 값을 반영하여 상기 IP 헤더 정보의 체크섬(Checksum)을 재계산하는 단계Recalculating a checksum of the IP header information by reflecting the set IP address value 를 포함하는 연동 제공 방법.Linkage providing method comprising a. 제12항에 있어서, The method of claim 12, 상기 (b)단계는,In step (b), 상기 설정한 소스 포트 값을 반영하여 상기 UDP 헤더 정보의 체크섬을 재계산하는 단계Recalculating the checksum of the UDP header information by reflecting the set source port value 를 더 포함하는 연동 제공 방법.Linkage providing method further comprising. 제10항 내지 제13항 중 어느 한 항에 있어서,The method according to any one of claims 10 to 13, 호 설정을 위한 시그널링 과정과 데이터 송수신을 위한 미디어 세션 과정이 분리되고 패킷 페이로드에 상기 미디어 세션 과정의 협상 정보가 수록되는 프로토콜을 이용하는 것을 특징으로 하는 연동 제공 방법.And a protocol in which a signaling process for call setup and a media session process for data transmission and reception are separated and a negotiation information of the media session process is included in a packet payload. 사설 IP를 사용하는 로컬 네트워크와 공인 IP를 사용하는 글로벌 네트워크 간에 NAT(Network Address Translation)를 이용한 연동 제공 방법에 있어서,In a method of providing interworking using a network address translation (NAT) between a local network using a private IP and a global network using a public IP, 상기 로컬 네트워크가 SIP(Seesion Initiation Protocol) 시그널링 수행시, INVITE 메시지의 SDP 메시지에 포함된 상기 사설 IP로 설정된 미디어 수신 정보를 추출하는 단계;Extracting, by the local network, media reception information set to the private IP included in the SDP message of the INVITE message when performing SIP (Seesion Initiation Protocol) signaling; 상기 미디어 수신 정보의 사설 IP에 대한 공인 IP 바인딩 정보를 획득하기 위한 스턴(STUN, Simple Traversal under UDP through NAT) 바인딩 요청 메시지의 헤더를 상기 추출한 미디어 수신 정보로 치환하는 단계;Replacing a header of a STUN (Simple Traversal under UDP through NAT) binding request message for obtaining public IP binding information for the private IP of the media reception information with the extracted media reception information; 상기 스턴 바인딩 요청 메시지를 전송하여 NAT을 통과하여 공인 IP로 변환된 헤더 정보를 포함하는 스턴 바인딩 응답 메시지를 수신하는 단계; 및Transmitting the stun binding request message and receiving a stun binding response message including header information that is converted to a public IP through NAT; And 상기 공인 IP로 변환된 헤더 정보에서 상기 치환된 상기 미디어 수신 정보의 공인 IP 정보를 획득하여 상기 INVITE 메시지의 미디어 수신 정보를 상기 획득한 정보로 변경시키는 단계 Acquiring public IP information of the substituted media reception information from the header information converted into the public IP and changing the media reception information of the INVITE message to the obtained information; 를 포함하는 연동 제공 방법.Linkage providing method comprising a.
KR1020060036568A 2006-04-24 2006-04-24 System, gateway server and stun server for internetwork communication between networks using various internet protocol address, and method thereof KR100726185B1 (en)

Priority Applications (9)

Application Number Priority Date Filing Date Title
KR1020060036568A KR100726185B1 (en) 2006-04-24 2006-04-24 System, gateway server and stun server for internetwork communication between networks using various internet protocol address, and method thereof
JP2009507587A JP4660624B2 (en) 2006-04-24 2007-04-24 IP network interconnection system, interconnection method and SIP message routing method using different IP address systems
EP07746158.0A EP2016727B1 (en) 2006-04-24 2007-04-24 Interworking system between ip networks using different ip addressing scheme and interworking method thereof
EP20090151106 EP2056567A3 (en) 2006-04-24 2007-04-24 Interworking system between IP networks using different IP addressing scheme, application layer gateway (ALG), network address translator, and SIP message routing method thereof
PCT/KR2007/001996 WO2007123359A2 (en) 2006-04-24 2007-04-24 Interworking system between ip networks using different ip addressing scheme, application layer gateway (alg), stun server, network address translator, interworking method thereof, and sip message routing method thereof
US12/298,426 US8140707B2 (en) 2006-04-24 2007-04-24 Inter working system
JP2010257046A JP2011091826A (en) 2006-04-24 2010-11-17 Application layer gateway (alg) for ip networks using ip address formats different from each other, network address translator and sip message routing method thereof
US13/025,911 US8346962B2 (en) 2006-04-24 2011-02-11 Session initiation protocol message routing method between IP networks using different IP address format
US13/692,255 US9392029B2 (en) 2006-04-24 2012-12-03 Session initiation protocol message routing method between IP networks using different IP address format

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060036568A KR100726185B1 (en) 2006-04-24 2006-04-24 System, gateway server and stun server for internetwork communication between networks using various internet protocol address, and method thereof

Publications (1)

Publication Number Publication Date
KR100726185B1 true KR100726185B1 (en) 2007-06-11

Family

ID=38358731

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060036568A KR100726185B1 (en) 2006-04-24 2006-04-24 System, gateway server and stun server for internetwork communication between networks using various internet protocol address, and method thereof

Country Status (1)

Country Link
KR (1) KR100726185B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101006318B1 (en) 2008-10-10 2011-01-06 주식회사 케이티 Internet based call processing method and system
KR101125854B1 (en) 2011-10-17 2012-03-28 주식회사 파이오링크 Method, appratus, system and computer-readable recording medium for acquiring information on private ip address before nat
KR101282986B1 (en) 2011-03-22 2013-07-05 성균관대학교산학협력단 Stun proxy server and sip communication method using the same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990050416A (en) * 1997-12-17 1999-07-05 이계철 IP address translation method providing full access between non-Internet service network and Internet service network
US6717949B1 (en) 1998-08-31 2004-04-06 International Business Machines Corporation System and method for IP network address translation using selective masquerade
KR20040058641A (en) * 2002-12-27 2004-07-05 엘지전자 주식회사 SIP service method in network with NAT
US20060120293A1 (en) 2004-12-07 2006-06-08 Wing Daniel G Method and apparatus for discovering Internet addresses

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990050416A (en) * 1997-12-17 1999-07-05 이계철 IP address translation method providing full access between non-Internet service network and Internet service network
US6717949B1 (en) 1998-08-31 2004-04-06 International Business Machines Corporation System and method for IP network address translation using selective masquerade
KR20040058641A (en) * 2002-12-27 2004-07-05 엘지전자 주식회사 SIP service method in network with NAT
US20060120293A1 (en) 2004-12-07 2006-06-08 Wing Daniel G Method and apparatus for discovering Internet addresses

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101006318B1 (en) 2008-10-10 2011-01-06 주식회사 케이티 Internet based call processing method and system
KR101282986B1 (en) 2011-03-22 2013-07-05 성균관대학교산학협력단 Stun proxy server and sip communication method using the same
KR101125854B1 (en) 2011-10-17 2012-03-28 주식회사 파이오링크 Method, appratus, system and computer-readable recording medium for acquiring information on private ip address before nat

Similar Documents

Publication Publication Date Title
JP4660624B2 (en) IP network interconnection system, interconnection method and SIP message routing method using different IP address systems
US8484359B2 (en) Providing telephony services to terminals behind a firewall and/or a network address translator
US6987765B2 (en) Changing media sessions
US7068655B2 (en) Network address and/or port translation
AU2005201075B2 (en) Apparatus and method for voice processing of voice over internet protocol (VOIP)
US7257837B2 (en) Firewall penetration system and method for real time media communications
US8082324B2 (en) Method of establishing a tunnel between network terminal devices passing through firewall
EP2018756B1 (en) Address translation in a communication system
JP5988407B1 (en) Communication path control device, communication path control system, communication path control method, and communication path control program
JP7264960B2 (en) Method and system for enhancing communication between IPv6-only SIP clients and IPv4-only servers or clients
KR100726185B1 (en) System, gateway server and stun server for internetwork communication between networks using various internet protocol address, and method thereof
EP2509284B1 (en) Method and system for allocating local transport address, media gateway and media gateway controller
KR20070111024A (en) Method of routing for interworking between local network and global network based on session initiation protocol, alg device and nat device thereof

Legal Events

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

Payment date: 20130603

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140602

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150601

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160901

Year of fee payment: 10