KR20160104419A - Apparatus and method for autonomic scaling of monitoring function resource in software defined network - Google Patents

Apparatus and method for autonomic scaling of monitoring function resource in software defined network Download PDF

Info

Publication number
KR20160104419A
KR20160104419A KR1020150027432A KR20150027432A KR20160104419A KR 20160104419 A KR20160104419 A KR 20160104419A KR 1020150027432 A KR1020150027432 A KR 1020150027432A KR 20150027432 A KR20150027432 A KR 20150027432A KR 20160104419 A KR20160104419 A KR 20160104419A
Authority
KR
South Korea
Prior art keywords
resource
monitoring
core
virtual
monitoring function
Prior art date
Application number
KR1020150027432A
Other languages
Korean (ko)
Other versions
KR102016683B1 (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 KR1020150027432A priority Critical patent/KR102016683B1/en
Publication of KR20160104419A publication Critical patent/KR20160104419A/en
Application granted granted Critical
Publication of KR102016683B1 publication Critical patent/KR102016683B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • H04L41/0897Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities by horizontal or vertical scaling of resources, or by migrating entities, e.g. virtual resources or entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/24Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using dedicated network management hardware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches

Landscapes

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

Abstract

The present invention relates to an apparatus and method for autonomously scaling resources of monitoring functions of a software-defined network. The apparatus for autonomously scaling resources of monitoring functions of a software-defined network according to the present invention comprises: a basic monitoring service module which transfers collected traffic and resource information to a user-defined monitoring service module based on a load balancing policy; the user-defined monitoring module which virtually configures a monitoring service function, and generates one or more virtual monitoring functions; a virtual monitoring management unit which monitors resource states of one or more cores, to which the virtual monitoring functions have been currently assigned, based on previously received traffic and resource information, and controls the number of cores to which the virtual monitoring functions have been assigned; and a multi-core unit which includes the one or more cores configured to perform the virtual monitoring functions.

Description

소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법{APPARATUS AND METHOD FOR AUTONOMIC SCALING OF MONITORING FUNCTION RESOURCE IN SOFTWARE DEFINED NETWORK}TECHNICAL FIELD [0001] The present invention relates to a software-defined network monitoring function, and an apparatus and method for autonomous scaling of resources.

본 발명은 소프트웨어 정의 네트워크(Software Defined Network, SDN)에 관한 것으로, 보다 상세하게는 SDN의 네트워크 트래픽 모니터링에 관한 기술이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a software defined network (SDN), and more particularly, to a technique for monitoring network traffic of an SDN.

소프트웨어 정의 네트워크(Software Defined Network, 이하 SDN) 기술은 네트워크의 전송 평면(Transport Plane 또는 Data Plane)과 제어 평면(Control Plane)을 분리하고, 전송 평면은 패킷 전송에 필요한 모든 결정을 제어 평면에 질의하도록 하여, 전송 평면에 설치하는 소프트웨어를 통해 네트워크 구성과 패킷 흐름을 중앙집중식으로 제어할 수 있도록 하는 기술이다. SDN에는 전송 평면 및 제어 평면의 다양한 물리 자원과 가상 자원이 동시에 존재하며, 이들의 상태, 성능, 품질, 가용성 및 장애 등을 통합적으로 모니터링 할 필요가 있다. 이에 따라, SDN의 상태를 모니터링하기 위한 다양한 기술이 개발되었다.Software Defined Network (SDN) technology separates the transport plane (Data Plane or Data Plane) of the network from the control plane (Control Plane), and the transmission plane queries all the decisions required for packet transmission on the control plane To centrally control network configuration and packet flow through software installed on the transmission plane. In SDN, various physical resources and virtual resources of a transmission plane and a control plane exist at the same time, and it is necessary to integrally monitor their state, performance, quality, availability, and failure. Accordingly, various techniques for monitoring the status of the SDN have been developed.

종래 모니터링 기술은 일반적으로 전용 모니터링 장비에 고정(종속)되어 있어 고객의 요구에 따른 확장성 제공 측면에서 신규로 하드웨어 장비를 추가 해야 되는 한계점을 가지고 있다. 또한, 종래 모니터링 기술은 고객의 요구가 감소할 경우 기 투자된 비용의 낭비가 발생할 수 있다. 즉, 종래 모니터링 기술은 고객의 요구에 맞게 동적으로 자원의 스케일링을 제공하기 힘든 한계점을 가지고 있다. 대한민국 공개특허 제10-2012-0072059호는 가상화 네트워크의 자원 사용률을 모니터링하여 자원을 할당하는 기술에 대해 개시하고 있다. 하지만, 상기 특허는 모니터링을 통해 가상머신의 자원 할당만을 조절할 뿐, 모니터링 기능 자원의 동적 스케일링 문제를 해결하지 못한다.Conventional monitoring technology is usually fixed (dedicated) to dedicated monitoring equipment, so it has a limitation to add new hardware equipment in terms of providing scalability according to customer's demand. In addition, if the customer's demand is reduced, the conventional monitoring technology may waste the cost. That is, the conventional monitoring technology has a limitation that it is difficult to dynamically provide scaling of resources to meet the needs of customers. Korean Patent Publication No. 10-2012-0072059 discloses a technology for allocating resources by monitoring resource utilization of a virtualization network. However, the patent only controls resource allocation of the virtual machine through monitoring, and does not solve the dynamic scaling problem of the monitoring function resource.

대한민국 공개특허 제10-2012-0072059호Korean Patent Publication No. 10-2012-0072059

본 발명이 해결하고자 하는 과제는 종래 기술의 문제점을 해결하기 위하여 SDN의 자원을 통합 모니터링 하는 기능을 가상화하여 제공하며, 가상 모니터링 기능을 가용한 코어 자원의 상태를 기반으로 할당하여 효율성을 최적화하는 자원 자율 스케일링 장치 및 방법을 제공하는 것이다.In order to solve the problems of the prior art, the present invention has been made to provide a virtualization function of integrated monitoring of resources of the SDN, and to provide a virtual monitoring function by allocating resources based on the state of core resources And to provide an autonomous scaling apparatus and method.

본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치는 로드 밸런싱 정책에 따라 수집된 트래픽 및 자원 정보를 사용자 정의 모니터링 서비스 모듈로 전달하는 기본 모니터링 서비스 모듈, 모니터링 서비스 기능을 가상으로 구성하여 하나 이상의 가상 모니터링 기능을 생성하는 사용자 정의 모니터링 모듈, 기 수신된 트래픽 및 자원 정보에 기초하여 현재 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하여 가상 모니터링 기능이 할당된 코어의 개수를 제어하는 가상 모니터링 관리부 및 기상 모니터링 기능을 수행하는 하나 이상의 코어를 구비한 멀티 코어부를 포함한다.The monitoring function resource autonomous scaling device according to the present invention includes a basic monitoring service module for transmitting traffic and resource information collected according to a load balancing policy to a user-defined monitoring service module, A virtual monitoring management unit for monitoring the resource status of the core allocated with the current virtual monitoring function based on the received traffic and resource information and controlling the number of cores allocated with the virtual monitoring function, And a multi-core unit having at least one core that performs a weather monitoring function.

가상 모니터링 관리부는 현재 실행 중인 하나 이상의 코어의 자원 상태를 모니터링하여 리소스 상태 테이블을 업데이트하고, 현재 실행 중인 하나 이상의 코어 중에서 자원 사용 한계치 또는 자원 사용 최소 한계치를 벗어나는 코어를 확인한다. 그리고, 가상 모니터링 관리부는 자원 사용 한계치를 초과하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 하나 이상의 코어 중에서 가용한 코어에 가상 모니터링 기능을 할당하고, 리소스 매핑 테이블 및 리소스 상태 테이블을 업데이트한다. 만약 자원 사용 한계치를 초과하는 코어 발생 시, 가상 모니터링 관리부는 하나 이상의 코어 중에서 가용한 코어가 없을 경우, 자원 사용 한계치를 초과한 가상 모니터링 기능의 우선 순위에 따라 선점 방식(Preemption)을 적용하여 코어에 가상 모니터링 기능을 할당할 수 있다. The virtual monitoring management unit monitors the resource status of one or more currently executing cores to update the resource status table and identifies a core that is out of the resource usage limit or the resource usage minimum limit among one or more currently executing cores. The virtual monitoring management unit allocates a virtual monitoring function to available cores among the one or more cores based on the information of the resource status table and the resource mapping table when a core exceeding the resource usage limit is generated, Lt; / RTI > If there is no available core among one or more cores, the virtual monitoring manager applies preemption according to the priority of the virtual monitoring function exceeding the resource usage limit, You can assign virtual monitoring functions.

그리고, 가상 모니터링 관리부는 자원 최소 사용 한계치를 하향하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 축소 가능한 코어를 결정하고, 축소 가능한 코어를 가상 모니터링 기능에서 제외하여 비활성화 시킨 후, 리소스 상태 테이블 및 리소스 매핑 테이블을 업데이트할 수 있다. 그리고, 기본 모니터링 서비스 모듈은 리소스 매핑 테이블을 참조하여 사용자 정의 모니터링 모듈에 포함된 하나 이상의 가상 모니터링 기능 중에서 필요한 가상 모니터링 기능을 선택하여 로드 밸런싱을 수행한다.The virtual monitoring management unit determines a reducible core based on the information of the resource status table and the resource mapping table when the core that has a lower resource utilization threshold is generated, excludes the reducible core from the virtual monitoring function and deactivates the core, You can update the resource state table and the resource mapping table. The basic monitoring service module performs load balancing by selecting a required virtual monitoring function among at least one virtual monitoring function included in the user-defined monitoring module by referring to the resource mapping table.

소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법은 수신된 트래픽 및 자원 정보에 기초하여 현재 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하고, 모니터링 결과에 따라 가상 모니터링 기능이 할당된 코어를 제어한다. 코어의 개수를 제어하는 과정은 현재 실행 중인 하나 이상의 코어의 자원 상태를 모니터링하여 리소스 상태 테이블을 업데이트하고, 현재 실행 중인 하나 이상의 코어 중에서 자원 사용 한계치 또는 자원 사용 최소 한계치를 벗어나는 코어를 확인하여 코어의 개수를 제어한다. Software-defined network monitoring function The resource autonomous scaling method monitors the resource status of the core to which the current virtual monitoring function is allocated based on the received traffic and resource information, and controls the core to which the virtual monitoring function is allocated according to the monitoring result. In the process of controlling the number of cores, the resource status of one or more currently executed cores is monitored to update the resource status table, and a core that is out of the resource usage limit or the resource usage minimum limit among the currently executed one or more cores is checked, Control the number.

이 과정은 자원 사용 한계치를 초과하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 하나 이상의 코어 중에서 가용한 코어에 가상 모니터링 기능을 할당한다. 만약, 상기 하나 이상의 코어 중에서 가용한 코어가 없을 경우, 자원 사용 한계치를 초과한 가상 모니터링 기능의 우선 순위에 따라 선점 방식(Preemption)을 적용하여 코어에 가상 모니터링 기능을 할당할 수 있다. 만약, 자원 최소 사용 한계치를 하향하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 축소 가능한 코어를 결정하고, 축소 가능한 코어를 가상 모니터링 기능에서 제외하여 비활성화 시킨 후, 리소스 상태 테이블 및 리소스 매핑 테이블을 업데이트한다.This process allocates a virtual monitoring function to available cores among one or more cores based on the information of the resource status table and the resource mapping table when a core that exceeds the resource use limit is generated. If there is no available core among the one or more cores, the virtual monitoring function may be allocated to the core by applying a preemption according to the priority of the virtual monitoring function exceeding the resource usage limit. If a core having a lower resource utilization threshold value is generated, the core that can be collapsed is determined based on the information of the resource state table and the resource mapping table, the collapsible core is excluded from the virtual monitoring function and is deactivated, Update the resource mapping table.

본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법은 종래의 모니터링 기술이 확장과 축소에 제약이 따르는 것과 달리, 가상화 기술을 통해 구현된 가상 모니터링 기능을 코어에 할당하고, 코어의 자원 사용 정도에 따라 활성화 및 비활성화할 수 있다. 본 발명에서는 이를 통해 사용자의 요구에 대응하여 동적으로 자원 자율 스케일링 기능을 제공함으로써 자본적 지출(Capital Expenditure)을 줄일 수 있으며, 고객 대응 품질 향상의 효과가 발생한다.The apparatus and method for voluntary resource scaling of a software defined network according to the present invention allocate a virtual monitoring function implemented through a virtualization technology to a core, It can be activated and deactivated depending on the degree of use. According to the present invention, it is possible to reduce the capital expenditure and improve the quality of the customer response by dynamically providing the voluntary resource scaling function in response to the user's request.

도 1은 본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 일 실시예를 나타내는 구성도이다.
도 2는 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 부트스트래핑 과정을 나타내는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 자동 스케일 아웃 과정을 나타내는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 자동 스케일 인 과정을 나타내는 흐름도이다.
FIG. 1 is a configuration diagram illustrating an embodiment of a monitoring function resource self-scaling apparatus 100 of a software defined network according to the present invention.
FIG. 2 is a flowchart illustrating a bootstrapping process of the monitoring function resource self-scaling apparatus 100 of the software defined network according to an embodiment of the present invention.
FIG. 3 is a flowchart illustrating an automatic scale-out process of the monitoring function resource self-scaling apparatus 100 of the software defined network according to an exemplary embodiment of the present invention.
FIG. 4 is a flowchart illustrating an automatic scale-up process of the self-scaling device 100 for monitoring a functional resource of a software defined network according to an exemplary embodiment of the present invention.

이하, 본 발명의 실시예를 첨부된 도면들을 참조하여 상세하게 설명한다. 본 명세서에서 사용되는 용어 및 단어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 발명의 의도 또는 관례 등에 따라 달라질 수 있다. 따라서 후술하는 실시예에서 사용된 용어는, 본 명세서에 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우는 당업자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다.
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The terms and words used in the present specification are selected in consideration of the functions in the embodiments, and the meaning of the terms may vary depending on the intention or custom of the invention. Therefore, the terms used in the following embodiments are defined according to their definitions when they are specifically defined in this specification, and unless otherwise specified, they should be construed in a sense generally recognized by those skilled in the art.

도 1은 본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 일 실시예를 나타내는 구성도이다.FIG. 1 is a configuration diagram illustrating an embodiment of a monitoring function resource self-scaling apparatus 100 of a software defined network according to the present invention.

도 1을 참조하면, 본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 물리 인터페이스(Physical Interface, 110), 기본 모니터링 서비스 모듈(Basic Monitoring Service Module, BMS, 120), 사용자 정의 모니터링 서비스 모듈(User-defined Monitoring Module, UMS, 130), 멀티 코어부(140) 및 가상 모니터링 관리부(Monitoring VM & VF Manager, 150)를 포함한다.Referring to FIG. 1, a monitoring function resource autonomic scaling apparatus 100 of a software defined network according to the present invention includes a physical interface 110, a basic monitoring service module (BMS) 120, A user-defined monitoring module (UMS) 130, a multi-core unit 140, and a monitoring VM & VF manager 150.

물리 인터페이스(110)는 기본 모니터링 서비스 모듈(120) 및 사용자 정의 모니터링 서비스 모듈(130)이 모니터링 할 트래픽을 송수신할 수 있도록 외부와 통신을 수행한다. 물리 인터페이스(110)는 모니터링 할 대상 네트워크와 직접 연결되며, 수집된 데이터를 기본 모니터링 서비스 모듈(120)로 전달한다.The physical interface 110 communicates with the outside so that the basic monitoring service module 120 and the user-defined monitoring service module 130 can transmit and receive traffic to be monitored. The physical interface 110 is directly connected to the target network to be monitored and transmits the collected data to the basic monitoring service module 120.

기본 모니터링 서비스 모듈(120)의 로드 밸런서(121)는 물리 인터페이스(110)로부터 수신된 데이터가 사용자 정의 모니터링 서비스 모듈(130)에 포함된 다수의 가상 기능(131, 132, 133, 134) 중에서 어떤 가상 기능에 전달되어야 하는지를 파악하여 전달한다. 이 과정에서 로드 밸런서(121)는 모니터링 관리부(150)의 리소스 매핑 테이블(Resource Mapping Table, 153)을 참조하여 사용자 정의 모니터링 서비스 모듈(130)에 포함된 다수의 가상 기능(131, 132, 133, 134) 중 필요한 가상 기능을 선택하여 로드 밸런싱을 수행한다The load balancer 121 of the basic monitoring service module 120 determines whether the data received from the physical interface 110 is one of a plurality of virtual functions 131, 132, 133, and 134 included in the user- Identify and communicate if it should be delivered to the virtual function. In this process, the load balancer 121 refers to the resource mapping table 153 of the monitoring management unit 150 to access a plurality of virtual functions 131, 132, 133, 134) to perform load balancing by selecting necessary virtual functions

