KR100664715B1 - Gre based virtual private network supplying gateway multiplication - Google Patents
Gre based virtual private network supplying gateway multiplication Download PDFInfo
- Publication number
- KR100664715B1 KR100664715B1 KR1020050130943A KR20050130943A KR100664715B1 KR 100664715 B1 KR100664715 B1 KR 100664715B1 KR 1020050130943 A KR1020050130943 A KR 1020050130943A KR 20050130943 A KR20050130943 A KR 20050130943A KR 100664715 B1 KR100664715 B1 KR 100664715B1
- Authority
- KR
- South Korea
- Prior art keywords
- gateway
- gre
- address
- circuit
- information
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/26—Route discovery packet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/552—Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
Abstract
Description
도 1은 일반적인 VPN 구성을 나타낸 도면. 1 is a diagram illustrating a general VPN configuration.
도 2는 본 발명에 따른 GRE 터널 구성의 바람직한 일 실시예를 나타낸 도면.2 illustrates a preferred embodiment of a GRE tunnel configuration in accordance with the present invention.
도 3은 본 발명에 따른 GRE 터널상의 데이터 흐름을 개념적으로 나타낸 도면.3 conceptually illustrates data flow on a GRE tunnel in accordance with the present invention;
도 4는 본 발명에 따른 회선 다중화 게이트웨이의 블록 구성을 나타낸 도면.4 is a block diagram of a circuit multiplexing gateway according to the present invention;
도 5는 본 발명에 따른 다중화 그룹 구성의 바람직한 일 실시예을 나타낸 도면.5 illustrates one preferred embodiment of a multiplexed group configuration in accordance with the present invention.
도 6은 본 발명에 따른 터널 정보의 바람직한 일 실시예를 나타낸 도면. Figure 6 illustrates a preferred embodiment of the tunnel information according to the present invention.
도 7은 본 발명에 따라 이중화된 게이트웨이들이 회선 다중화 정보를 공유하는 방법을 나타낸 도면.7 illustrates a method for redundant gateways sharing circuit multiplexing information in accordance with the present invention.
도 8은 본 발명에 따라 이중화된 게이트웨이간 회선 다중화 동작 흐름을 나타낸 도면. 8 is a diagram illustrating a redundant inter-gateway circuit multiplexing operation flow according to the present invention.
*도면의 주요 부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *
100 : 게이트웨이 110 : 회선다중화정보 관리 모듈100: gateway 110: circuit multiplexing information management module
120 : GRE 디바이스 관리 모듈 130 : IP 주소 관리 모듈120: GRE device management module 130: IP address management module
140 : 회선 상태 감지 모듈 150 : 스케줄러140: line state detection module 150: scheduler
160 : 터널 정보 저장부160: tunnel information storage unit
본 발명은 게이트웨이 다중화를 제공하는 GRE 기반 가상사설망에 관한 것이다.The present invention relates to a GRE-based virtual private network that provides gateway multiplexing.
가상 사설 네트워크(Virtual Private Network, 이하 "VPN"이라 칭한다)는 저 비용으로 광대역 전용 회선 서비스를 제공하기 위한 것으로, 인터넷과 같은 공중 네트워크에서 사설 링크를 만드는 것이다. 일반적으로 이것은 엔크립션(encryption)과 터널링(tunneling) 기술을 이용하여 공유 네트워크를 전용 사설 링크인 것처럼 만드는 아이디어이다. VPN은 ATM(Asynchronous Transfer Mode), 프레임 릴레이 네트워크 등에서 비교적 쉽게 구현될 수 있는데, 그것은 고객에게 전용 대역폭과 경로 제어를 제공하는 가상 회선을 구성할 수 있기 때문이다. A virtual private network (hereinafter referred to as "VPN") is to provide broadband leased line services at low cost and to create a private link in a public network such as the Internet. In general, this is the idea of making a shared network look like a private link using encryption and tunneling techniques. VPNs can be implemented relatively easily in ATM (Asynchronous Transfer Mode), frame relay networks, etc., because they can configure virtual circuits that provide customers with dedicated bandwidth and path control.
도 1은 일반적인 VPN 구성도이다. 1 is a general VPN configuration diagram.
도 1에서 보는 바와 같이, VPN은 각 기업체나 기관에서 원격지에 위치하는 지점과의 통신을 위해 ADSL이나 케이블 등과 같은 공중망(Public Network)으로 제 3자가 패킷을 알아볼 수 없는 가상 터널을 형성하고, 전용선과 같은 높은 안정성과 보안성을 제공한다. As shown in FIG. 1, a VPN forms a virtual tunnel in which a third party cannot recognize a packet through a public network such as an ADSL or a cable for communication with a branch located at a remote place in each enterprise or institution, and a dedicated line. It provides high stability and security.
터널링을 구현하는 기술로는 현재 표준화가 이루어진 IPSec(IP Security Protocol), L2TP(Layer 2 Tunneling Protocol) 등이 가장 많이 이용되어지며, 그 외에 PPTP(Point to Point Tunneling Protocol), L2F(Layer 2 Forwarding Protocol), VTP(Virtual Tunneling Protocol), 등이 이용되고 있다. VPN 서비스를 제공할 때 일반적으로 적용되는 암호화 기술은 인증, 암호화, 부호화 등이 있으며, 암호화 방법에는 IPSec에 사용되는 데이터 암호화 표준 (DES : Data Encryption Standard)과 PPTP에 사용되는 RC4 등이 있다. As the technology for implementing tunneling, IPSec (IP Security Protocol),
이러한 VPN에서도 두 게이트웨이간 VPN 회선을 다중화 하여 게이트웨이간 트래픽을 적절히 분산(Load Balancing)하고, 회선 일부에 장애가 발생하였을 경우 장애 회선을 이용하던 트래픽이 정상 회선을 이용하도록 하여 끊김 없는 네트워크 환경을 구축할 필요가 있는데, 이를 VPN 회선 다중화라 한다. 또한, 회선 다중화에서 나아가 로컬 또는 원격지에 게이트웨이를 하나 이상 배치하고, 일방에 장애가 발생한 경우 다른 일방에 의해 서비스가 제공되도록 하는 것을 게이트웨이 다중화라고 한다. In such a VPN, the VPN circuits between the two gateways can be multiplexed to properly distribute the traffic between the gateways (Load Balancing), and if a part of the circuit fails, the traffic that used the faulty circuit can use the normal circuit to create a seamless network environment. This is called VPN line multiplexing. In addition, in addition to circuit multiplexing, arranging one or more gateways locally or remotely, and providing a service by one side when a failure occurs in one side is called gateway multiplexing.
VPN에서 다중화를 구현하기 위해서는 동일한 목적지(Destination)에 대해 여러 경로(Route)를 설정하고 라우팅 결정(Routing Decision)이 이루어질 때마다 설정된 여러 경로들 중 하나를 적절히 선택할 수 있어야 한다. In order to implement multiplexing in a VPN, it is necessary to set up multiple routes to the same destination and to select one of several routes properly whenever a routing decision is made.
하지만, 일반적으로 많이 사용되는 IPSec 프로토콜을 이용한 VPN 다중화의 경우에는 회선 다중화 및 게이트웨이 다중화를 위한 바람직한 방법이 제공되지 않고 있어, 현재 VPN 회선 다중화에 대한 손쉬운 해결책이 제시되고 있지 않은 상태이다. However, in the case of VPN multiplexing using the commonly used IPSec protocol, a preferred method for circuit multiplexing and gateway multiplexing has not been provided, and thus an easy solution for VPN circuit multiplexing has not been proposed.
본 발명은 상기의 문제점을 해결하기 위해, 적어도 하나의 GRE 터널로 다중화된 회선을 통해 패킷을 전송하는 GRE 기반 가상 사설망에서 동작 중인 게이트웨이이 장애 발생시 다른 게이트웨이로 하여금 그 역할을 대신 수행하도록 하는 게이트웨이 다중화를 제공하는 GRE 기반 가상사설망을 제공하는 것을 그 목적으로 한다. In order to solve the above problem, the present invention provides a gateway multiplexing scheme in which a gateway operating in a GRE-based virtual private network that transmits a packet through a multiplexed circuit in at least one GRE tunnel causes another gateway to perform its role in case of a failure. Its purpose is to provide a GRE-based virtual private network.
상기의 목적을 달성하기 위한 본 발명의 일 측면에 따른 GRE 기반 가상사설망은, 원격지 게이트웨이와 연결되는 적어도 하나의 GRE(Generic Routing Encapsulation) 터널을 생성하고, 상기 생성된 적어도 하나의 GRE 터널로 구성되는 회선 다중화 그룹을 구성하여, 원격지로 전송하고자 하는 패킷을 상기 회선 다중화 그룹 내의 적어도 하나의 GRE 터널을 통해 분산 전송하는 제1 게이트웨이와 상기 제1 게이트웨이로부터 상기 회선 다중화 그룹에 관한 정보를 수신하여 공유하고, 상기 제1 게이트웨이가 정상적으로 동작하지 않는 경우, 상기 제1 게이트웨이의 역할을 대신 수행하는 적어도 하나의 제2 로컬 게이트웨이를 포함한다. GRE-based virtual private network according to an aspect of the present invention for achieving the above object, generating at least one GRE (Generic Routing Encapsulation) tunnel connected to a remote gateway, and consists of the generated at least one GRE tunnel A circuit multiplexing group is configured to receive and share information about the circuit multiplexing group from the first gateway and the first gateway for distributed transmission of a packet to be transmitted to a remote location through at least one GRE tunnel in the circuit multiplexing group. And when the first gateway does not operate normally, at least one second local gateway serving as the first gateway instead.
상기 제1 게이트웨이는, 원격지 게이트웨이와 연결되는 GRE(Generic Routing Encapsulation) 터널을 생성 또는 삭제하고, 생성된 GRE 터널에 관한 정보를 갱신하는 GRE 디바이스 관리 모듈; 상기 GRE 디바이스 관리 모듈에 의해 생성된 적어도 하나의 GRE 터널로 구성되는 회선 다중화 그룹에 관한 정보를 관리하는 회선다중화정보 관리 모듈; 및 로컬 서브넷 또는 원격지 서브넷으로부터 수신한 IP 주소 변경 메시지를 상기 적어도 하나의 제2 게이트웨이로 포워딩하는 게이트웨이 다중화 모듈을 포함한다. The first gateway may include a GRE device management module that generates or deletes a Generic Routing Encapsulation (GRE) tunnel connected to a remote gateway, and updates information about the generated GRE tunnel; A circuit multiplexing information management module that manages information about a circuit multiplexing group consisting of at least one GRE tunnel generated by the GRE device management module; And a gateway multiplexing module configured to forward an IP address change message received from a local subnet or a remote subnet to the at least one second gateway.
상기 회선 다중화 그룹에 관한 정보는, 하나의 터널을 형성하는 IP 주소의 쌍, 서브넷 주소의 쌍, 하나의 그룹으로 다중화 되는 회선에 관한 정보, 다중화 회선의 수에 관한 정보를 포함한다. The information on the circuit multiplexing group includes a pair of IP addresses forming a tunnel, a pair of subnet addresses, information on a circuit multiplexed into one group, and information on the number of multiplexing circuits.
상기 게이트웨이 다중화 모듈은, L4 또는 VRRP 중 적어도 하나의 다중화 기술을 기반으로 하여 동작한다. The gateway multiplexing module operates based on at least one multiplexing technique of L4 or VRRP.
상기 게이트웨이 다중화 모듈은, 로컬 서브넷 또는 원격지 서브넷으로부터 수신된 IP 주소 변경 메시지에 따라 회선 다중화 그룹 정보 및 관련된 GRE 디바이스가 가진 정보를 갱신하고, 메시지 수신 게이트웨이의 실제 IP 주소와 메시지 수신 게이트웨이의 다중화 그룹 설정상의 주소를 비교하여 두 값이 동일한 경우 자신이 로컬 서브넷 또는 원격지 서브넷으로부터 직접 IP 주소 변경 메시지를 수신한 것임을 인지하고, 상기 IP 주소 변경 메시지를 상기 적어도 하나의 제2 게이트웨이로 전송한다. The gateway multiplexing module updates circuit multiplexing group information and information of a related GRE device according to an IP address change message received from a local subnet or a remote subnet, and sets a real IP address of a message receiving gateway and a multiplexing group of a message receiving gateway. If the two addresses are the same, the IP address change message is received from the local subnet or the remote subnet, and the IP address change message is transmitted to the at least one second gateway.
상기 적어도 하나의 제2 게이트웨이는, 상기 제1 게이트웨이로부터 IP 주소 변경 메시지를 수신하고, 수신한 IP 주소 변경 메시지가 포함하는 정보에 따라 회선 다중화 그룹 정보 및 관련된 GRE 디바이스의 정보를 갱신한다. The at least one second gateway receives the IP address change message from the first gateway, and updates the circuit multiplexing group information and the information of the associated GRE device according to the information included in the received IP address change message.
상기 제1 게이트웨이는, 생성된 GRE 터널에 대한 상태 정보를 저장하는 터널 정보 저장부; 로컬 게이트웨이의 IP 주소 변경을 감지하는 경우 해당 IP 주소와 관련된 GRE 디바이스를 갱신하고, 원격지 게이트웨이에도 IP 주소 변경 사실을 알려 관련된 GRE 디바이스를 갱신토록 하는 IP 주소 관리 모듈; 원격지 게이트웨이와 장애 감지를 위해 회선장애감지용 패킷을 전송하고, 상기 원격지 게이트웨이로부터의 응답 상태에 따라 회선 장애 여부를 판단하고, 회선 장애 발생시 해당 회선 다중화 그룹에 대한 라우팅을 변경하는 회선감지/라우팅관리 모듈; 및 주기적으로 회선 다중화 그룹별로 회선 장애 감지 패킷(Route Detection Packet)을 전송하도록 상기 회선감지/라우팅관리 모듈을 제어하고, 주기적으로 로컬 게이트웨이의 IP 주소 변경 여부를 체크하도록 상기 IP 주소 관리 모듈을 제어하는 스케줄러를 더 포함할 수 있다. The first gateway may include a tunnel information storage unit configured to store state information on the generated GRE tunnel; An IP address management module for updating a GRE device associated with the corresponding IP address when notifying a change of an IP address of the local gateway and notifying the remote gateway of the IP address change so as to update the related GRE device; Circuit detection / routing management that transmits a circuit failure detection packet to detect a failure with a remote gateway, determines a circuit failure according to a response state from the remote gateway, and changes routing to a corresponding channel multiplexing group when a circuit failure occurs. module; And controlling the circuit detection / routing management module to periodically transmit a circuit detection packet for each circuit multiplexing group, and periodically controlling the IP address management module to check whether the IP address of the local gateway is changed. It may further include a scheduler.
상기 GRE 터널에 대한 상태 정보는, 각 GRE 터널에 해당하는, 회선 다중화 그룹 ID, 로드 밸런싱 정책, 로컬 게이트웨이의 외부 인터페이스 IP 주소, 로컬 게이트웨이의 외부 인터페이스 디바이스 명칭, 원격 게이트웨이의 외부 인터페이스 IP 주소, 회선 상태, 로컬 게이트웨이의 서브넷 주소, 원격 게이트웨이의 서브넷 주소, 로컬 게이트웨이의 내부 인터페이스 IP 주소, 원격 게이트웨이의 내부 인터페이스 IP 주소에 관한 정보를 포함한다.The state information for the GRE tunnel includes a circuit multiplexing group ID, a load balancing policy, an external interface IP address of a local gateway, an external interface device name of a local gateway, an external interface IP address of a remote gateway, and a line corresponding to each GRE tunnel. It contains information about the status, the subnet address of the local gateway, the subnet address of the remote gateway, the internal interface IP address of the local gateway, and the internal interface IP address of the remote gateway.
이하, 본 발명에 따른 바람직한 실시예를 도면을 살펴보면서 구체적으로 설명하기로 한다. Hereinafter, a preferred embodiment according to the present invention will be described in detail with reference to the drawings.
새로운 IPv6 네트워크 콤포넌트를 기존 IPv4 네트워크로 통합하는 것과 같은 다양한 네트워크의 이전 작업을 처리하기 위해 보다 확장 가능한 터널링 툴이 개발되고 있다. 서비스 사업자의 환경에서도 멀티캐스트 가상사설망(VPN)은 멀티프로토콜 라벨 스위칭(MPLS) VPN 사이트 사이에 멀티캐스트 트래픽을 전송하기 위해 풀 메시 GRE 터널링의 사용을 대체할 수 있다.More scalable tunneling tools are being developed to handle the migration of various networks, such as integrating new IPv6 network components into existing IPv4 networks. Even in service provider environments, multicast virtual private networks (VPNs) can replace the use of full mesh GRE tunneling to transport multicast traffic between multiprotocol label switching (MPLS) VPN sites.
터널링 기법 중 하나인 GRE(Generic Routing Encapsulation)는 하나의 네트워크 시스템에서 패킷이나 프레임을 취해 이들을 다른 네트워크 시스템으로 P2P(peer-to-peer) 구성을 통해 배치시키는 것이다. 기업들은 GRE를 사용해 IP 백본으로 레거시 레이어 3 프로토콜을 전송한다. GRE는 관련된 상대방에 도달할 때 프로세스를 위한 데이터를 규명할 수 있게 해주는 콤포넌트를 가진 패킷 헤더로 구성되어 있다. 이러한 콤포넌트에는 IPv4 터널링이나 전송 헤더, 터널 키와 체크섬(checksum), 일련의 필드(페이로드 또는 터널화된 레이어 3 패킷)를 포함하고 있다.One of the tunneling techniques, Generic Routing Encapsulation (GRE), takes packets or frames from one network system and places them in a peer-to-peer (P2P) configuration. Enterprises use GRE to transport
VPN 회선 다중화를 구현하기 위해서는 몇 가지의 기술 요소들이 필요하다. 첫째는 다중화 된 회선을 대상으로 로드 밸런싱을 할 수 있는 라우팅 결정 매커니즘, 둘째는 사설 IP를 사용하는 서브넷간의 통신을 가능하게 하는 터널링 프로토콜, 셋째는 게이트웨이간 트래픽을 보호할 수 있는 암호화 프로토콜이다. Several technical elements are required to implement VPN circuit multiplexing. The first is a routing decision mechanism that can load balance multiplexed circuits, the second is a tunneling protocol that enables communication between subnets using private IPs, and the third is an encryption protocol that can protect traffic between gateways.
본 발명에서는, 터널링 프로토콜로 GRE(Generic Routing Encapsulation) 프로토콜을 채택하여 회선 다중화를 구현한다. In the present invention, circuit multiplexing is implemented by adopting a GRE (Generic Routing Encapsulation) protocol as a tunneling protocol.
도 2는 본 발명에 따른 GRE 터널 구성의 일 실시예를 나타낸다. 2 shows an embodiment of a GRE tunnel configuration according to the present invention.
도 2를 살펴보면, 게이트웨이 A(100)와 게이트웨이 B(200) 사이에 "A(subnet - eth2 - vgre0 - eth0) - B(eth0 - vgre0 - eth2 - subnet)"의 경로를 가지는 GRE 터널이 생성되어 있음을 알 수 있다. 게이트웨이 A(100) 쪽에서 보면, 서브넷은 192.168.1.0/24이고, 로컬 eth2는 192.168.1.1, 로컬 eth0는 211.41.160.15임을 알 수 있다. 또한 게이트웨이 B(200) 쪽에서 보면, 서브넷은 192.168.2.0/24이고, 로컬 eth0는 211.41.160.17, 로컬 eth2는 192.168.2.1이다. Referring to FIG. 2, a GRE tunnel having a path of "A (subnet-eth2-vgre0-eth0)-B (eth0-vgre0-eth2-subnet)" is created between the
도 3은 본 발명에 따른 GRE 터널상의 데이터 흐름을 개념적으로 나타낸 도면이다.3 is a diagram conceptually illustrating a data flow on a GRE tunnel according to the present invention.
도 3은 두 게이트웨이 사이에 적어도 하나의 GRE 터널을 형성하고, 형성된 다중 GRE 터널을 하나의 회선과 같이 이용하고자 하는 본 발명의 기본 개념을 나타내고 있다. 즉, 도 2에 도시된 바와 같은 게이트웨이 A, 게이트웨이 B 사이에 적어도 하나의 GRE 터널(101, 102, 103)을 형성하고, 패킷을 전송하는 경우에 있어서의 패킷 흐름을 나타낸다. 3 illustrates a basic concept of the present invention in which at least one GRE tunnel is formed between two gateways, and the formed multiple GRE tunnel is used as one circuit. That is, at least one GRE tunnel (101, 102, 103) is formed between the gateway A and the gateway B as shown in FIG. 2, and the packet flow in the case of transmitting a packet is shown.
도 3은 게이트웨이 A에서 게이트웨이 B로, [1, 2, 3, 4, 5, 6]의 패킷을 전송하는 경우를 가정하고 있으며, 게이트웨이 A와 게이트웨이 B 간에 형성된 3 개의 GRE 터널을 이용해 패킷을 분산, 전송하고 잇다. 도 3의 3 개의 터널은 3 개의 GRE 디바이스, 즉 네트워크 포트를 달리하는 별도의 터널이기는 하나, 논리적으로 하나의 다중화 그룹으로 묶여 있다. 즉 Tunnel0-0(101), Tunnel0-1(102), Tunnel0-2(103) 순으로 하나의 그룹 내에 여러 개의 터널이 포함되어 있다. FIG. 3 assumes a case of transmitting a packet of [1, 2, 3, 4, 5, 6] from gateway A to gateway B, and distributes packets using three GRE tunnels formed between gateway A and gateway B. , Sending. The three tunnels of FIG. 3 are three GRE devices, ie separate tunnels that differ in network ports, but are logically grouped into one multiplex group. That is, several tunnels are included in one group in the order of Tunnel0-0 (101), Tunnel0-1 (102), and Tunnel0-2 (103).
전송하고자 하는 패킷 [1, 2, 3, 4, 5, 6]은 하나의 터널이 아닌 하나의 다중화 그룹 내에 포함된 세 개의 터널을 통해 전송되며, 패킷 [1], [4]는 Tunnel0-0(101)을 통해, 패킷 [2], [3]은 Tunnel0-1(102), 패킷 [3], [6]은 Tunnel0-2(103)를 통해 분산 전송됨을 알 수 있다. The packet [1, 2, 3, 4, 5, 6] to be transmitted is transmitted through three tunnels included in one multiplexing group instead of one tunnel. Packets [1] and [4] are transmitted through Tunnel0-0. Through 101, it can be seen that packets [2] and [3] are distributed and transmitted through Tunnel0-1 102, and packets [3] and [6] through Tunnel0-2 (103).
도 4는 본 발명에 따른 회선다중화 게이트웨이의 블록 구성을 나타낸다. 4 shows a block configuration of a circuit multiplexing gateway according to the present invention.
본 발명에 다른 회선다중화 게이트웨이는 회선다중화정보 관리 모듈(110), GRE 디바이스 관리 모듈(120), IP 주소 관리 모듈(130), 회선 상태 감지 모듈(140) 및 스케줄러(150)를 포함하여 구성된다. The circuit multiplexing gateway according to the present invention includes a circuit multiplexing
회선다중화정보 관리 모듈(110)은 적어도 하나의 GRE 터널이 모여 이루어지는 다중화 그룹에 관한 정보를 관리한다. 회선다중화정보 관리 모듈(110)이 관리하는 다중화 그룹은 도 5와 같이 나타낼 수 있다. The circuit multiplexing
도 5는 본 발명에 따른 다중화 그룹 구성의 바람직한 일 실시예을 나타낸다. 5 shows one preferred embodiment of a multiplexing group configuration according to the present invention.
하나의 다중화 그룹은 "name" 필드와 "groupid" 필드에 의해 다른 회선 다중화 그룹과 구별된다. "name" 필드는 말 그대로 회선 다중화 그룹의 이름이며 공식적인 식별자인 반면, "groupid" 필드는 회선 다중화 그룹 등록 순서에 따라 초기화 할 때마다 0부터 오름차순으로 부여되는 임의적 식별자이다. "groupid" 필드는 이후에 설명될 스케쥴러가 회선 장애 감지 패킷을 전송할 때에도 이용되며 GRE 터널의 이름을 구성할 때도 이용된다. 도 5의 GRE 터널 이름 "greX-0"나 "greX-1" 등에서 나타나는 X가 바로 해당 회선 다중화 그룹의 groupid이다. One multiplexing group is distinguished from other circuit multiplexing groups by the "name" field and the "groupid" field. The "name" field is literally the name of a circuit multiplexing group and an official identifier, while the "groupid" field is a random identifier assigned in ascending order from zero each time it is initialized according to the circuit multiplexing group registration order. The "groupid" field is also used when the scheduler, which will be described later, transmits a circuit failure detection packet and is used to construct a name of a GRE tunnel. X appearing in the GRE tunnel names "greX-0", "greX-1", etc. of FIG. 5 is a groupid of the circuit multiplexing group.
도 5에서 eth0, eth1, eth2, eth3, eth4, eth5로 표현된 디바이스들은 각기 다른 IP 주소를 가진 서로 다른 디바이스들이어야 하지만, ethY로 표현된 디바이스들은 하나의 디바이스일 수도 있고 그렇지 않을 수도 있으며, 설정에 따라 로컬 호스트에 존재하지 않는 IP 주소로 설정될 수 있다. In FIG. 5, devices represented by eth0, eth1, eth2, eth3, eth4, and eth5 should be different devices having different IP addresses, but devices represented by ethY may or may not be one device. This can be set to an IP address that does not exist on the local host.
GRE 디바이스 관리 모듈(120)은 게이트웨이간 생성된 GRE 터널에 관한 정보를 관리하는 역할을 담당한다. 이를 위해 GRE 디바이스 관리 모듈(120)은, 로컬 게이트웨이의 IP 주소가 변경되거나 원격 게이트웨이로부터 IP 주소 변경 메시지를 수신한 경우, GRE 디바이스 정보를 갱신한다. The GRE
GRE 디바이스 관리 모듈(120)은, 하나의 회선 다중화 그룹에 속하는 GRE 디바이스들을 생성하고 제거하는데, 본 발명에 따른 GRE 터널은 아래와 같은 명명 체계를 갖추어 관리된다. The GRE
gre<Group ID>-<GRE Pair Index>gre <Group ID>-<GRE Pair Index>
GRE 디바이스 관리 모듈(120)은 필요한 GRE 디바이스의 개수에 따라 GRE디바이스들을 생성하기도, 제거하기도 한다. GRE 디바이스는 다중화 그룹별로 관리되는데, 이에 대해서는 추후에 자세히 설명하기로 한다. GRE 디바이스의 제거는 회선 다중화 정보에 의존하지 않고 greX-Y 형식의 이름을 가진 GRE 터널들의 리스트를 IP 주소 명령어들을 통해 얻은 후 제거한다. 이러한 이유로 회선 다중화 정보에 다소 문제가 발생하더라도 안전하게 전체 GRE 터널을 제거할 수 있다. The GRE
GRE 디바이스 관리 모듈(120)은 또한, 로컬 게이트웨이의 IP 주소가 변경되거나 원격 게이트웨이로부터 IP 주소 변경 메시지를 수신한 경우, GRE 디바이스가 가지고 있는 정보를 갱신한다.The GRE
도 4의 IP 주소 관리 모듈(130)은 GRE 터널 설정 내용의 적합성 여부를 검사하고 또한 유동 IP 환경에 적응하기 위한 모듈이다. GRE 디바이스는 IP 주소를 갖는 디바이스이기 때문에, 한쪽 게이트웨이의 인터페이스 IP 주소가 바뀔 경우 양쪽 게이트웨이의 GRE 디바이스 정보를 갱신할 필요가 있다. IP 주소 관리 모듈(130)은, 로컬 게이트웨이의 IP 주소 변경을 감지하는 경우 해당 IP 주소와 관련된 GRE 디바이스를 갱신하고, 상대 게이트웨이에도 IP 주소 변경 사실을 알려 관련된 GRE 디바이스를 갱신하게 한다.The IP
IP 주소 관리 모듈(130)은 로컬 주소 관리 모듈(131)과 원격 주소 변경 처리 모듈(132)로 그 역할을 나누어 구현될 수 있다. 로컬 주소 관리 모듈(131)은, 로컬 게이트웨이의 IP 주소 전체를 관리하는 모듈이며, 로컬 게이트웨이 IP 주소에 변경이 있을 경우 필요한 조치를 취한다. The IP
로컬주소 관리 모듈(131)은 스케줄러(150)로부터 보고를 받고, 로컬 호스트에 존재하는 IP 주소들을 차례대로 게이트웨이가 저장하고 있던 로컬 호스트 IP 주소들과 비교하여 새로운 IP 주소나 사라진 IP 주소들을 리스트에 추가/삭제하고, ADSL이나 DHCP처럼 유동 IP 주소를 가지고 있는 디바이스의 IP 주소가 변경하였을 경우에는 GRE 디바이스의 로컬 IP 주소를 수정하고, 회선 다중화 그룹을 형성하는 원격 게이트웨이들에게 IP 주소 변경 메시지를 보낸다. The local address management module 131 receives a report from the
한편, 원격주소변경 처리 모듈(132)은, 원격 게이트웨이로부터의 IP 주소 변경 메시지를 수신하고, 다중화 정보를 동기화 하는 역할을 담당한다. On the other hand, the remote address change processing module 132, Receives IP address change message from remote gateway and synchronizes multiplexing information.
원격 게이트웨이가 전송하는 IP 주소 변경 메시지는, 회선 다중화 그룹 이름, 메시지를 수신하는 게이트웨이의 실제 IP 주소, 메시지를 수신할 게이트웨이의 다중화 그룹 설정상의 주소를 포함한다. 일반적인 경우 상기 메시지를 수신하는 게이트웨이의 실제 IP 주소와 상기 메시지를 수신할 게이트웨이의 다중화 그룹 설정상의 주소는 같은 값을 가지나, L4나 VRRP를 사용하는 게이트웨이 다중화 환경의 경우에는 다를 수 있다. IP 주소 변경 메시지는 또한, 변경 전의 원격 게이트웨이 IP 주소, 변경 후의 원격 게이트웨이 IP 주소, 다중화 회선의 인덱스 번호, 즉 다중화 된 회선 중 몇 번째 회선인지를 나타내는 번호 등의 정보를 포함한다. The IP address change message sent by the remote gateway includes the circuit multiplexing group name, the actual IP address of the gateway that receives the message, and the address on the multiplex group configuration of the gateway that will receive the message. In general, the actual IP address of the gateway that receives the message and the address in the multiplex group configuration of the gateway that will receive the message have the same value, but may be different in the case of a gateway multiplexing environment using L4 or VRRP. The IP address change message also includes information such as the remote gateway IP address before the change, the remote gateway IP address after the change, the index number of the multiplexed line, that is, the number indicating the number of the multiplexed lines.
원격 게이트웨이로부터 IP 주소 변경 메시지를 수신한 원격주소변경 처리모듈(132)은 IP 주소 변경 메시지의 크기를 확인하고, IP 주소 변경 메시지에 포함된 회선 다중화 그룹 이름으로부터 IP 정보 변경이 필요한 회선 다중화 그룹을 찾아낸다. 또한, 상기 메시지에 포함된 변경 전의 원격 게이트웨이 IP 주소 정보와 회선 다중화 그룹에 등록된 원격 게이트웨이 IP 주소들을 비교하고, IP 정보 변경이 필요한 회선의 인덱스 번호를 검색한다. 그리고, 검색된 다중화 회선 인덱스 번호에 해당하는 원격 게이트웨이 IP 주소를 상기 IP 주소 변경 메시지가 포함하는 변경 후의 원격 게이트웨이 IP 주소로 교체한다. 또한, 변경된 IP 주소와 관련된 GRE 디바이스의 원격지 IP 주소 또한 변경 후의 원격 게이트웨이 IP 주소 값으로 수정한다. Upon receiving the IP address change message from the remote gateway, the remote address change processing module 132 checks the size of the IP address change message, and selects the line multiplexing group requiring IP information change from the line multiplexing group name included in the IP address change message. Find out. In addition, the remote gateway IP address information before the change included in the message is compared with the remote gateway IP addresses registered in the circuit multiplexing group, and the index number of the circuit requiring the IP information change is retrieved. Then, the remote gateway IP address corresponding to the retrieved multiplex circuit index number is replaced with the remote gateway IP address after the change included in the IP address change message. Also, modify the remote IP address of the GRE device related to the changed IP address to the value of the remote gateway IP address after the change.
로컬 게이트웨이가 L4나 VRRP를 이용하여 다중화되어 있다면 다중화되어 있는 다른 게이트웨이들에도 IP 주소 변경 메시지를 발송하고, 회선 다중화 정보를 동기화 할 수 있도록 한다. If the local gateway is multiplexed using L4 or VRRP, it can send IP address change messages to other multiplexed gateways and synchronize line multiplexing information.
회선감지/라우팅관리 모듈(140)은 원격지에 위치하는 게이트웨이와 장애 감지를 위해 서로 UDP 요청/응답(Request/Reply) 패킷을 주고받는 역할을 담당한다. 이 때 회선 장애 감지를 위해 주고받는 패킷은 "DETECT_PACKET"이라는 구조체로 표현되며, DETECT_PACKET 구조체는 패킷의 유형, 회선 장애 감지 패킷의 일련번호 정보를 포함한다. The circuit detection /
패킷의 유형은, Request 패킷인지 Reply 패킷인지를 나타낸다. "seq" 필드는 회선 장애 감지 패킷의 일련번호를 나타낸다. 동일한 형태의 Request 패킷과 Reply 패킷이 주기적으로 전송되기 때문에, 각 주기에 해당되는 패킷들을 다른 주기에 해당되는 패킷들과 구별하는데 이용된다. The packet type indicates whether it is a request packet or a reply packet. The "seq" field represents the serial number of the circuit failure detection packet. Since the same type of Request packet and Reply packet are transmitted periodically, it is used to distinguish packets corresponding to each period from packets corresponding to other periods.
회선감지/라우팅관리 모듈(140)은 UDP DETECT_PACKET_PORT(2003번) 포트를 이용한다. 이 포트는 회선 장애 감지 Request 패킷을 전송하고 Reply 패킷을 받는데도 이용되며, 또한 다른 게이트웨이로부터 Request 패킷을 받았을 때 Reply 패킷을 보내는 에코(Echo) 서버로도 이용된다. 이 포트를 통해 회선 장애 감지 패킷을 수신한 회선 감지 모듈은, 우선 DETECT_PACKET 구조체의 유형이 DETECT_REQUEST인 지 DETECT_REPLY인지 확인한다. DETECT_REQUEST일 경우에는 단순히 DETECT_PACKET 구조체의 유형 필드 값을 DETECT_REPLY로 바꾸어 응답하고, DETECT_REPLY일 경우에는 회선 장애 여부를 판단하는 정보로 이용한다. The circuit detection /
회선감지/라우팅관리 모듈(140)은, 기 설정된 주기로 회선 장애 여부를 판단하는 Request 패킷을 전송하는데, 전체 회선 다중화 그룹에 대한 회선 장애 감지 Request 패킷을 동시에 보내지 않고, 가능한 한 분산하여 전송한다.The circuit detection /
회선감지/라우팅관리 모듈(140)은 또한, 하나의 회선 다중화 그룹에 해당되는 회선 장애 감지 Request 패킷을 보내기 전에 같은 회선 다중화 그룹에 대해 지난 번 주기에 보낸 Request 패킷에 대한 Reply 패킷이 왔는지를 검사한다. 만일 장애 상태였던 회선을 통해 Reply 패킷이 도착했다면 해당 회선은 다시 정상화된 것으로 간주된다. 그리고 정상 상태였던 회선으로 Reply 패킷이 도착하지 않았다면 해당 회선을 장애 발생 회선으로 간주한다. 그러나 UDP 패킷이 한번 전달되지 않았다고 해서 해당 회선을 장애 회선으로 간주하기는 어려운 경우가 있기 때문에 연속으로 기 설정된 횟수 이상 Reply 패킷이 도착하지 않을 경우에는 해당 회선을 장애 회선으로 간주한다. The circuit detection /
이와 같은 방법으로 회선 장애 여부를 감지해서 만일 회선 상태에 변화가 포착된다면 해당 회선 다중화 그룹에 대한 라우팅을 변경한다. 즉, 해당 회선 다중화 그룹에 대한 기존의 라우팅 엔트리를 지우고, 현재 정상 상태에 있는 정보만으로 다시 라우팅 엔트리를 생성한다. In this way, it detects a circuit failure and changes the routing for that circuit multiplexing group if a change in line condition is detected. That is, the existing routing entry for the circuit multiplexing group is deleted, and the routing entry is generated again only with information currently in a normal state.
스케줄러(150)는 일정한 주기로 수행되어야 할 작업들을 처리한다. 일정한 주기로 수행되어야 할 작업들은 회선 다중화 그룹별로 회선 장애 감지 패킷(Route Detection Packet) 전송, 로컬 게이트웨이 IP 주소 변경 여부 점검 등이다. 즉, 스케줄러(는 IP 주소 관리 모듈() 및 회선감지/라우팅관리 모듈()과 연동하여, 주기적으로 회선 장애 감지 패킷(Route Detection Packet)을 전송하고, 로컬 게이트웨이의 IP 주소 변경 여부를 점검한다. The
스케줄러(150)가 몇 초 주기로 상기의 작업들을 수행할 것인지를 결정하는 점검 주기에 따라 몇 개의 점검 주기 단위로 회선 장애 감지 수행할 것인가에 대한 장애 감지 점검 주기, 또는 몇 개의 점검 주기 단위로 로컬 게이트웨이 IP 주소 변경을 점검할 것인가에 대한 IP 주소 점검 주기 등이 설정될 수 있다. Failure detection check cycle for how many cycles to perform the circuit failure detection according to the check cycle that the
한편, 터널 정보 저장부(160)는 생성된 GRE 터널에 대한 상태 정보를 저장한다.Meanwhile, the tunnel
도 6은 본 발명에 따른 터널 정보의 바람직한 일 실시예를 나타낸다. 6 shows an exemplary embodiment of tunnel information according to the present invention.
도 6을 살펴보면, 터널 정보 저장부(160)가 저장하는 GRE 터널은 다중화 그룹별로 관리됨을 알 수 있다. Referring to FIG. 6, it can be seen that the GRE tunnel stored by the tunnel
하나의 줄은 하나의 GRE 터널을 표현하며, 빈 줄로 구분되는 하나의 단락은 하나의 회선 다중화 그룹을 표현한다. 터널 정보 파일을 구성하고 있는 각 정보 항목들의 의미는 파일의 첫번째 줄에 표기되어 있다. One line represents one GRE tunnel, and one paragraph, separated by a blank line, represents one circuit multiplexing group. The meaning of each item of information in the tunnel information file is indicated on the first line of the file.
GID는 회선 다중화 그룹 ID와 회선 인덱스 번호이고, TLBGROUP_NAME은 회선 다중화 그룹 이름이며, POLICY는 로드 밸런싱 정책, LOCAL_EXT_IP 로컬 게이트웨이의 외부 인터페이스 IP 주소, LOCAL_EXT_DEV는 로컬 게이트웨이의 외부 인터페이스 디바이스 이름을 나타낸다. 이때, 로컬 게이트웨이의 외부 인터페이스 디바이스 이름은 고정 IP 디바이스의 경우에는 고정 IP가, 유동 IP 디바이스의 경우에는 해당 디바이스 이름이 표시된다. GID is the circuit multiplexing group ID and the circuit index number, TLBGROUP_NAME is the circuit multiplexing group name, POLICY is the load balancing policy, LOCAL_EXT_IP local gateway's external interface IP address, and LOCAL_EXT_DEV is the local interface's external interface device name. In this case, the external interface device name of the local gateway is displayed in the case of a fixed IP device and a fixed IP device, and in the case of a dynamic IP device.
또한, REMOTE_EXT_IP는 원격 게이트웨이의 외부 인터페이스 IP 주소를, WGT는 ECMP 로드 밸런싱에서 이용되는 가중치 값을, STATE는 회선 상태를 나타내며, 회선 상태가 정상일 경우는 active, 장애일 경우에는 inactive로 표시된다. LOCAL_SUBNET는 로컬 게이트웨이의 서브넷 주소를 나타내는데, 서브넷이 다중화되어 있을 경우 대표 서브넷(첫 번째 서브넷)만 표시된다. REMOTE_SUBNET는, 원격 게이트웨이의 서브넷 주소를 나타내고, 서브넷이 다중화 되어 있을 경우 대표 서브넷(첫번째 서브넷)만 표시된다. LOCAL_INT_IP는 로컬 게이트웨이의 내부 인터페이스 IP 주소를, REMOTE_INT_IP는 원격 게이트웨이의 내부 인터페이스 IP 주소를 나타낸다. 터널 정보 저장부(160)가 저장하는 GRE 터널 정보는 회선 상태에 변화가 생길 때마다 업데이트된다. In addition, REMOTE_EXT_IP represents the external interface IP address of the remote gateway, WGT represents the weight value used in ECMP load balancing, STATE represents the circuit state, and if the circuit state is normal, it is displayed as active and inactive if the failure occurs. LOCAL_SUBNET represents the subnet address of the local gateway. If the subnets are multiplexed, only the representative subnet (the first subnet) is displayed. REMOTE_SUBNET represents the subnet address of the remote gateway, and if the subnets are multiplexed, only the representative subnet (the first subnet) is displayed. LOCAL_INT_IP represents the internal interface IP address of the local gateway, and REMOTE_INT_IP represents the internal interface IP address of the remote gateway. The GRE tunnel information stored by the tunnel
마지막으로, 게이트웨이 이중화 모듈(170)은 이중화된 게이트웨이 구조에서 하나의 게이트웨이 중 일부에 장애가 발생하더라도 다른 게이트웨이가 장애 발생 호스트들의 역할을 대신할 수 있도록 제어하는 역할을 한다. 즉, 이중화된 다른 게이트웨이에 장애가 발생하더라도 상술한 바와 같은 GRE 터널, 패킷 포워딩 등이 유지되도록 하기 위해 게이트웨이 다중화가 이루어진다. 여기서는, 이중화라고 표현하였으나, 구현하기에 따라서는 게이트웨이가 2개 이상일 수도 있을 것이며, 이 경우에 있어서는 게이트웨이 이중화 모듈이라는 표현보다는 게이트웨이 다중화 모듈 이라고 표현하는 것이 더 바람직하다 할 것이다. 이러한 역할을 위해, 게이트웨이 이중화 모듈(170)은 로컬 서브넷 또는 원격지 서브넷으로부터 수신한 IP 주소 변경 메시지를 상기 적어도 하나의 제2 게이트웨이로 포워딩한다. Finally, the
게이트웨이 이중화 모듈(170)은 L4 또는 VRRP를 기반으로 하여 동작하도록 구성될 수 있다. L4나 VRRP는 모두 호스트들 중 일부에 장애가 발생하더라도 다른 호스트들이 장애 발생 호스트들의 역할을 대신할 수 있도록 하는 호스트 다중화의 방법들이다. The
L4는 두 게이트웨이가 공유하고 있는 가상 IP 주소를 가지고 있는 가상 인터페이스를 사용하며, VRRP(Virtual Router Redundancy Protocol)는 정적 기본 라우팅 환경에서 불가피하게 발생하는 SPOF(Single Point of Failure)를 제거하기 위한 것으로, VRRP는 게이트웨이 그룹을 단일 가상 게이트웨이로 구성함으로써 정적 구성 복원력 문제를 해결한다. 가상 게이트웨이를 구성하기 위해 그룹에 속한 각 게이트웨이를 VRRP 게이트웨이라 하는데, 이처럼 가상 게이트웨이는 하나 이상의 VRRP 게이트웨이로 구성된다. 현재 가상 게이트웨이 IP 주소를 제어하고 있는 VRRP 라우터를 마스터라고 하며, 마스터는 이러한 가상 IP주소로 전송된 패킷을 포워딩 한다. 그룹 내의 다른 VRRP 게이트웨이는 백업 역할을 하며, 마스터에 장애가 발생하는 경우 선택 과정을 거쳐 백업 라우터 중 하나가 새로운 마스터가 된다. VRRP를 사용하면 리던던시(Redundancy)를 제공할 뿐 아니라 로드를 공유할 수도 있다. L4 uses a virtual interface that has a virtual IP address shared by two gateways, and Virtual Router Redundancy Protocol (VRRP) is designed to eliminate single point of failure (SPOF) that inevitably occurs in a static default routing environment. VRRP solves the problem of static configuration resiliency by configuring a group of gateways into a single virtual gateway. Each gateway belonging to a group to form a virtual gateway is called a VRRP gateway. As such, a virtual gateway is composed of one or more VRRP gateways. The VRRP router, which currently controls the virtual gateway IP address, is called the master, and the master forwards packets sent to these virtual IP addresses. The other VRRP gateways in the group act as backups, and if a master fails, one of the backup routers becomes a new master through a selection process. VRRP not only provides redundancy, but also allows for load sharing.
도 7은 본 발명에 따라 이중화된 게이트웨이들이 회선 다중화 정보를 공유하 는 방법을 도시한다. 7 illustrates a method in which redundant gateways share circuit multiplexing information according to the present invention.
도 7에서 제1 게이트웨이(310), 제2 게이트웨이(320) 각각의 eth0(311, 321)은 실제 IP를 가진 외부 인터페이스를, eth1(312, 322)은 실제 IP를 가진 내부 인터페이스를 나타낸다. eth2(313, 323)는 두 게이트웨이가 직접 연결되어 있는 DMZ 인터페이스를 나타내며, 경우에 따라 존재할 수도 있고 그렇지 않을 수도 있다. In FIG. 7,
L4를 사용할 경우 ethX(314, 324)는 eth0(311, 321)에 바인딩되어 두 게이트웨이가 공유하고 있는 가상 IP 주소를 가지고 있는 가상 인터페이스를 의미하며, VRRP를 사용할 경우에는 두 게이트웨이 중 마스터 게이트웨이에만 존재하는 앨리아스(alias) IP 주소를 의미한다. When using L4, ethX (314, 324) means a virtual interface that is bound to eth0 (311, 321) and has a virtual IP address shared by both gateways.When using VRRP, it exists only in the master gateway of the two gateways. Alias IP address.
여기서, L2/L4 스위치는 OSI 참조 모델의 레이어 2 범주 (Ethernet Protocol 상에서 srouce MAC, destination MAC)에서 패킷의 경로를 제어하는 L2 스위치일 수도 있고, 레이어 4 범주의 패킷을 분류하고 경로를 제어하고, 레이어 4에서 발생하는 세션을 관리하며, 세션 관리를 위한 패킷도 조작하는 레이어 4 스위치가 될 수도 있다. Here, the L2 / L4 switch may be an L2 switch that controls the path of the packet in the
도 8은 본 발명에 따라 이중화된 게이트웨이간 다중화 동작 흐름을 도시한다. 8 illustrates a multiplexing operation flow between redundant gateways according to the present invention.
도 8은 기본적으로 도 7의 구성을 기준과 동일한 구성을 가정한 경우의 동작 흐름이다. 우선, 게이트웨이들 중 하나로 IP 주소 변경 메시지가 도착한다. 도 8의 경우, 제1 게이트웨이(310)에 도착한다(S701). 제1 게이트웨이(310)는 우선 원격 게이트웨이의 IP 주소 변경에 따른 조치를 취한다. 즉, 회선 다중화 그룹 정보를 갱신하고 관련된 GRE 디바이스가 가진 정보를 갱신한다(S702). 제1 게이트웨이(310)는 상기 IP 주소 변경 메시지에 포함된 필드 중 receiver_real 필드와 receiver_tlb_list 필드를 비교한다(S703). 여기서, receiver_real 필드는 메시지를 수신할 게이트웨이의 실제 IP 주소를, receiver_tlb_list 필드는 메시지를 수신할 게이트웨이의 다중화 그룹 설정상의 주소를 나타낸다. 제1 게이트웨이(310)는 두 필드의 값이 동일함을 확인할 것이다. 원격지 게이트웨이가 IP 주소 변경을 감지하고 IP 주소 변경 메시지를 구성하여 전송할 때는 두 필드를 같은 값으로 설정하기 때문이다. 제1 게이트웨이(310)는 두 필드의 값이 같기 때문에 자신이 원격의 게이트웨이로부터 직접 IP 주소 변경 메시지를 받은 것임을 알게 된다. FIG. 8 is a flowchart of operation when assuming the same configuration as that of the configuration of FIG. 7. First, an IP address change message arrives at one of the gateways. In the case of FIG. 8, the
제1 게이트웨이(310)는 IP 주소 변경 메시지를 공유해야 할 동기화 서버가 있는지를 확인한다. 여기서는, 동기화 서버가 제2 게이트웨이(320)일 것이다. 동기화 서버의 존재를 확인한 제1 게이트웨이(310)는 IP 주소 변경 메시지를 다시 구성하여 동기화 서버에 IP 주소 변경 메시지를 전송한다(S704). 이때 제1 게이트웨이(310)는, IP 주소 변경 메시지가 원격의 게이트웨이로부터 전송된 것이 아니라 다중화 된 동기화 서버로부터 보내진 것임을 알 수 있는 표식을 상기 IP 주소 변경 메시지에 포함시켜 전송한다. The
제2 게이트웨이(320)가 제1 게이트웨이(310)가 전송하는 IP 주소 변경 메시지를 수신하면(S710), 제1 게이트웨이(310)가 그러했던 것처럼 제2 게이트웨이(320)도 우선 원격 게이트웨이의 IP 주소 변경에 따른 조치를 취한다. 즉, 회선 다 중화 그룹 정보를 갱신하고 관련된 GRE 디바이스가 가진 정보를 갱신한다(S711). When the
제2 게이트웨이(320)는 상기 IP 주소 변경 메시지에 포함된 필드 중 메시지를 수신할 게이트웨이의 실제 IP 주소 필드와 메시지를 수신할 게이트웨이의 다중화 그룹 설정상의 주소 필드를 비교한다(S712). 제1 게이트웨이로부터 재구성된 IP 주소 변경 메시지를 받은 경우이므로, 상기 두 필드의 비교 결과 제2 게이트웨이(320)는 두 필드의 값이 다름을 확인하고(S713의 No) IP 주소 변경 메시지가 다중화 된 동기화 서버로부터 보내진 것임을 알게 된다. 이는 IP 주소 변경 메시지를 공유할 동기화 서버가 존재하지 않음을 의미하기 때문에 원격 게이트웨이 IP 주소 변경과 관련된 루틴을 종료한다. 만일, 제2 게이트웨이(320)가 원격지로부터 IP 주소 변경 메시지를 처음 받은 경우라면, 비교 결과 상기 두 필드의 주소가 동일할 것이므로(S713의 Yes), 재구성된 IP 주소 변경 메시지를 제1 게이트웨이로 전송한다(S714)The
한편, IP 주소 변경 메시지를 공유해야 할 동기화 서버의 주소는 동기화 서버가 가지고 있는 라우팅 가능한 어떤 IP 주소도 무방하나 가장 안정적인 회선을 선택하는 것이 좋다. 도 7의 경우와 같이 보안 정책이 적용되지 않은 DMZ 회선이 존재한다면 이 회선을 이용하는 것이 좋고 그렇지 않다면 로컬 서브넷 인터페이스 회선을 이용하는 것이 권장된다. On the other hand, the address of the synchronization server to which the IP address change message should be shared may be any routable IP address of the synchronization server, but it is best to select the most stable line. If there is a DMZ line to which the security policy is not applied as in the case of FIG. 7, it is recommended to use this line, otherwise it is recommended to use a local subnet interface line.
본 발명은, 다수의 GRE 터널을 그룹화 하여 관리하고, 일련의 패킷을 그룹 내의 여러 터널을 통해 전송함으로써 실질적인 광대역 서비스를 제공하고, 더 나아가 게이트웨이 또한 다중화 함으로써 현재 동작중인 게이트웨이에 장애가 발생하더라도 백업(back-up) 게이트웨이로 하여금 중단 없는 서비스를 제공할 수 있도록 하는 효과를 가진다. The present invention provides a substantial broadband service by grouping and managing a plurality of GRE tunnels and transmitting a series of packets through several tunnels in a group. -up) Has the effect of enabling the gateway to provide uninterrupted service.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050130943A KR100664715B1 (en) | 2005-12-27 | 2005-12-27 | Gre based virtual private network supplying gateway multiplication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050130943A KR100664715B1 (en) | 2005-12-27 | 2005-12-27 | Gre based virtual private network supplying gateway multiplication |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100664715B1 true KR100664715B1 (en) | 2007-01-03 |
Family
ID=37866913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050130943A KR100664715B1 (en) | 2005-12-27 | 2005-12-27 | Gre based virtual private network supplying gateway multiplication |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100664715B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10284392B2 (en) | 2017-05-19 | 2019-05-07 | At&T Intellectual Property I, L.P. | Virtual private network resiliency over multiple transports |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100346355B1 (en) | 2001-09-12 | 2002-07-31 | Piolink Inc | Load balancer, and system and method for clustering vpn gateway using the same |
KR20030013496A (en) * | 2003-01-14 | 2003-02-14 | 어울림정보기술주식회사 | Device for sending data using multi-tunneled virtual private network gateway |
JP2003069597A (en) | 2001-08-28 | 2003-03-07 | Nec Corp | LARGE-SCALE IPSec VPN CONSTRUCTION METHOD, LARGE-SCALE IPSec VPN SYSTEM AND PROGRAM, AND KEY SHARING INFORMATION PROCESSING DEVICE |
US20030088698A1 (en) | 2001-11-06 | 2003-05-08 | Inderpreet Singh | VPN failure recovery |
KR20040098093A (en) * | 2003-05-13 | 2004-11-20 | (주)디엔피그룹 | A vpn system supporting a multitunnel ipsec and operation method thereof |
-
2005
- 2005-12-27 KR KR1020050130943A patent/KR100664715B1/en not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003069597A (en) | 2001-08-28 | 2003-03-07 | Nec Corp | LARGE-SCALE IPSec VPN CONSTRUCTION METHOD, LARGE-SCALE IPSec VPN SYSTEM AND PROGRAM, AND KEY SHARING INFORMATION PROCESSING DEVICE |
KR100346355B1 (en) | 2001-09-12 | 2002-07-31 | Piolink Inc | Load balancer, and system and method for clustering vpn gateway using the same |
US20030088698A1 (en) | 2001-11-06 | 2003-05-08 | Inderpreet Singh | VPN failure recovery |
KR20030013496A (en) * | 2003-01-14 | 2003-02-14 | 어울림정보기술주식회사 | Device for sending data using multi-tunneled virtual private network gateway |
KR20040098093A (en) * | 2003-05-13 | 2004-11-20 | (주)디엔피그룹 | A vpn system supporting a multitunnel ipsec and operation method thereof |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10284392B2 (en) | 2017-05-19 | 2019-05-07 | At&T Intellectual Property I, L.P. | Virtual private network resiliency over multiple transports |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113765782B (en) | Local repair of underlying faults using prefix independent convergence | |
CN113765829B (en) | Activity detection and route convergence in a software-defined networking distributed system | |
US7619966B2 (en) | Hybrid virtual private LAN extensions | |
US10003531B2 (en) | Method for establishing tunnel, method for allocating label, device and network system | |
CN107819677B (en) | Message forwarding method and device | |
KR101451174B1 (en) | Mac address learning in a distributed bridge | |
US9166877B2 (en) | Distinguishing between connectivity verification availability and forwarding protocol functionality in a computer network | |
US8331220B2 (en) | Edge node redundant system | |
US7765306B2 (en) | Technique for enabling bidirectional forwarding detection between edge devices in a computer network | |
US9288129B2 (en) | Host-router virtual tunnelling and multiple tunnel management | |
EP2536068A1 (en) | Virtual subscriber management | |
US20130061034A1 (en) | Transparent Mode Encapsulation | |
CN104023022B (en) | A kind of IPSec SA acquisition methods and device | |
CN106559246B (en) | Cluster implementation method and server | |
WO2021227863A1 (en) | Disaster recovery method and apparatus for hybrid cloud private line access network | |
US11329845B2 (en) | Port mirroring over EVPN VXLAN | |
US11349735B2 (en) | Faster fault-detection mechanism, for example using bidirectional forwarding detection (BFD), on network nodes and/or hosts multihomed using a link aggregation group (LAG) | |
CN111064659B (en) | Node protection of BUM traffic for multi-homed node failures | |
CN111049925A (en) | Hybrid cloud network system, communication system and communication method | |
US8612626B2 (en) | Group member detection among nodes of a network | |
US11444807B2 (en) | EVPN VPWS FXC local switching connectivity | |
KR100664715B1 (en) | Gre based virtual private network supplying gateway multiplication | |
CN111885630B (en) | Data transmission method and communication device | |
KR100730024B1 (en) | Virtual private networks based on gre tunnel and method of therein | |
Vadivelu et al. | Design and performance analysis of complex switching networks through VLAN, HSRP and link aggregation |
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: 20121226 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20131227 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |