KR102016683B1 - 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법 - Google Patents

소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법 Download PDF

Info

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

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

본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치는 로드 밸런싱 정책에 따라 수집된 트래픽 및 자원 정보를 사용자 정의 모니터링 서비스 모듈로 전달하는 기본 모니터링 서비스 모듈, 모니터링 서비스 기능을 가상으로 구성하여 하나 이상의 가상 모니터링 기능을 생성하는 사용자 정의 모니터링 모듈, 기 수신된 트래픽 및 자원 정보에 기초하여 현재 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하여 가상 모니터링 기능이 할당된 코어의 개수를 제어하는 가상 모니터링 관리부 및 기상 모니터링 기능을 수행하는 하나 이상의 코어를 구비한 멀티 코어부를 포함한다.

Description

소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법{APPARATUS AND METHOD FOR AUTONOMIC SCALING OF MONITORING FUNCTION RESOURCE IN SOFTWARE DEFINED NETWORK}
본 발명은 소프트웨어 정의 네트워크(Software Defined Network, SDN)에 관한 것으로, 보다 상세하게는 SDN의 네트워크 트래픽 모니터링에 관한 기술이다.
소프트웨어 정의 네트워크(Software Defined Network, 이하 SDN) 기술은 네트워크의 전송 평면(Transport Plane 또는 Data Plane)과 제어 평면(Control Plane)을 분리하고, 전송 평면은 패킷 전송에 필요한 모든 결정을 제어 평면에 질의하도록 하여, 전송 평면에 설치하는 소프트웨어를 통해 네트워크 구성과 패킷 흐름을 중앙집중식으로 제어할 수 있도록 하는 기술이다. SDN에는 전송 평면 및 제어 평면의 다양한 물리 자원과 가상 자원이 동시에 존재하며, 이들의 상태, 성능, 품질, 가용성 및 장애 등을 통합적으로 모니터링 할 필요가 있다. 이에 따라, SDN의 상태를 모니터링하기 위한 다양한 기술이 개발되었다.
종래 모니터링 기술은 일반적으로 전용 모니터링 장비에 고정(종속)되어 있어 고객의 요구에 따른 확장성 제공 측면에서 신규로 하드웨어 장비를 추가 해야 되는 한계점을 가지고 있다. 또한, 종래 모니터링 기술은 고객의 요구가 감소할 경우 기 투자된 비용의 낭비가 발생할 수 있다. 즉, 종래 모니터링 기술은 고객의 요구에 맞게 동적으로 자원의 스케일링을 제공하기 힘든 한계점을 가지고 있다. 대한민국 공개특허 제10-2012-0072059호는 가상화 네트워크의 자원 사용률을 모니터링하여 자원을 할당하는 기술에 대해 개시하고 있다. 하지만, 상기 특허는 모니터링을 통해 가상머신의 자원 할당만을 조절할 뿐, 모니터링 기능 자원의 동적 스케일링 문제를 해결하지 못한다.
대한민국 공개특허 제10-2012-0072059호
본 발명이 해결하고자 하는 과제는 종래 기술의 문제점을 해결하기 위하여 SDN의 자원을 통합 모니터링 하는 기능을 가상화하여 제공하며, 가상 모니터링 기능을 가용한 코어 자원의 상태를 기반으로 할당하여 효율성을 최적화하는 자원 자율 스케일링 장치 및 방법을 제공하는 것이다.
본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치는 로드 밸런싱 정책에 따라 수집된 트래픽 및 자원 정보를 사용자 정의 모니터링 서비스 모듈로 전달하는 기본 모니터링 서비스 모듈, 모니터링 서비스 기능을 가상으로 구성하여 하나 이상의 가상 모니터링 기능을 생성하는 사용자 정의 모니터링 모듈, 기 수신된 트래픽 및 자원 정보에 기초하여 현재 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하여 가상 모니터링 기능이 할당된 코어의 개수를 제어하는 가상 모니터링 관리부 및 기상 모니터링 기능을 수행하는 하나 이상의 코어를 구비한 멀티 코어부를 포함한다.
가상 모니터링 관리부는 현재 실행 중인 하나 이상의 코어의 자원 상태를 모니터링하여 리소스 상태 테이블을 업데이트하고, 현재 실행 중인 하나 이상의 코어 중에서 자원 사용 한계치 또는 자원 사용 최소 한계치를 벗어나는 코어를 확인한다. 그리고, 가상 모니터링 관리부는 자원 사용 한계치를 초과하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 하나 이상의 코어 중에서 가용한 코어에 가상 모니터링 기능을 할당하고, 리소스 매핑 테이블 및 리소스 상태 테이블을 업데이트한다. 만약 자원 사용 한계치를 초과하는 코어 발생 시, 가상 모니터링 관리부는 하나 이상의 코어 중에서 가용한 코어가 없을 경우, 자원 사용 한계치를 초과한 가상 모니터링 기능의 우선 순위에 따라 선점 방식(Preemption)을 적용하여 코어에 가상 모니터링 기능을 할당할 수 있다.
그리고, 가상 모니터링 관리부는 자원 최소 사용 한계치를 하향하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 축소 가능한 코어를 결정하고, 축소 가능한 코어를 가상 모니터링 기능에서 제외하여 비활성화 시킨 후, 리소스 상태 테이블 및 리소스 매핑 테이블을 업데이트할 수 있다. 그리고, 기본 모니터링 서비스 모듈은 리소스 매핑 테이블을 참조하여 사용자 정의 모니터링 모듈에 포함된 하나 이상의 가상 모니터링 기능 중에서 필요한 가상 모니터링 기능을 선택하여 로드 밸런싱을 수행한다.
소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법은 수신된 트래픽 및 자원 정보에 기초하여 현재 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하고, 모니터링 결과에 따라 가상 모니터링 기능이 할당된 코어를 제어한다. 코어의 개수를 제어하는 과정은 현재 실행 중인 하나 이상의 코어의 자원 상태를 모니터링하여 리소스 상태 테이블을 업데이트하고, 현재 실행 중인 하나 이상의 코어 중에서 자원 사용 한계치 또는 자원 사용 최소 한계치를 벗어나는 코어를 확인하여 코어의 개수를 제어한다.
이 과정은 자원 사용 한계치를 초과하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 하나 이상의 코어 중에서 가용한 코어에 가상 모니터링 기능을 할당한다. 만약, 상기 하나 이상의 코어 중에서 가용한 코어가 없을 경우, 자원 사용 한계치를 초과한 가상 모니터링 기능의 우선 순위에 따라 선점 방식(Preemption)을 적용하여 코어에 가상 모니터링 기능을 할당할 수 있다. 만약, 자원 최소 사용 한계치를 하향하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 축소 가능한 코어를 결정하고, 축소 가능한 코어를 가상 모니터링 기능에서 제외하여 비활성화 시킨 후, 리소스 상태 테이블 및 리소스 매핑 테이블을 업데이트한다.
본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법은 종래의 모니터링 기술이 확장과 축소에 제약이 따르는 것과 달리, 가상화 기술을 통해 구현된 가상 모니터링 기능을 코어에 할당하고, 코어의 자원 사용 정도에 따라 활성화 및 비활성화할 수 있다. 본 발명에서는 이를 통해 사용자의 요구에 대응하여 동적으로 자원 자율 스케일링 기능을 제공함으로써 자본적 지출(Capital Expenditure)을 줄일 수 있으며, 고객 대응 품질 향상의 효과가 발생한다.
도 1은 본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 일 실시예를 나타내는 구성도이다.
도 2는 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 부트스트래핑 과정을 나타내는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 자동 스케일 아웃 과정을 나타내는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 자동 스케일 인 과정을 나타내는 흐름도이다.
이하, 본 발명의 실시예를 첨부된 도면들을 참조하여 상세하게 설명한다. 본 명세서에서 사용되는 용어 및 단어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 발명의 의도 또는 관례 등에 따라 달라질 수 있다. 따라서 후술하는 실시예에서 사용된 용어는, 본 명세서에 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우는 당업자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다.
도 1은 본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 일 실시예를 나타내는 구성도이다.
도 1을 참조하면, 본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 물리 인터페이스(Physical Interface, 110), 기본 모니터링 서비스 모듈(Basic Monitoring Service Module, BMS, 120), 사용자 정의 모니터링 서비스 모듈(User-defined Monitoring Module, UMS, 130), 멀티 코어부(140) 및 가상 모니터링 관리부(Monitoring VM & VF Manager, 150)를 포함한다.
물리 인터페이스(110)는 기본 모니터링 서비스 모듈(120) 및 사용자 정의 모니터링 서비스 모듈(130)이 모니터링 할 트래픽을 송수신할 수 있도록 외부와 통신을 수행한다. 물리 인터페이스(110)는 모니터링 할 대상 네트워크와 직접 연결되며, 수집된 데이터를 기본 모니터링 서비스 모듈(120)로 전달한다.
기본 모니터링 서비스 모듈(120)의 로드 밸런서(121)는 물리 인터페이스(110)로부터 수신된 데이터가 사용자 정의 모니터링 서비스 모듈(130)에 포함된 다수의 가상 기능(131, 132, 133, 134) 중에서 어떤 가상 기능에 전달되어야 하는지를 파악하여 전달한다. 이 과정에서 로드 밸런서(121)는 모니터링 관리부(150)의 리소스 매핑 테이블(Resource Mapping Table, 153)을 참조하여 사용자 정의 모니터링 서비스 모듈(130)에 포함된 다수의 가상 기능(131, 132, 133, 134) 중 필요한 가상 기능을 선택하여 로드 밸런싱을 수행한다
사용자 정의 모니터링 서비스 모듈(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)은 상기 가상 모니터링 기능뿐만 아니라, 기존 서비스 중단 없이 새로운 가상 모니터링 기능을 추가, 삭제, 실행 및 중지가 가능하다.
멀티 코어부(140)는 사용자 정의 모니터링 서비스 모듈(130)의 가상 모니터링 기능이 수행될 컴퓨팅 자원으로, 다수의 코어로 구성된다. 각각의 가상 모니터링 기능은 멀티 코어부(140)를 구성하는 다수의 코어에 할당된다. 하나의 가상 모니터링 기능은 하나의 코어에 할당될 수 있으며, 둘 이상의 코어 상에 할당되어 실행될 수 있다.
가상 모니터링 관리부(Monitoring VM & VF Manager, 150)는 가상 머신 모니터링 및 가상 플로우 모니터링을 관리한다. 가상 모니터링 관리부(150)는 로드 모니터부(Load Monitor, 151), 리소스 상태 테이블(Resource Status Table, 152), 리소스 매핑 테이블(153) 및 리소스 스케줄러(Resource Scheduler, 153)를 포함한다.
모니터링 시스템이 최초 부팅되면, 모니터링 관리부(150)의 리소스 스케줄러(153)가 사용자 정의 모니터링 서비스 모듈(130)의 가상 모니터링 기능을 순차적으로 시작한다. 리소스 스케줄러(153)는 리소스 매핑 테이블(153)의 정보에 기초하여 가상 모니터링 기능을 어떤 코어에서 구동시킬 지를 결정한다. 그리고, 리소스 스케줄러(153)는 리소스 상태 테이블(152)의 상황을 고려하여 우선 순위가 높은 가상 모니터링 기능부터 순차적으로 동작시킨다. 그리고, 기본 모니터링 서비스 모듈(120) 및 사용자 정의 모니터링 서비스 모듈(130)가 모두 시작되면, 가상 모니터링 관리부(150)는 물리 인터페이스(110)를 통해 모니터링 할 네트워크와 연결하여 트래픽 및 자원 정보의 모니터링을 시작한다.
로드 모니터부(151)는 현재 실행 중인 코어의 자원 상태를 실시간으로 모니터링하며 정책으로 정해진 특정 주기적으로 자원 상태를 리소스 상태 테이블(153)에 업데이트 한다. 동시에, 로드 모니터부(151)는 코어에 설정된 자원 사용 최대 한계치를 초과하는지 여부를 지속적으로 모니터링 한다. 만약 자원 사용 한계치를 초과하지 않을 경우, 로드 모니터부(151)는 모니터링 작업을 계속 반복해서 수행한다. 반면에, 자원 사용 한계치를 초과하는 경우, 로드 모니터부(151)는 리소스 스케줄러(154)에 자원 사용 한계치 초과를 통보한다. 이 때, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)의 정보를 기반으로 한계치 초과 분을 수용할 수 있는 추가 코어 자원의 가용 여부를 체크한다.
추가할 코어 자원이 가용한 경우(가용한 코어 자원이 존재하는 경우), 리소스 스케줄러(154)는 자동 스케일 아웃(Auto Scale-out) 기능을 통해 해당 가상 모니터링 기능을 가용한 코어에 할당한 후, 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트 한다. 만약, 추가할 코어 자원이 가용하지 않은 경우(가용한 코어 자원이 존재하지 않는 경우), 리소스 스케줄러(154)는 이미 실행 중인 가상 모니터링 기능 및 관련 코어의 우선 순위에 따라 선점 방식(Preemption)이 가능한 지 여부를 확인한다. 리소스 스케줄러(154)는 선점 방식을 통해, 우선 순위가 낮은 가상 모니터링 기능을 중지하고, 가상 모니터링 기능이 중지된 코어에 다른 가상 모니터링 기능을 할당할 수 있다. 선점 방식이 가능할 경우, 리소스 스케줄러(154)는 선점 방식이 가능한 코어를 결정하고 해당 가상 모니터링 기능을 할당할 수 있다. 그리고, 리소스 스케줄러(154)는 선점 방식이 가능하지 않을 경우, 가용한 자원 부족으로 자동 스케일 아웃이 불가함을 보고한다.
본 발명에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100) 상술한 내용과 같이 자동 스케일 아웃 기능을 이용하여 가상 모니터링 기능을 코어에 동적으로 추가 할당할 수 있다. 뿐만 아니라, 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 자동 스케일 인(Auto Scale-in) 기능을 통해 사용중인 코어의 개수를 축소할 수 있다.
로드 밸런서(151)는 수집된 트래픽 및 자원 정보를 로드 밸런싱 정책에 따라 사용자 정의 모니터링 서비스 모듈(130)의 가상 모니터링 기능(131 내지 134)에 전달한다. 또한, 로드 모니터부(151)는 현재 실행중인 멀티코어부(140)의 코어 자원 상태를 실시간으로 모니터링하며 정책으로 정해진 특정 주기적으로 자원 상태를 리소스 상태 테이블(153)에 업데이트한다. 동시에, 로드 모니터부(151)는 코어에 설정된 자원 사용 최소 한계치를 하향하는지 여부를 지속적으로 모니터링 한다. 설정된 자원 사용 최소 한계치는 멀티코어부(140)에서 사용중인 코어 중에서 불필요한 코어를 비활성화 시키기 위한 기준으로, 자원 사용량이 설정된 자원 사용 최소 한계치가 기준 이하로 떨어지면 해당 코어를 비활성화 할 수 있다. 만약 자원 사용 최소 한계치를 하향한 경우(이하가 되면), 로드 모니터부(151)는 리소스 스케줄러(154)에 이를 통보한다. 이 때, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)의 정보를 기반으로 자원 사용 최소 한계치 하향 분을 수용할 수 있는 축소할 코어를 결정한다. 이 때, 코어 개수 축소가 가능한지를 파악하여 가능한 경우 해당 코어를 가상 모니터링 기능에서 제외시키고, 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트한다.
자동 스케일 아웃 기능 및 자동 스케일 인 기능은 후술하는 도 3 및 도 4에서 추가적으로 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 부트스트래핑 과정을 나타내는 흐름도이다.
도 1 및 도 2를 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 초기화 과정으로 부트스트래핑(Bootstrapping) 과정을 수행한다. 모니터링 기능 자원 자율 스케일링 장치(100)가 최초 부팅(S201)되면서, 먼저 기본 모니터링 서비스 모듈(120)을 실행한다(S202). 장치가 부팅되면, 기본 모니터링 서비스 모듈(120)이 실행되면서, 기본 모니터링 서비스 모듈(120)에 포함된 로드 밸런서(121)도 함께 실행된다. 기본 모니터링 서비스 모듈(120)이 실행 완료되면, 리소스 스케줄러(154)가 사용자 정의 모니터링 서비스 모듈(130)을 실행한다(S203).
그리고, 리소스 스케줄러(154)는 리소스 매핑 테이블(153) 및 리소스 상태 테이블(152)의 정보에 따라 가상 모니터링 기능을 할당된 코어에서 실행한다(S204). 리소스 스케줄러(154)는 리소스 매핑 테이블(153)의 정보를 고려하여 다수의 가상 모니터링 기능(131 내지 134) 각각을 멀티코어부(140)의 어떤 코어에서 구동시킬 지를 결정한다. 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152)의 정보를 고려하여 다수의 가상 모니터링 기능(131 내지 134) 중에서 우선 순위가 높은 가상 모니터링 기능부터 할당된 코어에서 순차적으로 실행한다. 기본 모니터링 서비스 모듈(120) 및 사용자 정의 모니터링 서비스 모듈(130)이 모두 실행되면, 모니터링 기능 자원 자율 스케일링 장치(100)는 물리 인터페이스(110)를 통해 모니터링 할 대상 네트워크와 연결하여 트래픽 및 자원 정보의 모니터링을 시작한다(S205).
도 3은 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 자동 스케일 아웃 과정을 나타내는 흐름도이다.
도 1 및 도 3을 참조하면, 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 자동 스케일 아웃 과정을 통해 새로운 가상 모니터링 기능을 코어에 할당하여 가상 모니터링 기능을 동적으로 증가시킬 수 있다.
먼저, 로드 밸런서(121)는 수집된 트래픽 및 자원 정보를 로드 밸런싱 정책에 따라 사용자 정의 모니터링 서비스 모듈(130)로 전달한다(S301). 물리 인터페이스(110)를 통해 모니터링 대상 네트워크로부터 트래픽 및 자원 정보를 수집한다. 그리고, 로드 밸런서(121)는 수집된 정보를 로드 밸런싱 정책에 기초하여 사용자 정의 모니터링 모듈(130)로 전달한다. 그리고, 로드 모니터부(151)는 현재 가상 모니터링 기능을 실행 중인 코어의 자원 상태를 실시간으로 상시 모니터링하며 정책으로 정해진 특정 주기를 가지고 자원 상태를 리소스 상태 테이블(152)에 업데이트 한다(S302).
동시에, 로드 모니터부(151)는 멀티코어부(140)를 지속적으로 모니터링 하여 코어에 설정된 자원 사용 최대 한계치를 초과하는지 여부를 판단한다(S303). 만약 코어에 설정된 자원 사용 한계치를 초과하지 않을 경우, 로드 모니터부(151)는 모니터링 작업을 계속 반복해서 수행한다.
반면에, 코어에 설정된 자원 사용 한계치를 초과하는 경우, 로드 모니터부(151)는 리소스 스케줄러(154)에 자원 사용 한계치 초과를 통보한다(S304). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)의 정보를 기반으로 한계치 초과 분을 수용할 수 있는 추가할 코어를 결정(S305)하고, 추가 코어 자원의 가용 여부 체크하여 가용한 추가할 코어 자원이 존재하는지 여부를 판단한다(S306).
가용한 코어 자원이 존재하여 코어 추가가 가능한 경우, 리소스 스케줄러(154)는 가상 모니터링 기능을 가용한 코어에 할당한다(S307). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트 한다(S308). 모니터링 기능 자원 자율 스케일링 장치(100)는 이와 같이 가상 모니터링 기능을 실행 중인 코어의 자원 상태를 모니터링하여 자원 사용 한계치를 초과하는 경우, 가용한 코어에 가상 모니터링 기능을 추가적으로 할당함으로써, 가상 모니터링 기능을 동적으로 추가할 수 있다.
만약, 가용한 코어 자원이 존재하지 않아 코어 추가가 불가능한 경우, 리소스 스케줄러(154)는 이미 실행 중인 가상 모니터링 기능 및 관련 코어의 우선 순위에 따라 선점 방식(Preemption)이 가능한 지 여부를 확인(S309)하여, 선점 방식이 가능한지 여부를 판단한다(S310). 선점 방식이 가능할 경우, 리소스 스케줄러(154)는 선점 방식이 가능한 코어를 결정하고 해당 가상 모니터링 기능을 할당한다(S311). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트 한다(S312). 반면에, 선점 방식이 불가능할 경우, 리소스 스케줄러(154)는 가용한 자원 부족으로 자동 스케일 아웃이 불가함을 보고한다(S313).
도 4는 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)의 자동 스케일 인 과정을 나타내는 흐름도이다.
도 1 및 도 4를 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치(100)는 가상 모니터링 기능을 실행 중인 코어의 자원 상태를 모니터링하여 자원 사용 최소 한계치 이하로 자원 사용이 하향되면, 사용중인 코어의 개수를 축소할 수 있다.
먼저, 로드 밸런서(151)는 수집된 트래픽 및 자원 정보를 로드 밸런싱 정책에 따라 사용자 정의 모니터링 서비스 모듈(130)로 전달한다(S401). 그리고, 로드 모니터부(151)는 현재 실행중인 멀티코어부(140)의 코어 자원 상태를 실시간으로 모니터링하며 정책으로 정해진 특정 주기적으로 자원 상태를 리소스 상태 테이블(153)에 업데이트한다(S402).
로드 모니터부(151)는 가상 모니터링 기능을 실행중인 코어의 상태를 지속적으로 모니터링 하여, 가상 모니터링 기능을 실행중인 코어가 자원 사용 최소 한계치를 하향하는지 여부를 판단한다(S403). 자원 사용 최소 한계치는 가상 모니터링 기능이 동작 중인지 여부를 판단하는 기준으로, 자원 사용 최소 한계치 이하일 경우, 해당 코어에서 실행중인 가상 모니터링 기능을 불필요한 것으로 간주할 수 있다. 자원 사용 최소 한계치를 하향하는 코어가 발견되지 않으면, 로드 모니터부(151)는 코어의 자원 상태를 지속적으로 모니터링 한다.
소정의 코어가 자원 사용 최소 한계치를 하향하는 것으로 판단되면, 로드 모니터부(151)는 리소스 스케줄러(154)에 자원 사용 최소 한계치 하향을 리소스 스케줄러(154)에 통보한다(S404). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)의 정보를 기반으로 자원 사용 최소 한계치 하향 분을 수용할 수 있는 축소할 코어를 결정(S405)하여 코어 개수 축소 가능 여부를 판단한다(S406). 이 때, 코어 개수 축소가 가능하다고 판단되면, 리소스 스케줄러(154)는 해당 코어를 가상 모니터링 기능에서 제외시켜 비활성화한다(S407). 그리고, 리소스 스케줄러(154)는 리소스 상태 테이블(152) 및 리소스 매핑 테이블(153)을 업데이트한다(S408). 만약, 코어 개수 축소가 불가능하다고 판단되면, 리소스 스케줄러(154)는 비활성화가 필요한 코어가 없는 것으로 판단하고 자동 스케일 인 과정을 종료한다.
상술한 내용을 포함하는 본 발명은 컴퓨터 프로그램으로 작성이 가능하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체 또는 정보저장매체에 저장되고, 컴퓨터에 의하여 판독되고 실행함으로써 본 발명의 방법을 구현할 수 있다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.
이상 바람직한 실시예를 들어 본 발명을 상세하게 설명하였으나, 본 발명은 전술한 실시예에 한정되지 않고, 본 발명의 기술적 사상의 범위 내에서 당분야에서 통상의 지식을 가진자에 의하여 여러 가지 변형이 가능하다.
100: 모니터링 기능 자원 자율 스케일링 장치
110: 물리 인터페이스 120: 기본 모니터링 서비스 모듈
121: 로드 밸런서 130: 사용자 정의 모니터링 서비스 모듈
131: 적응형 플로우 모니터링 132: 선택적 심층 패킷 분석
133: DMA 134: DNS 트래픽 모니터링
140: 멀티코어부 150: 가상 모니터링 관리부
151: 로드 모니터부 152: 리소스 상태 테이블
153: 리소스 매핑 테이블 154: 리소스 스케줄러

