KR20020036165A - Method for data communications on Internet using NAT and apparatus thereof - Google Patents

Method for data communications on Internet using NAT and apparatus thereof Download PDF

Info

Publication number
KR20020036165A
KR20020036165A KR1020000066207A KR20000066207A KR20020036165A KR 20020036165 A KR20020036165 A KR 20020036165A KR 1020000066207 A KR1020000066207 A KR 1020000066207A KR 20000066207 A KR20000066207 A KR 20000066207A KR 20020036165 A KR20020036165 A KR 20020036165A
Authority
KR
South Korea
Prior art keywords
address
port
user
public
server
Prior art date
Application number
KR1020000066207A
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 KR1020000066207A priority Critical patent/KR20020036165A/en
Publication of KR20020036165A publication Critical patent/KR20020036165A/en

Links

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
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses

Landscapes

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

Abstract

PURPOSE: A method for a data communication applying a network address conversion technique on the Internet and a device thereof are provided to prevent the generation of a case which can not receive data normally when multimedia data including a voice are transmitted/received on an Internet network including a router applying a network address conversion technique. CONSTITUTION: In a method for communicating a router connected with a plurality of users to a server connected through a communication network, a non-licensed IP address and port is allocated to a user computer which requests an Internet connection out of the user computers(101). The non-licensed IP address and port is converted into a licensed IP address and port(103). The non-licensed IP address and port and the licensed IP address and port corresponded thereto are stored(105). An identification packet including the non-licensed IP address and port and a user ID and the licensed IP address and port are transmitted to the server(107). Data being transmitted by the server recognizing the non-licensed IP address and port and the licensed IP address and port corresponded thereto are transmitted to the user computer in accordance with the identification packet and the licensed IP address and port(109).

Description

망주소변환기술이 적용된 인터넷상의 데이터 통신 방법 및 그 장치{Method for data communications on Internet using NAT and apparatus thereof}Data communication method and apparatus therefor with network address translation technology applied to the internet {Method for data communications on Internet using NAT and apparatus}

본 발명은 망주소변환(Network Address Translation) 기술을 적용하는 라우터를 포함하는 인터넷 망에서 음성을 포함하는 멀티미디어 데이터를 송수신할 때 데이타를 제대로 수신할 수 없는 경우를 방지하기 위한 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and method for preventing a case in which data cannot be properly received when transmitting and receiving multimedia data including voice in an internet network including a router to which a network address translation technology is applied. will be.

현재의 IP(Internet Protocol)는 IPv4를 사용하고 있는데, 이 것은 IP주소의 길이가 32 비트인 체계를 가지고 있다. 그러나 현재 인터넷 사용자가 급증하고 있어 IP 어드레스가 부족한 현상이 발생하고 있다. 이 것을 해결하기 위한 방안으로 현재 사용되고 있는 IPv4를 개선하기 위한 진화적 세트로 제시되고 있다. 이 IPv6에서는 IP 어드레스를 128비트를 사용하여 절대적인 IP 어드레스를 늘리고 있는데, 이것은 전 세계의 네트워크의 백본 장비를 이 규격에 맞추어야 하므로 당장의 구현에 많은 어려움이 있다.The current Internet Protocol (IP) uses IPv4, which has a 32-bit system of IP addresses. However, with the rapid increase in Internet users, IP address shortages are occurring. As a solution to this problem, it is proposed as an evolutionary set to improve the current IPv4. In IPv6, the 128-bit IP address is used to increase the absolute IP address, which is difficult to implement right now because the backbone equipment of networks around the world must meet this standard.

그래서 현실적인 해결책으로 제시되고 있는 것이 망주소변환기법이다. 이 망주소변환기법은 외부 네트웍에 알려진 것과 다른 IP 주소를 사용하는 내부 네트웍에서, IP 주소를 변환하는 것이다. 즉 비공인 IP 어드레스(혹은 사설 어드레스)를 내부에서 사용하고 인터넷에 접속할 때는 공인 IP 어드레스로 바꾸어 전달하는 방법이다. 일반적으로 한 회사는 자신의 내부 네트웍 주소를 하나 또는 그 이상의 IP 주소로 사상한다. 그리고 들어오는 패킷들상의 공인 IP 어드레스를 다시 비공인 IP 어드레스로 변환한다. 이렇게 함으로써 나가거나 들어오는 각 요구들은 주소 변환 과정을 반드시 거쳐야 하기 때문에, 보안 문제를 확실하게 하는데 도움이 되며, 또한 요구를 제한하거나 인증하고, 또 이전의 요구와 일치시키는 기회를 제공한다. NAT는 또한 회사에서 필요한 공인 IP 주소의 수를 보존하며, 회사가 외부 네트웍과의 통신에서 단 하나의 공인 IP 주소를 사용할 수 있게도 한다. 이러한 NAT는 IP 주소 고갈 문제를 줄이기 위한 방법으로서 RFC 1631의 일반 협약에 설명되어 있다.Thus, the proposed solution is a network address translation technique. This network address translation technique translates an IP address on an internal network that uses a different IP address than what is known on the external network. In other words, a private IP address (or private address) is used internally and the public IP address is used when the Internet is accessed. Typically, a company maps its internal network address to one or more IP addresses. It then converts the public IP addresses on incoming packets back to private IP addresses. This helps to ensure security issues because each outgoing or incoming request must go through an address translation process, and also provides an opportunity to limit or authenticate the request, and to match the previous request. NAT also preserves the number of public IP addresses required by the company and allows the company to use only one public IP address for communication with external networks. This NAT is described in the general agreement of RFC 1631 as a way to reduce the problem of IP address exhaustion.

