KR20080050199A - Method for creating tunnel network interface and transmitting/receiving packet using tunnel network interface in server of ipv4 network - Google Patents
Method for creating tunnel network interface and transmitting/receiving packet using tunnel network interface in server of ipv4 network Download PDFInfo
- Publication number
- KR20080050199A KR20080050199A KR1020070035572A KR20070035572A KR20080050199A KR 20080050199 A KR20080050199 A KR 20080050199A KR 1020070035572 A KR1020070035572 A KR 1020070035572A KR 20070035572 A KR20070035572 A KR 20070035572A KR 20080050199 A KR20080050199 A KR 20080050199A
- Authority
- KR
- South Korea
- Prior art keywords
- ipv4
- network interface
- packet
- terminal
- ipv6
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2592—Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/251—Translation of Internet protocol [IP] addresses between different IP versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5084—Providing for device mobility
Abstract
Description
도 1은 IPv4 네트워크에서 IPv6-IPv4 터널링을 이용하여 단말의 이동성을 지원하는 네트워크 구조를 도시한 구성도, 1 is a block diagram illustrating a network structure supporting mobility of a terminal using IPv6-IPv4 tunneling in an IPv4 network;
도 2는 IPv4네트워크에서 서버의 다중 터널네트워크인터페이스의 구조를 도시한 구성도, 2 is a block diagram illustrating the structure of a multi-tunnel network interface of a server in an IPv4 network;
도 3은 본 발명의 실시예에 따른 IPv4네트워크에서 서버의 단일 터널인터페이스 구조를 도시한 구성도, 3 is a block diagram illustrating a single tunnel interface structure of a server in an IPv4 network according to an embodiment of the present invention;
도 4는 본 발명의 실시예에 따라 서버에서 단일 터널인터페이스 관리 및 패킷 송수신하기 위한 절차를 도시한 흐름도.4 is a flowchart illustrating a procedure for managing a single tunnel interface and transmitting and receiving a packet in a server according to an embodiment of the present invention.
본 발명은 IPv4 네트워크에서의 터널네트워크인터페이스 관리 방법에 관한 것으로서, 특히 IPv6-IPv4 터널링을 이용하여 단말의 이동성을 제공하는 서버에서 모든 단말을 위하여 하나의 대표 터널네트워크인터페이스를 관리하기 위한 방법에 관한 것이다. The present invention relates to a tunnel network interface management method in an IPv4 network, and more particularly, to a method for managing one representative tunnel network interface for all terminals in a server providing mobility of terminals using IPv6-IPv4 tunneling. .
현재의 인터넷은 인터네트워킹 기술로서 인터넷 프로토콜(IP : Internet Protocol) 버전 4(IPv4)를 기반으로 최선형 서비스만을 제공하고 있다. 하지만, 현재의 인터넷은 수요의 증가로 인하여 주소 공간의 부족과 다양한 멀티미디어 응용에 따른 서비스 품질의 개선이 필요하게 되었다. 이에 따라 최근에는 IPv4에서 IP 버전 6(IPv6)로의 진화가 이루어지고 있다. The current Internet is an internetworking technology that provides only the best services based on the Internet Protocol (IP) version 4 (IPv4). However, the current Internet needs to be improved due to lack of address space and service quality due to various multimedia applications. In recent years, the evolution from IPv4 to IP version 6 (IPv6) is taking place.
때문에 상기 IPv6로의 완전한 이전이 이루어지기 전까지는 인터넷에서 당분간 IPv4 네트워크와 IPv6 네트워크가 혼재될 수밖에 없다. 이런 상황에서 IPv6 응용프로그램을 이용하여 단말의 이동성을 지원하려고 하는 영역에서는 IPv6 over IPv4 터널링 방식을 이용하여 현재의 IPv4 네트워크를 통해서 패킷을 교환해야 한다. Therefore, the IPv4 network and the IPv6 network will be mixed for some time on the Internet until the complete migration to IPv6 is made. In this situation, in the area where the mobility of the terminal is to be supported by the IPv6 application program, the packet should be exchanged through the current IPv4 network using the IPv6 over IPv4 tunneling scheme.
이와 같이 IPv6 응용프로그램을 이용하여 현재의 IPv4 네트워크상에서 단말의 이동성 서비스를 지원하려고 하는 일반적인 네트워크는 첨부된 도 1에 도시된 바와 같다. 이러한 단말의 이동성을 지원하기 위한 IPv4 네트워크는 단말의 이동성을 관리해 주는 서버(20)와 이동하는 단말들(11, 12, 13, 14) 및 상대 노드(15)로 구성된다. 여기서 이동하는 단말들(11 내지 14)은 IPv4 라우터(31, 32)와 무선 링크로 연결되거나 주소 변환기(NAT : Network Address Translator)(40)를 통해 연결 되어서 사설 IPv4 주소를 사용한다. 그리고 상대 노드(15)는 무선 또는 유선링크에 연결될 수 있으며, 라우터(33)에 직접 또는 주소 변환기(NAT) 뒤에 연결되어 있을 수 있다.As described above, a general network which attempts to support mobility services of a terminal on an existing IPv4 network using an IPv6 application program is shown in FIG. 1. The IPv4 network for supporting the mobility of the terminal is composed of a
이와 같은 IPv4 네트워크상에서 상기 서버(20)는 각각의 단말들(11 내지 15)이 그 위치를 이동하더라도 계속적인 패킷 송/수신이 이루어질 수 있도록 하기 위해서 각 단말들(11 내지 15)에게 고유한 IPv6 주소를 할당한다. 이에 따라 상기 각 단말들(11 내지 15)은 서버의 IPv6 주소, IPv4 주소, UDP 포트 정보 등을 이용하여 상기 서버(20)와의 IPv6 over IPv4 터널을 구축한다. 이때 구축되는 터널은 단말이 NAT 장치 뒤에 위치에 있을 경우에는 IPv4_UDP 헤더에 의해서 터널링되며, 그렇지 않고 라우터에 직접 연결되어 있는 경우에는 IPv4 헤더에 의해서 터널링된다. 즉, NAT 장치 뒤에 있을 경우에 단말은 서버(20)나 상대 노드(15)와 통신하기 위해서 IPv6 패킷에 IPv4 헤더와 UDP 헤더를 앞에 매달아서 IPv4 패킷으로 만들어서 송/수신하고, 그렇지 않을 경우에는 IPv6 패킷에 IPv4 헤더만을 앞에 매달아서 IPv4 패킷으로 만들어서 패킷을 송/수신한다. In such an IPv4 network, the
상기 구축된 터널을 통해 패킷을 송/수신하기 위해서는 터널네트워크 인터페이스가 설정되어야 하는데, 이는 첨부된 도 2에 도시된 바와 같이 단말에 생성된 IPv6 over IPv4 터널과 동일하게 서버(20)에도 각각의 단말들(11 내지 15)을 위하여 터널네트워크인터페이스(27, 28)가 설정된다. In order to transmit / receive a packet through the established tunnel, a tunnel network interface should be set, which is identical to the IPv6 over IPv4 tunnel created in the terminal as shown in FIG.
따라서 상기 도 2를 참조하면, 서버(20)의 응용프로그램(21)은 통신하고자 하는 단말의 IPv6 주소를 목적지로 하여 IPv6 패킷을 전송하게 된다. 이렇게 전송 되는 패킷은 소켓 계층(22)과 TCP 또는 UDP 계층(23)을 통하여 IPv6 통신 스택(25)으로 전달된다. 상기 IPv6 통신 스택(25)에서는 전송 정보 베이스(FIB6 : Forwarding Information Base for IPv6)(53) 룩업을 통하여 상기 전달되는 패킷의 출력 인터페이스를 결정하게 된다. 이때 단말#1(11)로 향하는 패킷은 터널네트워크인터페이스#1(27)를 통해서 송신되며 단말#n(14)으로 향하는 패킷은 터널네트워크인터페이스#n(208)을 통하여 송신된다. 예를 들어 단말#1(11)로 향하는 IPv6 패킷은 터널네트워크인터페이스#1(27)로 도착해서 그 터널네트워크인터페이스#1(27)에 설정되어 있는 자신의 IPv4 주소(local IPv4 주소), 원격지의 IPv4 주소(remote IPv4 주소), 자신의 UDP 포트 번호(local UDP 포트 번호)와 원격지의 UDP 포트 번호(remote UDP 포트 번호)(51)를 이용하여 IPv4 또는 IPv4_UDP헤더를 IPv6 패킷 앞에 붙여서 IPv4 통신 스택(24)의 송신 처리 루틴을 호출하게 된다. 이렇게 IPv4 통신 스택(24)에 도착한 IPv4 패킷은 물리 네트워크인터페이스(26)를 통해서 단말#1(11)로 송신된다.Therefore, referring to FIG. 2, the
단말에서 IPv6 over IPv4 터널링을 사용하여 서버(20)로 송신한 패킷은 서버의 IPv4 통신스택(24)에 도착해서 IPv4 헤더가 제거되고, IPv4_UDP 헤더인 경우에는 UDP 계층(23)에서 UDP 헤더가 제거된 후에 터널네트워크인터페이스의 수신처리 루틴으로 전달된다. 이때 터널네트워크인터페이스의 수신처리 루틴에서는 IPv4 또는 IPv4_UDP 헤더 정보를 기반으로 해당되는 터널네트워크인터페이스를 찾아서 찾은 터널네트워크인터페이스를 상기 패킷의 수신 네트워크인터페이스로 설정해서 IPv6 스택(25)의 수신 처리 루틴으로 전달하게 된다.The packet transmitted from the terminal to the
이와 같이 IPv6 over IPv4 터널링 기술을 통하여 단말의 이동성을 지원하고자하는 서버에서는 각각의 단말들을 위해서 터널네트워크인터페이스를 생성 관리하는 것이 일반적인 방법이다. As described above, in a server that supports mobility of terminals through IPv6 over IPv4 tunneling technology, it is common to create and manage a tunnel network interface for each terminal.
하지만, 일반적인 터널네트워크인터페이스 관리 방법은 서버 한 대당 수천에서 수만 개의 단말들을 관리해야 하는 상황이다. 때문에 이러한 상황에서 각각의 단말들을 위해서 수천에서 수만 개의 터널네트워크인터페이스를 관리하는 것은 운영체제의 네트워크인터페이스 관리 부하로 인한 현저한 패킷처리 성능의 저하를 초래하게 되고, 지원해야 될 단말들의 수가 증가함에 따른 서버의 확장성을 어렵게 만들게 된다. However, the general tunnel network interface management method requires managing thousands to tens of thousands of terminals per server. Therefore, in this situation, managing thousands to tens of thousands of tunnel network interfaces for each terminal causes a significant decrease in packet processing performance due to the network interface management load of the operating system, and increases the number of terminals to be supported. It makes scalability difficult.
따라서 본 발명의 목적은 IPv4 네트워크에서 IPv6-IPv4 터널링을 이용하여 서버의 운영체제 내부에서 네트워크인터페이스의 관리로 인한 부하를 줄이기 위해 서버에서 모든 단말을 위한 단일 터널네트워크인터페이스를 구축하기 위한 방법을 제공함에 있다. Accordingly, an object of the present invention is to provide a method for building a single tunnel network interface for all terminals in a server in order to reduce the load caused by the management of the network interface inside the operating system of the server using IPv6-IPv4 tunneling in an IPv4 network. .
그리고 본 발명의 다른 목적은 IPv4 네트워크에서 IPv6-IPv4 터널링을 이용하여 서버의 운영체제 내부에서 구축된 단일 터널네트워크인터페이스를 이용하여 각 단말과 패킷을 송/수신하기 위한 방법을 제공함에 있다. Another object of the present invention is to provide a method for transmitting / receiving packets with each terminal using a single tunnel network interface built in an operating system of a server using IPv6-IPv4 tunneling in an IPv4 network.
상기 이러한 본 발명의 목적들을 달성하기 위한 방법은, 인터넷 프로토콜 버전 4(IPv4) 네트워크에서, 인터넷 프로토콜 버전 6(IPv6)-IPv4 터널링을 이용하여 단말의 이동성을 제공하고자 하는 서버가 상기 단말과 패킷을 송/수신하기 위한 터널네트워크인터페이스를 구축하기 위한 방법으로서, 상기 IPv4 네트워크 내에서 연결되어 있는 다수의 단말에 대한 정보를 단일 터널네트워크인터페이스에 설정하여 관리하는 과정과, 상기 각 단말의 IPv6 주소에 대한 출력 네트워크인터페이스를 상기 단일 터널네트워크인터페이스로 설정하는 과정과, 상기 IPv4 네트워크 내에 존재하는 임의의 단말로부터 수신된 IPv4 패킷에 대한 수신 인터페이스를 상기 단일 터널네트워크인터페이스로 설정하는 과정을 포함하는 것을 특징으로 한다. The method for achieving the object of the present invention, in the Internet Protocol version 4 (IPv4) network, the server to provide the mobility of the terminal using the Internet Protocol version 6 (IPv6) -IPv4 tunneling to the terminal and the packet A method for constructing a tunnel network interface for transmitting / receiving, comprising: setting and managing information about a plurality of terminals connected in the IPv4 network in a single tunnel network interface, and managing IPv6 addresses of the respective terminals. Setting an output network interface to the single tunnel network interface, and setting a reception interface for an IPv4 packet received from any terminal present in the IPv4 network to the single tunnel network interface. .
상기 본 발명의 목적들을 달성하기 위한 다른 방법은, 인터넷 프로토콜 버전 4(IPv4) 네트워크에서, 인터넷 프로토콜 버전 6(IPv6)-IPv4 터널링을 이용하여 단말의 이동성을 제공하고자 하는 서버가 단일 터널네트워크인터페이스를 이용하여 패킷을 송신하기 위한 방법으로서, 상기 IPv4 네트워크 내에서 연결되어 있는 다수의 단말에 대한 정보를 단일 터널네트워크인터페이스에 설정하는 과정과, 상기 각 단말의 IPv6 주소에 대한 출력 네트워크인터페이스를 상기 단일 터널네트워크인터페이스로 설정하는 과정과, IPv6 패킷 송신 요청이 있는 경우 상기 터널네트워크인터페이스에서 목적지 단말에 대한 정보를 검색하는 과정과, 상기 검색된 정보를 기반으로 상기 IPv6 패킷에 IPv4에 대한 헤더를 추가하는 과정과, 상기 헤더가 추가된 IPv6 패킷을 상기 설정된 터널을 통해 상기 목적지 단말로 전송하는 과정을 포함하는 것을 특징으로 한다. Another method for achieving the above object of the present invention is that, in an Internet Protocol version 4 (IPv4) network, a server that intends to provide mobility of a terminal using Internet Protocol version 6 (IPv6) -IPv4 tunneling may use a single tunnel network interface. A method for transmitting a packet by using a method comprising: setting information on a plurality of terminals connected in the IPv4 network in a single tunnel network interface, and outputting an output network interface for the IPv6 address of each terminal in the single tunnel. Setting a network interface, searching for information on a destination terminal in the tunnel network interface when an IPv6 packet transmission request is made, adding a header for IPv4 to the IPv6 packet based on the found information; The IPv6 packet to which the header is added Through it characterized in that it comprises the step of transmitting to the destination terminal.
상기 본 발명의 목적들을 달성하기 위한 또 다른 방법은, 인터넷 프로토콜 버전 4(IPv4) 네트워크에서, 인터넷 프로토콜 버전 6(IPv6)-IPv4 터널링을 이용하여 단말의 이동성을 제공하고자 하는 서버가 단일 터널네트워크인터페이스를 이용하여 패킷을 수신하기 위한 방법으로서, 상기 IPv4 네트워크 내에서 연결되어 있는 다수의 단말에 대한 정보를 단일 터널네트워크인터페이스에 설정하는 과정과, 상기 각 단말의 IPv6 주소에 대한 출력 네트워크인터페이스를 상기 단일 터널네트워크인터페이스로 설정하는 과정과, 상기 IPv4 네트워크 내에 존재하는 임의의 단말로부터 패킷을 수신하면, 상기 수신된 패킷의 종류를 확인하는 과정과, 상기 수신된 패킷이 IPv6 패킷인 경우 상기 IPv6 패킷에서 IPv4에 대한 헤더를 삭제하는 과정과, 상기 헤더가 삭제된 패킷의 수신인터페이스를 상기 단일 터널네트워크인터페이스로 설정하는 과정과, 상기 설정된 단일 터널네트워크인터페이스를 통해 상기 헤더가 삭제된 패킷을 수신하는 과정을 포함하는 것을 특징으로 한다. Another method for achieving the object of the present invention, in the Internet Protocol version 4 (IPv4) network, a server that intends to provide mobility of the terminal using the Internet Protocol version 6 (IPv6) -IPv4 tunneling is a single tunnel network interface A method for receiving a packet using a method comprising: setting information on a plurality of terminals connected in the IPv4 network in a single tunnel network interface, and outputting an output network interface for the IPv6 address of each terminal to the single tunnel network interface; Setting a tunnel network interface, receiving a packet from any terminal existing in the IPv4 network, checking the type of the received packet, and if the received packet is an IPv6 packet, converting the IPv4 packet from the IPv6 packet to the IPv4 packet. Deleting a header for the header and the number of packets from which the header is deleted; In that it comprises the step of setting the interface to a single tunnel and a network interface, the method comprising the steps of: receiving a packet with the header is removed through a single network interface, the established tunnel characterized.
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 그리고 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. First of all, in adding reference numerals to the components of each drawing, it should be noted that the same reference numerals have the same reference numerals as much as possible even if displayed on different drawings. In the following description of the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.
본 발명의 실시예에서는 상기 도 1에 도시된 바와 같은 IPv4 네트워크를 기 반으로 하여 설명하기로 하며, 본 발명이 실시예에 따른 서버는 상기 도 1에 도시된 기존의 서버와 구분하기 위해 다른 참조부호로 설명하기로 한다. In the embodiment of the present invention will be described based on the IPv4 network as shown in FIG. 1, the server according to the embodiment of the present invention is another reference to distinguish from the existing server shown in FIG. It will be described by reference.
그러면 본 발명의 실시예에 따른 모든 단말들에 단일 터널네트워크인터페이스를 갖는 서버의 구조에 대해 첨부된 도면을 참조하여 구체적으로 설명하기로 한다. Next, a structure of a server having a single tunnel network interface in all terminals according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
도 3은 본 발명의 실시예에 따른 IPv4네트워크에서 서버의 단일 터널인터페이스 구조를 도시한 구성도이다. 3 is a diagram illustrating a single tunnel interface structure of a server in an IPv4 network according to an embodiment of the present invention.
상기 도 3을 참조하면, 본 발명의 실시예에 따른 서버(100)는 상기 도 1에 도시된 서버(20)와 같이 응용프로그램(101), 소켓 계층(Socket Layer)(102), TCP 또는 UDP 계층(103), IPv4 통신 스택(104), IPv6 통신 스택(105) 및 물리 네트워크인터페이스(106)로 구성된다. 그리고 상기 서버(100)는 모든 단말들을 위한 하나의 터널네트워크인터페이스(107)를 생성하고, 모든 단말들을 위해 IPv4 또는 IPv4_UDP 헤더를 붙이고 수신네트워크인터페이스를 찾는 작업을 상기 생성된 하나의 터널네트워크인터페이스(107)에서 수행한다. Referring to FIG. 3, the
상기 응용프로그램(101)은 통신하고자 하는 단말의 IPv6 주소를 목적지로 하여 IPv6 패킷을 전송하고, 상기 소켓 계층(102) 및 TCP 또는 UDP 계층(103)은 상기 전송되는 IPv6 패킷을 IPv6 통신 스택(105)로 전달한다. The
상기 IPv6 통신 스택(105)은 전송 정보 베이스(FIB6 : Forwarding Information Base for IPv6, 219)(120) 룩업을 통하여 상기 터널네트워크인터페이스(107)를 통해 전달된 패킷을 해당 단말로 송신한다. 여기서 상기 FIB6(120)의 룩 업 정보는 모든 단말들(11 내지 14)이 상기 터널네트워크인터페이스(107)로 룩업되도록 설정된다. The
상기 IPv4 통신 스택(104)은 IPv4 패킷을 물리네트워크인터페이스(106)를 통해 단말로 송신하고, 패킷을 수신하는 경우에는 수신된 패킷에서 IPv4 헤더를 제거한 후 IPv4 헤더가 제거된 패킷을 상기 터널네트워크인터페이스(107)의 수신 처리 루틴으로 전달한다. The
상기 터널네트워크인터페이스(107)는 IPv4 네트워크상에 존재하는 단말들을 위한 정보를 설정 및 관리하며, 패킷 송/수신을 위한 인터페이스를 수행한다. 여기서 상기 설정된 각 단말들을 위한 정보는 IPv6 주소 리스트(110)를 통해 관리되며, 상기 IPv6 주소 리스트(110)에서 각 단말별 IPv6 주소 정보는 로칼(local) IPv4 주소, 원격(remote) IPv4 주소, 로칼 UDP 포트 번호, 원격 UDP 포트 번호 등의 정보(111, 112)를 포함한다. The
그러면 이와 같은 본 발명의 실시예에 따른 서버에서 단일 터널네트워크인터페이스를 관리 및 이에 따른 패킷 송/수신 과정을 첨부된 도면을 참조하여 설명하기로 한다. Then, a single tunnel network interface is managed in the server according to the embodiment of the present invention and the packet transmission / reception process according to this will be described with reference to the accompanying drawings.
도 4는 본 발명의 실시예에 따라 서버에서 단일 터널인터페이스 관리 및 패킷 송수신하기 위한 절차를 도시한 흐름도이다. 4 is a flowchart illustrating a procedure for managing a single tunnel interface and transmitting and receiving a packet in a server according to an embodiment of the present invention.
상기 도 4를 참조하면, 201단계에서 서버(100)는 새로운 단말의 연결 시도 요청이 있는지를 확인한다. 만약, 상기 새로운 단말로부터 연결 요청 메시지를 받 으면, 202단계에서 서버(100)는 단일의 터널네트워크인터페이스(107)에 상기 새로운 단말을 위한 정보를 설정한다. 즉, 서버(100)는 새로운 단말의 IPv6 주소, 서버 자신의 IPv4 주소(로칼 IPv4 주소), 단말의 IPv4 주소(원격 IPv4 주소), 서버 자신의 UDP 포트 번호(로칼 UDP 포트), 단말의 UDP 포트 번호(원격 UDP 포트)를 설정한다. Referring to FIG. 4, in
그런 다음 203단계에서 서버(100)는 FIB6(120)에 새로운 단말의 IPv6 주소에 대한 출력 네트워크인터페이스를 터널네트워크인터페이스(107)로 설정한다. 이때, 서버(100)는 FIB6(120)에 각 단말을 위해서 별도의 엔트리로 설정할 수도 있고, 적절한 프리픽스(Prefix) 길이를 설정해서 모든 단말들에 대해서 하나의 엔트리로 설정할 수도 있다. 이에 따라 204단계에서 서버(100)는 상기 새로운 단말을 위한 터널을 설정한다. 이렇게 설정된 터널을 통해 서버(100)는 상기 IPv4 네트워크 내 존재하는 단말들과 패킷을 송/수신한다. Then, in
이후, 205단계에서 서버(100)는 응용프로그램(101)으로부터 IPv6 패킷 송신 요청이 있는지를 확인하여 송신 요청이 없는 경우에는 209단계로 진행한다. Thereafter, in
반면, 송신 요청이 있는 경우 송신 요청된 패킷은 IPv6 스택(105)으로 도착되고, 이때 FIB6(120)을 룩업한 결과가 터널네트워크인터페이스(107)이므로 상기 송신할 패킷은 터널네트워크인터페이스(107)의 송신 처리 루틴으로 전달된다. 따라서 206단계에서 서버(100)는 목적지 IPv6 주소값을 키 값으로 하여 IPv4 주소 및 UDP 포트 정보를 검색한다. 그러면 207단계에서 서버(100)는 검색된 IPv4 정보를 이용하여 IPv4 또는 IPv4_UDP 헤더를 구축한 후 IPv4 스택(104)로 패킷을 전달한 다. 이에 따라 208단계에서 서버(100)는 상기 IPv4 스택(104)을 통해 전달된 패킷을 해당 단말로 전송한다. On the other hand, if there is a request for transmission, the requested packet arrives at the
한편, 209단계에서 서버(100)는 IPv4 네트워크 내에 존재하는 임의의 단말로부터 IPv4 패킷을 수신했는지를 확인하여 수신되지 않은 경우에는 동작을 종료하고, 그렇지 않은 경우에는 210단계를 수행한다. On the other hand, in
210단계에서 서버(100)는 상기 임의의 단말로부터 물리네트워크인터페이스(106)로 수신된 패킷이 IPv6 또는 UDP_IPv6 터널링 패킷인지를 확인한다. 확인한 결과, IPv6 또는 UDP_IPv6 터널링 패킷이 아닌 경우 211단계에서 서버(100)는 일반적인 IPv4 패킷 수신 절차를 수행한다. In
반면, IPv6 또는 UDP_IPv6 터널링 패킷인 경우 212단계에서 서버(100)는 수신된 패킷이 IPv4 헤더로 터널링된 경우에는 IPv4 스택(104)에서 IPv4 헤더를 제거하고, IPv4_UDP로 터널링된 경우에는 UDP 스택(103)에서 UDP 헤더를 제거한다.In contrast, in the case of an IPv6 or UDP_IPv6 tunneling packet, in
그런 다음 213단계에서 서버(100)는 패킷 수신인터페이스를 터널네트워크인터페이스로 설정한 후 214단계에서 상기 IPv4 헤더 또는 IPv4_UDP 헤더가 삭제된 IPv6 패킷을 터널네트워크인터페이스의 수신 처리 루틴으로 전달한다. 이에 따라 터널네트워크인터페이스의 수신 처리 루틴에서는 IPv6 패킷을 IPv6 스택(105)로 전달한 후 동작을 종료한다. Then, in
상술한 바와 같이 본 발명은 대표 터널네트워크인터페이스에서 각 단말에 할당되는 IPv6 주소 정보를 키 값으로 IPv4 주소와 UDP 포트 번호를 관리함으로써 이를 패킷 송신 시에 활용할 수 있으며, FIB6에 모든 단말들에게 송신할 때 사용되는 출력 네트워크인터페이스를 대표 터널네트워크인터페이스로 설정함으로써 단지 하나의 터널용 네트워크인터페이스로도 모든 단말들을 위한 터널링을 지원할 수 있게 되었다. As described above, the present invention manages the IPv4 address and the UDP port number as key values of the IPv6 address information allocated to each terminal in the representative tunnel network interface, which can be utilized in packet transmission, and transmitted to all terminals in FIB6. By setting the output network interface used as the representative tunnel network interface, it is possible to support tunneling for all terminals with only one tunnel network interface.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 발명청구의 범위뿐만 아니라 이 발명청구의 범위와 균등한 것들에 의해 정해져야 한다.Meanwhile, in the detailed description of the present invention, specific embodiments have been described, but various modifications are possible without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the scope of the following claims, but also by the equivalents of the claims.
상술한 바와 같이 본 발명은 터널링 기술을 이용하여 단말의 이동성을 보장하기 위해서 구축되는 서버의 운영체제에 각각의 단말을 위한 대표 터널네트워크인터페이스 하나를 사용하도록 함으로써 서버의 운영체제 내부에서 다중 터널네트워크인터페이스 관리로 인한 부하를 감소시킬 수 있으며, 이에 따른 운영체제의 성능 저하 문제점을 해결할 수 있고, 지원할 단말의 수가 증가됨에 따른 서버의 확장성을 유연하게 할 수 있는 효과가 있다. As described above, the present invention uses a representative tunnel network interface for each terminal to the operating system of the server to ensure the mobility of the terminal using the tunneling technology to manage the multiple tunnel network interface inside the operating system of the server. Due to this, it is possible to reduce the load due to the problem of performance degradation of the operating system and to increase flexibility of the server as the number of terminals to support is increased.
Claims (8)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20060120374 | 2006-12-01 | ||
KR1020060120374 | 2006-12-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080050199A true KR20080050199A (en) | 2008-06-05 |
KR100882353B1 KR100882353B1 (en) | 2009-02-12 |
Family
ID=39805696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070035572A KR100882353B1 (en) | 2006-12-01 | 2007-04-11 | METHOD FOR CREATING TUNNEL NETWORK INTERFACE AND TRANSMITTING/RECEIVING PACKET USING TUNNEL NETWORK INTERFACE IN SERVER OF IPv4 NETWORK |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100882353B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8547998B2 (en) | 2007-12-17 | 2013-10-01 | Electronics And Telecommunications Research Institute | Tunneling IPv6 packet through IPv4 network using a tunnel entry based on IPv6 prefix and tunneling IPv4 packet using a tunnel entry based on IPv4 prefix |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107104911B (en) * | 2017-04-06 | 2020-02-14 | 清华大学 | UDP (user Datagram protocol) data packet segmentation method and transmission method |
-
2007
- 2007-04-11 KR KR1020070035572A patent/KR100882353B1/en active IP Right Grant
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8547998B2 (en) | 2007-12-17 | 2013-10-01 | Electronics And Telecommunications Research Institute | Tunneling IPv6 packet through IPv4 network using a tunnel entry based on IPv6 prefix and tunneling IPv4 packet using a tunnel entry based on IPv4 prefix |
Also Published As
Publication number | Publication date |
---|---|
KR100882353B1 (en) | 2009-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9106711B2 (en) | Minimizing mapping and signaling for data path aggregation | |
KR100901790B1 (en) | CONTROL TUNNEL AND DIRECT TUNNEL CONFIGURATION METHOD IN IPv6 SERVICE PROVIDE SYSTEM BASED IPv4 NETWORK | |
US7263075B2 (en) | Ad-hoc network for routing extension to support Internet protocol version 6 (IPv6) and method thereof | |
KR100997075B1 (en) | An access device, routing device and method thereof supporting stateless address configuration in communication network | |
US20020032855A1 (en) | Providing secure network access for short-range wireless computing devices | |
KR101423743B1 (en) | Method for supporting network-based mobility in virtual network environment that can be direct communication based on virtual IP | |
US7558249B2 (en) | Communication terminal, and communication method | |
CN104919766A (en) | Path switching procedure for device-to-device communication | |
US20060280138A1 (en) | Wireless access point repeater | |
JP2011515945A (en) | Method and apparatus for communicating data packets between local networks | |
US8621087B2 (en) | Method for configuring closed user network using IP tunneling mechanism and closed user network system | |
JP2008543198A (en) | Mobile IPv6 route optimization in different address spaces | |
US20120131142A1 (en) | Methods, apparatuses, related computer program product and data structure for distributed storage of service provision-related information | |
CN102546407A (en) | Message sending method and device | |
Chandra et al. | A comparative study on IPv4 and IPv6 | |
US8547998B2 (en) | Tunneling IPv6 packet through IPv4 network using a tunnel entry based on IPv6 prefix and tunneling IPv4 packet using a tunnel entry based on IPv4 prefix | |
US20130163601A1 (en) | User centric virtual network and method of establishing the same | |
EP1874005A1 (en) | A personal network comprising a plurality of clusters | |
KR100882353B1 (en) | METHOD FOR CREATING TUNNEL NETWORK INTERFACE AND TRANSMITTING/RECEIVING PACKET USING TUNNEL NETWORK INTERFACE IN SERVER OF IPv4 NETWORK | |
WO2007108124A1 (en) | Packet relay device | |
KR100609326B1 (en) | Mobile communication system and method capable of allowing shortest communications path | |
US8923311B2 (en) | Communication system and method | |
US8428587B2 (en) | Mobile communication system, position registration method, terminal, and home agent | |
JP4698571B2 (en) | Handoff method and system for terminals connected via NAPT router | |
US8634429B2 (en) | Communication system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121206 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20131209 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20141229 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20151228 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20161228 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20171226 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20181226 Year of fee payment: 11 |