사용자 정의 모니터링 서비스 모듈(130)은 다수의 모니터링 서비스 기능을 가상으로 구성하여, 가상 모니터링 기능(가상 모니터링 서비스 기능)을 생성한다. 사용자 정의 모니터링 서비스 모듈(130)은 적응형 플로우 모니터링(Adaptive Flow Monitoring, AMF, 131), 선택적 심층 패킷 분석(Selective Deep Packet Inspection, S-DPI, 132), DMA(Detect and Mitigate Abnormality, 133) 및 DNS 트래픽 모니터링(DNS Traffic Monitoring, 134)를 포함하는 다양한 가상 모니터링 기능을 포함할 수 있다. 사용자 정의 모니터링 서비스 모듈(130)은 상기 가상 모니터링 기능뿐만 아니라, 기존 서비스 중단 없이 새로운 가상 모니터링 기능을 추가, 삭제, 실행 및 중지가 가능하다.The user-defined monitoring service module 130 virtually configures a plurality of monitoring service functions to generate a virtual monitoring function (virtual monitoring service function). The user-defined monitoring service module 130 includes Adaptive Flow Monitoring (AMF) 131, Selective Deep Packet Inspection (S-DPI) 132, Detect and Mitigate Abnormality And DNS traffic monitoring (DNS Traffic Monitoring, 134). The user-defined monitoring service module 130 can add, delete, execute and stop the virtual monitoring function as well as the new virtual monitoring function without interruption of the existing service.