그런데 현재 일부 가정 사용자나 회사등에서 IP 주소의 수가 모자라서 이 방법을 채택하여 사용하는데, 이 경우 망주소변환기술을 사용하는 다이얼패드와 같은 VoIP 서비스 사용자가 외부에 전화를 할 때 외부로 데이터를(즉 자신의 목소리) 전달할 수는 있지만 내부사용자의 공인 IP 주소와 포트를 알 수 없어 외부 사용자의 데이터(즉 외부 사용자의 목소리)가 전달되지 않는 문제가 발생할 수 있다.However, some home users or companies do not have enough IP addresses to use this method.In this case, VoIP service users such as dial pads using network address translation technology use external data (when calling outside). In other words, it can transmit its own voice, but it may cause a problem that the external user's data (ie, the external user's voice) is not transmitted because the public IP address and port of the internal user are unknown.

본 발명이 이루고자 하는 기술적 과제는 망주소변환기술을 적용하는 라우터를 포함하는 인터넷 망에서 음성을 포함하는 멀티미디어 데이터를 송수신할 때 데이터를 제대로 수신할 수 없는 경우를 방지하기 위한 라우터의 데이터 통신방법을 제공하는 데 있다.SUMMARY OF THE INVENTION The present invention provides a data communication method of a router for preventing a case in which data cannot be properly received when transmitting and receiving multimedia data including voice in an internet network including a router to which a network address translation technology is applied. To provide.

본 발명이 이루고자 하는 다른 기술적 과제는 망주소변환기술을 적용되는 라우터와 VoIP 서버, 그리고 다른 통신망과의 접속을 가능케 해주는 게이트웨이로 구성된 인터넷망에서 사용자가 멀티미디어 데이터를 송수신할 때 상대방으로부터 오는 데이터를 수신할 수 없는 경우를 방지하기 위한 데이터의 통신 방법 및 시스템을 제공하는 데 있다.Another technical problem to be solved by the present invention is to receive data from a counterpart when a user transmits and receives multimedia data in an internet network including a router, a VoIP server, and a gateway for connecting to another communication network. The present invention provides a method and system for communicating data to prevent a case where it cannot be done.

도 1은 망주소변환기술이 적용되는 라우터의 통신방법의 흐름을 나타내는 흐름도이다.1 is a flowchart illustrating a flow of a communication method of a router to which a network address translation technology is applied.

도 2는 망주소변환기술이 적용된 라우터를 포함하는 인터넷상의 데이터 통신 시스템이다.2 is a data communication system on the Internet including a router to which a network address translation technology is applied.

도 3은 망주소변환기술이 적용된 라우터에 접속된 사용자가 다른 통신망에 연결된 사용자와 데이터를 주고 받는 흐름을 나타내는 흐름도이다.3 is a flowchart illustrating a flow in which a user connected to a router to which a network address translation technology is applied exchanges data with a user connected to another communication network.

도 4는 라우터와 서버에서 저장하는 사용자의 IP주소와 포트와 관련된 정보를 저장하는 데이터베이스의 일 예를 도시한 것이다.4 illustrates an example of a database storing information related to an IP address and a port of a user stored in a router and a server.

도 5는 사용자가 서버로 송신하는 식별패킷의 구성을 나타내는 도면이다.5 is a diagram illustrating a configuration of an identification packet that a user transmits to a server.

상기의 과제를 이루기 위하여 본 발명에 의한 라우터의 통신방법은 상기 사용자 컴퓨터중 인터넷 접속을 요구하는 사용자 컴퓨터에 비공인 IP 주소와 포트를 할당하는 단계; 상기 사용자의 비공인 IP 주소와 포트를 공인 IP 주소와 포트로 변환하는 단계; 상기 비공인 IP 주소와 포트 및 각각 대응되는 공인 IP 주소와 포트를 저장하는 단계; 상기 비공인 IP 주소와 포트 및 사용자 ID를 포함하는 식별패킷과 상기 공인 IP 주소와 포트를 서버에 송신하는 단계; 및 상기 식별패킷 및 공인 IP 주소와 포트에 따라 사용자의 비공인 IP 주소와 포트 그리고 각각 대응되는 공인 IP 주소와 포트를 인지한 서버에 의하여 송신되는 데이터를 상기 사용자 컴퓨터에 전달하는 단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, a communication method of a router according to the present invention comprises the steps of: allocating a private IP address and a port to a user computer requesting Internet access among the user computers; Converting the private IP address and port of the user into a public IP address and port; Storing the unauthorized IP address and port and corresponding public IP address and port, respectively; Transmitting an identification packet including the unauthorized IP address and port and a user ID, and the public IP address and port to a server; And transmitting to the user computer data transmitted by a server that recognizes an unauthorized IP address and port of the user and a corresponding public IP address and port, respectively, according to the identification packet and the public IP address and port. It features.

