KR20160028250A - Duplex control system and method for control in software defined network - Google Patents
Duplex control system and method for control in software defined network Download PDFInfo
- Publication number
- KR20160028250A KR20160028250A KR1020140117074A KR20140117074A KR20160028250A KR 20160028250 A KR20160028250 A KR 20160028250A KR 1020140117074 A KR1020140117074 A KR 1020140117074A KR 20140117074 A KR20140117074 A KR 20140117074A KR 20160028250 A KR20160028250 A KR 20160028250A
- Authority
- KR
- South Korea
- Prior art keywords
- controller
- control channel
- active
- standby
- network interface
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
Abstract
Description
본 발명은 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 시스템 및그 방법에 관한 기술이다.The present invention relates to a duplication control system and method of a controller in a software defined network.
소프트웨어 정의 네트워크(SDN, Software Defined Network)는 데이터 평면(Data Plane)과 제어 평면(Control)이 단일 장비 내에 위치한 일체형 네트워크에서 제어 평면(Control Plane)과 데이터 평면을(Data Plane)분리하고 추상화함으로써 소프트웨어 프로그래밍이 가능한 중앙 집중식 제어구조이다. A software defined network (SDN) separates and abstracts a control plane and a data plane from an integrated network in which a data plane and a control plane are located within a single device, It is a programmable centralized control structure.
중앙 집중식 제어 구조는 분산 제어 구조와 달리 부하가 중앙의 한곳으로 집중되기 때문에 장애에 취약하기 때문에 신뢰성(Reliability)과 가용성(Avalability)을 보장하기 위한 장치나 방법이 필요하다. 신뢰성과 가용성을 보장하기 위한 방법 중 하나로 중앙 제어기를 복수로 운용하는 제어기 이중화를 들 수 있다. 오픈플로우(Openflow)의 중앙 집중식 제어구조는 중앙 서버에 장애가 발생시 전체 시스템에 영향을 미치게 된다.Unlike the distributed control structure, the centralized control structure is vulnerable to failure because the load is concentrated in a central place, so that a device or a method is required to ensure reliability and availability. One of the ways to ensure reliability and availability is to duplicate the controller with multiple central controllers. The centralized control structure of Openflow affects the entire system in the event of a central server failure.
오픈플로우(OpenFlow) 표준 문서에서는(버전 1.3)에서는 이중화된 중앙 제어기간 역할을 마스터(Master)와 슬레이브(Slave)로 나누고 있으며 마스터는 오픈플로우 스위치(OpenFlow Switch)들을 직접 제어하고 슬레이브 제어기는 오픈플로우 스위치를 제어할 수 없도록 권고하고 있다. In the OpenFlow standard document (version 1.3), the role of the duplicated central control period is divided into master and slave. The master directly controls the open flow switches and the slave controller controls the open flow It is recommended not to control the switch.
표준 문서에서는 마스터와 슬레이브에 대한 정의는 되어 있지만 실제 운용 방법에 대해서는 기술하지 않고 있으며, 현재 출시된 다수의 오픈 플로우 스위치들은 오픈 플로우 버전 1.3 이하로 구현되어 있어 이러한 기능을 사용할 수 없는 실정이다. Although the standard document defines the master and the slave, it does not describe the actual operation method, and many of the currently available open flow switches are implemented with the open flow version 1.3 or lower, and thus the function can not be used.
표준에서 권고하는 방법을 사용할 수 없는 상황에서는 별도의 부하 분산 스위치등과 같은 장비를 도입하여 이중화를 구성할 수 있다. 하지만, 별도의 장비를 사용함으로써 구입 및 운용에 따른 부가적인 비용이 발생한다. In situations where the standard recommended method can not be used, redundancy can be achieved by introducing equipment such as a load balancing switch. However, the use of separate equipment creates additional costs for purchase and operation.
소프트웨어 정의 네트워크(SDN)에서 이중화 되지 않은 제어기에 장애가 발생할 경우, 신규 플로우에 대한 처리가 되지 않으므로 장애는 곧 서비스 가입자의 이탈 및 매출 감소로 이어질 수 있다. 따라서, 제어기의 이중화는 필수적으로 구비해야 할 기능 중 하나이다.In the case of a failure of a non-redundant controller in a software defined network (SDN), failure to deal with a new flow can lead to a departure of a service subscriber and a decrease in sales. Therefore, redundancy of the controller is one of the functions that must be provided.
따라서, 본 발명이 이루고자 하는 기술적 과제는 소프트웨어 정의 네트워크에서 별도의 장치를 사용하지 않고 오픈플로우(OpenFlow) 버전 1.3 이하에서도 동작할 수 있는 컨트롤러의 이중화 제어 시스템 및 그 방법을 제공하는 것이다.SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a duplication control system and method for a controller that can operate in OpenFlow version 1.3 or lower without using a separate device in a software defined network.
본 발명의 하나의 특징에 따르면, 이중화 제어 시스템은 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 시스템으로서, 제어 채널 및 데이터 채널을 통해 오픈플로우 메시지를 전송하는 액티브 컨트롤러, 그리고 상기 액티브 컨트롤러와 상기 제어 채널 및 상기 데이터 채널을 통해 서로 동기화되고, 상기 제어 채널 및 상기 데이터 채널을 통해 수신되는 오픈플로우 메시지를 모니터링하여 이상 발생시 상기 액티브 컨트롤러의 장애로 간주하여 상기 액티브 컨트롤러에게 비활성화 명령을 전송하는 스탠바이 컨트롤러를 포함하고,According to one aspect of the present invention, a duplication control system is a duplication control system of a controller in a software defined network, comprising: an active controller for transmitting an open flow message over a control channel and a data channel; And a standby controller for monitoring an open flow message received through the control channel and the data channel and transmitting a deactivation command to the active controller by considering the failure of the active controller when an error occurs,
상기 액티브 컨트롤러는 상기 비활성화 명령을 수신하면, 스탠바이 모드로 동작한다.Upon receiving the deactivation command, the active controller operates in a standby mode.
상기 액티브 컨트롤러는,The active controller includes:
상기 데이터 채널이 설정된 제1 네트워크 인터페이스 카드, 그리고 상기 제어 채널이 설정된 제2 네트워크 인터페이스 카드를 포함하고,A first network interface card in which the data channel is set, and a second network interface card in which the control channel is set,
상기 스탠바이 컨트롤러는,The standby controller includes:
상기 데이터 채널이 설정되고 상기 데이터 채널을 통해 상기 액티브 컨트롤러의 제1 네트워크 인터페이스 카드와 동기화된 제1 네트워크 인터페이스 카드, 그리고 상기 제어 채널이 설정되고 상기 제어 채널을 통해 상기 액티브 컨트롤러의 제2 네트워크 인터페이스 카드와 동기화된 제2 네트워크 인터페이스 카드를 포함할 수 있다.A first network interface card in which the data channel is established and synchronized with the first network interface card of the active controller via the data channel, And a second network interface card synchronized with the second network interface card.
상기 스탠바이 컨트롤러는,The standby controller includes:
상기 제어 채널을 통해 수신되는 오픈플로우 메시지와 상기 데이터 채널을 통해 수신되는 오픈플로우 메시지를 비교하여 이상 여부를 판단하고, 이상이 발생하면 상기 액티브 컨트롤러에게 비활성화 명령을 전송하고 액티브 모드로 동작하는 이중화 제어부를 더 포함할 수 있다.And an open flow message received through the control channel is compared with an open flow message received through the data channel to determine whether there is an abnormality. If an error occurs, the controller transmits an inactivation command to the active controller and operates in an active mode. As shown in FIG.
상기 이중화 제어부는,The duplication control unit includes:
상기 액티브 모드로 동작시 상기 제어 채널을 통해 상기 액티브 컨트롤러의 주소 정보를 수신하여 상기 스탠바이 컨트롤러의 제2 네트워크 인터페이스 카드에 상기 액티브 컨트롤러의 주소 정보를 할당할 수 있다.The controller may receive the address information of the active controller through the control channel and allocate the address information of the active controller to the second network interface card of the standby controller when operating in the active mode.
정상적으로 수신된 오픈플로우 메시지를 저장하는 메모리를 더 포함할 수 있다.And a memory for storing normally received open flow messages.
상기 액티브 컨트롤러는,The active controller includes:
상기 스탠바이 컨트롤러부터 비활성화 명령이 수신되면, 상기 제어 채널을 통해 수신된 상기 스탠바이 컨트롤러의 주소 정보를 수신하여 상기 액티브 컨트롤러의 제2 네트워크 인터페이스 카드에 할당하는 이중화 제어부를 더 포함할 수 있다.And a redundancy control unit for receiving the address information of the standby controller received through the control channel and allocating the address information to the second network interface card of the active controller when the disable command is received from the standby controller.
상기 액티브 컨트롤러의 제어하에 동작하는 스위치의 컨트롤러 주소는 상기 액티브 컨트롤러의 주소 정보로 설정될 수 있다.The controller address of the switch operating under the control of the active controller may be set as the address information of the active controller.
본 발명의 다른 특징에 따르면, 이중화 제어 방법은 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 방법으로서, 액티브 컨트롤러가 제어 채널 및 데이터 채널을 통해 스탠바이 컨트롤러와 서로 동기화하는 단계, 상기 액티브 컨트롤러가 상기 제어 채널 및 상기 데이터 채널 모두를 통해 오픈플로우 메시지를 전송하는 단계, 그리고 상기 제어 채널을 통해 상기 스탠바이 컨트롤러로부터 비활성화 명령이 수신되면, 액티브 모드에서 스탠바이 모드로 전환하는 단계를 포함한다.According to another aspect of the present invention, a duplication control method is a duplication control method of a controller in a software defined network, comprising the steps of: an active controller synchronizing with a standby controller via a control channel and a data channel; Transmitting an open flow message through all of the data channels, and switching from active mode to standby mode when an inactive command is received from the standby controller via the control channel.
상기 전환하는 단계는,Wherein the switching comprises:
상기 스탠바이 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드에 할당된 맥(MAC) 주소 및 IP 주소를 상기 액티브 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드에 할당할 수 있다.And assign a MAC address and an IP address allocated to a network interface card connected to the control channel of the standby controller to a network interface card connected to the control channel of the active controller.
상기 오픈플로우 메시지를 전송하는 단계는,Wherein the step of transmitting the open flow message comprises:
상기 액티브 컨트롤러가 스위치에 대한 제어 메시지를 상기 데이터 채널 및 상기 제어 채널을 통해 상기 스위치로 동시에 전송하고,The active controller simultaneously transmitting a control message for the switch to the switch via the data channel and the control channel,
상기 스위치에 컨트롤러의 주소는 상기 액티브 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드의 주소로 설정될 수 있다.The address of the controller in the switch may be set to the address of the network interface card connected to the control channel of the active controller.
상기 서로 동기화 하는 단계는,Wherein the step of synchronizing with each other comprises:
상기 스탠바이 컨트롤러 및 상기 액티브 컨트롤러는 상기 제어 채널에 연결된 상기 각각의 네트워크 인터페이스 카드에 할당된 맥(MAC) 주소 및 IP 주소를 서로 교환할 수 있다.The standby controller and the active controller may exchange MAC addresses and IP addresses assigned to the respective network interface cards connected to the control channel.
본 발명의 또 다른 특징에 따르면, 이중화 제어 방법은 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 방법으로서, 스탠바이 컨트롤러가 제어 채널 및 데이터 채널을 통해 액티브 컨트롤러와 서로 동기화하는 단계, 상기 스탠바이 컨트롤러가 상기 제어 채널 및 상기 데이터 채널 모두를 통해 오픈플로우 메시지를 전송하는 단계, 상기 제어 채널을 통해 수신되는 오픈플로우 메시지와 상기 데이터 채널을 통해 수신되는 오픈플로우 메시지를 서로 비교하여 이상 여부를 판단하는 단계, 상기 오픈플로우 메시지에 이상이 발견되면, 상기 액티브 컨트롤러의 장애로 간주하여 상기 액티브 컨트롤러에게 비활성화 명령을 전송하는 단계, 그리고 스탠바이 모드에서 액티브로 모드로 전환하는 단계를 포함한다.According to another aspect of the present invention, a duplication control method is a method of duplicating a controller in a software defined network, comprising the steps of: a standby controller synchronizing with an active controller via a control channel and a data channel; Comparing an open flow message received through the control channel with an open flow message received through the data channel to determine whether the open flow message is abnormal, And transmitting an inactivation command to the active controller when the abnormality is found in the active controller, and switching from the standby mode to the active mode.
상기 전환하는 단계는,Wherein the switching comprises:
상기 액티브 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드에 할당된 맥(MAC) 주소 및 IP 주소를 상기 스탠바이 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드에 할당할 수 있다.A MAC address and an IP address allocated to a network interface card connected to the control channel of the active controller may be allocated to a network interface card connected to the control channel of the standby controller.
상기 판단하는 단계와 상기 전송하는 단계 사이에,Between the determining step and the transmitting step,
상기 제어 채널을 통해 수신된 오픈플로우 메시지를 메모리에 저장하는 단계를 더 포함할 수 있다.And storing the open flow message received via the control channel in a memory.
상기 서로 동기화 하는 단계는,Wherein the step of synchronizing with each other comprises:
상기 스탠바이 컨트롤러 및 상기 액티브 컨트롤러는 상기 제어 채널에 연결된 상기 각각의 네트워크 인터페이스 카드에 할당된 맥(MAC) 주소 및 IP 주소를 서로 교환할 수 있다.The standby controller and the active controller may exchange MAC addresses and IP addresses assigned to the respective network interface cards connected to the control channel.
본 발명의 실시예에 따르면, 물리적 이중화를 부합시켜서 예상치 못한 단일 장애점(single-point-of-failure) 문제를 극복할 수 있다. According to embodiments of the present invention, unexpected single-point-of-failure problems can be overcome by accommodating physical redundancy.
도 1은 본 발명의 실시예에 따른 이중화 제어 시스템의 구성도이다.
도 2는 본 발명의 실시예에 따른 이중화된 컨트롤러의 구조를 나타낸다.
도 3은 본 발명의 실시예에 따른 액티브 컨트롤러의 이중화 제어 동작을 나타낸 순서도이다.
도 4는 본 발명의 실시예에 따른 스탠바이 컨트롤러의 이중화 제어 동작을 나타낸 순서도이다.1 is a configuration diagram of a duplication control system according to an embodiment of the present invention.
2 shows a structure of a dual controller according to an embodiment of the present invention.
3 is a flowchart illustrating a duplication control operation of the active controller according to the embodiment of the present invention.
4 is a flowchart showing a duplication control operation of the standby controller according to the embodiment of the present invention.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.
명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.
또한, 명세서에 기재된 "…부", "…모듈" 의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Also, the terms of " part ", "... module" in the description mean units for processing at least one function or operation, which may be implemented by hardware or software or a combination of hardware and software.
이하, 도면을 참조로 하여 본 발명의 실시예에 따른 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 시스템 및 그 방법에 대하여 상세히 설명한다.Hereinafter, a duplication control system and method of a controller in a software defined network according to an embodiment of the present invention will be described in detail with reference to the drawings.
도 1은 본 발명의 실시예에 따른 이중화 제어 시스템의 구성도이다. 1 is a configuration diagram of a duplication control system according to an embodiment of the present invention.
도 1을 참조하면, 복수의 스위치(100)는 이중화된 컨트롤러(200)와 연결된다. 스위치(100)는 내부에 플로우 테이블을 포함하고, 컨트롤러(200)에 의해 플로우 테이블에 등록된 엔트리에 기초하여 패킷을 전송한다.Referring to FIG. 1, a plurality of
이때, 컨트롤러(200)는 액티브(active) 컨트롤러(210) 및 스탠바이(standby) 컨트롤러(203)를 포함하는 이중화된 컨트롤러이다.At this time, the controller 200 is a duplicated controller including an
액티브 컨트롤러(210) 및 스탠바이 컨트롤러(203)는 두 개의 인터페이스를 각각 데이터 채널과 제어 채널 역할로 분리하고, 제어 채널은 스위치들(100)로부터 제어 메시지를 수신하는 역할과 동시에 이중화된 컨트롤러(200)의 제어 및 관리 메시지를 전송하는데 사용된다. 데이터 채널은 스위치들(100)이 데이터를 전송하는 채널을 경유하는 경로로서, 데이터 채널의 모니터링 및 관리 메시지를 전송하는 채널로 사용된다. 이처럼, 컨트롤러(200)의 채널을 분리하여 제어 채널과 데이터 채널 중 한 채널이라도 문제가 발생할 경우 스탠바이 컨트롤러(230)를 액티브 컨트롤러(210)로 변환하게 하고, 이때 전송되는 제어 메시지와 동기화를 위한 데이터는 두 채널로 모두 전송된다.The
오픈플로우(Openflow) 표준 버전 1.2이하에서는 다수의 제어 서버 설정을 지하지 않기 때문에 일반적인 이중화 방법을 사용해야 한다. 일반적인 이중화에서 액티브 컨트롤러(210)와 스탠바이 컨트롤러(230)의 IP 주소를 동일하게 구성하지만 오픈플로우(Openflow) 표준 버전 1.3이상에서는 스위치(100)에서 컨트롤러의 이중화를 지원하기 때문에 액티브 컨트롤러(210)와 스탠바이 컨트롤러(230)의 IP가 상이하여도 무방하다. Openflow Since version 1.2 of the Openflow standard does not support multiple control server configurations, you should use the usual redundancy method. The IP address of the
이와 같이, 컨트롤러(200)를 액티브, 스탠바이로 이중화함으로써 높은 가용성 및 신뢰성을 확보할 수 있다.In this manner, high availability and reliability can be secured by duplicating the controller 200 in an active mode and in a standby mode.
도 2는 본 발명의 실시예에 따른 이중화된 컨트롤러의 구조를 나타낸다.2 shows a structure of a dual controller according to an embodiment of the present invention.
도 2를 참조하면, 액티브 컨트롤러(210)는 제1 네트워크 인터페이스 카드(Network Interface Card, NIC)(211), 제2 네트워크 인터페이스 카드(NIC)(213), 이중화 제어부(215) 및 메모리(217)를 포함한다. 2, the
또한, 스탠바이 컨트롤러(230)는 제1 네트워크 인터페이스 카드(NIC)(231), 제2 네트워크 인터페이스 카드(NIC)(233), 이중화 제어부(235) 및 메모리(237)를 포함한다.The
여기서, 제1 네트워크 인터페이스 카드(NIC)(211, 231)는 데이터 채널이 할당되어 데이터 전송에 사용된다. 그리고 제2 네트워크 인터페이스 카드(NIC)(231, 233)는 제어 채널이 할당되어 제어 신호 전송에 사용된다. 즉, 스위치(100)의 제어 신호를 전송하거나 수신하기 위해 활용된다. Here, the first network interface card (NIC) 211, 231 is assigned a data channel and used for data transmission. The second network interface cards (NIC) 231 and 233 are assigned control channels and used for control signal transmission. That is, it is utilized to transmit or receive the control signal of the
이때, 제2 네트워크 인터페이스 카드(NIC)(231, 233)는 각각 서로 다른 IP로 설정된다. 즉, 액티브 컨트롤러(210)의 제2 네트워크 인터페이스 카드(211)에 설정된 맥(MAC) 주소와 IP 주소는 스탠바이 컨트롤러(230)의 제2 네트워크 인터페이스 카드(231)에 설정된 맥(MAC) 주소와 IP 주소와 상이하다. 그리고 스위치에 설정된 컨트롤러의 주소는 액티브 컨트롤러(210)의 제2 네트워크 인터페이스 카드(211)의 주소로 설정된다.At this time, the second network interface cards (NIC) 231 and 233 are set to different IPs. That is, the MAC address and the IP address set in the second
또한, 액티브 컨트롤러(210)와 스탠바이 컨트롤러(230) 각각의 제어 신호 전송용으로 사용되는 제2 네트워크 인터페이스 카드(NIC)(213, 233)의 맥 주소 및 IP 주소는 제어 채널 또는 데이터 전송 채널을 통해 상대방에게 각각 전달될 수 있다. The MAC address and the IP address of the second network interface card (NIC) 213, 233 used for the control signal transmission of the
또한, 액티브 컨트롤러(210)와 스탠바이 컨트롤러(230) 간 동기화를 위해 액티브 컨트롤러(210)에서 스위치(100)에 대한 제어 메시지를 스위치(100)로 전송할때, 제어 메시지를 데이터 채널과 제어 채널을 통해 동시에 전송한다.When the
스탠바이 컨트롤러(230)의 이중화 제어부(235)는 제어 채널을 통해 액티브컨트롤러(210)의 연결성(Connectivity) 및 가용성 (Availability)을 주기적으로 모니터링 하고 액티브 컨트롤러(210)의 제어 채널의 이상 유무를 검사한다. 이때, 이중화 제어부(235)는 핑(ping), 심플 네트워크 매니지먼트 프로토콜(Simple Network Management Protocol, SNMP) 등과 같은 서버의 연결성이나 가용성 등을 모니터링하는 방법을 이용할 수 있다.The
스탠바이 컨트롤러(230)의 이중화 제어부(235)는 제어 채널이 정상적인 경우, 제어 채널과 데이터 채널을 통해 유입되는 오픈플로우 제어 메시지를 비교한다. 그리고 일정 시간 동안 제어 메시지가 데이터 채널로 유입되지 않는다면 데이터 채널에 대한 장애 발생으로 간주한다. 스탠바이 컨트롤러(230)의 이중화 제어부(235)는 정상적으로 수신된 오픈플로우 제어 메시지를 메모리(237)에 저장한다.If the control channel is normal, the
액티브 컨트롤러(210)의 이중화 제어부(215)는 장애가 발생하면, 스탠바이 컨트롤러(230)의 비활성화 명령에 따라 스탠바이 모드로 전환한다. When a failure occurs, the
도 3은 본 발명의 실시예에 따른 액티브 컨트롤러의 이중화 제어 동작을 나타낸 순서도이다.3 is a flowchart illustrating a duplication control operation of the active controller according to the embodiment of the present invention.
도 3을 참조하면, 액티브 컨트롤러(210)의 이중화 제어부(215)는 스탠바이 컨트롤러(230)와 제어 채널 및 데이터 채널을 통해 서로 동기화한다(S101). Referring to FIG. 3, the
액티브 컨트롤러(210)의 이중화 제어부(215)는 스위치(100)로 전송할 오픈플로우 메시지를 제어 채널 및 데이터 채널을 통해 전송한다(S103). 즉 제1 네트워크 인터페이스 카드(211) 및 제2 네트워크 인터페이스 카드(213)를 통해 전송하는 것이다.The
이후, 액티브 컨트롤러(210)의 이중화 제어부(215)는 스탠바이 컨트롤러(230)의 제2 네트워크 인터페이스 카드(233)로부터 비활성화 명령이 수신(S105), 스탠바이 컨트롤러(230)의 제2 네트워크 인터페이스 카드(233)에 할당된 맥 주소 및 IP 주소를 액티브 컨트롤러(210)의 제2 네트워크 인터페이스 카드(213)에 할당한다. 즉, 스탠바이 모드로 변환한다.Thereafter, the
이때, 액티브 컨트롤러(210)와 스탠바이 컨트롤러(230)의 운용 위치에 따라 IP 주소만 변경할 수도 있다.At this time, only the IP address may be changed according to the operating position of the
도 4는 본 발명의 실시예에 따른 스탠바이 컨트롤러의 이중화 제어 동작을 나타낸 순서도이다.4 is a flowchart showing a duplication control operation of the standby controller according to the embodiment of the present invention.
도 4를 참조하면, 스탠바이 컨트롤러(230)의 이중화 제어부(235)는 액티브 컨트롤러(210)와 제어 채널 및 데이터 채널을 통해 서로 동기화한다(S201). Referring to FIG. 4, the
스탠바이 컨트롤러(230)의 이중화 제어부(235)는 액티브 컨트롤러(210)가 전송한 오픈플로우 메시지를 제어 채널 및 데이터 채널을 통해 수신한다(S203). 즉 제1 네트워크 인터페이스 카드(231) 및 제2 네트워크 인터페이스 카드(233)를 통해 수신하는 것이다.The
스탠바이 컨트롤러(230)의 이중화 제어부(235)는 제어 채널 및 데이터 채널 각각을 통해 수신되는 오픈플로우 메시지를 서로 비교한다(S205). The
이때, 오픈플로우 메시지 수신에 이상이 발생하는지 판단한다(S207). 예컨대 데이터 채널을 통해 오픈플로우 메시지가 수신되지 않으면, 데이터 채널에 이상이 발생한 경우로 판단할 수 있다.At this time, it is determined whether an error occurs in reception of the open flow message (S207). For example, if an open flow message is not received via the data channel, it can be determined that an error has occurred in the data channel.
스탠바이 컨트롤러(230)의 이중화 제어부(235)는 오픈플로우 메시지 수신에 이상이 발생하면, 액티브 컨트롤러(210)에 장애 발생으로 간주한다(S209). 그리고 정상 수신된 오픈플로우 메시지는 메모리(237)에 저장한다(S211).If an error occurs in reception of the open flow message, the
스탠바이 컨트롤러(230)의 이중화 제어부(235)는 액티브 컨트롤러(210)로 비활성화 명령을 전송한다(S213). 즉, 제2 네트워크 인터페이스 카드(233)를 통해 비활성화 명령을 액티브 컨트롤러(210)로 전송할 수 있다. 또는 비활성화 명령을 제어 채널과 데이터 채널로 전송할 수 있다.The
스탠바이 컨트롤러(230)의 이중화 제어부(235)는 액티브 컨트롤러(210)의 제2 네트워크 인터페이스 카드(213)에 할당된 맥주소 및 IP 주소를 제2 네트워크 인터페이스 카드(233)에 할당한다. 즉, 액티브 모드로 전환한다. 이렇게 함으로써 스탠바이 컨트롤러(230)가 장애로 인지한 시점에서 액티브 컨트롤러(210)가 정상적으로 동작한다면 스탠바이 컨트롤러(230)로부터 수신한 제어 인터페이스의 비활성화 명령을 수행하게 되어 스탠바이 컨트롤러(230)의 오탐에 의한 두 서버가 모두 액티브로 되는 것을 방지할 수 있다.The
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다. The embodiments of the present invention described above are not implemented only by the apparatus and method, but may be implemented through a program for realizing the function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.
Claims (15)
제어 채널 및 데이터 채널을 통해 오픈플로우 메시지를 전송하는 액티브 컨트롤러, 그리고
상기 액티브 컨트롤러와 상기 제어 채널 및 상기 데이터 채널을 통해 서로 동기화되고, 상기 제어 채널 및 상기 데이터 채널을 통해 수신되는 오픈플로우 메시지를 모니터링하여 이상 발생시 상기 액티브 컨트롤러의 장애로 간주하여 상기 액티브 컨트롤러에게 비활성화 명령을 전송하는 스탠바이 컨트롤러를 포함하고,
상기 액티브 컨트롤러는 상기 비활성화 명령을 수신하면, 스탠바이 모드로 동작하는 이중화 제어 시스템.As a duplication control system of a controller in a software defined network,
An active controller that transmits an open flow message over the control and data channels, and
And monitors an open flow message received through the control channel and the data channel and regards the open flow message as a failure of the active controller in the event of an error, And a standby controller for transmitting the standby signal,
Wherein the active controller operates in a standby mode upon receiving the inactivation command.
상기 액티브 컨트롤러는,
상기 데이터 채널이 설정된 제1 네트워크 인터페이스 카드, 그리고
상기 제어 채널이 설정된 제2 네트워크 인터페이스 카드를 포함하고,
상기 스탠바이 컨트롤러는,
상기 데이터 채널이 설정되고 상기 데이터 채널을 통해 상기 액티브 컨트롤러의 제1 네트워크 인터페이스 카드와 동기화된 제1 네트워크 인터페이스 카드, 그리고
상기 제어 채널이 설정되고 상기 제어 채널을 통해 상기 액티브 컨트롤러의 제2 네트워크 인터페이스 카드와 동기화된 제2 네트워크 인터페이스 카드
를 포함하는 이중화 제어 시스템.The method according to claim 1,
The active controller includes:
A first network interface card in which the data channel is set, and
And a second network interface card in which the control channel is set,
The standby controller includes:
A first network interface card in which the data channel is established and synchronized with the first network interface card of the active controller via the data channel,
Wherein the control channel is set and synchronized with the second network interface card of the active controller via the control channel,
And a redundant control system.
상기 스탠바이 컨트롤러는,
상기 제어 채널을 통해 수신되는 오픈플로우 메시지와 상기 데이터 채널을 통해 수신되는 오픈플로우 메시지를 비교하여 이상 여부를 판단하고, 이상이 발생하면 상기 액티브 컨트롤러에게 비활성화 명령을 전송하고 액티브 모드로 동작하는 이중화 제어부
를 더 포함하는 이중화 제어 시스템.3. The method of claim 2,
The standby controller includes:
And an open flow message received through the control channel is compared with an open flow message received through the data channel to determine whether there is an abnormality. If an error occurs, the controller transmits an inactivation command to the active controller and operates in an active mode.
Further comprising:
상기 이중화 제어부는,
상기 액티브 모드로 동작시 상기 제어 채널을 통해 상기 액티브 컨트롤러의 주소 정보를 수신하여 상기 스탠바이 컨트롤러의 제2 네트워크 인터페이스 카드에 상기 액티브 컨트롤러의 주소 정보를 할당하는 이중화 제어 시스템.The method of claim 3,
The duplication control unit includes:
And receives the address information of the active controller through the control channel and allocates the address information of the active controller to the second network interface card of the standby controller when operating in the active mode.
정상적으로 수신된 오픈플로우 메시지를 저장하는 메모리
를 더 포함하는 이중화 제어 시스템.5. The method of claim 4,
Memory that stores normally received open flow messages
Further comprising:
상기 액티브 컨트롤러는,
상기 스탠바이 컨트롤러부터 비활성화 명령이 수신되면, 상기 제어 채널을 통해 수신된 상기 스탠바이 컨트롤러의 주소 정보를 수신하여 상기 액티브 컨트롤러의 제2 네트워크 인터페이스 카드에 할당하는 이중화 제어부
를 더 포함하는 이중화 제어 시스템.3. The method of claim 2,
The active controller includes:
A redundancy controller for receiving the address information of the standby controller received via the control channel and assigning the address information to the second network interface card of the active controller when the disable command is received from the standby controller;
Further comprising:
상기 액티브 컨트롤러의 제어하에 동작하는 스위치의 컨트롤러 주소는 상기 액티브 컨트롤러의 주소 정보로 설정되는 이중화 제어 시스템.3. The method of claim 2,
Wherein a controller address of a switch operating under the control of said active controller is set as address information of said active controller.
액티브 컨트롤러가 제어 채널 및 데이터 채널을 통해 스탠바이 컨트롤러와 서로 동기화하는 단계,
상기 액티브 컨트롤러가 상기 제어 채널 및 상기 데이터 채널 모두를 통해 오픈플로우 메시지를 전송하는 단계, 그리고
상기 제어 채널을 통해 상기 스탠바이 컨트롤러로부터 비활성화 명령이 수신되면, 액티브 모드에서 스탠바이 모드로 전환하는 단계
를 포함하는 이중화 제어 방법.A method for controlling redundancy of a controller in a software defined network,
Synchronizing the active controller with the standby controller via the control channel and data channel,
The active controller transmitting an open flow message over both the control channel and the data channel, and
Switching from an active mode to a standby mode when an inactive command is received from the standby controller through the control channel;
/ RTI >
상기 전환하는 단계는,
상기 스탠바이 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드에 할당된 맥(MAC) 주소 및 IP 주소를 상기 액티브 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드에 할당하는 이중화 제어 방법.9. The method of claim 8,
Wherein the switching comprises:
Wherein a MAC address and an IP address assigned to a network interface card connected to the control channel of the standby controller are assigned to a network interface card connected to the control channel of the active controller.
상기 오픈플로우 메시지를 전송하는 단계는,
상기 액티브 컨트롤러가 스위치에 대한 제어 메시지를 상기 데이터 채널 및 상기 제어 채널을 통해 상기 스위치로 동시에 전송하고,
상기 스위치에 컨트롤러의 주소는 상기 액티브 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드의 주소로 설정되는 이중화 제어 방법.9. The method of claim 8,
Wherein the step of transmitting the open flow message comprises:
The active controller simultaneously transmitting a control message for the switch to the switch via the data channel and the control channel,
Wherein the address of the controller is set to the address of the network interface card connected to the control channel of the active controller.
상기 서로 동기화 하는 단계는,
상기 스탠바이 컨트롤러 및 상기 액티브 컨트롤러는 상기 제어 채널에 연결된 상기 각각의 네트워크 인터페이스 카드에 할당된 맥(MAC) 주소 및 IP 주소를 서로 교환하는 이중화 제어 방법.11. The method of claim 10,
Wherein the step of synchronizing with each other comprises:
Wherein the standby controller and the active controller exchange MAC addresses and IP addresses assigned to the respective network interface cards connected to the control channel.
스탠바이 컨트롤러가 제어 채널 및 데이터 채널을 통해 액티브 컨트롤러와 서로 동기화하는 단계,
상기 스탠바이 컨트롤러가 상기 제어 채널 및 상기 데이터 채널 모두를 통해 오픈플로우 메시지를 전송하는 단계,
상기 제어 채널을 통해 수신되는 오픈플로우 메시지와 상기 데이터 채널을 통해 수신되는 오픈플로우 메시지를 서로 비교하여 이상 여부를 판단하는 단계,
상기 오픈플로우 메시지에 이상이 발견되면, 상기 액티브 컨트롤러의 장애로 간주하여 상기 액티브 컨트롤러에게 비활성화 명령을 전송하는 단계, 그리고
스탠바이 모드에서 액티브로 모드로 전환하는 단계
를 포함하는 이중화 제어 방법.A method for controlling redundancy of a controller in a software defined network,
Synchronizing the standby controller with the active controller through the control channel and data channel,
The standby controller transmitting an open flow message over both the control channel and the data channel,
Comparing an open flow message received through the control channel with an open flow message received through the data channel to determine whether the error is abnormal;
Transmitting an inactivation command to the active controller when it is determined that the open flow message is an error,
Switching from standby mode to active mode
/ RTI >
상기 전환하는 단계는,
상기 액티브 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드에 할당된 맥(MAC) 주소 및 IP 주소를 상기 스탠바이 컨트롤러의 상기 제어 채널과 연결된 네트워크 인터페이스 카드에 할당하는 이중화 제어 방법.13. The method of claim 12,
Wherein the switching comprises:
Assigning a MAC address and an IP address assigned to a network interface card connected to the control channel of the active controller to a network interface card connected to the control channel of the standby controller.
상기 판단하는 단계와 상기 전송하는 단계 사이에,
상기 제어 채널을 통해 수신된 오픈플로우 메시지를 메모리에 저장하는 단계
를 더 포함하는 이중화 제어 방법.14. The method of claim 13,
Between the determining step and the transmitting step,
Storing an open flow message received via the control channel in a memory
Further comprising:
상기 서로 동기화 하는 단계는,
상기 스탠바이 컨트롤러 및 상기 액티브 컨트롤러는 상기 제어 채널에 연결된 상기 각각의 네트워크 인터페이스 카드에 할당된 맥(MAC) 주소 및 IP 주소를 서로 교환하는 이중화 제어 방법.14. The method of claim 13,
Wherein the step of synchronizing with each other comprises:
Wherein the standby controller and the active controller exchange MAC addresses and IP addresses assigned to the respective network interface cards connected to the control channel.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140117074A KR102251407B1 (en) | 2014-09-03 | 2014-09-03 | Duplex control system and method for control in software defined network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140117074A KR102251407B1 (en) | 2014-09-03 | 2014-09-03 | Duplex control system and method for control in software defined network |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160028250A true KR20160028250A (en) | 2016-03-11 |
KR102251407B1 KR102251407B1 (en) | 2021-05-12 |
Family
ID=55582908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140117074A KR102251407B1 (en) | 2014-09-03 | 2014-09-03 | Duplex control system and method for control in software defined network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102251407B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101681516B1 (en) * | 2016-05-31 | 2016-12-01 | 아토리서치(주) | Method, apparatus and computer program for operating dual-ring in software defined networking environment |
KR102209022B1 (en) * | 2019-11-07 | 2021-01-28 | 광주과학기술원 | Control protection method of software defined network |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005136690A (en) * | 2003-10-30 | 2005-05-26 | Nippon Telegr & Teleph Corp <Ntt> | High speed network address taking over method, network device and its program |
WO2012121114A1 (en) * | 2011-03-04 | 2012-09-13 | 日本電気株式会社 | Network system, network device, and path control method |
KR20120101524A (en) * | 2010-01-05 | 2012-09-13 | 닛본 덴끼 가부시끼가이샤 | Network system and network redundancy method |
JP2013162468A (en) * | 2012-02-08 | 2013-08-19 | Nippon Telegr & Teleph Corp <Ntt> | Network management system, network management device, network management method, and network management program |
KR20140039014A (en) * | 2014-02-24 | 2014-03-31 | 연세대학교 산학협력단 | Switch migration method for software-defined-networks with a plurality of controllers |
-
2014
- 2014-09-03 KR KR1020140117074A patent/KR102251407B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005136690A (en) * | 2003-10-30 | 2005-05-26 | Nippon Telegr & Teleph Corp <Ntt> | High speed network address taking over method, network device and its program |
KR20120101524A (en) * | 2010-01-05 | 2012-09-13 | 닛본 덴끼 가부시끼가이샤 | Network system and network redundancy method |
WO2012121114A1 (en) * | 2011-03-04 | 2012-09-13 | 日本電気株式会社 | Network system, network device, and path control method |
JP2013162468A (en) * | 2012-02-08 | 2013-08-19 | Nippon Telegr & Teleph Corp <Ntt> | Network management system, network management device, network management method, and network management program |
KR20140039014A (en) * | 2014-02-24 | 2014-03-31 | 연세대학교 산학협력단 | Switch migration method for software-defined-networks with a plurality of controllers |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101681516B1 (en) * | 2016-05-31 | 2016-12-01 | 아토리서치(주) | Method, apparatus and computer program for operating dual-ring in software defined networking environment |
KR102209022B1 (en) * | 2019-11-07 | 2021-01-28 | 광주과학기술원 | Control protection method of software defined network |
Also Published As
Publication number | Publication date |
---|---|
KR102251407B1 (en) | 2021-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4877482B2 (en) | PCI Express link, multi-host computer system, and PCI Express link reconfiguration method | |
US8953438B2 (en) | Multiple source virtual link reversion in safety critical switched networks | |
US10868754B2 (en) | High availability input/output management nodes | |
JP2008107896A (en) | Physical resource control management system, physical resource control management method and physical resource control management program | |
US20130138997A1 (en) | Rack system | |
WO2003075161A1 (en) | Storage virtualization system conversion management apparatus and storage virtualization system conversion management method | |
CN111585835B (en) | Control method and device for out-of-band management system and storage medium | |
EP2069934B1 (en) | Fault-tolerant medium access control (mac) address assignment in network elements | |
US11627036B2 (en) | Smart failover of redundant network IP based on redundant computer | |
KR102251407B1 (en) | Duplex control system and method for control in software defined network | |
JP2011034161A (en) | Server system and management method for server system | |
CN111130964B (en) | Control cluster and method for operating a control cluster | |
US10992571B2 (en) | Method and system for plug and play routing | |
CN111181764A (en) | Main/standby switching method and system based on OVS | |
KR100940489B1 (en) | Apparatus and system for duplicating router in BACnet and method for using the same | |
JP2021061478A (en) | Relay device, relay system, and relay program | |
CN114124803B (en) | Device management method and device, electronic device and storage medium | |
US10122588B2 (en) | Ring network uplink designation | |
CN111211927A (en) | Resource synchronization method and device | |
US20230037171A1 (en) | Stateful management of state information across edge gateways | |
JP2005012599A (en) | Network constitution control system | |
US7590717B1 (en) | Single IP address for redundant shelf processors | |
US10652203B2 (en) | Network system, communication control device and address setting method | |
CN105812154A (en) | Computer backup integrated control and management system | |
JP6307858B2 (en) | Transmission apparatus, transmission system, and monitoring control 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 |