Claims (17)

  1. 로드 밸런싱 정책에 따라 수집된 트래픽 및 자원 정보를 사용자 정의 모니터링 서비스 모듈로 전달하는 기본 모니터링 서비스 모듈;
    모니터링 서비스 기능을 가상으로 구성하여 하나 이상의 가상 모니터링 기능을 생성하는 사용자 정의 모니터링 서비스 모듈;
    상기 수집된 트래픽 및 자원 정보에 기초하여 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하여 가상 모니터링 기능이 할당된 코어의 개수를 제어하는 가상 모니터링 관리부; 및
    상기 가상 모니터링 기능을 수행하는 하나 이상의 코어를 구비한 멀티 코어부를 포함하고,
    상기 가상 모니터링 관리부는,
    가상 모니터링 기능을 실행 중인 하나 이상의 코어의 자원 상태를 모니터링하여 리소스 상태 테이블을 업데이트하고, 상기 모니터링 결과와 자원 사용 한계치 또는 자원 사용 최소 한계치를 비교하여 코어를 제어하며,
    상기 자원 사용 한계치를 초과하는 코어 발생 시, 상기 하나 이상의 코어 중에서 가용한 코어가 없을 경우, 자원 사용 한계치를 초과한 가상 모니터링 기능의 우선 순위에 따라 선점 방식(Preemption)을 적용하여 우선 순위가 가장 낮은 가상 모니터링 기능을 중지시키고 가상 모니터링 기능을 코어에 할당하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 가상 모니터링 관리부는,
    상기 자원 사용 한계치를 초과하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 상기 하나 이상의 코어 중에서 가용한 코어에 가상 모니터링 기능을 할당하고, 상기 리소스 매핑 테이블 및 상기 리소스 상태 테이블을 업데이트 하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
  4. 삭제
  5. 제1항에 있어서,
    상기 가상 모니터링 관리부는,
    상기 자원 사용 최소 한계치를 하향하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 축소 가능한 코어를 결정하고, 상기 축소 가능한 코어를 가상 모니터링 기능에서 제외하여 비활성화 시킨 후, 리소스 상태 테이블 및 리소스 매핑 테이블을 업데이트하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
  6. 제1항에 있어서,
    상기 기본 모니터링 서비스 모듈은,
    리소스 매핑 테이블을 참조하여 사용자 정의 모니터링 모듈에 포함된 하나 이상의 가상 모니터링 기능 중에서 필요한 가상 모니터링 기능을 선택하여 로드 밸런싱을 수행하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
  7. 제1항에 있어서,
    모니터링 대상 네트워크와 직접 연결되어 트래픽 및 자원 정보를 수집하여 상기 기본 모니터링 서비스 모듈로 전달하는 물리 인터페이스;
    를 더 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
  8. 제1항에 있어서,
    상기 사용자 정의 모니터링 서비스 모듈은,
    적응형 플로우 모니터링(Adaptive Flow Monitoring), 선택적 심층 패킷 분석(Selective Deep Packet Inspection), DMA(Detect and Mitigate Abnormality) 및 DNS 트래픽 모니터링(DNS Traffic Monitoring) 중에서 적어도 하나 이상의 가상 모니터링 기능을 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
  9. 제1항에 있어서,
    부팅(Booting) 시, 부트스트래핑(Bootstrapping) 과정을 시작하여, 상기 기본 모니터링 서비스 모듈이 실행되면서, 상기 사용자 정의 모니터링 서비스 모듈을 실행하고, 상기 가상 모니터링 관리부는 리소스 매핑 테이블 및 리소스 상태 테이블의 정보에 따라 가상 모니터링 기능을 할당된 코어에서 실행시키는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
  10. 제1항에 있어서,
    상기 사용자 정의 모니터링 서비스 모듈은 기존 가상 모니터링 기능을 이용한 모니터링 서비스의 중단 없이 새로운 가상 모니터링 기능을 추가, 삭제, 실행 및 중지가 가능한 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치.
  11. 모니터링 기능 자원 자율 스케일링 장치를 이용한 자원 자율 스케일링 방법에 있어서,
    수신된 트래픽 및 자원 정보에 기초하여 현재 가상 모니터링 기능이 할당된 코어의 자원 상태를 모니터링하는 단계; 및
    상기 모니터링 결과에 따라 가상 모니터링 기능이 할당된 코어의 개수를 제어하는 단계를 포함하고,
    상기 코어의 개수를 제어하는 단계는,
    현재 실행 중인 하나 이상의 코어의 자원 상태를 모니터링하여 리소스 상태 테이블을 업데이트하는 단계; 및
    실행 중인 하나 이상의 코어 중에서 자원 사용 한계치 또는 자원 사용 최소 한계치를 벗어나는 코어를 확인하여 코어의 개수를 제어하는 단계를 포함하되,
    상기 자원 사용 한계치를 초과하는 코어 발생 시, 상기 하나 이상의 코어 중에서 가용한 코어가 없을 경우, 자원 사용 한계치를 초과한 가상 모니터링 기능의 우선 순위에 따라 선점 방식(Preemption)을 적용하여 우선 순위가 가장 낮은 가상 모니터링 기능을 중지시키고 코어에 가상 모니터링 기능을 할당하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
  12. 삭제
  13. 제11항에 있어서,
    상기 코어의 개수를 제어하는 단계는,
    상기 자원 사용 한계치를 초과하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 상기 하나 이상의 코어 중에서 가용한 코어에 가상 모니터링 기능을 할당하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
  14. 삭제
  15. 제11항에 있어서,
    상기 코어의 개수를 제어하는 단계는,
    상기 자원 사용 최소 한계치를 하향하는 코어 발생 시, 리소스 상태 테이블 및 리소스 매핑 테이블의 정보를 기반으로 축소 가능한 코어를 결정하고, 상기 축소 가능한 코어를 가상 모니터링 기능에서 제외하여 비활성화 시킨 후, 리소스 상태 테이블 및 리소스 매핑 테이블을 업데이트하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
  16. 제11항에 있어서,
    부팅(Booting) 시, 부트스트래핑(Bootstrapping) 과정을 시작하여, 기본 모니터링 서비스 모듈이 실행되면서, 사용자 정의 모니터링 서비스 모듈을 실행하는 단계; 및
    리소스 매핑 테이블 및 리소스 상태 테이블의 정보에 따라 가상 모니터링 기능을 할당된 코어에서 실행하는 단계;
    를 더 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
  17. 제11항에 있어서,
    모니터링 서비스 기능을 가상으로 구성하여 하나 이상의 가상 모니터링 기능을 생성하는 단계;
    를 더 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 방법.