상기의 다른 과제를 해결하기 위하여 본 발명에 의한 인터넷상의 데이터 통신 방법은 상기 사용자의 요구에 따라 상기 사용자와 상기 통신망에 연결된 서버간에 호(call)가 설정되는 단계; 상기 사용자의 비공인 IP주소와 포트를 공인 IP주소와 포트로 매핑하여 제1매핑테이블을 형성하고 저장하는 단계; 상기 사용자가 상기 서버로 상기 비공인 IP 주소와 포트 및 사용자 ID를 포함하는 식별 패킷과 상기 공인 IP 주소와 포트를 송신하는 단계; 상기 서버가 상기 수신된 식별 패킷 및 상기 공인 IP 주소와 포트를 기초로 상기 사용자에 대한 정보를 제2매핑테이블로 구성하여 저장하는 단계; 및 상기 서버가 상기 사용자가 통신하고자 하는 다른 사용자로부터 오는 데이터를 제2매핑테이블을 기초로 송신하는 단계를 포함하는 것을 특징으로 한다.According to another aspect of the present invention, there is provided a data communication method on the Internet, in which a call is established between the user and a server connected to the communication network according to a user's request; Mapping a private IP address and a port of the user to a public IP address and a port to form and store a first mapping table; Transmitting, by the user, an identification packet including the private IP address and port and a user ID, and the public IP address and port to the server; The server configuring and storing information about the user as a second mapping table based on the received identification packet and the public IP address and port; And transmitting, by the server, data from another user to which the user wants to communicate based on a second mapping table.

상기의 다른 과제를 이루기 위하여 인터넷상의 데이터 통신 시스템은 상기 사용자 컴퓨터로부터 인터넷 접속 요구가 있을 때 상기 사용자 컴퓨터의 비공인 IP 주소와 포트를 공인 IP 주소와 포트를 할당하고 저장하는 라우터; 상기 라우터에 접속되어 접속 요구를 하고 인터넷을 통하여 접속된 서버에 자신의 ID, 비공인 IP 주소와 포트를 포함하는 식별 패킷을 송신하는 다수의 사용자 컴퓨터; 상기 사용자컴퓨터의 요구에 따라 호를 설정하고, 상기 식별 패킷을 수신하여 상기 사용자 컴퓨터의 ID, 비공인 IP 주소와 포트 및 대응되는 공인 IP 주소와 포트를 저장하는 서버; 상기 인터넷에 연결되고 공중전화망을 포함하는 다른 통신망에 접속되어 상기 사용자 컴퓨터와 상기 다른 통신망에 접속된 사용자와의 연결을 제공하는 게이트웨이를 포함하는 것을 특징으로 한다.In order to achieve the above object, a data communication system on the Internet includes: a router for allocating and storing a public IP address and port for an unauthorized IP address and port of the user computer when an Internet connection request is made from the user computer; A plurality of user computers connected to the router for making a connection request and sending an identification packet including its ID, private IP address and port to a server connected via the Internet; A server for setting up a call according to a request of the user computer, receiving the identification packet, and storing an ID of the user computer, an unauthorized IP address and a port, and a corresponding public IP address and port; And a gateway connected to the Internet and connected to another communication network including a public telephone network to provide a connection between the user computer and a user connected to the other communication network.

이하에서 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예에 대하여 자세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 도 1은 망주소변환기법이 적용되는 라우터의 통신방법의 흐름을 나타내는 흐름도이며, 도 4는 라우터와 서버에서 저장하는 사용자의 IP주소와 포트와 관련된 정보를 저장하는 데이터베이스의 일 예를 도시한 것이고, 도 5는 사용자가 서버로 송신하는 식별패킷의 구성을 나타내는 도면이다.1 is a flowchart illustrating a flow of a communication method of a router to which a network address translation technique is applied, and FIG. 4 is an example of a database storing information related to an IP address and a port of a user stored in a router and a server. 5 is a diagram illustrating a configuration of an identification packet that a user transmits to a server.

사용자 컴퓨터가 예를 들어 10.33.96.5인 비공인 IP 주소와 포트 30을 가지면서 인터넷 접속을 요구하면(101단계) 라우터는 이 비공인 IP 주소와 포트 30을 예를 들면 IP 주소를 198.76.29.7로 그리고 포트를 35로 변환하게 된다(103단계). 이런 방식으로 IP주소와 포트를 변환하면 위에서 설명한 것처럼 라우터에 많은 사용자 컴퓨터가 접속되고 한정된 공인 IP주소를 가진 경우에 항상 동일한 시간에 사용자가 접속하는 것이 아니기 때문에 효율적으로 자원을 활용할 수 있게 된다.If your computer requests an Internet connection while having a private IP address and port 30, for example 10.33.96.5 (step 101), the router will assign this private IP address and port 30 to, for example, 198.76.29.7. The port is then converted to 35 (step 103). Converting IP addresses and ports in this way allows the user to efficiently utilize resources as many user computers are connected to the router as described above and users do not always connect at the same time if they have limited public IP addresses.

한편 라우터는 접속요구시 발생한 IP주소 와 포트를 근거로 하여 맵핑테이블을 구축하게 된다. 이 맵핑테이블의 일 예가 도 4이다. 도 4를 보면 알 수 있듯이 이 맵핑테이블에는 라우터에 접속된 사용자 컴퓨터의 ID, 접속요구시 할당되는 비공인 IP 주소와 포트 그리고 변환후에 할당된 공인 IP 주소와 포트를 각각 대응하여 저장하고 있으며, 이를 기초로 하여 사용자 컴퓨터와 외부 접속 컴퓨터와의 데이터 송수신을 연결하게 된다.Meanwhile, the router builds a mapping table based on the IP address and port generated when a connection request is made. One example of this mapping table is FIG. As can be seen from Figure 4, this mapping table stores the ID of the user computer connected to the router, an unofficial IP address and port assigned at the time of connection request, and a public IP address and port assigned after conversion, respectively. On the basis of this, data transmission and reception between the user computer and the external access computer is connected.