멀티 코어부(140)는 사용자 정의 모니터링 서비스 모듈(130)의 가상 모니터링 기능이 수행될 컴퓨팅 자원으로, 다수의 코어로 구성된다. 각각의 가상 모니터링 기능은 멀티 코어부(140)를 구성하는 다수의 코어에 할당된다. 하나의 가상 모니터링 기능은 하나의 코어에 할당될 수 있으며, 둘 이상의 코어 상에 할당되어 실행될 수 있다. The multicore unit 140 is a computing resource in which the virtual monitoring function of the user-defined monitoring service module 130 is to be performed, and is composed of a plurality of cores. Each virtual monitoring function is allocated to a plurality of cores that constitute the multi-core unit 140. One virtual monitoring function can be assigned to one core and can be assigned and executed on two or more cores.

가상 모니터링 관리부(Monitoring VM & VF Manager, 150)는 가상 머신 모니터링 및 가상 플로우 모니터링을 관리한다. 가상 모니터링 관리부(150)는 로드 모니터부(Load Monitor, 151), 리소스 상태 테이블(Resource Status Table, 152), 리소스 매핑 테이블(153) 및 리소스 스케줄러(Resource Scheduler, 153)를 포함한다. The Monitoring VM & VF Manager 150 manages virtual machine monitoring and virtual flow monitoring. The virtual monitoring management unit 150 includes a load monitor 151, a resource status table 152, a resource mapping table 153, and a resource scheduler 153.