KR1020150027432A 2015-02-26 2015-02-26 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법 KR102016683B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150027432A KR102016683B1 (ko) 2015-02-26 2015-02-26 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150027432A KR102016683B1 (ko) 2015-02-26 2015-02-26 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법

Publications (2)

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

Family

ID=56938843

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150027432A KR102016683B1 (ko) 2015-02-26 2015-02-26 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102016683B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11140564B2 (en) 2019-05-28 2021-10-05 Samsung Electronics Co., Ltd. Method and apparatus for performing radio access network function
US11219032B2 (en) 2019-05-28 2022-01-04 Samsung Electronics Co., Ltd. Method and apparatus for performing function of radio access network

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102287280B1 (ko) * 2016-10-13 2021-08-06 에스케이텔레콤 주식회사 네트워크 기능 가상화 운영 장치 및 방법
KR102605071B1 (ko) * 2017-02-27 2023-11-24 한국전자통신연구원 가상 네트워크 기능 관리 장치 및 방법
KR102268549B1 (ko) * 2019-11-19 2021-06-24 주식회사 피씨엔 빅데이터 플랫폼 관리 방법 및 장치
KR102345410B1 (ko) * 2019-11-19 2021-12-30 주식회사 피씨엔 빅데이터 지능형 수집 방법 및 장치
KR102473776B1 (ko) * 2020-11-23 2022-12-05 주식회사 피씨엔 빅데이터 크로스 모델 데이터 통합 처리 방법 및 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100590892B1 (ko) * 2004-08-20 2006-06-19 삼성전자주식회사 로드 밸런싱 시스템 및 방법
KR20120072059A (ko) 2010-12-23 2012-07-03 한국전자통신연구원 가상화 네트워크에서 자원 제어 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11140564B2 (en) 2019-05-28 2021-10-05 Samsung Electronics Co., Ltd. Method and apparatus for performing radio access network function
US11219032B2 (en) 2019-05-28 2022-01-04 Samsung Electronics Co., Ltd. Method and apparatus for performing function of radio access network