그러나 VoIP서버와 같이 음성 혹은 영상데이터를 처리하는 경우에는 라우터에 접속된 사용자의 공인 IP 주소와 포트를 알 수 없게 되는 문제가 발생할 수 있으므로 이를 방지하기 위하여 상기 사용자에게 할당된 비공인 IP 주소와 비공인 포트,그리고 사용자 ID를 식별패킷으로 만들어 공인 IP 주소와 포트와 함께 VoIP서버로 송신한다(107단계).However, when processing voice or video data such as VoIP server, there may be a problem that the public IP address and port of the user connected to the router may not be known. Therefore, the private IP address and the private IP address assigned to the user are prevented. In-port and user ID are made into an identification packet and sent to the VoIP server along with the public IP address and port (step 107).

상기 식별패킷과 공인 IP 주소와 포트를 수신한 VoIP서버는 접속한 사용자의 정확한 주소및 포트를 알 수 있게 되므로 상기 사용자가 원하는 자료를 손실없이 보내줄 수 있다(109단계).The VoIP server receiving the identification packet, the public IP address, and the port can know the exact address and port of the connected user, so that the user can send the desired data without loss (step 109).

본 발명의 바람직한 다른 일 실시예를 도면을 참조하여 설명한다.Another preferred embodiment of the present invention will be described with reference to the drawings.

도 2는 망주소변환기술이 적용된 라우터를 포함하는 인터넷상의 데이터 통신 시스템이며, 도 3은 망주소변환기술이 적용된 라우터에 접속된 사용자가 다른 통신망에 연결된 사용자와 데이터를 주고 받는 흐름을 나타내는 흐름도이다.2 is a data communication system on the Internet including a router to which a network address translation technology is applied, and FIG. 3 is a flowchart illustrating a flow in which a user connected to a router to which a network address translation technology is applied exchanges data with a user connected to another communication network. .

도 4는 라우터와 서버에서 저장하는 사용자의 IP주소와 포트와 관련된 정보를 저장하는 데이터베이스의 일 예를 도시한 것이며, 도 5는 사용자가 서버로 송신하는 식별패킷의 구성을 나타내는 도면이다.4 illustrates an example of a database that stores information related to IP addresses and ports of a user stored in a router and a server, and FIG. 5 illustrates a configuration of an identification packet that a user transmits to a server.

먼저 망주소변환기술이 적용되는 라우터(203)에 다수의 사용자 컴퓨터(201)가 연결되어 있는 상태에서 어느 사용자 컴퓨터가 VoIP를 이용하여 음성통신을 수행하고자 하는 경우를 예를 들어 설명한다. VoIP는 IP를 사용하여 음성정보를 전달하는 일련의 설비들을 위한 IP전화기술을 지칭하는 용어이다. VoIP와 인터넷 전화기술의 주요 장점은 기존 IP 망을 그대로 활용해 전화서비스를 통합하여 구현함으로써 전화사용자들이 시내전화요금만으로 인터넷, 혹은 인트라넷 환경하에서 시외 및 국제전화 서비스를 받을 수 있게 되는 점이다. VoIP는 원래의 IP기능에 더하여, 패킷들이 적시에 도착하도록 지원하기 위하여 RTP(Real Time Transport Protocol)을 사용하므로 위에서 설명한 문제가 발생할 수 있으므로 아래에서 설명하는 단계들을 수행함으로써 해결이 가능하다.First, a case in which a user computer attempts to perform voice communication using VoIP while a plurality of user computers 201 are connected to a router 203 to which a network address translation technology is applied will be described. VoIP is a term that refers to IP telephony technology for a series of facilities that use IP to deliver voice information. The main advantage of VoIP and Internet telephony technology is that telephone users can receive long-distance and international calling services over the Internet or intranet environment by using local IP rates by integrating and implementing telephone service. In addition to the original IP function, VoIP uses the Real Time Transport Protocol (RTP) to support packets arriving in a timely manner, so the problem described above may occur, and thus, the steps described below may be solved.

먼저 사용자 컴퓨터는 공중전화망(PSTN)에 접속되어 있는 전화기(213)와 통화를 하기 위하여 망주소변환기술을 적용하는 라우터(203)를 통하여 VoIP서버(207)에게 TCP/IP 프로토콜을 이용하여 호접속을 위한 셋업메시지를 보내는데, 이 셋업메시지에는 사용자 ID와 RTP수신을 위한 IP주소와 포트정보등이 포함된다. 셋업메시지를 받은 VoIP서버는 현재 요구한 호가 VoIP서버에서 진행중이라는 메시지를 사용자 컴퓨터에게 보낸다. 이어서 현재 요구한 호가 통화를 하려고 하는 상대방에게 전달중이라는 내용의 메시지를 다시 사용자 컴퓨터에게 송신한다. 상기의 메시지가 전달된 후 사용자 컴퓨터가 요청한 호를 상대방이 수락했으면 상대방이 RTP수신을 하려고 하는 IP 주소와 포트정보등이 실린 연결메시지를 사용자 컴퓨터로 송신함으로써 호가 설정된다(301단계).First, a user computer connects a call to a VoIP server 207 using a TCP / IP protocol through a router 203 that applies network address translation technology to make a call with a telephone 213 connected to a public telephone network (PSTN). It sends a setup message for the user, which includes the user ID and IP address and port information for RTP reception. The VoIP server receiving the setup message sends a message to the user's computer that the call being requested is in progress on the VoIP server. Subsequently, a message is sent back to the user computer indicating that the currently requested call is being delivered to the other party. If the other party accepts the call requested by the user computer after the message is delivered, the call is established by transmitting a connection message including the IP address and port information to which the other party wants to receive RTP to the user computer (step 301).

