KR20210027737A - Method, apparatus and computer program for network separation of software defined network - Google Patents

Method, apparatus and computer program for network separation of software defined network Download PDF

Info

Publication number
KR20210027737A
KR20210027737A KR1020190108529A KR20190108529A KR20210027737A KR 20210027737 A KR20210027737 A KR 20210027737A KR 1020190108529 A KR1020190108529 A KR 1020190108529A KR 20190108529 A KR20190108529 A KR 20190108529A KR 20210027737 A KR20210027737 A KR 20210027737A
Authority
KR
South Korea
Prior art keywords
network
host
packet
controller
message
Prior art date
Application number
KR1020190108529A
Other languages
Korean (ko)
Other versions
KR102246290B1 (en
Inventor
송용주
Original Assignee
아토리서치(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 아토리서치(주) filed Critical 아토리서치(주)
Priority to KR1020190108529A priority Critical patent/KR102246290B1/en
Publication of KR20210027737A publication Critical patent/KR20210027737A/en
Application granted granted Critical
Publication of KR102246290B1 publication Critical patent/KR102246290B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4645Details on frame tagging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits

Abstract

The present invention relates to a method, a device, and a computer program for software defined network-based network separation intended to separate a software defined network into a personal network and a business network. To this end, the present invention relates to a method for separating a network based on a software defined network. The method comprises the steps of: (a) creating, by a controller, a network table including the host′s network IDVLN setting information; (b) transmitting, by a switch, a packet transmitted by a first host to the controller as a packet-in message; (c) extracting, by the controller, a VLAN tag included in the packet-in message, retrieving ID of a network to which the first host belongs from the network table, and inserting the retrieved ID into the packet-in mssage; and (d) transmitting, by the controller, the packet-in message to the switch so that the first host is treated as belonging to the network. According to the present invention, it is possible to divide a network into networks with different purposes.

Description

소프트웨어 정의 네트워크 기반 망 분리 방법, 장치 및 컴퓨터 프로그램{METHOD, APPARATUS AND COMPUTER PROGRAM FOR NETWORK SEPARATION OF SOFTWARE DEFINED NETWORK}Software-defined network-based network separation method, device and computer program {METHOD, APPARATUS AND COMPUTER PROGRAM FOR NETWORK SEPARATION OF SOFTWARE DEFINED NETWORK}

본 발명은 네트워크를 관리하는 방법에 관한 것으로, 보다 자세하게 본 발명은 소프트웨어 정의 네트워크에서 서로 다른 목적을 갖는 네트워크를 분리하는 방법에 대한 것이다.The present invention relates to a method of managing a network, and more particularly, the present invention relates to a method of separating networks having different purposes in a software defined network.

소프트웨어 정의 네트워크(Software Defined Network, 이하 SDN이라 칭함)은 네트워크의 모든 네트워크 장비를 지능화된 중앙관리시스템에 의해 관리하는 기술을 의미한다. SDN 기술에서는 기존 하드웨어 형태의 네트워크 장비에서 자체적으로 수행하는 패킷 처리와 관련된 제어 동작을 소프트웨어 형태로 제공되는 컨트롤러가 대신하여 처리함으로써, 기존의 네트워크 구조보다 다양한 기능을 개발하고 부여할 수 있다는 장점을 갖는다.Software Defined Network (hereinafter referred to as SDN) refers to a technology that manages all network equipment in the network by an intelligent central management system. SDN technology has the advantage of being able to develop and assign various functions compared to the existing network structure by processing the control operation related to packet processing performed by the existing hardware type network equipment itself in the form of a software controller. .

SDN 시스템은 일반적으로 전체 네트워크를 제어하는 컨트롤러 서버와, 컨트롤러 서버에 의해 제어되며 패킷을 처리하는 복수의 오픈플로우 스위치, 오픈플로우 스위치의 하위 계층에 해당하는 호스트를 포함하여 구성된다. 여기서 오픈플로우 스위치는 패킷의 송수신 기능만을 담당하게 되고, 패킷의 경로 설정, 관리 및 제어는 모두 컨트롤러 서버에서 이루어진다. 즉, 네트워크 장비를 이루는 Data Plane과 Control Plane을 분리하는 것이 SDN의 기본 구조라 볼 수 있다.The SDN system generally includes a controller server that controls the entire network, a plurality of openflow switches that are controlled by the controller server and handles packets, and a host corresponding to a lower layer of the openflow switch. Here, the openflow switch is responsible for only the packet transmission/reception function, and packet routing, management, and control are all performed by the controller server. In other words, separating the Data Plane and Control Plane constituting the network equipment can be regarded as the basic structure of SDN.

도 1은 소프트웨어 정의 네트워크의 구성을 설명하기 위한 도면이다. 도 1을 참조하면, 소프트웨어 정의 네트워크(Software Defined Network)는 컨트롤러 서버(100), 네트워크 장비(200) 및 호스트(300)를 포함할 수 있다. 네트워크 장비(200)와 호스트(300)는 노트(Node)라고 지칭할 수 있으며, 링크(Link)는 2개의 노드 사이의 연결을 의미할 수 있다.1 is a diagram for explaining a configuration of a software defined network. Referring to FIG. 1, a software defined network may include a controller server 100, a network device 200, and a host 300. The network equipment 200 and the host 300 may be referred to as a node, and a link may mean a connection between two nodes.

컨트롤러 서버(100)는 네트워크 장비(200)를 관리하는 기능을 하는 것으로, 복수의 네트워크 장비(200)를 중앙 집중형으로 관리 및 제어한다. 구체적으로 컨트롤러 서버(100)는 토폴로지 관리(Topology management), 패킷 처리와 관련된 경로 관리(Path management), 링크 디스커버리(Link discovery), 패킷 흐름인 플로우 관리(Flow management) 등의 기능을 하는 응용 프로그램이 탑재된 형태로 구현될 수 있다.The controller server 100 functions to manage the network equipment 200 and manages and controls a plurality of network equipment 200 in a centralized manner. Specifically, the controller server 100 includes an application program that functions such as topology management, path management related to packet processing, link discovery, and flow management, which is a packet flow. It can be implemented in a mounted form.

네트워크 장비(200)는 컨트롤러 서버(100)의 제어에 따라 패킷을 처리하는 기능을 한다. 네트워크 장비(200)의 예로는 이동 통신 기지국, 기지국 제어기, 게이트웨이 장비, 유선 네트워크의 스위치, 라우터 등이 있다.The network equipment 200 functions to process packets under the control of the controller server 100. Examples of the network equipment 200 include a mobile communication base station, a base station controller, a gateway equipment, a switch in a wired network, a router, and the like.

소프트웨어 정의 네트워크에서 컨트롤러 서버(100)와 오픈플로우 스위치(200)는 상호간 정보를 주고받아야 하며, 이를 위한 프로토콜로 널리 사용되는 것이 오픈플로우(OpenFlow) 프로토콜이다. 즉, 오픈플로우 프로토콜은 컨트롤러 서버(100)와 오픈플로우 스위치(200)간 서로 통신할 수 있는 표준 규격이다.In a software defined network, the controller server 100 and the openflow switch 200 must exchange information with each other, and the OpenFlow protocol is widely used as a protocol for this purpose. That is, the openflow protocol is a standard standard that allows the controller server 100 and the openflow switch 200 to communicate with each other.

오픈플로우 프로토콜을 따르면, 스위치(200)는 컨트롤 채널(Control Channel)을 통해 컨트롤러 서버(100)와 정보를 교환하고, 파이프라인(Pipeline) 프로세싱을 위한 하나 이상의 플로우 테이블(Flow table), 그룹 테이블, 미터 테이블 및/또는 패킷 전달을 위한 네트워크 인터페이스로 하나 이상의 포트를 가질 수 있다.According to the open flow protocol, the switch 200 exchanges information with the controller server 100 through a control channel, and one or more flow tables, group tables, and One or more ports may be used as a meter table and/or a network interface for packet delivery.

Open Networking Foundation, "OpenFlow Specification 1.3.0"Open Networking Foundation, "OpenFlow Specification 1.3.0"

본 발명은 전술한 문제점을 해결하기 위한 것으로서, 소프트웨어 정의 네트워크에서 서로 다른 목적을 갖는 네트워크 망을 구분하는 것을 일 목적으로 한다.The present invention is to solve the above-described problem, and an object of the present invention is to distinguish network networks having different purposes in a software defined network.

이러한 목적을 달성하기 위한 본 발명은 소프트웨어 정의 네트워크를 기반으로 망을 분리하는 방법에 있어서, 컨트롤러에서, 호스트의 네트워크 ID를 포함하는 네트워크 테이블을 생성하는 a 단계, 스위치에서, 제1 호스트가 전송한 패킷을 상기 컨트롤러에 패킷인 메시지로 전송하는 b 단계, 상기 컨트롤러에서, 상기 패킷인 메시지에 포함된 VLAN 태그를 추출하고, 상기 네트워크 테이블에서 상기 제1 호스트가 속하는 네트워크의 ID를 검색하여 상기 패킷인 메시지에 삽입하는 c 단계, 상기 컨트롤러에서, 상기 스위치에 상기 패킷인 메시지를 전송하여 상기 제1 호스트가 상기 네트워크에 속하는 것으로 처리하도록 하는 d 단계를 포함하는 것을 일 특징으로 한다.The present invention for achieving this purpose is a method for separating a network based on a software-defined network, in step a of generating a network table including a network ID of a host in a controller, and transmitted by a first host in a switch. Step b of transmitting a packet to the controller as a packet-in message, in the controller, extracting a VLAN tag included in the packet-in message, searching the network table for an ID of the network to which the first host belongs, and Step c of inserting into the message, and step d of allowing the first host to process the first host as belonging to the network by transmitting the message, which is the packet, to the switch.

전술한 바와 같은 본 발명에 의하면, 소프트웨어 정의 네트워크에서 서로 다른 목적을 갖는 네트워크 망을 구분할 수 있다. 나아가 본 발명에 따르면 호스트에게 네트워크 ID를 유동적으로 부여할 수 있기 때문에 네트워크 관리의 편의성과 안정성을 동시에 제공할 수 있다.According to the present invention as described above, network networks having different purposes can be distinguished in a software defined network. Furthermore, according to the present invention, since a network ID can be flexibly assigned to a host, convenience and stability of network management can be provided at the same time.

도 1은 소프트웨어 정의 네트워크 구성을 설명하기 위한 도면,
도 2는 망 분리에 대한 종래 방식과 본 발명의 차이를 설명하기 위한 도면,
도 3은 본 발명의 일 실시 예에 의한 망 분리 시스템을 나타낸 도면,
도 4는 본 발명의 일 실시 예에 의한 망 분리 방법을 설명하기 위한 순서도이다.
1 is a diagram for explaining a software-defined network configuration;
2 is a diagram for explaining a difference between a conventional method for network separation and the present invention;
3 is a diagram showing a network separation system according to an embodiment of the present invention;
4 is a flowchart illustrating a network separation method according to an embodiment of the present invention.

전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다.The above-described objects, features, and advantages will be described later in detail with reference to the accompanying drawings, and accordingly, a person of ordinary skill in the art to which the present invention pertains will be able to easily implement the technical idea of the present invention. In describing the present invention, if it is determined that a detailed description of a known technology related to the present invention may unnecessarily obscure the subject matter of the present invention, a detailed description will be omitted.

도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용되며, 명세서 및 특허청구의 범위에 기재된 모든 조합은 임의의 방식으로 조합될 수 있다. 그리고 다른 식으로 규정하지 않는 한, 단수에 대한 언급은 하나 이상을 포함할 수 있고, 단수 표현에 대한 언급은 또한 복수 표현을 포함할 수 있음이 이해되어야 한다.In the drawings, the same reference numerals are used to indicate the same or similar elements, and all combinations described in the specification and claims may be combined in any manner. And, unless otherwise specified, it should be understood that references to the singular may include more than one, and references to the singular may also include the plural.

본 명세서에서 사용되는 용어는 단지 특정 예시적 실시 예들을 설명할 목적을 가지고 있으며 한정할 의도로 사용되는 것이 아니다. 본 명세서에서 사용된 바와 같은 단수적 표현들은 또한, 해당 문장에서 명확하게 달리 표시하지 않는 한, 복수의 의미를 포함하도록 의도될 수 있다. 용어 "및/또는," "그리고/또는"은 그 관련되어 나열되는 항목들의 모든 조합들 및 어느 하나를 포함한다. 용어 "포함한다", "포함하는", "포함하고 있는", "구비하는", "갖는", "가지고 있는" 등은 내포적 의미를 갖는 바, 이에 따라 이러한 용어들은 그 기재된 특징, 정수, 단계, 동작, 요소, 및/또는 컴포넌트를 특정하며, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 이들의 그룹의 존재 혹은 추가를 배제하지 않는다. 본 명세서에서 설명되는 방법의 단계들, 프로세스들, 동작들은, 구체적으로 그 수행 순서가 확정되는 경우가 아니라면, 이들의 수행을 논의된 혹은 예시된 그러한 특정 순서로 반드시 해야 하는 것으로 해석돼서는 안 된다. 추가적인 혹은 대안적인 단계들이 사용될 수 있음을 또한 이해해야 한다.The terms used in this specification are for the purpose of describing specific exemplary embodiments only and are not intended to be limiting. Singular expressions as used herein may also be intended to include plural meanings unless clearly indicated otherwise in the corresponding sentence. The term "and/or," "and/or" includes all combinations and any of the items listed in connection therewith. The terms "comprises", "comprising", "comprising", "having", "having", "having", etc. have inclusive meanings, and accordingly, these terms are used for the described features, integers, It specifies steps, actions, elements, and/or components, and does not preclude the presence or addition of one or more other features, integers, steps, actions, elements, components, and/or groups thereof. The steps, processes, and actions of the methods described herein should not be construed as necessarily performing their performance in the particular order discussed or illustrated, unless the order in which they are specifically performed is determined. . It should also be understood that additional or alternative steps may be used.

또한, 각각의 구성요소는 각각 하드웨어 프로세서로 구현될 수 있고, 위 구성요소들이 통합되어 하나의 하드웨어 프로세서로 구현될 수 있으며, 또는 위 구성요소들이 서로 조합되어 복수 개의 하드웨어 프로세서로 구현될 수도 있다.In addition, each component may be implemented as a hardware processor, the above components may be integrated to be implemented as a single hardware processor, or the above components may be combined with each other to be implemented as a plurality of hardware processors.

또한, 본 발명의 명세서에서 사용되는 '플로우 룰'의 용어는 해당 업계의 통상의 기술자 입장에서 소프트웨어 정의 네트워크에서 컨트롤러 서버가 적용하는 네트워크 정책을 의미하는 것으로 이해되어야 한다.In addition, the term'flow rule' used in the specification of the present invention should be understood to mean a network policy applied by a controller server in a software defined network from the standpoint of a person skilled in the relevant industry.

망 분리는 서로 다른 목적을 갖는 네트워크 망인 제1 네트워크와 제2 네트워크에서, 제1 네트워크에 접근 가능한 단말(또는 PC)의 제2 네트워크에 대한 접근을 차단하고, 제2 네트워크에 접근 가능한 단말(또는 PC)의 제1 네트워크에 대한 접근을 차단하여, 제1 네트워크와 제2 네트워크의 접근 망을 서로 분리하는 것이다. 예를 들어 설명하면, 종래의 망 분리 방법은 도 2와 같이 물리적 망 분리(도 2-a)와 논리적 망 분리(도 2-b, c, d)로 구분된다. 물리적 망 분리는 인터넷망에 접근 가능한 단말과 업무망에 접근 가능한 단말을 분리하는 것으로, 네트워크와 단말을 모두 별도로 구성하기 때문에 안전성이 매우 높으나 비용이 상당하다는 단점이 있다.In the network separation, in the first network and the second network, which are network networks having different purposes, the terminal (or PC) that can access the first network blocks access to the second network, and the terminal that can access the second network (or The access network of the first network and the second network is separated from each other by blocking access of the PC) to the first network. For example, as shown in FIG. 2, the conventional network separation method is divided into physical network separation (FIG. 2-a) and logical network separation (FIG. 2-b, c, and d). Physical network separation is separating a terminal accessible to the Internet network and a terminal accessible to the business network. Since both the network and the terminal are configured separately, the safety is very high, but the cost is significant.

논리적 망 분리는 3가지 방법으로 구분되는데, 먼저 도 2의 b를 참조하면 단말(또는 PC)이 인터넷망에 접속하고, 가상 시스템에서 업무망에 접근하여 망을 분리할 수 있다. 이러한 방법은 업무망을 통해 작업한 모든 결과가 가상 시스템에 저장되기 때문에 단말에는 중요한 정보가 저장되지 않아 산업기밀 같은 중요 정보 유출을 차단하는 데 유용하다. 그러나 이와 같은 방법은 외부 공격에 취약하여 PC의 시스템에 대한 보안이 매우 중요하다.The logical network separation is divided into three methods. First, referring to b of FIG. 2, the terminal (or PC) accesses the Internet network, and the virtual system accesses the business network to separate the network. This method is useful in preventing the leakage of important information such as industrial secrets because all the results of work through the business network are stored in the virtual system, so important information is not stored in the terminal. However, such a method is vulnerable to external attacks, so the security of the PC system is very important.

도 2의 c를 참조하면, 단말(또는 PC)이 업무망에 접속하고, 가상 시스템에서 인터넷망에 접근하여 망을 분리할 수 있고, 도 2의 d를 참조하면, 단말(또는 PC) 내에 가상 시스템을 설치하여 가상 시스템으로 인터넷망을 이용하고, 단말 자체에서 업무망을 이용하여 망을 분리할 수 있다. 가상 시스템에는 업무망에 대한 접근이 차단되어 있어 인터넷망을 통해 악성 프로그램이 침투하더라도 업무망에 있는 중요 시스템이나 데이터를 보호할 수 있다. 이와 같이 가상 시스템을 통해 논리적 망 분리를 수행할 경우, 사용자가 의도적으로 망 분리 적용을 회피하거나, 무선 인터넷이나 테더링을 통해 다른 네트워크에 접속하여 단말에 저장된 데이터가 유출될 가능성이 존재한다.Referring to FIG. 2C, the terminal (or PC) accesses the business network and accesses the Internet network in a virtual system to separate the network. Referring to FIG. By installing the system, the Internet network can be used as a virtual system, and the network can be separated using the business network from the terminal itself. Access to the business network is blocked in the virtual system, so even if a malicious program penetrates through the Internet network, important systems or data in the business network can be protected. In this way, when logical network separation is performed through a virtual system, there is a possibility that the user intentionally avoids applying the network separation, or data stored in the terminal may be leaked by accessing another network through wireless Internet or tethering.

상술한 것과 같은 종래의 망 분리 방법은 별도의 인증 없이 패킷의 VLAN만을 이용하여 네트워크에 접속하기 때문에 사용자가 의도적으로 망 분리를 회피할 수 있으며, 포트 기반으로 VLAN을 부여하기 때문에 장비가 다른 네트워크나 다른 포트로 이동할 경우 모든 테이블을 재설정해야 하는 번거로움 때문에 이동성이 현저히 떨어진다는 단점이 있다.In the conventional network separation method as described above, the user can intentionally avoid network separation because the network accesses the network using only the VLAN of the packet without separate authentication. When moving to a different port, there is a disadvantage in that mobility is significantly reduced because of the hassle of resetting all tables.

따라서 본 발명은 소프트웨어 정의 네트워크를 이용하여 논리적 망 분리를 수행하는 방법을 고안하여 별도의 전용 네트워크 장비를 추가할 필요 없이 오픈플로우 프로토콜을 이용하여 논리적 망 분리를 구현할 수 있다.Accordingly, the present invention devised a method for performing logical network separation using a software-defined network, and can implement logical network separation using an openflow protocol without the need to add additional dedicated network equipment.

보다 구체적으로, 본 발명의 실시 예를 따르면, 호스트가 네트워크에 접속하기 위한 네트워크 ID의 정책을 스위치가 아닌 컨트롤러에서 관리하고, 임의의 스위치에 최초로 접속한 신규 호스트는 물론 스위치를 이동한 호스트에도 네트워크 ID을 동적으로 설정하여 호스트의 이동성(IP Mobility)을 제공할 수 있다. 본 발명은 네트워크 ID로 VLAN, VXLAN, SRC MAC 등 네트워크를 구분 가능한 모든 정보를 이용할 수 있다.More specifically, according to an embodiment of the present invention, a network ID policy for a host to access a network is managed by a controller rather than a switch, and the network Host mobility (IP Mobility) can be provided by dynamically setting the ID. In the present invention, all information capable of distinguishing a network, such as VLAN, VXLAN, and SRC MAC, can be used as a network ID.

예를 들어 도 3의 소프트웨어 정의 네트워크에서 컨트롤러(15)는 호스트(40, 43, 46, 49)가 생성한 패킷을 이용하여 네트워크 토폴로지 정보를 수집하고 트래픽 경로를 지정할 수 있다. 이 때, 본 발명의 실시예를 따르는 컨트롤러(15)는 네트워크 토폴로지 정보가 포함된 네트워크 테이블을 생성할 수 있다.For example, in the software defined network of FIG. 3, the controller 15 may collect network topology information and designate a traffic path using packets generated by the hosts 40, 43, 46, and 49. At this time, the controller 15 according to an embodiment of the present invention may generate a network table including network topology information.

예를 들어 컨트롤러(15)는 제1 네트워크(10)에 제1 네트워크 ID, 제2 네트워크(20)에 제2 네트워크 ID를 할당하고, 제1 네트워크에 속하는 호스트(40, 46)의 MAC 주소 및/또는 IP 주소, 포트 정보, 그리고 제1 네트워크 ID, 제2 네트워크에 속하는 호스트(43, 49)의 MAC 주소 및/또는 IP 주소, 포트 정보, 그리고 제2 네트워크 ID를 이용하여 네트워크 테이블을 생성할 수 있다. 생성된 네트워크 테이블은 컨트롤러(15)의 저장소에 저장될 수 있다. For example, the controller 15 allocates a first network ID to the first network 10 and a second network ID to the second network 20, and the MAC address of the hosts 40 and 46 belonging to the first network and /Or the IP address, port information, and the first network ID, the MAC address and/or the IP address of the host (43, 49) belonging to the second network, port information, and the second network ID to create a network table. I can. The generated network table may be stored in the storage of the controller 15.

컨트롤러(15)는 패킷인 메시지에 포함된 호스트(40)의 MAC 주소 및/또는 IP 주소를 확인하여 네트워크 테이블에서 호스트(40)가 속하는 네트워크가 제1 네트워크(10)임을 확인하고, 제1 네트워크에 할당된 VLAN을 확인할 수 있다. 이후 컨트롤러(15)는 호스트(40)가 제1 네트워크(10)에 속하도록 스위치(30)를 설정할 수 있다. 보다 구체적으로 컨트롤러(15)는 호스트(40)가 제1 네트워크에 속하는 것처럼 호스트(40)의 패킷을 처리하는 플로우 룰을 스위치(30)에 설정할 수 있다.The controller 15 checks the MAC address and/or IP address of the host 40 included in the packet-in message, confirms that the network to which the host 40 belongs is the first network 10, and You can check the VLANs assigned to. Thereafter, the controller 15 may set the switch 30 so that the host 40 belongs to the first network 10. More specifically, the controller 15 may set a flow rule in the switch 30 for processing packets of the host 40 as if the host 40 belongs to the first network.

한편, 호스트(40)가 이동하게 되어 스위치(30)와 물리적인 연결을 끊고 스위치(35)에 연결하는 경우를 고려할 수 있다. 즉 제1 네트워크에 속하는 호스트(40)가 물리적 위치를 이동하는 경우, 이동한 포트에 대응하는 스위치(35)는 호스트(40)에 대한 플로우 룰을 보유하고 있지 않기 때문에 호스트(40)를 신규 호스트로 판단하고, 컨트롤러(15)에 호스트(40)로부터 수신한 패킷을 패킷인 메시지의 형태로 전송할 수 있다. 호스트(40)의 패킷인 메시지를 수신한 컨트롤러는 네트워크 테이블에서 호스트(40)의 MAC 주소 및/또는 IP 주소를 확인하고 해당 호스트(40)의 포트 정보를 수정한 후 스위치(35)에 호스트(40)가 제1 네트워크에 속하도록 하는 플로우 룰을 전송할 수 있다.On the other hand, a case where the host 40 moves and disconnects the physical connection with the switch 30 and connects it to the switch 35 may be considered. That is, when the host 40 belonging to the first network moves its physical location, the switch 35 corresponding to the moved port does not have a flow rule for the host 40, so that the host 40 is a new host. It is determined as, and the packet received from the host 40 may be transmitted to the controller 15 in the form of a message, which is a packet. Upon receiving the message, which is a packet from the host 40, the controller checks the MAC address and/or IP address of the host 40 in the network table, corrects the port information of the host 40, and then sends the host ( 40) may transmit a flow rule to belong to the first network.

이와 같이 본 발명의 실시 예를 따르면, 컨트롤러에서 호스트의 네트워크가 결정되면, 호스트에서 VLAN을 변경할 필요없이, 스위치에서는 오픈플로우 프로토콜을 따르는 플로우 룰에 따라 패킷을 처리하면 족하다.As described above, according to an embodiment of the present invention, when the controller determines the network of the host, it is sufficient to process the packet according to the flow rule that follows the open flow protocol without the need to change the VLAN in the host.

이에 따르면 호스트는 네트워크에 접속하는 스위치가 변경되더라도, 네트워크 관리자가 해당 스위치를 별도로 설정할 필요 없이 망 분리 서비스를 동적으로 제공받을 수 있다. 호스트가 속하는 네트워크의 ID를 설정하는 플로우 룰에 대한 구체적인 예시는 도 4에 대한 설명에서 후술된다.According to this, even if the switch accessing the network is changed, the network administrator can dynamically receive the network separation service without having to separately configure the corresponding switch. A specific example of the flow rule for setting the ID of the network to which the host belongs will be described later in the description of FIG. 4.

본 발명의 또 다른 실시 예를 따르면, 컨트롤러는 호스트의 MAC 주소와 IP 주소의 대응관계를 네트워크 테이블에 기록함으로써 네트워크의 보안을 설정하고, 이를 기반으로 네트워크를 제어할 수 있다.According to another embodiment of the present invention, the controller may set the security of the network by recording the correspondence between the MAC address of the host and the IP address in the network table, and control the network based on this.

보다 구체적으로 설명하면 컨트롤러는 네트워크 테이블을 이용하여 허가되지 않은 호스트의 네트워크 접근을 제어할 수도 있으며, 또한 호스트가 하나 이상의 네트워크를 사용할 수 있도록 하나 이상의 네트워크 사이의 망 연계관계를 나타낸 망 연계 테이블을 더 생성할 수 있다. 컨트롤러(15)는 네트워크 테이블과 망 연계 테이블을 이용하여 스위치에 접근할 수 있는 호스트의 MAC 주소 및/또는 IP 주소를 확인하고, 허가된 주소를 가지는 패킷만 처리하도록 스위치를 제어하여 전체 네트워크의 보안 수준을 올릴 수 있다.More specifically, the controller may use the network table to control access to the network of unauthorized hosts. In addition, a network linking table indicating the network linkage between one or more networks is further added so that the host can use more than one network. Can be generated. The controller 15 checks the MAC address and/or IP address of the host that can access the switch using the network table and the network association table, and controls the switch to process only packets having the permitted addresses to secure the entire network. You can raise the level.

이와 같은 본 발명의 실시 예를 따르면, 네트워크 접근 제어를 위한 별도의 보안 장비를 설치할 필요없이 네트워크에 접속한 호스트를 컨트롤러에서 관리함으로써 엔드포인트 위협을 탐지하고 대응하는 기능을 제공할 수 있다. 보안 정책을 구현하기 위한 구체적인 예시는 첨부된 도 4에 대한 설명에서 후술된다.According to such an embodiment of the present invention, it is possible to provide a function to detect and respond to an endpoint threat by managing a host connected to a network in a controller without the need to install a separate security device for network access control. A specific example for implementing the security policy will be described later in the accompanying description of FIG. 4.

도 4는 본 발명의 실시 예를 따르는 호스트의 네트워크 ID를 설정하고, 네트워크 ID에 따라 패킷을 처리하는 방법을 설명하기 위한 순서도이다. 도 4의 예에서 컨트롤러는 스위치를 포함하는 소프트웨어 정의 네트워크를 제어하는 경우이다.4 is a flowchart illustrating a method of setting a network ID of a host and processing a packet according to the network ID according to an embodiment of the present invention. In the example of FIG. 4, the controller controls a software defined network including a switch.

단계 S100에서 본 발명의 실시 예를 따르는 컨트롤러는 제1 네트워크와 제2 네트워크에 속한 모든 호스트의 MAC 주소와 IP 주소의 대응 관계와, 호스트가 속한 네트워크의 ID을 포함하는 네트워크 테이블을 생성할 수 있다.In step S100, the controller according to the embodiment of the present invention may generate a network table including a correspondence relationship between MAC addresses and IP addresses of all hosts belonging to the first network and the second network, and the ID of the network to which the host belongs. .

보다 구체적으로 컨트롤러는 네트워크 관리자의 설정 또는 네트워크 관리 정책 등을 기반으로 네트워크 테이블을 생성할 수 있다. 예를 들어 컨트롤러는 제1 네트워크에 속하는 호스트의 MAC 주소 및/또는 IP 주소, 포트 정보, 그리고 제 1 네트워크에 할당된 제1 네트워크 ID를 기록하고, 제2 네트워크에 속하는 호스트의 MAC 주소 및/또는 IP 주소, 포트 정보, 그리고 제2 네트워크에 할당된 제2 네트워크 ID를 기록하여 네트워크 테이블을 생성할 수 있다.More specifically, the controller may create a network table based on a network administrator's setting or a network management policy. For example, the controller records the MAC address and/or IP address of the host belonging to the first network, port information, and the first network ID assigned to the first network, and the MAC address of the host belonging to the second network and/or A network table may be generated by recording the IP address, port information, and the second network ID allocated to the second network.

나아가 컨트롤러는 네트워크 테이블과 함께 망 연계 테이블을 생성할 수 있다. 예를 들어 컨트롤러는 제1 네트워크에 속하며 제2 네트워크에 접근 가능한 호스트의 MAC 주소 및/또는 IP 주소와, 제2 네트워크에 속하며 제1 네트워크에 접근 가능한 호스트의 MAC 주소 및/또는 IP 주소를 기록하여 망 연계 테이블을 생성할 수 있다. 또한 컨트롤러는 제1 네트워크와 제2 네트워크의 접근 방향성도 설정할 수 있는데, 설정에 따라 단방향일 수도 있고 쌍방향일 수도 있다.Furthermore, the controller can create a network connection table together with the network table. For example, the controller records the MAC address and/or IP address of a host belonging to the first network and accessible to the second network, and the MAC address and/or IP address of a host belonging to the second network and accessible to the first network. You can create a network connection table. In addition, the controller may also set the access directions of the first network and the second network, and may be one-way or two-way depending on the setting.

이와 같이 본 발명은 망 연계 테이블을 이용하여 네트워크 접근 유연성을 향상시킬 수 있다. 본 발명의 실시 예를 따르면, 예를 들어, 도로 인프라 네트워크에서, 교통 장비 네트워크(제1 네트워크)와 IoT 장비 네트워크(제2 네트워크)를 분리하기 위하여, 교통 장비와 IoT 장비를 물리적으로 분리하여 네트워크를 구축하거나, 장비의 VLAN 설정을 변경할 필요없이 컨트롤러에서 제1 및 제2 네트워크의 ID를 이용하여 논리적으로 네트워크를 분리할 수 있어, 네트워크 관리의 편의성이 높아질 수 있는 효과가 있다.As described above, the present invention can improve network access flexibility by using a network association table. According to an embodiment of the present invention, for example, in a road infrastructure network, in order to separate a traffic equipment network (first network) and an IoT equipment network (second network), a network by physically separating the traffic equipment and the IoT equipment The controller can logically separate the network using the ID of the first and second networks without the need to construct or change the VLAN setting of the device, thereby increasing the convenience of network management.

단계 S200에서, 스위치는 연결된 제1 호스트로부터 패킷을 수신하면 플로우 룰에 따라 패킷을 처리하고, 제1 호스트가 플로우 룰이 존재하지 않는 신규 호스트일 경우 컨트롤러에 패킷인 메시지를 전송할 수 있다.In step S200, when the switch receives a packet from the connected first host, the switch processes the packet according to the flow rule, and when the first host is a new host in which no flow rule exists, the switch may transmit a message, which is a packet, to the controller.

나아가 스위치는 제1 스위치에 대응하는 포트가 다운되거나, 제1 호스트가 일정 시간 이상 응답이 없으면 제1 호스트와의 연결이 차단된 것으로 판단하고 플로우 룰을 삭제할 수 있다. 이 때 스위치는 제1 호스트에 대한 플로우 룰이 존재하지 않는다고 판단하기 때문에 제1 호스트를 신규 호스트라고 판단하고 컨트롤러에 제1 호스트로부터 수신한 패킷을 패킷인 메시지의 형태로 전송할 수 있다.Furthermore, if the port corresponding to the first switch is down or the first host does not respond for a predetermined period of time or more, the switch may determine that the connection with the first host is cut off and delete the flow rule. At this time, since the switch determines that a flow rule for the first host does not exist, it may determine that the first host is a new host and transmit a packet received from the first host to the controller in the form of a message as a packet.

단계 S300에서, 컨트롤러는 스위치로부터 수신한 패킷인 메시지에서 VLAN 태그를 추출하여 메모리에 임시 저장할 수 있다. 호스트를 네트워크에 연결하기 위한 VLAN 태그는 컨트롤러의 네트워크 테이블에 의해 호스트가 속하는 네트워크 ID로 대체되므로 제1 호스트의 패킷이 이미 가지고 있는 VLAN 태그를 임시로 추출함으로써 패킷에서 VLAN 태그 영역을 비워 제1 호스트가 속한 네트워크의 네트워크 ID를 삽입하게 할 수 있다.In step S300, the controller may extract a VLAN tag from a message, which is a packet received from the switch, and temporarily store it in the memory. The VLAN tag for connecting the host to the network is replaced by the network ID to which the host belongs by the network table of the controller. Therefore, the VLAN tag area is emptied from the packet by temporarily extracting the VLAN tag that the packet of the first host already has. You can insert the network ID of the network to which the user belongs.

단계 S400에서, 컨트롤러는 패킷인 메시지에 포함된 제1 호스트의 MAC 주소 및/또는 IP 주소를 확인하고, 네트워크 테이블에서 제1 호스트가 속한 네트워크의 네트워크 ID를 검색할 수 있다. 예를 단계 S100에서 생성한 네트워크 테이블에서 들어 제1 호스트가 제1 네트워크에 속하는 경우, 컨트롤러는 제1 호스트가 속한 네트워크의 ID가 제1 네트워크 ID임을 확인할 수 있다.In step S400, the controller may check the MAC address and/or IP address of the first host included in the packet-in message, and search the network table for the network ID of the network to which the first host belongs. For example, in the network table generated in step S100, when the first host belongs to the first network, the controller can confirm that the ID of the network to which the first host belongs is the first network ID.

이때 컨트롤러는 패킷인 메시지에 포함된 제1 호스트의 MAC 주소 및/또는 IP 주소가 네트워크 테이블에 포함되어 있지 않으면 망 분리 요건에 적합하지 않은 호스트로 판단하고 스위치에 제1 호스트로부터 수신한 패킷을 드랍하고, 제1 호스트가 더 이상 네트워크에 접근하지 못하도록 차단하게 설정하는 플로우 룰을 전송할 수 있다. At this time, if the MAC address and/or IP address of the first host included in the packet-in message is not included in the network table, the controller determines that the host does not meet the network separation requirements and drops the packet received from the first host to the switch. In addition, a flow rule configured to block the first host from accessing the network may be transmitted.

나아가 컨트롤러가 제1 호스트의 MAC 주소 및/또는 IP 주소를 확인함에 있어서, 스위치의 제1 포트에 연결된 제1 호스트의 MAC 주소 및/또는 IP 주소가 동일 스위치나 다른 스위치의 제2 포트에 연결된 제2 호스트와 동일(중복)할 경우, 컨트롤러는 제1 호스트를 비정상 호스트로 판단하고 스위치에 제1 호스트로부터 수신한 패킷인 메시지를 차단 및 드랍하도록 설정하는 플로우 룰을 전송할 수 있다. 나아가 본래 VLAN은 보안성이 취약하다는 단점이 있으나 본 발명의 실시 예와 같이 소프트웨어 정의 네트워크를 이용하면 컨트롤러에서 호스트의 MAC 주소 및/또는 IP 주소를 KEY로 하여 호스트(단말)를 인증하고 VLAN 대신 네트워크 ID를 설정하여 망을 분리하기 하기 때문에 논리적 망 분리의 보안성이 강화될 수 있다.Furthermore, when the controller checks the MAC address and/or IP address of the first host, the MAC address and/or IP address of the first host connected to the first port of the switch is connected to the second port of the same switch or another switch. 2 When the host is the same (duplicate), the controller may determine the first host as an abnormal host and transmit a flow rule setting to block and drop a message, which is a packet received from the first host, to the switch. Furthermore, the original VLAN has a disadvantage in that security is weak, but when a software-defined network is used as in the embodiment of the present invention, the controller authenticates the host (terminal) using the MAC address and/or IP address of the host as the KEY, and Since the network is separated by setting the ID, the security of logical network separation can be strengthened.

제1 호스트가 속한 네트워크의 네트워크 ID가 제1 네트워크 ID임을 확인한 컨트롤러는 패킷인 메시지의 빈 영역(VLAN 태그)에 제1 네트워크 ID를 삽입하여 제1 호스트가 제1 네트워크에 속하도록 할 수 있다(S500). 나아가 컨트롤러는 제1 네트워크 ID가 삽입된 패킷인 메시지를 스위치에 전송(S600)하여, 제1 호스트가 제1 네트워크에 속하게 설정할 수 있다. 또한 컨트롤러는 메모리에 임시 저장된 VLAN 태그가 제1 호스트에 대응되도록 하는 플로우 룰을 스위치에 더 전송할 수 있다.The controller, which has confirmed that the network ID of the network to which the first host belongs is the first network ID, inserts the first network ID into a blank area (VLAN tag) of the message, which is a packet, so that the first host belongs to the first network ( S500). Further, the controller transmits a message in which the first network ID is inserted to the switch (S600), so that the first host may be set to belong to the first network. In addition, the controller may further transmit a flow rule to the switch so that the VLAN tag temporarily stored in the memory corresponds to the first host.

이러한 과정을 통해 스위치에 호스트를 위한 VLAN을 네트워크 관리자가 별도로 설정하지 않아도 컨트롤러는 네트워크 테이블을 이용하여 호스트의 패킷이 속하는 네트워크를 식별하고, 스위치에 호스트의 패킷이 식별된 네트워크에 속하는 것으로 처리할 수 있다.Through this process, the controller can use the network table to identify the network to which the host's packet belongs and treat the switch as belonging to the identified network, even if the network administrator does not separately set the VLAN for the host on the switch. have.

이후 컨트롤러는 패킷인 메시지의 도착지 MAC 주소 및/또는 IP 주소를 더 검증할 수 있다. 패킷인 메시지의 도착지 MAC 주소 및/또는 IP 주소가 다른 포트에 존재하지 않으면 컨트롤러는 도착지가 유효하지 않다고 판단하여 스위치에 제1 호스트로부터 수신한 패킷인 메시지를 차단 및 드랍하도록 설정하는 플로우 룰을 전송할 수 있다.Thereafter, the controller may further verify the destination MAC address and/or IP address of the packet-in-message. If the destination MAC address and/or IP address of the packet-in message does not exist on another port, the controller determines that the destination is invalid and transmits a flow rule to the switch to block and drop the packet-in message received from the first host. I can.

나아가 컨트롤러는 제1 호스트의 패킷인 메시지에 포함된 도착지가 유효하면, 도착지의 MAC 주소 및/또는 IP 주소에 대응하는 네트워크를 식별할 수 있다. 컨트롤러는 패킷인 메시지의 MAC 주소 및/또는 IP 주소에 대응하는 네트워크가 제1 네트워크이고, 패킷인 메시지의 도착지의 MAC 주소 및/또는 IP 주소에 대응하는 네트워크가 제2 네트워크이면, 망 연계 테이블을 확인하여 제1 호스트가 제2 네트워크에 통신 가능한 지 확인할 수 있다. 컨트롤러는 망 연계 테이블에서 제1 네트워크에 속한 제1 호스트가 제2 네트워크와 통신이 불가능함을 식별하면, 스위치에 제1 호스트의 패킷인 메시지를 차단 및 드랍하도록 설정하는 플로우 룰을 전송할 수 있다.Furthermore, if the destination included in the message, which is a packet of the first host, is valid, the controller may identify a network corresponding to the MAC address and/or IP address of the destination. If the network corresponding to the MAC address and/or IP address of the packet-in message is the first network, and the network corresponding to the MAC address and/or IP address of the packet-in message is the second network, the controller checks the network association table. By checking, it is possible to check whether the first host can communicate with the second network. When the controller identifies in the network association table that the first host belonging to the first network is unable to communicate with the second network, the controller may transmit a flow rule setting to block and drop a message, which is a packet of the first host, to the switch.

나아가 컨트롤러는 망 연계 테이블에서 제1 네트워크에 속한 제1 호스트가 제2 네트워크와 통신이 가능하다고 식별하면, 스위치에 제1 호스트가 제2 네트워크도 이용할 수 있도록 설정하는 플로우 룰을 전송할 수 있다.Furthermore, if the controller identifies in the network association table that the first host belonging to the first network can communicate with the second network, the controller may transmit a flow rule to the switch for setting the first host to use the second network as well.

본 발명의 실시 예를 따르면, 도착지의 MAC 주소 및/또는 IP 주소에 대응하는 스위치는 제1 호스트가 속한 스위치가 전송한 패킷을 수신하면, 패킷에 포함된 네트워크의 ID 를 제거하고, 컨트롤러로부터 미리 수신한 플로우 룰에 따라 제1 호스트의 VLAN 태그를 삽입한 후 도착지 호스트에 패킷을 전송할 수 있다. According to an embodiment of the present invention, when a switch corresponding to the MAC address and/or IP address of the destination receives a packet transmitted by a switch to which the first host belongs, removes the network ID included in the packet, and removes the network ID from the controller in advance. After inserting the VLAN tag of the first host according to the received flow rule, the packet may be transmitted to the destination host.

본 발명의 실시 예를 따르면, 본 발명과 같이 컨트롤러에서 네트워크 ID를 부여하고, 다른 네트워크에 대한 접근을 제어할 수 있어 호스트에 동적인 망 분리 서비스를 제공함과 동시에 네트워크 보안 수준을 상승시킬 수 있는 효과가 있다.According to an embodiment of the present invention, as in the present invention, a controller can assign a network ID and control access to other networks, thereby providing a dynamic network separation service to the host and increasing the network security level at the same time. There is.

본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.The embodiments of the present invention disclosed in the present specification and drawings are provided only to provide specific examples to easily explain the technical content of the present invention and to aid understanding of the present invention, and are not intended to limit the scope of the present invention. It is obvious to those of ordinary skill in the art that other modifications based on the technical idea of the present invention can be implemented in addition to the embodiments disclosed herein.

Claims (6)

소프트웨어 정의 네트워크를 기반으로 망을 분리하는 방법에 있어서,
컨트롤러에서, 호스트의 네트워크 ID를 포함하는 네트워크 테이블을 생성하는 a 단계;
스위치에서, 제1 호스트가 전송한 패킷을 상기 컨트롤러에 패킷인 메시지로 전송하는 b 단계;
상기 컨트롤러에서, 상기 패킷인 메시지에 포함된 VLAN 태그를 추출하고, 상기 네트워크 테이블에서 상기 제1 호스트가 속하는 네트워크의 ID를 검색하여 상기 패킷인 메시지에 삽입하는 c 단계;
상기 컨트롤러에서, 상기 스위치에 상기 패킷인 메시지를 전송하여 상기 제1 호스트가 상기 네트워크에 속하는 것으로 처리하도록 하는 d 단계를 포함하는 것을 특징으로 하는 망 분리 방법.
In a method of separating a network based on a software defined network,
A step of generating, at the controller, a network table including a network ID of the host;
A step b of transmitting, at the switch, the packet transmitted by the first host to the controller as a message as a packet;
C, in the controller, extracting a VLAN tag included in the packet-in message, searching the network table for an ID of a network to which the first host belongs, and inserting it into the packet-in message;
And a step d of allowing the controller to process the first host as belonging to the network by transmitting the message as the packet to the switch.
제1항에 있어서,
상기 a 단계는, 상기 컨트롤러에서, 상기 스위치로부터 수신한 상기 패킷인 메시지를 이용하여, 상기 호스트의 IP 주소, MAC 주소 및 상기 호스트가 속한 네트워크의 ID 중 적어도 하나 이상을 포함하는 상기 네트워크 테이블을 생성하는 단계를 포함하는 망 분리 방법.
The method of claim 1,
In the step a, the controller generates the network table including at least one of an IP address, a MAC address, and an ID of a network to which the host belongs, using a message that is the packet received from the switch. Network separation method comprising the step of.
제2항에 있어서,
상기 c 단계는, 상기 컨트롤러에서, 상기 네트워크 테이블에서 상기 제1 호스트의 MAC 주소가 다른 포트의 제2 호스트에 해당하는 경우, 상기 스위치가 상기 패킷인 메시지를 차단 및 드랍하게 설정하는 단계를 포함하는 망 분리 방법.
The method of claim 2,
In the step c, in the case where the MAC address of the first host in the network table corresponds to a second host of another port, the switch includes setting the packet to block and drop the message. How to separate the net.
제2항에 있어서,
상기 c 단계는, 상기 컨트롤러에서, 상기 네트워크 테이블에서 상기 패킷인 메시지에 포함된 목적지의 MAC 주소가 상기 네트워크 테이블에 포함되지 않으면 상기 스위치가 상기 패킷인 메시지를 차단 및 드랍하게 설정하는 단계를 포함하는 망 분리 방법.
The method of claim 2,
In the step c, if the MAC address of the destination included in the packet-in message in the network table is not included in the network table, the switch blocks and drops the packet-in message. How to separate the net.
제2항에 있어서,
상기 a 단계는, 상기 컨트롤러에서, 상기 호스트가 속한 제1 네트워크와, 다른 제2 네트워크 사이의 관계를 기록한 망 연계 테이블을 생성하는 단계를 포함하고,
상기 c 단계는, 상기 컨트롤러에서, 상기 네트워크 테이블에서 상기 패킷인 메시지에 포함된 목적지의 MAC 주소가 제2 네트워크이면 상기 망 연계 테이블에서 상기 제1 호스트가 상기 제2 네트워크에 접근 가능한 지 판단하고, 그렇지 않으면 상기 스위치가 상기 패킷을 차단 및 드랍하게 설정하는 단계를 포함하는 망 분리 방법.
The method of claim 2,
The step a includes, in the controller, generating a network association table recording a relationship between a first network to which the host belongs and another second network,
In step c, in the controller, if the MAC address of the destination included in the packet-in message in the network table is a second network, the network association table determines whether the first host can access the second network, Otherwise, the switch blocking and dropping the packet.
제1항에 있어서,
상기 스위치에서, 상기 컨트롤러로부터 상기 패킷인 메시지를 수신하면, 상기 패킷인 메시지를 목적지 포트가 속한 스위치에 전송하고,
상기 목적지 스위치는 상기 패킷인 메시지에서 상기 네트워크의 ID를 제거하고 상기 컨트롤러의 메모리에 임시 저장된 상기 VLAN 태그를 삽입하는 단계를 포함하는 망 분리 방법.
The method of claim 1,
When the switch receives the packet-in message from the controller, the packet-in message is transmitted to a switch to which a destination port belongs,
And the destination switch removing the ID of the network from the message as the packet and inserting the VLAN tag temporarily stored in the memory of the controller.
KR1020190108529A 2019-09-03 2019-09-03 Method, apparatus and computer program for network separation of software defined network KR102246290B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190108529A KR102246290B1 (en) 2019-09-03 2019-09-03 Method, apparatus and computer program for network separation of software defined network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190108529A KR102246290B1 (en) 2019-09-03 2019-09-03 Method, apparatus and computer program for network separation of software defined network

Publications (2)

Publication Number Publication Date
KR20210027737A true KR20210027737A (en) 2021-03-11
KR102246290B1 KR102246290B1 (en) 2021-04-29

Family

ID=75143180

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190108529A KR102246290B1 (en) 2019-09-03 2019-09-03 Method, apparatus and computer program for network separation of software defined network

Country Status (1)

Country Link
KR (1) KR102246290B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100528171B1 (en) * 2005-04-06 2005-11-15 스콥정보통신 주식회사 Ip management method and apparatus for protecting/blocking specific ip address or specific device on network
KR20140050461A (en) * 2012-10-19 2014-04-29 에스케이텔레콤 주식회사 Method and apparatus to implement virtual networks using open flow switches and controller
KR20160056191A (en) * 2014-11-11 2016-05-19 한국전자통신연구원 System and method for virtual network-based distributed multi-domain routing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100528171B1 (en) * 2005-04-06 2005-11-15 스콥정보통신 주식회사 Ip management method and apparatus for protecting/blocking specific ip address or specific device on network
KR20140050461A (en) * 2012-10-19 2014-04-29 에스케이텔레콤 주식회사 Method and apparatus to implement virtual networks using open flow switches and controller
KR20160056191A (en) * 2014-11-11 2016-05-19 한국전자통신연구원 System and method for virtual network-based distributed multi-domain routing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Open Networking Foundation, "OpenFlow Specification 1.3.0"

Also Published As

Publication number Publication date
KR102246290B1 (en) 2021-04-29

Similar Documents

Publication Publication Date Title
CN110401588B (en) Method and system for realizing VPC (virtual private network) peer-to-peer connection in public cloud platform based on openstack
EP1170925B1 (en) MAC address-pairs-based communication restricting method
JP5062967B2 (en) Network access control method and system
CN105049412A (en) Secure data exchange method, device and equipment among different networks
KR101472685B1 (en) Network connection gateway, a network isolation method and a computer network system using such a gateway
US10484393B2 (en) Security access for a switch device
CN106027491B (en) Separated links formula communication processing method and system based on isolation IP address
KR101527377B1 (en) Service chaining system based on software defined networks
KR20070081116A (en) Apparatus and method for automatically blocking spoofing by address resolution protocol
US20060150243A1 (en) Management of network security domains
KR101786620B1 (en) Method, apparatus and computer program for subnetting of software defined network
CN107968849B (en) Method and device for network private line connection
KR101710385B1 (en) Method, apparatus and computer program for managing arp packet
RU2292118C2 (en) Protectability in wide-area networks
Odi et al. The proposed roles of VLAN and inter-VLAN routing in effective distribution of network services in Ebonyi State University
KR102246290B1 (en) Method, apparatus and computer program for network separation of software defined network
KR102412933B1 (en) System and method for providing network separation service based on software-defined network
KR20160115132A (en) Method for providing security service in cloud system and the cloud system thereof
KR101440154B1 (en) Apparatus and method for user authentication of network security system
KR102092015B1 (en) Method, apparatus and computer program for recognizing network equipment in a software defined network
KR101993875B1 (en) Method, system and computer program for host secretion in software defined networking environment
KR102019210B1 (en) Method, apparatus and computer program for managing hosts of software defined network
CN115883256B (en) Data transmission method, device and storage medium based on encryption tunnel
WO2015020393A1 (en) Method, device, and system for supporting communication between user terminal devices by using openflow, and computer-recordable recording medium
KR102114484B1 (en) Method, apparatus AND COMPUTER PROGRAM for controlling network access in a software defined network

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right