Also Published As

Publication number Publication date
KR20160104419A (ko) 2016-09-05

Similar Documents

Publication Publication Date Title
KR102016683B1 (ko) 소프트웨어 정의 네트워크의 모니터링 기능 자원 자율 스케일링 장치 및 방법
CN109936604B (zh) 一种资源调度方法、装置和系统
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
US9588789B2 (en) Management apparatus and workload distribution management method
KR102028096B1 (ko) 하이퍼바이저 기반의 가상 머신 격리 장치 및 방법
EP3253027B1 (en) Resource allocation method and apparatus for virtual machines
US10241836B2 (en) Resource management in a virtualized computing environment
US9569244B2 (en) Implementing dynamic adjustment of I/O bandwidth for virtual machines using a single root I/O virtualization (SRIOV) adapter
CN107222531B (zh) 一种容器云资源调度方法
US20150309828A1 (en) Hypervisor manager for virtual machine management
US9223604B2 (en) Control method of virtual machine and virtual machine system
US9940150B2 (en) Policy based virtual resource allocation and allocation adjustment
US20140173620A1 (en) Resource allocation method and resource management platform
US20170017511A1 (en) Method for memory management in virtual machines, and corresponding system and computer program product
KR20190084203A (ko) Ssd기반 클라우드 계산 스토리지 시스템을 위한 aclb를 위한 방법 및 장치
US20110010709A1 (en) Optimizing System Performance Using Spare Cores in a Virtualized Environment
CN116450358A (zh) 云计算系统中的用于虚拟机的资源管理
US20140373010A1 (en) Intelligent resource management for virtual machines
KR20130101693A (ko) 이종의 운영체제를 사용하는 가상화 시스템의 전력 관리 방법 및 장치
US9792142B2 (en) Information processing device and resource allocation method
US10630600B2 (en) Adaptive network input-output control in virtual environments
WO2016092856A1 (ja) 情報処理装置、情報処理システム、タスク処理方法、及び、プログラムを記憶する記憶媒体
US20120144389A1 (en) Optimizing virtual image deployment for hardware architecture and resources
US11169844B2 (en) Virtual machine migration to multiple destination nodes
US20160147657A1 (en) System and method for optimized disk io ram caching for a vdi environment

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