한편 사용자 컴퓨터는 VoIP서버(207)로 301단계후에 도 5에 도시하고 있는 바와 같은 식별 패킷을 UDP(User Datagram Protocol)상으로 송신한다. 이 식별패킷은 사용자 ID, 비공인 IP주소, 포트번호등을 포함하는 정보를 담고 있다. 이 식별패킷의 구조의 한 예를 슈드코드(Pseud-code)로 표현하면 다음과 같다.On the other hand, the user computer transmits the identification packet as shown in FIG. 5 to the VoIP server 207 on the User Datagram Protocol (UDP) after step 301. This identification packet contains information including user ID, unauthorized IP address, and port number. An example of the structure of the identification packet is expressed as Pseud-code as follows.

typedef struct {typedef struct {

unsigned int userid;unsigned int userid;

u_long hostipaddr;u_long hostipaddr;

unsigned short port;unsigned short port;

} msgip;} msgip;

이 식별패킷내에 있는 포트 정보는 RTP로 수신받을 포트가 된다. 이 포트값은, 예를들면, RTP의 경우 짝수로 생성하고 RTCP(Real Time Control Protocol)의 경우에는 RTP의 포트값에 1을 더하여 생성한다. 그리고 라우터(203)에 연결되어 있는 내부 사용자 컴퓨터들이 동시에 호를 설정할 수 있으므로, 이러한 경우에 포트를 겹치지 않게 하기 위하여 포트값은 자신의 비공인 IP 주소의 4번째 값을 가지도록 독특하게 생성한다.The port information in this identification packet is the port to receive by RTP. For example, this port value is generated evenly in the case of RTP and 1 in the case of RTCP (Real Time Control Protocol). In addition, since internal user computers connected to the router 203 can establish a call at the same time, the port value is uniquely generated to have a fourth value of its private IP address so as not to overlap the ports in this case.

한편 라우터(203)는 위의 식별패킷의 송신이 이루어지면 그 패킷내의 사용자 ID와 비공인 IP주소 및 포트와 그에 대응되는 공인 IP 주소와 포트를 도 4와 같은 형태로 맵핑테이블을 구축한다(205). 또한 VoIP서버는 식별패킷을 수신하면 라우터(203)에서 구축하고 있는 맵핑테이블을 동일하게 저장하며 식별패킷을 통하여 얻어낸 사용자 컴퓨터의 비공인 IP주소와 포트를 게이트웨이(209)와의 H.323 호 설정(call setup)시 전달하여 호가 설정되게 된다. 이로써 VoIP서버는 게이트웨이(209)를 통하여 연결된 공중전화망(PSTN)(211)에 접속된 전화기(213)에서 송신하는 음성데이터의 최종 목적지인 사용자 컴퓨터의 공인 IP주소와 포트, 그리고 그에 대응되는 비공인 IP 주소와 포트를 정확히 알 수 있게 되므로 오류없이 전달할 수 있게 된다(209단계).On the other hand, when the above-mentioned identification packet is transmitted, the router 203 constructs a mapping table of a user ID and an unauthorized IP address and port in the packet, and a corresponding public IP address and port in the form as shown in FIG. 4 (205). ). In addition, when receiving the identification packet, the VoIP server stores the mapping table constructed in the router 203 in the same manner, and sets an H.323 call with the gateway 209 to set an unauthorized IP address and port of the user computer obtained through the identification packet. When call setup, call is established. Thus, the VoIP server is a public IP address and port of the user's computer, which is the final destination of voice data transmitted from the telephone 213 connected to the public telephone network (PSTN) 211 connected through the gateway 209, and the corresponding non-approved. Since the IP address and port are known exactly, it can be forwarded without error (step 209).

또 201단계와 203단계는 RTCP의 포트정보도 전달되어야 할 필요성 때문에 1번 더 반복한다. 그리고 식별패킷이 전달되는 프로토콜인 UDP는 TCP와는 달리 재전송요구를 하지 않으므로 네트웍상에서 손실될 수 있기 때문에 식별패킷을 3번 보낸다. 사용자 ID를 식별패킷에 포함시킨 이유는 다수의 사용자 컴퓨터(201)가 동시에 호를 설정하는 경우 VoIP서버에서 식별패킷을 구분하기 위함이다. 이 때 사용자 ID는 최초에 사용자 컴퓨터와 VoIP(207)서버간에 호 설정시 전달되는 사용자 ID를 그대로 사용한다.In addition, steps 201 and 203 are repeated one more time because the port information of the RTCP needs to be transmitted. In addition, unlike TCP, UDP, which is a protocol through which an identification packet is delivered, does not require retransmission and thus may be lost on the network. Therefore, the identification packet is sent three times. The reason for including the user ID in the identification packet is to distinguish the identification packet in the VoIP server when a plurality of user computers 201 simultaneously set up a call. At this time, the user ID initially uses the user ID transmitted when setting up a call between the user computer and the VoIP 207 server.

그런데 망주소변환을 라우터중에서 일부는 매핑테이블에 사용자 컴퓨터가 연결하고자 하는 상대방의 IP주소까지 포함하는 경우가 있다. 이러한 경우에는 사용자 컴퓨터가 VoIP와의 호 셋업을 마친 후에 게이트웨이(207)와도 식별패킷을 보내는 절차가 필요하게 된다(307단계). 이 식별패킷을 받은 게이트웨이(207)는 VoIP서버(207)에서 저장하고 있는 매핑테이블과 동일한 내용의 메핑테이블을 구축하게 된다.However, some of the network address translation routers include the IP address of the other party to which the user's computer wants to connect in the mapping table. In this case, after the user's computer completes the call setup with the VoIP, a procedure for sending an identification packet to the gateway 207 is required (step 307). The gateway 207 receiving this identification packet builds a mapping table having the same contents as the mapping table stored in the VoIP server 207.