모니터링 시스템이 최초 부팅되면, 모니터링 관리부(150)의 리소스 스케줄러(153)가 사용자 정의 모니터링 서비스 모듈(130)의 가상 모니터링 기능을 순차적으로 시작한다. 리소스 스케줄러(153)는 리소스 매핑 테이블(153)의 정보에 기초하여 가상 모니터링 기능을 어떤 코어에서 구동시킬 지를 결정한다. 그리고, 리소스 스케줄러(153)는 리소스 상태 테이블(152)의 상황을 고려하여 우선 순위가 높은 가상 모니터링 기능부터 순차적으로 동작시킨다. 그리고, 기본 모니터링 서비스 모듈(120) 및 사용자 정의 모니터링 서비스 모듈(130)가 모두 시작되면, 가상 모니터링 관리부(150)는 물리 인터페이스(110)를 통해 모니터링 할 네트워크와 연결하여 트래픽 및 자원 정보의 모니터링을 시작한다. When the monitoring system is booted for the first time, the resource scheduler 153 of the monitoring management unit 150 sequentially starts the virtual monitoring function of the user-defined monitoring service module 130. The resource scheduler 153 determines on which core the virtual monitoring function is to be driven based on the information in the resource mapping table 153. [ Then, the resource scheduler 153 sequentially operates the virtual monitoring function with higher priority in consideration of the situation of the resource status table 152. [ When both the basic monitoring service module 120 and the user defined monitoring service module 130 are started, the virtual monitoring management unit 150 connects to the network to be monitored through the physical interface 110 and monitors traffic and resource information Start.

로드 모니터부(151)는 현재 실행 중인 코어의 자원 상태를 실시간으로 모니터링하며 정책으로 정해진 특정 주기적으로 자원 상태를 리소스 상태 테이블(153)에 업데이트 한다. 동시에, 로드 모니터부(151)는 코어에 설정된 자원 사용 최대 한계치를 초과하는지 여부를 지속적으로 모니터링 한다. 만약 자원 사용 한계치를 초과하지 않을 경우, 로드 모니터부(151)는 모니터링 작업을 계속 반복해서 수행한다. 반면에, 자원 사용 한계치를 초과하는 경우, 로드 모니터부(151)는 리소스 스케줄러(154)에 자원 사용 한계치 초과를 통보한다. 이 때, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)의 정보를 기반으로 한계치 초과 분을 수용할 수 있는 추가 코어 자원의 가용 여부를 체크한다. The load monitor unit 151 monitors the resource status of the currently executing core in real time and updates the resource status table 153 in a specific periodic manner determined by the policy. At the same time, the load monitor unit 151 continuously monitors whether or not the resource usage maximum limit set in the core is exceeded. If the resource usage limit is not exceeded, the load monitoring unit 151 repeats the monitoring operation repeatedly. On the other hand, when the resource usage limit value is exceeded, the load monitor unit 151 notifies the resource scheduler 154 that the resource usage limit is exceeded. At this time, the resource scheduler 154 checks whether or not the additional core resource that can accommodate the exceeded value is available based on the information of the resource status table 152 and the resource mapping table 153.

추가할 코어 자원이 가용한 경우(가용한 코어 자원이 존재하는 경우), 리소스 스케줄러(154)는 자동 스케일 아웃(Auto Scale-out) 기능을 통해 해당 가상 모니터링 기능을 가용한 코어에 할당한 후, 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트 한다. 만약, 추가할 코어 자원이 가용하지 않은 경우(가용한 코어 자원이 존재하지 않는 경우), 리소스 스케줄러(154)는 이미 실행 중인 가상 모니터링 기능 및 관련 코어의 우선 순위에 따라 선점 방식(Preemption)이 가능한 지 여부를 확인한다. 리소스 스케줄러(154)는 선점 방식을 통해, 우선 순위가 낮은 가상 모니터링 기능을 중지하고, 가상 모니터링 기능이 중지된 코어에 다른 가상 모니터링 기능을 할당할 수 있다. 선점 방식이 가능할 경우, 리소스 스케줄러(154)는 선점 방식이 가능한 코어를 결정하고 해당 가상 모니터링 기능을 할당할 수 있다. 그리고, 리소스 스케줄러(154)는 선점 방식이 가능하지 않을 경우, 가용한 자원 부족으로 자동 스케일 아웃이 불가함을 보고한다.If the core resource to be added is available (the available core resource exists), the resource scheduler 154 allocates the virtual monitoring function to the available core through an auto scale-out function, The resource status table 152 and the resource mapping table 153 are updated. If the core resource to be added is not available (the available core resources do not exist), the resource scheduler 154 can preemption according to the priority of the virtual monitoring function and the related core that are already being executed . The resource scheduler 154 can stop the low priority virtual monitoring function and allocate another virtual monitoring function to the stopped core through the preemption method. When the preemption method is available, the resource scheduler 154 can determine a core capable of preemption and allocate a corresponding virtual monitoring function. If the preemption method is not available, the resource scheduler 154 reports that automatic scale-out is impossible due to a lack of available resources.

본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100) 상술한 내용과 같이 자동 스케일 아웃 기능을 이용하여 가상 모니터링 기능을 코어에 동적으로 추가 할당할 수 있다. 뿐만 아니라, 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 자동 스케일 인(Auto Scale-in) 기능을 통해 사용중인 코어의 개수를 축소할 수 있다.Monitoring Function of Software Definition Network According to the Present Invention Resource Self-Scaling Apparatus 100 As described above, the virtual monitoring function can be dynamically added to the core by using the automatic scale-out function. In addition, the monitoring function resource autonomous scaling device 100 of the software defined network can reduce the number of used cores through an auto scale-in function.

로드 밸런서(151)는 수집된 트래픽 및 자원 정보를 로드 밸런싱 정책에 따라 사용자 정의 모니터링 서비스 모듈(130)의 가상 모니터링 기능(131 내지 134)에 전달한다. 또한, 로드 모니터부(151)는 현재 실행중인 멀티코어부(140)의 코어 자원 상태를 실시간으로 모니터링하며 정책으로 정해진 특정 주기적으로 자원 상태를 리소스 상태 테이블(153)에 업데이트한다. 동시에, 로드 모니터부(151)는 코어에 설정된 자원 사용 최소 한계치를 하향하는지 여부를 지속적으로 모니터링 한다. 설정된 자원 사용 최소 한계치는 멀티코어부(140)에서 사용중인 코어 중에서 불필요한 코어를 비활성화 시키기 위한 기준으로, 자원 사용량이 설정된 자원 사용 최소 한계치가 기준 이하로 떨어지면 해당 코어를 비활성화 할 수 있다. 만약 자원 사용 최소 한계치를 하향한 경우(이하가 되면), 로드 모니터부(151)는 리소스 스케줄러(154)에 이를 통보한다. 이 때, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)의 정보를 기반으로 자원 사용 최소 한계치 하향 분을 수용할 수 있는 축소할 코어를 결정한다. 이 때, 코어 개수 축소가 가능한지를 파악하여 가능한 경우 해당 코어를 가상 모니터링 기능에서 제외시키고, 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트한다.The load balancer 151 delivers the collected traffic and resource information to the virtual monitoring functions 131 to 134 of the user-defined monitoring service module 130 according to the load balancing policy. In addition, the load monitor unit 151 monitors the core resource status of the currently executing multicore unit 140 in real time, and updates the resource status table 153 in a specific periodic manner determined by the policy. At the same time, the load monitor unit 151 continuously monitors whether the resource usage minimum threshold set in the core is lowered. The set minimum resource usage limit is a criterion for deactivating an unnecessary core among the cores in use by the multicore unit 140. If the minimum resource usage limit set for the resource usage falls below a reference level, the corresponding core usage can be deactivated. If the resource usage minimum threshold is lowered (or less), the load monitoring unit 151 notifies the resource scheduler 154 of this. At this time, the resource scheduler 154 determines a core to be scaled down, which can accommodate the resource usage minimum limit downward based on the information of the resource status table 152 and the resource mapping table 153. At this time, it is determined whether or not the number of cores can be reduced. If possible, the core is excluded from the virtual monitoring function and the resource status table 152 and the resource mapping table 153 are updated.

자동 스케일 아웃 기능 및 자동 스케일 인 기능은 후술하는 도 3 및 도 4에서 추가적으로 설명하도록 한다.The automatic scale-out function and the automatic scale-in function will be further described in Fig. 3 and Fig. 4 which will be described later.

도 2는 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 부트스트래핑 과정을 나타내는 흐름도이다.FIG. 2 is a flowchart illustrating a bootstrapping process of the monitoring function resource self-scaling apparatus 100 of the software defined network according to an embodiment of the present invention.

도 1 및 도 2를 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 초기화 과정으로 부트스트래핑(Bootstrapping) 과정을 수행한다. 모니터링 기능 자원 자율 스케일링 장치(100)가 최초 부팅(S201)되면서, 먼저 기본 모니터링 서비스 모듈(120)을 실행한다(S202). 장치가 부팅되면, 기본 모니터링 서비스 모듈(120)이 실행되면서, 기본 모니터링 서비스 모듈(120)에 포함된 로드 밸런서(121)도 함께 실행된다. 기본 모니터링 서비스 모듈(120)이 실행 완료되면, 리소스 스케줄러(154)가 사용자 정의 모니터링 서비스 모듈(130)을 실행한다(S203). Referring to FIGS. 1 and 2, the autonomous scaling apparatus 100 for monitoring a software defined network according to an exemplary embodiment of the present invention performs a bootstrapping process in an initialization process. The monitoring function resource autonomous scaling device 100 first executes the basic monitoring service module 120 (S202) while first booting (S201). When the device is booted, the basic monitoring service module 120 is executed, and the load balancer 121 included in the basic monitoring service module 120 is also executed. When the basic monitoring service module 120 is completed, the resource scheduler 154 executes the user-defined monitoring service module 130 (S203).