상기의 설명은 사용자 컴퓨터가 음성데이터를 주고받는 경우를 예로 들어서 설명하였지만, 본 발명에 의한 인터넷상의 데이터 통신 방법은 망주소변환기법이 적용되는 라우터를 통하여 영상데이터와 같은 멀티미디어 데이터를 UDP상에서 통신하는 경우에도 동일하게 적용할 수 있다.In the above description, the user computer transmits and receives voice data as an example, but the data communication method on the Internet according to the present invention communicates multimedia data such as video data over UDP through a router to which a network address translation technique is applied. The same applies to the case.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 플래쉬 메모리, 광 데이타 저장장치등이 있으며, 또한 캐리어 웨이브(예를들면 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.The invention may also be embodied as computer readable code on a computer readable recording medium. Computer-readable recording media include any type of recording device that stores data that can be read by a computer system. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, and hard disk. Disks, floppy disks, flash memory, optical data storage, and the like, and those implemented in the form of carrier waves (eg, transmission over the Internet). The computer readable recording medium can also be distributed over computer systems connected over a computer network so that the computer readable code is stored and executed in a distributed fashion.

이상에서 설명한 바와 같이, 망주소변환기술이 적용되는 라우터를 통하여 음성이나 영상등과 같이 UDP를 이용하여 데이터를 주고 받는 경우에 상대방에서 송신하는 데이터가 제대로 전달되지 않을 수 있는 현상을 방지할 수 있으며, 다수의 사용자가 접속할 경우 한정된 공인 IP주소를 효율적으로 활용할 수 있다.As described above, it is possible to prevent the phenomenon that the data transmitted from the other party may not be properly transmitted when sending and receiving data using UDP such as voice or video through a router to which network address conversion technology is applied. For example, a limited number of public IP addresses can be used efficiently when multiple users connect.

Claims (7)

다수의 사용자 컴퓨터와 연결된 라우터가 통신망을 통하여 접속된 서버와 통신을 하는 방법에 있어서,In a method in which a router connected to a plurality of user computers communicates with a server connected through a communication network, (a) 상기 사용자 컴퓨터중 인터넷 접속을 요구하는 사용자 컴퓨터에 비공인 IP 주소와 포트를 할당하는 단계;(a) assigning a non-public IP address and port to the user's computer that requires access to the Internet; (b) 상기 사용자의 비공인 IP 주소와 포트를 공인 IP 주소와 포트로 변환하는 단계;(b) converting the user's private IP address and port into a public IP address and port; (c) 상기 비공인 IP 주소와 포트 및 각각 대응되는 공인 IP 주소와 포트를 저장하는 단계;(c) storing the unauthorized IP address and port and corresponding public IP address and port respectively; (d) 상기 비공인 IP 주소와 포트 및 사용자 ID를 포함하는 식별패킷과 상기 공인 IP 주소와 포트를 서버에 송신하는 단계; 및(d) transmitting an identification packet including the unauthorized IP address and port and a user ID, and the public IP address and port to a server; And (e) 상기 식별패킷 및 공인 IP 주소와 포트에 따라 사용자의 비공인 IP 주소와 포트 그리고 각각 대응되는 공인 IP 주소와 포트를 인지한 서버에 의하여 송신되는 데이터를 상기 사용자 컴퓨터에 전달하는 단계를 포함하는 것을 특징으로 하는 라우터의 데이터 통신 방법.(e) forwarding to the user computer data transmitted by a server recognizing a private IP address and port of the user and corresponding public IP address and port according to the identification packet and the public IP address and port, respectively. A data communication method of a router, characterized in that. 다수의 사용자 컴퓨터가 하나 이상의 공인 IP 주소와 포트를 이용하여 인터넷을 포함하는 통신망에 접속하여 통신하는 방법에 있어서,A method of communicating by a plurality of user computers accessing a communication network including the Internet by using one or more public IP addresses and ports, (a) 상기 사용자의 요구에 따라 상기 사용자와 상기 통신망에 연결된 서버간에 호(call)가 설정되는 단계;(a) establishing a call between the user and a server connected to the communication network at the request of the user; (b) 상기 사용자의 비공인 IP주소와 포트를 공인 IP주소와 포트로 매핑하여 제1매핑테이블을 형성하고 저장하는 단계;(b) mapping a private IP address and a port of the user to a public IP address and a port to form and store a first mapping table; (c) 상기 사용자가 상기 서버로 상기 비공인 IP 주소와 포트 및 사용자 ID를 포함하는 식별 패킷과 상기 공인 IP 주소와 포트를 송신하는 단계;(c) the user sending an identification packet including the private IP address and port and a user ID, and the public IP address and port to the server; (d) 상기 서버가 상기 수신된 식별 패킷 및 상기 공인 IP 주소와 포트를 기초로 상기 사용자에 대한 정보를 제2매핑테이블로 구성하여 저장하는 단계; 및(d) the server configuring and storing information about the user as a second mapping table based on the received identification packet and the public IP address and port; And (e) 상기 서버가 상기 사용자가 통신하고자 하는 다른 사용자로부터 오는 데이터를 제2매핑테이블을 기초로 송신하는 단계를 포함하는 것을 특징으로 하는 인터넷상의 데이터 통신 방법.and (e) the server transmitting data from another user to which the user wishes to communicate based on a second mapping table. 제2항에 있어서, 상기 (c)단계는 상기 식별 패킷을 상기 통신망에 연결되고 공중전화망을 포함한 다른 통신망에 연결되어 망간 연결을 제공하는 게이트웨이에 송신하는 단계를 더 포함하는 것을 특징으로 하는 인터넷상의 데이터 통신 방법.The method of claim 2, wherein the step (c) further comprises transmitting the identification packet to a gateway connected to the communication network and to another communication network including a public telephone network to provide an inter-network connection. Data communication method. 제3항에 있어서, 상기 게이트웨이는 상기 식별 패킷을 수신하여 식별패킷에 따라 사용자의 ID, 비공인 IP주소와 포트 그리고 대응되는 공인 IP 주소와 포트번호를 저장하여 상기 사용자에게 송신되는 데이터의 경로를 지정하는 것을 특징으로 하는 인터넷상의 통신 방법.The method of claim 3, wherein the gateway receives the identification packet and stores the user's ID, private IP address and port, and corresponding public IP address and port number according to the identification packet to route the data transmitted to the user. A communication method on the Internet, which is specified. 상기 사용자 컴퓨터로부터 인터넷 접속 요구가 있을 때 상기 사용자 컴퓨터의 비공인 IP 주소와 포트를 공인 IP 주소와 포트를 할당하고 저장하는 라우터;A router for allocating and storing a public IP address and a port for an unauthorized IP address and port of the user computer when a request for access to the Internet is made from the user computer; 상기 라우터에 접속되어 접속 요구를 하고 인터넷을 통하여 접속된 서버에 자신의 ID, 비공인 IP 주소와 포트를 포함하는 식별 패킷을 송신하는 다수의 사용자 컴퓨터;A plurality of user computers connected to the router for making a connection request and sending an identification packet including its ID, private IP address and port to a server connected via the Internet; 상기 사용자 컴퓨터의 요구에 따라 호를 설정하고, 상기 식별 패킷을 수신하여 상기 사용자 컴퓨터의 ID, 비공인 IP 주소와 포트 및 대응되는 공인 IP 주소와포트를 저장하는 서버;A server for setting up a call according to a request of the user computer, receiving the identification packet, and storing an ID, an unauthorized IP address and a port of the user computer, and a corresponding public IP address and port; 상기 인터넷에 연결되고 공중전화망을 포함하는 다른 통신망에 접속되어 상기 사용자 컴퓨터와 상기 다른 통신망에 접속된 사용자와의 연결을 제공하는 게이트웨이를 포함하는 것을 특징으로 하는 인터넷상의 데이터 통신 시스템.And a gateway connected to the Internet and connected to another communication network including a public telephone network to provide a connection between the user computer and a user connected to the other communication network. 제6항에 있어서, 상기 게이트웨이는 상기 식별패킷을 수신하여 상기 사용자 컴퓨터의 ID, 비공인 IP 주소와 포트 및 대응되는 공인 IP 주소와 포트를 저장하는 것을 더 포함하는 것을 특징으로 하는 인터넷상의 데이터 통신 시스템.7. The data communication of claim 6, wherein the gateway further comprises receiving the identification packet and storing an ID of the user computer, a non-official IP address and port, and a corresponding public IP address and port. system. 다수의 사용자 컴퓨터가 하나 이상의 공인 IP 주소와 포트를 이용하여 인터넷을 포함하는 통신망에 접속하여 통신하는 방법에 있어서,A method of communicating by a plurality of user computers accessing a communication network including the Internet by using one or more public IP addresses and ports, 상기 사용자의 요구에 따라 상기 사용자와 상기 통신망에 연결된 서버간에 호가 설정되는 단계;Setting up a call between the user and a server connected to the communication network according to the user's request; 상기 사용자의 비공인 IP주소와 포트를 공인 IP주소와 포트로 매핑하여 제1매핑테이블을 형성하고 저장하는 단계;Mapping a private IP address and a port of the user to a public IP address and a port to form and store a first mapping table; 상기 사용자가 상기 서버로 상기 비공인 IP 주소와 포트 및 사용자 ID를 포함하는 식별 패킷과 상기 공인 IP 주소와 포트를 송신하는 단계;Transmitting, by the user, an identification packet including the private IP address and port and a user ID, and the public IP address and port to the server; 상기 서버가 상기 수신된 식별 패킷 및 상기 공인 IP 주소와 포트를 기초로 상기 사용자에 대한 정보를 제2매핑테이블로 구성하여 저장하는 단계; 및The server configuring and storing information about the user as a second mapping table based on the received identification packet and the public IP address and port; And 상기 서버가 상기 사용자가 통신하고자 하는 다른 사용자로부터 오는 데이터를 제2매핑테이블을 기초로 송신하는 단계를 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for causing the server to transmit data from another user to which the user wishes to communicate based on a second mapping table.
KR1020000066207A 2000-11-08 2000-11-08 Method for data communications on Internet using NAT and apparatus thereof KR20020036165A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000066207A KR20020036165A (en) 2000-11-08 2000-11-08 Method for data communications on Internet using NAT and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000066207A KR20020036165A (en) 2000-11-08 2000-11-08 Method for data communications on Internet using NAT and apparatus thereof

Publications (1)

Publication Number Publication Date
KR20020036165A true KR20020036165A (en) 2002-05-16

Family

ID=19697916

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000066207A KR20020036165A (en) 2000-11-08 2000-11-08 Method for data communications on Internet using NAT and apparatus thereof

Country Status (1)

Country Link
KR (1) KR20020036165A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100350421B1 (en) * 2000-11-20 2002-08-28 삼성전자 주식회사 Network System and Controlling method thereof
KR20020073359A (en) * 2001-03-16 2002-09-26 어드밴텍테크놀로지스(주) Remote access router
KR20020074914A (en) * 2001-03-22 2002-10-04 주식회사 라오넷 Method for data flow separation on network and apparatus therefor
KR20020083887A (en) * 2001-04-26 2002-11-04 (주)엔써커뮤니티 Method for communicating audio and video data in multimedia communication system using h.323 protocol
KR20030048246A (en) * 2001-12-11 2003-06-19 (주)코스모브리지 Method for controlling a real-time voice communications based on the on-line network
KR20030093078A (en) * 2002-05-31 2003-12-06 주식회사 타오네트웍스 Network interface module, system and method for automatic internet connection
KR100438236B1 (en) * 2000-12-28 2004-07-02 엘지전자 주식회사 Method for Transmitting Voice Packet through Network Address Translation Server in VoIP Gateway
KR100457823B1 (en) * 2004-05-14 2004-11-18 넷코덱(주) Virtual IP Supporting Method for Apparatus Having Network Server Program
KR100532098B1 (en) * 2002-11-16 2005-11-29 삼성전자주식회사 Incoming and outgoing call system based on duplicate private network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990001579A (en) * 1997-06-16 1999-01-15 양승택 Hybrid Gateway Structure and Its Operation Method
KR20010110227A (en) * 2001-10-12 2001-12-12 신춘식 Portable Electromotion Lopping Clipper
KR20020004287A (en) * 2000-07-04 2002-01-16 서진원 IP Gatway
KR20020007573A (en) * 2000-07-18 2002-01-29 양기천 Home gateway
KR101442983B1 (en) * 2013-07-30 2014-11-03 주식회사 포스코 Device and method for controlling ventilation of sintering machine

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990001579A (en) * 1997-06-16 1999-01-15 양승택 Hybrid Gateway Structure and Its Operation Method
KR20020004287A (en) * 2000-07-04 2002-01-16 서진원 IP Gatway
KR20020007573A (en) * 2000-07-18 2002-01-29 양기천 Home gateway
KR20010110227A (en) * 2001-10-12 2001-12-12 신춘식 Portable Electromotion Lopping Clipper
KR101442983B1 (en) * 2013-07-30 2014-11-03 주식회사 포스코 Device and method for controlling ventilation of sintering machine

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100350421B1 (en) * 2000-11-20 2002-08-28 삼성전자 주식회사 Network System and Controlling method thereof
KR100438236B1 (en) * 2000-12-28 2004-07-02 엘지전자 주식회사 Method for Transmitting Voice Packet through Network Address Translation Server in VoIP Gateway
KR20020073359A (en) * 2001-03-16 2002-09-26 어드밴텍테크놀로지스(주) Remote access router
KR20020074914A (en) * 2001-03-22 2002-10-04 주식회사 라오넷 Method for data flow separation on network and apparatus therefor
KR20020083887A (en) * 2001-04-26 2002-11-04 (주)엔써커뮤니티 Method for communicating audio and video data in multimedia communication system using h.323 protocol
KR20030048246A (en) * 2001-12-11 2003-06-19 (주)코스모브리지 Method for controlling a real-time voice communications based on the on-line network
KR20030093078A (en) * 2002-05-31 2003-12-06 주식회사 타오네트웍스 Network interface module, system and method for automatic internet connection
KR100532098B1 (en) * 2002-11-16 2005-11-29 삼성전자주식회사 Incoming and outgoing call system based on duplicate private network
KR100457823B1 (en) * 2004-05-14 2004-11-18 넷코덱(주) Virtual IP Supporting Method for Apparatus Having Network Server Program

Similar Documents

Publication Publication Date Title
US10038779B2 (en) Intercepting voice over IP communications and other data communications
US7068655B2 (en) Network address and/or port translation
US8484359B2 (en) Providing telephony services to terminals behind a firewall and/or a network address translator
US7773580B2 (en) Apparatus and method for voice processing of voice over internet protocol (VoIP)
US7447804B2 (en) System and method for multi-telecommunication over local IP network
US8582749B2 (en) Method and apparatus for connecting packet telephony calls between secure and non-secure networks
US20030007497A1 (en) Changing media sessions
US20070217408A1 (en) Address Resolution Device, Address Resolution Method, And Communication System Including The Same
US7443842B2 (en) Communication control apparatus
US20060140174A1 (en) VoIP (voice over internet protocol) call processing
KR20020036165A (en) Method for data communications on Internet using NAT and apparatus thereof
KR100397091B1 (en) NETWORK ACCESS DEVICE FOR SUPPORTING VoIP AND METHOD THEREOF
KR100941296B1 (en) The method of peer-to-peer IP communication between clients in the private IP networks with Layer 4 port number control
GB2416459A (en) Communication between two different networks
KR20020083887A (en) Method for communicating audio and video data in multimedia communication system using h.323 protocol
KR20040105301A (en) Method and system for providing h.323 service
KR20090010878A (en) All-in-one voice of ip system including multi-function and method of processing signalling therefor
JP4696440B2 (en) Conversion of user installation terminal identifier in packet network
JP2004214948A (en) Packet communication method, packet communication equipment, packet communication program and packet communication program recording medium
KR200316901Y1 (en) IP router supporting VoIP service
KR20040083315A (en) IP router supporting VoIP service and calling method using thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application