그리고, 리소스 스케줄러(154)는 리소스 매핑 테이블(153) 및 리소스 상태 테이블(152)의 정보에 따라 가상 모니터링 기능을 할당된 코어에서 실행한다(S204). 리소스 스케줄러(154)는 리소스 매핑 테이블(153)의 정보를 고려하여 다수의 가상 모니터링 기능(131 내지 134) 각각을 멀티코어부(140)의 어떤 코어에서 구동시킬 지를 결정한다. 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152)의 정보를 고려하여 다수의 가상 모니터링 기능(131 내지 134) 중에서 우선 순위가 높은 가상 모니터링 기능부터 할당된 코어에서 순차적으로 실행한다. 기본 모니터링 서비스 모듈(120) 및 사용자 정의 모니터링 서비스 모듈(130)이 모두 실행되면, 모니터링 기능 자원 자율 스케일링 장치(100)는 물리 인터페이스(110)를 통해 모니터링 할 대상 네트워크와 연결하여 트래픽 및 자원 정보의 모니터링을 시작한다(S205).Then, the resource scheduler 154 executes the virtual monitoring function on the allocated core according to the information of the resource mapping table 153 and the resource status table 152 (S204). The resource scheduler 154 determines which core of the multicore unit 140 drives each of the plurality of virtual monitoring functions 131 to 134 in consideration of the information of the resource mapping table 153. [ The resource scheduler 154 consecutively executes the virtual monitoring functions in the assigned core from the virtual monitoring functions having a higher priority among the plurality of virtual monitoring functions 131 to 134 in consideration of the information of the resource status table 152. [ When both the basic monitoring service module 120 and the user defined monitoring service module 130 are executed, the monitoring function resource autonomous scaling device 100 connects with the target network to be monitored through the physical interface 110, Monitoring is started (S205).

도 3은 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 자동 스케일 아웃 과정을 나타내는 흐름도이다.FIG. 3 is a flowchart illustrating an automatic scale-out process of the monitoring function resource self-scaling apparatus 100 of the software defined network according to an exemplary embodiment of the present invention.

도 1 및 도 3을 참조하면, 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 자동 스케일 아웃 과정을 통해 새로운 가상 모니터링 기능을 코어에 할당하여 가상 모니터링 기능을 동적으로 증가시킬 수 있다.Referring to FIGS. 1 and 3, a monitoring function resource autonomous scaling device 100 of a software defined network can dynamically increase a virtual monitoring function by allocating a new virtual monitoring function to a core through an automatic scale-out process.

먼저, 로드 밸런서(121)는 수집된 트래픽 및 자원 정보를 로드 밸런싱 정책에 따라 사용자 정의 모니터링 서비스 모듈(130)로 전달한다(S301). 물리 인터페이스(110)를 통해 모니터링 대상 네트워크로부터 트래픽 및 자원 정보를 수집한다. 그리고, 로드 밸런서(121)는 수집된 정보를 로드 밸런싱 정책에 기초하여 사용자 정의 모니터링 모듈(130)로 전달한다. 그리고, 로드 모니터부(151)는 현재 가상 모니터링 기능을 실행 중인 코어의 자원 상태를 실시간으로 상시 모니터링하며 정책으로 정해진 특정 주기를 가지고 자원 상태를 리소스 상태 테이블(152)에 업데이트 한다(S302).First, the load balancer 121 transmits the collected traffic and resource information to the user-defined monitoring service module 130 according to the load balancing policy (S301). And collects traffic and resource information from the monitored network through the physical interface 110. [ The load balancer 121 transfers the collected information to the user-defined monitoring module 130 based on the load balancing policy. The load monitor unit 151 continuously monitors the resource status of the core currently executing the virtual monitoring function in real time, and updates the resource status in the resource status table 152 with a specific period determined by the policy (S302).

동시에, 로드 모니터부(151)는 멀티코어부(140)를 지속적으로 모니터링 하여 코어에 설정된 자원 사용 최대 한계치를 초과하는지 여부를 판단한다(S303). 만약 코어에 설정된 자원 사용 한계치를 초과하지 않을 경우, 로드 모니터부(151)는 모니터링 작업을 계속 반복해서 수행한다. At the same time, the load monitor unit 151 continuously monitors the multi-core unit 140 to determine whether the resource usage maximum limit set in the core is exceeded (S303). If the resource usage limit value set in the core is not exceeded, the load monitoring unit 151 repeats the monitoring operation repeatedly.

반면에, 코어에 설정된 자원 사용 한계치를 초과하는 경우, 로드 모니터부(151)는 리소스 스케줄러(154)에 자원 사용 한계치 초과를 통보한다(S304). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)의 정보를 기반으로 한계치 초과 분을 수용할 수 있는 추가할 코어를 결정(S305)하고, 추가 코어 자원의 가용 여부 체크하여 가용한 추가할 코어 자원이 존재하는지 여부를 판단한다(S306).On the other hand, if the resource usage limit value set in the core is exceeded, the load monitor unit 151 notifies the resource scheduler 154 of exceeding the resource usage limit value (S304). The resource scheduler 154 determines a core to be added that can accommodate the exceeded value based on the information of the resource status table 152 and the resource mapping table 153 in step S305, And checks whether there is available available core resource (S306).

가용한 코어 자원이 존재하여 코어 추가가 가능한 경우, 리소스 스케줄러(154)는 가상 모니터링 기능을 가용한 코어에 할당한다(S307). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트 한다(S308). 모니터링 기능 자원 자율 스케일링 장치(100)는 이와 같이 가상 모니터링 기능을 실행 중인 코어의 자원 상태를 모니터링하여 자원 사용 한계치를 초과하는 경우, 가용한 코어에 가상 모니터링 기능을 추가적으로 할당함으로써, 가상 모니터링 기능을 동적으로 추가할 수 있다.If available core resources exist and a core can be added, the resource scheduler 154 allocates the virtual monitoring function to available cores (S307). Then, the resource scheduler 154 updates the resource status table 152 and the resource mapping table 153 (S308). The monitoring function resource autonomous scaling device 100 monitors the resource status of the core executing the virtual monitoring function and allocates a virtual monitoring function to the available core when the resource usage limit is exceeded, Can be added.

만약, 가용한 코어 자원이 존재하지 않아 코어 추가가 불가능한 경우, 리소스 스케줄러(154)는 이미 실행 중인 가상 모니터링 기능 및 관련 코어의 우선 순위에 따라 선점 방식(Preemption)이 가능한 지 여부를 확인(S309)하여, 선점 방식이 가능한지 여부를 판단한다(S310). 선점 방식이 가능할 경우, 리소스 스케줄러(154)는 선점 방식이 가능한 코어를 결정하고 해당 가상 모니터링 기능을 할당한다(S311). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트 한다(S312). 반면에, 선점 방식이 불가능할 경우, 리소스 스케줄러(154)는 가용한 자원 부족으로 자동 스케일 아웃이 불가함을 보고한다(S313).If it is impossible to add a core because there is no available core resource, the resource scheduler 154 confirms whether preemption is possible according to the priority of the virtual monitoring function and the related core (S309) , And determines whether or not the preemption method is possible (S310). When the preemption method is possible, the resource scheduler 154 determines a core capable of preemption method and allocates a corresponding virtual monitoring function (S311). Then, the resource scheduler 154 updates the resource status table 152 and the resource mapping table 153 (S312). On the other hand, when the preemption method is not possible, the resource scheduler 154 reports that automatic scale-out is impossible due to a lack of available resources (S313).

도 4는 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 자동 스케일 인 과정을 나타내는 흐름도이다.FIG. 4 is a flowchart illustrating an automatic scale-up process of the self-scaling device 100 for monitoring a functional resource of a software defined network according to an exemplary embodiment of the present invention.

도 1 및 도 4를 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 가상 모니터링 기능을 실행 중인 코어의 자원 상태를 모니터링하여 자원 사용 최소 한계치 이하로 자원 사용이 하향되면, 사용중인 코어의 개수를 축소할 수 있다.Referring to FIGS. 1 and 4, the monitoring function resource self-scaling apparatus 100 of the software definition network according to the embodiment of the present invention monitors the resource status of the core executing the virtual monitoring function, If resource usage is down, the number of cores in use can be reduced.

먼저, 로드 밸런서(151)는 수집된 트래픽 및 자원 정보를 로드 밸런싱 정책에 따라 사용자 정의 모니터링 서비스 모듈(130)로 전달한다(S401). 그리고, 로드 모니터부(151)는 현재 실행중인 멀티코어부(140)의 코어 자원 상태를 실시간으로 모니터링하며 정책으로 정해진 특정 주기적으로 자원 상태를 리소스 상태 테이블(153)에 업데이트한다(S402). First, the load balancer 151 transmits the collected traffic and resource information to the user-defined monitoring service module 130 according to the load balancing policy (S401). The load monitor unit 151 monitors the core resource status of the currently executing multicore unit 140 in real time and updates the resource status table 153 in a specific periodic manner determined by the policy (S402).

로드 모니터부(151)는 가상 모니터링 기능을 실행중인 코어의 상태를 지속적으로 모니터링 하여, 가상 모니터링 기능을 실행중인 코어가 자원 사용 최소 한계치를 하향하는지 여부를 판단한다(S403). 자원 사용 최소 한계치는 가상 모니터링 기능이 동작 중인지 여부를 판단하는 기준으로, 자원 사용 최소 한계치 이하일 경우, 해당 코어에서 실행중인 가상 모니터링 기능을 불필요한 것으로 간주할 수 있다. 자원 사용 최소 한계치를 하향하는 코어가 발견되지 않으면, 로드 모니터부(151)는 코어의 자원 상태를 지속적으로 모니터링 한다.The load monitor unit 151 continuously monitors the state of the core executing the virtual monitoring function, and determines whether the core executing the virtual monitoring function is lowering the resource use minimum threshold (S403). The minimum resource usage threshold is a criterion for determining whether the virtual monitoring function is in operation. If the resource usage is below the minimum usage limit, the virtual monitoring function running on the corresponding core may be regarded as unnecessary. If no core is found that is lower than the resource usage minimum threshold, the load monitor unit 151 continuously monitors the resource status of the core.

소정의 코어가 자원 사용 최소 한계치를 하향하는 것으로 판단되면, 로드 모니터부(151)는 리소스 스케줄러(154)에 자원 사용 최소 한계치 하향을 리소스 스케줄러(154)에 통보한다(S404). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)의 정보를 기반으로 자원 사용 최소 한계치 하향 분을 수용할 수 있는 축소할 코어를 결정(S405)하여 코어 개수 축소 가능 여부를 판단한다(S406). 이 때, 코어 개수 축소가 가능하다고 판단되면, 리소스 스케줄러(154)는 해당 코어를 가상 모니터링 기능에서 제외시켜 비활성화한다(S407). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트한다(S408). 만약, 코어 개수 축소가 불가능하다고 판단되면, 리소스 스케줄러(154)는 비활성화가 필요한 코어가 없는 것으로 판단하고 자동 스케일 인 과정을 종료한다.
The load monitor 151 notifies the resource scheduler 154 of the resource usage minimum threshold downward to the resource scheduler 154 at step S404. Then, the resource scheduler 154 determines a core to be reduced that can accommodate the resource usage minimum threshold downward based on the information of the resource status table 152 and the resource mapping table 153 (S405) (S406). At this time, if it is determined that the number of cores can be reduced, the resource scheduler 154 excludes the core from the virtual monitoring function and deactivates the core (S407). Then, the resource scheduler 154 updates the resource status table 152 and the resource mapping table 153 (S408). If it is determined that the number of cores can not be reduced, the resource scheduler 154 determines that there is no core that needs to be deactivated and terminates the automatic scale-up process.

상술한 내용을 포함하는 본 발명은 컴퓨터 프로그램으로 작성이 가능하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체 또는 정보저장매체에 저장되고, 컴퓨터에 의하여 판독되고 실행함으로써 본 발명의 방법을 구현할 수 있다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.
The present invention including the above-described contents can be written in a computer program. And the code and code segment constituting the program can be easily deduced by a computer programmer of the field. In addition, the created program can be stored in a computer-readable recording medium or an information storage medium, and can be read and executed by a computer to implement the method of the present invention. And the recording medium includes all types of recording media readable by a computer.

이상 바람직한 실시예를 들어 본 발명을 상세하게 설명하였으나, 본 발명은 전술한 실시예에 한정되지 않고, 본 발명의 기술적 사상의 범위 내에서 당분야에서 통상의 지식을 가진자에 의하여 여러 가지 변형이 가능하다.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, but, on the contrary, It is possible.

100: 모니터링 기능 자원 자율 스케일링 장치
110: 물리 인터페이스 120: 기본 모니터링 서비스 모듈
121: 로드 밸런서 130: 사용자 정의 모니터링 서비스 모듈
131: 적응형 플로우 모니터링 132: 선택적 심층 패킷 분석
133: DMA 134: DNS 트래픽 모니터링
140: 멀티코어부 150: 가상 모니터링 관리부
151: 로드 모니터부 152: 리소스 상태 테이블
153: 리소스 매핑 테이블 154: 리소스 스케줄러
100: Monitoring function voluntary scaling device
110: physical interface 120: basic monitoring service module
121: Load balancer 130: User-defined monitoring service module
131: adaptive flow monitoring 132: selective depth packet analysis
133: DMA 134: Monitoring DNS Traffic
140: multicore unit 150: virtual monitoring management unit
151: load monitor unit 152: resource status table
153: resource mapping table 154: resource scheduler

Claims (17)

로드 밸런싱 정책에 따라 수집된 트래픽 및 자원 정보를 사용자 정의 모니터링 서비스 모듈로 전달하는 기본 모니터링 서비스 모듈;
모니터링 서비스 기능을 가상으로 구성하여 하나 이상의 가상 모니터링 기능을 생성하는 사용자 정의 모니터링 모듈;
상기 수집된 트래픽 및 자원 정보에 기초하여 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하여 가상 모니터링 기능이 할당된 코어의 개수를 제어하는 가상 모니터링 관리부; 및
상가 기상 모니터링 기능을 수행하는 하나 이상의 코어를 구비한 멀티 코어부;
를 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
A basic monitoring service module for delivering collected traffic and resource information according to a load balancing policy to a user-defined monitoring service module;
A user-defined monitoring module for virtually configuring a monitoring service function to create one or more virtual monitoring functions;
A virtual monitoring management unit for monitoring a resource status of a core to which a virtual monitoring function is allocated based on the collected traffic and resource information to control the number of cores allocated with a virtual monitoring function; And
A multi-core unit having at least one core that performs a temperature monitoring function;
Wherein the software self-scaling device is a software-defined network monitoring functional resource autonomous scaling device.
제1항에 있어서,
상기 가상 모니터링 관리부는,
가상 모니터링 기능을 실행 중인 하나 이상의 코어의 자원 상태를 모니터링하여 리소스 상태 테이블을 업데이트하고, 상기 모니터링 결과와 자원 사용 한계치 또는 자원 사용 최소 한계치를 비교하여 코어를 제어하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
The method according to claim 1,
The virtual monitoring management unit,
Monitoring a resource status of at least one core executing a virtual monitoring function to update a resource status table and controlling the core by comparing the monitoring result with a resource usage threshold or a resource usage minimum threshold, Functional resource autonomous scaling device.
제2항에 있어서,
상기 가상 모니터링 관리부는,
상기 자원 사용 한계치를 초과하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 상기 하나 이상의 코어 중에서 가용한 코어에 가상 모니터링 기능을 할당하고, 상기 리소스 매핑 테이블 및 상기 리소스 상태 테이블을 업데이트 하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
3. The method of claim 2,
The virtual monitoring management unit,
Allocating a virtual monitoring function to a available core among the one or more cores based on the information of the resource status table and the resource mapping table when a core exceeding the resource use limit value is generated, and updating the resource mapping table and the resource status table Wherein the software self-scaling device is a software-defined network monitoring function.
제2항에 있어서,
상기 가상 모니터링 관리부는,
상기 자원 사용 한계치를 초과하는 코어 발생 시, 상기 하나 이상의 코어 중에서 가용한 코어가 없을 경우, 자원 사용 한계치를 초과한 가상 모니터링 기능의 우선 순위에 따라 선점 방식(Preemption)을 적용하여 우선 순위가 가장 낮은 가상 모니터링 기능을 중지시키고 가상 모니터링 기능을 코어에 할당하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
3. The method of claim 2,
The virtual monitoring management unit,
If there is no available core among the one or more cores at the time of occurrence of a core exceeding the resource use limit value, a preemption is applied according to the priority of the virtual monitoring function exceeding the resource utilization limit, Wherein the virtual monitoring function is suspended and the virtual monitoring function is assigned to the core.
제2항에 있어서,
상기 가상 모니터링 관리부는,
상기 자원 최소 사용 한계치를 하향하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 축소 가능한 코어를 결정하고, 상기 축소 가능한 코어를 가상 모니터링 기능에서 제외하여 비활성화 시킨 후, 리소스 상태 테이블 및 리소스 매핑 테이블을 업데이트하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
3. The method of claim 2,
The virtual monitoring management unit,
A core that can be collapsed is determined based on the information of the resource state table and the resource mapping table when the core is downgraded to the resource minimum usage limit value, the collapsible core is excluded from the virtual monitoring function and deactivated, And updating the resource mapping table.
제1항에 있어서,
상기 기본 모니터링 서비스 모듈은,
리소스 매핑 테이블을 참조하여 사용자 정의 모니터링 모듈에 포함된 하나 이상의 가상 모니터링 기능 중에서 필요한 가상 모니터링 기능을 선택하여 로드 밸런싱을 수행하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
The method according to claim 1,
The basic monitoring service module includes:
Wherein the load balancing is performed by selecting a required virtual monitoring function among at least one virtual monitoring function included in the user-defined monitoring module with reference to the resource mapping table.
제1항에 있어서,
모니터링 대상 네트워크와 직접 연결되어 트래픽 및 자원 정보를 수집하여 상기 기본 모니터링 서비스 모듈로 전달하는 물리 인터페이스;
를 더 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
The method according to claim 1,
A physical interface directly connected to the monitoring target network to collect traffic and resource information and transmit the collected traffic and resource information to the basic monitoring service module;
Further comprising the steps of: generating a self-scaling resource for a software defined network;
제1항에 있어서,
상기 사용자 정의 모니터링 서비스 모듈은,
적응형 플로우 모니터링(Adaptive Flow Monitoring), 선택적 심층 패킷 분석(Selective Deep Packet Inspection), DMA(Detect and Mitigate Abnormality) 및 DNS 트래픽 모니터링(DNS Traffic Monitoring) 중에서 적어도 하나 이상의 가상 모니터링 기능을 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
The method according to claim 1,
Wherein the user-defined monitoring service module comprises:
And at least one virtual monitoring function among adaptive flow monitoring, selective deep packet inspection, DMA (Detect and Mitigate Abnormality), and DNS traffic monitoring (DNS traffic monitoring) A software-defined network monitoring function that autonomous scaling of resources.
제1항에 있어서,
부팅(Booting) 시, 부트스트래핑(Bootstrapping) 과정을 시작하여, 상기 기본 모니터링 모듈이 실행되면서, 상기 사용자 정의 모니터링 서비스 모듈을 실행하고, 상기 가상 모니터링 관리부는 리소스 매핑 테이블 및 리소스 상태 테이블의 정보에 따라 가상 모니터링 기능을 할당된 코어에서 실행시키는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
The method according to claim 1,
At the time of booting, a bootstrapping process is started, the basic monitoring module is executed, and the user monitoring service module is executed. The virtual monitoring management unit monitors the resource mapping table and the resource status table Wherein the virtual monitoring function is executed in the assigned core.
제1항에 있어서,
상기 사용자 정의 모니터링 서비스 모듈은 기존 가상 모니터링 기능을 이용한 모니터링 서비스의 중단 없이 새로운 가상 모니터링 기능을 추가, 삭제, 실행 및 중지가 가능한 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
The method according to claim 1,
Wherein the user-defined monitoring service module is capable of adding, deleting, executing, and stopping a new virtual monitoring function without stopping the monitoring service using the existing virtual monitoring function.
모니터링 기능 자원 자율 스케일링 장치를 이용한 자원 자율 스케일링 방법에 있어서,
수신된 트래픽 및 자원 정보에 기초하여 현재 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하는 단계; 및
상기 모니터링 결과에 따라 가상 모니터링 기능이 할당된 코어를 제어하는 단계;
를 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
A monitoring autonomous scaling method using a resource autonomous scaling device,
Monitoring the resource status of the core to which the current virtual monitoring function is allocated based on the received traffic and resource information; And
Controlling a core allocated with a virtual monitoring function according to the monitoring result;
Wherein the software-defined network monitoring function resource autonomous scaling method comprises:
제11항에 있어서,
상기 코어의 개수를 제어하는 단계는
현재 실행 중인 하나 이상의 코어의 자원 상태를 모니터링하여 리소스 상태 테이블을 업데이트하는 단계; 및
실행 중인 하나 이상의 코어 중에서 자원 사용 한계치 또는 자원 사용 최소 한계치를 벗어나는 코어를 확인하여 코어의 개수를 제어하는 단계;
를 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
12. The method of claim 11,
The step of controlling the number of cores
Updating a resource state table by monitoring a resource state of one or more currently executing cores; And
Controlling the number of cores by checking a core that is out of a resource use limit or a resource use minimum limit among at least one core in execution;
Wherein the software-defined network monitoring function resource autonomous scaling method comprises:
제12항에 있어서,
상기 코어의 개수를 제어하는 단계는,
상기 자원 사용 한계치를 초과하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 상기 하나 이상의 코어 중에서 가용한 코어에 가상 모니터링 기능을 할당하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
13. The method of claim 12,
Wherein controlling the number of cores comprises:
Wherein a virtual monitoring function is allocated to a core available in the one or more cores based on information of a resource status table and a resource mapping table when a core exceeding the resource usage limit is generated, Scaling method.
제12항에 있어서,
상기 코어의 개수를 제어하는 단계는,
상기 자원 사용 한계치를 초과하는 코어 발생 시, 상기 하나 이상의 코어 중에서 가용한 코어가 없을 경우, 자원 사용 한계치를 초과한 가상 모니터링 기능의 우선 순위에 따라 선점 방식(Preemption)을 적용하여 우선 순위가 가장 낮은 가상 모니터링 기능을 중지시키고 코어에 가상 모니터링 기능을 할당하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
13. The method of claim 12,
Wherein controlling the number of cores comprises:
If there is no available core among the one or more cores at the time of occurrence of a core exceeding the resource use limit value, a preemption is applied according to the priority of the virtual monitoring function exceeding the resource utilization limit, And stopping the virtual monitoring function and assigning a virtual monitoring function to the core.
제12항에 있어서,
상기 코어의 개수를 제어하는 단계는,
상기 자원 최소 사용 한계치를 하향하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 축소 가능한 코어를 결정하고, 상기 축소 가능한 코어를 가상 모니터링 기능에서 제외하여 비활성화 시킨 후, 리소스 상태 테이블 및 리소스 매핑 테이블을 업데이트하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
13. The method of claim 12,
Wherein controlling the number of cores comprises:
A core that can be collapsed is determined based on the information of the resource state table and the resource mapping table when the core is downgraded to the resource minimum usage limit value, the collapsible core is excluded from the virtual monitoring function and deactivated, And updating the resource mapping table.
제11항에 있어서,
부팅(Booting) 시, 부트스트래핑(Bootstrapping) 과정을 시작하여, 기본 모니터링 모듈이 실행되면서, 사용자 정의 모니터링 서비스 모듈을 실행하는 단계; 및
리소스 매핑 테이블 및 리소스 상태 테이블의 정보에 따라 가상 모니터링 기능을 할당된 코어에서 실행하는 단계;
를 더 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
12. The method of claim 11,
Executing a bootstrapping process at the time of booting to execute a user-defined monitoring service module while the basic monitoring module is being executed; And
Executing a virtual monitoring function in an allocated core according to information in a resource mapping table and a resource status table;
Further comprising the steps of: (a) providing a monitoring function resource autonomous scaling method for a software defined network.
제11항에 있어서,
모니터링 서비스 기능을 가상으로 구성하여 하나 이상의 가상 모니터링 기능을 생성하는 단계;
를 더 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
12. The method of claim 11,
Creating a monitoring service function virtually to create one or more virtual monitoring functions;
Further comprising the steps of: (a) providing a monitoring function resource autonomous scaling method for a software defined network.
KR1020150027432A 2015-02-26 2015-02-26 Apparatus and method for autonomic scaling of monitoring function resource in software defined network KR102016683B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150027432A KR102016683B1 (en) 2015-02-26 2015-02-26 Apparatus and method for autonomic scaling of monitoring function resource in software defined network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150027432A KR102016683B1 (en) 2015-02-26 2015-02-26 Apparatus and method for autonomic scaling of monitoring function resource in software defined network

Publications (2)

Publication Number Publication Date
KR20160104419A true KR20160104419A (en) 2016-09-05
KR102016683B1 KR102016683B1 (en) 2019-08-30

Family

ID=56938843

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150027432A KR102016683B1 (en) 2015-02-26 2015-02-26 Apparatus and method for autonomic scaling of monitoring function resource in software defined network

Country Status (1)

Country Link
KR (1) KR102016683B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180040991A (en) * 2016-10-13 2018-04-23 에스케이텔레콤 주식회사 Apparatus and method for managing and orchestrating network function virtualization
KR20180098838A (en) * 2017-02-27 2018-09-05 한국전자통신연구원 Apparatus and method for managing virtual network function
KR20210060829A (en) * 2019-11-19 2021-05-27 주식회사 피씨엔 Big data platform managing method and device
KR20210060830A (en) * 2019-11-19 2021-05-27 주식회사 피씨엔 Big data intelligent collecting method and device
KR20220070848A (en) * 2020-11-23 2022-05-31 주식회사 피씨엔 Big data cross model data integrated processing method and apparatus

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3745761A1 (en) 2019-05-28 2020-12-02 Samsung Electronics Co., Ltd. Virtualization of ran functions based on load of the base stations
EP3745762A1 (en) 2019-05-28 2020-12-02 Samsung Electronics Co., Ltd. Virtualization of ran functions based on load of the base stations

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060017411A (en) * 2004-08-20 2006-02-23 삼성전자주식회사 Load balancing system and load balancing method
KR20120072059A (en) 2010-12-23 2012-07-03 한국전자통신연구원 System and method for controlling resource in virtualized network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060017411A (en) * 2004-08-20 2006-02-23 삼성전자주식회사 Load balancing system and load balancing method
KR20120072059A (en) 2010-12-23 2012-07-03 한국전자통신연구원 System and method for controlling resource in virtualized network

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180040991A (en) * 2016-10-13 2018-04-23 에스케이텔레콤 주식회사 Apparatus and method for managing and orchestrating network function virtualization
KR20180098838A (en) * 2017-02-27 2018-09-05 한국전자통신연구원 Apparatus and method for managing virtual network function
KR20210060829A (en) * 2019-11-19 2021-05-27 주식회사 피씨엔 Big data platform managing method and device
KR20210060830A (en) * 2019-11-19 2021-05-27 주식회사 피씨엔 Big data intelligent collecting method and device
KR20220070848A (en) * 2020-11-23 2022-05-31 주식회사 피씨엔 Big data cross model data integrated processing method and apparatus

Also Published As

Publication number Publication date
KR102016683B1 (en) 2019-08-30

Similar Documents

Publication Publication Date Title
KR102016683B1 (en) Apparatus and method for autonomic scaling of monitoring function resource in software defined network
US20230168946A1 (en) Methods and apparatus to improve workload domain management in virtualized server systems using a free pool of virtualized servers
US10929165B2 (en) System and method for memory resizing in a virtual computing environment
US9569244B2 (en) Implementing dynamic adjustment of I/O bandwidth for virtual machines using a single root I/O virtualization (SRIOV) adapter
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
JP6278320B2 (en) End-to-end data center performance control
US10841235B2 (en) Methods and apparatus to optimize memory allocation in response to a storage rebalancing event
US9588789B2 (en) Management apparatus and workload distribution management method
US20150309828A1 (en) Hypervisor manager for virtual machine management
CN107222531B (en) Container cloud resource scheduling method
KR100834340B1 (en) System and method of determining an optimal distribution of source servers in target servers
US11924117B2 (en) Automated local scaling of compute instances
US20170017511A1 (en) Method for memory management in virtual machines, and corresponding system and computer program product
US20150363216A1 (en) Method and system for managing hosts that run virtual machines within a cluster
US10630600B2 (en) Adaptive network input-output control in virtual environments
US11102142B2 (en) Methods and apparatus to perform dynamic load balancing for a multi-fabric environment in network-based computing
KR20150132774A (en) Method and appratus for allocating network resource based on application
KR20150009662A (en) Method of allocating a virtual machine for virtual desktop service
US11461120B2 (en) Methods and apparatus for rack nesting in virtualized server systems
US11169844B2 (en) Virtual machine migration to multiple destination nodes
Mollamotalebi et al. Multi-objective dynamic management of virtual machines in cloud environments
KR20230062566A (en) Possibility of automatic node replacement between compute nodes and infrastructure nodes in the edge zone
CN106325972B (en) Virtual machine management method and network equipment
KR20170094899A (en) System and method for managing computing resources
KR102014246B1 (en) Mesos process apparatus for unified management of resource and method for the same

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