KR20190087131A - Method, program, recording medium and computing device for allocating virtualization network function resource - Google Patents

Method, program, recording medium and computing device for allocating virtualization network function resource Download PDF

Info

Publication number
KR20190087131A
KR20190087131A KR1020180005541A KR20180005541A KR20190087131A KR 20190087131 A KR20190087131 A KR 20190087131A KR 1020180005541 A KR1020180005541 A KR 1020180005541A KR 20180005541 A KR20180005541 A KR 20180005541A KR 20190087131 A KR20190087131 A KR 20190087131A
Authority
KR
South Korea
Prior art keywords
virtual
vnf
network function
workload
computer
Prior art date
Application number
KR1020180005541A
Other languages
Korean (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 KR1020180005541A priority Critical patent/KR20190087131A/en
Publication of KR20190087131A publication Critical patent/KR20190087131A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The present invention relates to a method and a program for allocating virtual network function (VNF) resources, a computer-readable recording medium recording the same, and a computing device. According to the present invention, the computing device comprises: a virtual network function workload database to store virtual network function (VNF) workload information including identification information of virtual computers, a resource capacity of each virtual computer, and a current workload of each virtual computer; and a global resource allocator module arranged on a network function virtual orchestrator (NFVO) of a virtual network function architecture to use the VNF workload information stored in the virtual network function workload database to allocate the number of active virtual computers and a workload of the active virtual computers. According to the present invention, power of servers is turned off in an idle state, and the number of driving servers is minimized in an active state to minimize energy consumption costs and efficiently allocate a large quantity of VNF resources.

Description

가상 네트워크 기능 자원 할당 방법, 프로그램, 이를 기록한 컴퓨터로 판독가능한 기록매체와 컴퓨팅 장치{METHOD, PROGRAM, RECORDING MEDIUM AND COMPUTING DEVICE FOR ALLOCATING VIRTUALIZATION NETWORK FUNCTION RESOURCE}TECHNICAL FIELD [0001] The present invention relates to a virtual network function resource allocation method, a program, a computer-readable recording medium on which the resource is allocated, a computer-

본 발명은 대량 VNF 자원 할당을 위한 가상 네트워크 기능 자원 할당 방법, 프로그램, 이를 기록한 컴퓨터로 판독가능한 기록매체와 컴퓨팅 장치에 관한 것이다. The present invention relates to a virtual network function resource allocation method, a program, a computer-readable recording medium storing the program, and a computing device for allocating a large amount of VNF resources.

네트워크 기능 가상화(NFV: Network Function Virtualization)는 통신망 구성에 필요한 하드웨어를 소프트웨어화해서 서버 단에서 구현하는 기술로, 세계 주요 통신사들이 사업자 통신망 장비의 기능들을 가상화하여 네트워크의 유연성을 높이므로 하드웨어 장비를 줄일 수 있다. 즉, 진화하는 정보 기술 분야의 가상화 기술을 사용하여 많은 네트워크 장비 유형을 산업 표준의 대용량 서버, 교환기, 및 저장 기기에 대해 통합함으로써, 네트워크 운영자가 네트워크 및 네트워크 서비스를 구축하고 운영하는 방식을 의미한다. NFV는 일련의 산업 표준의 서버 하드웨어에서 실행할 수 있는 소프트웨어를 사용하여 네트워크 기능을 구현하므로, 네트워크 아키텍처를 변경할 수 있다. Network Function Virtualization (NFV) is a technology that implements the necessary hardware for the network configuration at the server side. It enables the major telecom companies to virtualize the functions of the operator network equipment to increase the flexibility of the network, . This means the way network operators build and operate network and network services by integrating many types of network equipment with industry standard, high capacity servers, switches, and storage devices using evolving information technology virtualization technologies . The NFV implements network functionality using software that can be run on a set of industry-standard server hardware, thereby altering the network architecture.

또한, 소프트웨어가 요건에 따라 새로운 기기를 설치할 필요없이 네트워크 내의 상이한 위치에서 동적으로 이동하거나 인스턴스화(instantiated)될 수 있기 때문에, 네트워크 운영이 추가로 변경될 수 있다. In addition, network operations may be further modified because software may be moved or instantiated dynamically at different locations within the network without the need to install new devices according to the requirements.

도 1은 종래의 네트워크 기능 가상화(NFV: Network Function Virtualization) 아키텍처의 구성도이다. 1 is a block diagram of a conventional Network Function Virtualization (NFV) architecture.

도 1을 참조하면, NFV 참조 아키텍처는 NFV 인프라스트럭처(NFVI: NFV Infrastructure), 가상 네트워크 기능(VNF: Virtual Network Function), NFV 관리 및 오케스트레이터(M&O or MANO: Management and Orchestrator)를 포함하여 구성된다.1, the NFV reference architecture is configured to include an NFV infrastructure (NFVI infrastructure), a virtual network function (VNF), an NFV management, and an orchestrator (M & O or MANO: Management and Orchestrator) .

먼저, NFV 인프라스트럭처(NFVI)는 NFV 실행을 지원하는 데 필요한 가상화 자원(virtualized resource)을 제공하며, 여기에는 상용 기성품(commercial off the shelf) 하드웨어, 필요한 가속기 구성 요소, 및 기본 하드웨어의 가상화 및 추상화를 수행하는 소프트웨어 계층을 포함한다. First, the NFV Infrastructure (NFVI) provides the virtualized resources needed to support NFV execution, including commercial off the shelf hardware, the necessary accelerator components, and the virtualization and abstraction of the underlying hardware Lt; RTI ID = 0.0 > a < / RTI >

가상 네트워크 기능(NFV)은 NFVI 상에서 동작할 수 있는 네트워크 기능(NF: Network Function)의 소프트웨어 구현이며, 단일 VNF 및 단일 VNF의 특성을 이해하고 관리하기 위한 요소 관리 시스템(EMS: Element Management System)을 더 수반할 수 있다. VNF는 네트워크 노드의 엔티티에 해당하며, 하드웨어 독립적인 소프트웨어로만 제공될 것으로 예상된다. The Virtual Network Function (NFV) is a software implementation of network function (NF) that can operate on NFVI, and it supports element management system (EMS) for understanding and managing the characteristics of single VNF and single VNF More. VNF corresponds to an entity of a network node and is expected to be provided only as hardware independent software.

NFV 관리 및 오케스트레이터(M&O)은 오케스트레이터, 인프라스트럭처 가상화를 지원하기 위한 물리 및/또는 소프트웨어 자원에 대한 수명 주기 관리, 및 VNF 수명 주기 관리를 포함한다. NFV M&O는 NFV 외부의 운영 지원 시스템(OSS: Operation Support System)/비지니스 지원 시스템(BSS: Business Support System)과 상호작용하여, NFV가 전체 네트워크 범위 내의 기존의 관리 전망에 통합될 수 있도록 한다. MANO 내부에는 NFV 오케스트레이터(NFVO), VNF 관리자(VNFM), 및 가상화 인프라스트럭처 관리자(VIM)가 포함되어 있다. NFV management and orchestrator (M & O) includes orchestrator, lifecycle management of physical and / or software resources to support infrastructure virtualization, and VNF lifecycle management. The NFV M & O interacts with the Operation Support System (OSS) / Business Support System (BSS) outside the NFV to enable the NFV to be integrated into the existing management landscape within the entire network range. Within MANO, the NFV Orchestrator (NFVO), VNF Manager (VNFM), and Virtual Infrastructure Manager (VIM) are included.

NFV 오케스트레이터(NFVO)는 주로 네트워크 서비스 오케스트레이터 기능을 완료하기 위해 NS의 수명 주기 관리를 담당하고, 자원 조정 기능을 완료하기 위해 다수의 VIM 간의 NFVI 자원 오케스트레이터를 담당한다.  The NFV orchestrator (NFVO) is primarily responsible for the lifecycle management of the NS to complete the network service orchestrator function and the NFVI resource orchestrator between the multiple VIMs to complete the resource coordination function.

VNF 관리자(VNFM)는 VNF 인스턴스(instane)의 수명 주기 관리를 담당한다. 각각의 VNF는 연관된 VNFM이 있고, 하나의 VNFM이 단일 VNF 인스턴스를 관리하거나 동일한 유형 또는 상이한 유형의 다수의 VNF 인스턴스를 관리하도록 지정될 수 있다. VNF 관리자의 사용 가능한 능력은 VNF 인스턴스와, VNF를 위한 NFVI 자원 구성, VNF 인스턴스 갱신, VNF 인스턴스 스케일링, NFVI 성능 측정 및 VNF 인스턴스 관련 사건, NFVI 성능 측정과 이벤트의 수집 및 VNF 인스턴스 관련 이벤트에 대한 상관 관계, VNF 인스턴스 지원 또는 자동 치료, VNF 인스턴스 종료, VNF 인스턴스의 수명 주기 전체에 걸친 VNF 인스턴스에 대한 무결성 관리, NFVI와 EMS 사이의 구성 및 이벤트 보고를 위한 전반적인 조정 및 적응 역할의 수행 등이 포함된다. The VNF Manager (VNFM) is responsible for the lifecycle management of the VNF instance (instane). Each VNF may have an associated VNFM, and one VNFM may be designated to manage a single VNF instance or to manage multiple VNF instances of the same type or of different types. The available capabilities of VNF Manager include correlation of VNF instance, NFVI resource configuration for VNF, VNF instance update, VNF instance scaling, NFVI performance measurement and VNF instance related events, NFVI performance measurement and event collection and VNF instance related events. Relationships, support for VNF instances or auto-healing, termination of VNF instances, integrity management for VNF instances throughout the lifecycle of VNF instances, configuration and reporting of events between NFVI and EMS, and performing overall coordination and adaptation roles .

가상화 인프라스트럭처 관리자(VIM)는 NFVI의 컴퓨팅, 저장, 및 네트워크 자원의 제어 및 관리를 담당하며, 일반적으로 한 운영자의 인프라스트럭처 하위 도메인 내에 있다. 하나의 VIM은 하나의 유형의 NFVI 자원의 처리를 전문적으로 할 수 있거나, 여러 유형의 NFVI 자원을 관리할 수 있다. VIM의 사용 가능한 기능으로는 NFVI 자원의 할당/업그레이드/릴리스/재활용을 오케스트레이팅하고, 가상화 자원과 컴퓨팅, 저장, 및 네트워크 자원 사이의 연관관계를 관리하고, 하드웨어 자원(컴퓨팅, 저장 및 네트워크) 및 소프트웨어 자원(예: 하이퍼 바이저)의 카탈로그 관리, 가상황 자원 성능 측정 및 이벤트의 수집 및 전달 등을 포함한다.The Virtual Infrastructure Manager (VIM) is responsible for the control and management of the computing, storage, and network resources of the NFVI and is typically within an operator's infrastructure sub-domain. A VIM can specialize in the processing of one type of NFVI resource, or it can manage several types of NFVI resources. Available functions of VIM include orchestrating allocation / upgrade / release / recycling of NFVI resources, managing the association between virtualization resources and computing, storage, and network resources, and hardware resources (computing, storage and network) And cataloging software resources (eg, hypervisors), measuring virtual resource performance and collecting and delivering events.

이러한 아키텍처에 기초하여, 특정 기능을 갖는 NS(Network Service)는 다수의 NF를 사용하여 구현될 수 있다. 종래의 네트워크에서 구현되는 end-to-end NS는 물리 네트워크 기능만 포함한다. NFV에서 구현된 end-to-end NS의 경우, 일반적으로 양단에는 여전히 물리 네트워크 기능이 존재하지만 중간에는 일부 또는 모든 물리 네트워크 기능이 가상 네트워크 기능으로 교체된다. 각각의 네트워크 기능에 의해 구현되는 기능과 각각의 네트워크 기능의 외부 인터페이스는 네트워크 기능이 물리 네트워크 기능인지 가상 네트워크 기능인지와 무관하다. 가상 네트워크 기능 전달 그래프를 이용하여 가상 네트워크 기능과 물리 네트워크 기능 사이를 링크하는 토폴로지 관계가 기술될 수 있고, 각각의 네트워크 기능의 특성은 대응하는 네트워크 기능 설명자(NFD: Network Function Descriptor)를 사용하여 기술된다. Based on this architecture, NS (Network Service) having a specific function can be implemented using a plurality of NFs. The end-to-end NS implemented in the conventional network only includes the physical network function. In the case of end-to-end NS implemented in NFV, there are still physical network functions at both ends, but in the middle, some or all physical network functions are replaced with virtual network functions. The function implemented by each network function and the external interface of each network function are independent of whether the network function is a physical network function or a virtual network function. A topology relation linking a virtual network function and a physical network function can be described using a virtual network function transfer graph. The characteristics of each network function can be described using a corresponding network function descriptor (NFD) do.

VNF는 NFCI에 의해 제공되는 가상 자원에 기초하여 구현되어야 하며, 이들 가상 자원은 대응하는 물리 자원에 대해 가상화를 수행함으로써 취득된다. PNF는 물리 자원에 기초하여 직접 구현된다. 모든 제어가 소프트웨어 및 하드웨어와 통합된 네트워크 기기로 중앙 집중화된 종래의 네트워크와 달리, NFV는 네트워크 기기의 소프트웨어와 하드웨어의 분리를 구현하기 위해 가상화를 도입하여, 서비스에 대한 제어는 주로 PNF 및 VNF 레벨에서 구체화될 수 있도록 하고, 성능에 대한 제어는 주로 NFVI, 특히 NFVI의 하드웨어 자원 레벨에서 구체화될 수 있도록 한다.The VNF must be implemented based on the virtual resources provided by the NFCI, and these virtual resources are acquired by performing virtualization on the corresponding physical resources. The PNF is implemented directly based on physical resources. Unlike traditional networks, where all the controls are centralized with software and hardware-integrated network devices, NFV introduces virtualization to implement the separation of software and hardware in network devices, and control of services is mainly driven by PNF and VNF levels , And the control over performance can be made mainly at the hardware resource level of NFVI, especially NFVI.

도 2는 종래의 가상 컴퓨터 자원 할당 모듈의 배치도이고, 도 3은 종래의 가상 컴퓨터에 자원을 분배하는 방법을 설명하기 위한 도면이다. FIG. 2 is a layout diagram of a conventional virtual computer resource allocation module, and FIG. 3 is a diagram for explaining a method of allocating resources to a conventional virtual computer.

도 2 내지 도 3을 참조하면, 종래의 가상 컴퓨터 자원 할당 모듈은 가상화 인프라스트럭처 관리자(VIM)에 배치되어 가상 컴퓨터로 자원을 균등하게 분배할 수 있다. 이때, 가상 컴퓨터 자원 할당 모듈은 최소 이용률을 갖는 서버를 선택하여 자원을 분배하게 되므로, 예를 들어, 4개의 가상 컴퓨터가 존재하고, 7개의 가상 네트워크 기능(VNFs)을 할당하는 경우, [0.4 0.4 0.4 0.2]의 최대 워크로드 벡터로 자원을 분배하게 된다. 이 경우, 각각의 가상 컴퓨터의 효율을 최대로 활용하지 못하는 한계가 있다. Referring to FIGS. 2 and 3, a conventional virtual computer resource allocation module may be disposed in a virtualization infrastructure manager (VIM) to distribute resources evenly to a virtual computer. At this time, since the virtual computer resource allocation module distributes resources by selecting a server having the minimum utilization rate, for example, when there are four virtual computers and seven virtual network functions (VNFs) are allocated, [0.4 0.4 0.4 0.2] to the maximum workload vector. In this case, the efficiency of each virtual computer can not be utilized to the maximum.

특히, 호스트 가상 컴퓨터(VM)로 자원 분배는 NFVI에서 실행되므로 전체 가상 컴퓨터의 작업량을 최소화하도록 자원이 분배된다. 그러나, 이러한 자원 분배 방법은 VNF의 대량 배포에 적합하지 않고, 좀 더 효율성을 높인 자원 분배 정책이 요구된다. In particular, resource distribution to the host virtual machine (VM) runs on the NFVI, so resources are distributed to minimize the workload of the entire virtual machine. However, this resource allocation method is not suitable for mass distribution of VNF, and a resource distribution policy which is more efficient is required.

한국공개특허 제10-2017-0046721호(2017.05.02.), 발명의 명칭: 에너지 절약 제어 방법, 관리 서버 및 네트워크 기기Korean Patent Laid-Open No. 10-2017-0046721 (May 27, 2017), entitled: Energy saving control method, management server and network device

본 발명은 글로벌 자원 할당(GRA: Global Resource Allocator) 모듈을 NFVO 상에 포함시킴으로써, 활성화 가상 컴퓨터(VM)의 개수를 최소화하고 각 가상 컴퓨터의 작업량이 최대가되도록 VNF 자원을 분배함으로써, 가상 네트워크 기능(VNF: Virtual Network Function) 대량 배포를 효율적으로 수행하는 가상 네트워크 기능 자원 할당 방법, 프로그램, 이를 기록한 컴퓨터로 판독가능한 기록매체와 컴퓨팅 장치를 제공하는데 그 목적이 있다.The present invention minimizes the number of activated virtual machines (VMs) by distributing a Global Resource Allocator (GRA) module on the NFVO and distributes the VNF resources so that the workload of each virtual computer is maximized, A VNF (Virtual Network Function), a virtual network function resource allocation method, a program, and a computer readable recording medium and a computing device recording the same.

상기의 목적을 달성하기 위해 본 발명의 일 실시예에 따른 컴퓨팅 장치는 가상 컴퓨터의 식별정보, 각 가상 컴퓨터의 자원 용량과, 상기 각 가상 컴퓨터의 현재 워크로드를 포함하는 VNF(VNF: Virtyal Network Function) 워크로드 정보를 저장하는 가상 네트워크 기능 워크로드 데이터베이스, 및 가상 네트워크 기능(VNF: Virtual Network Function) 아키텍처의 네트워크 기능 가상 오케스트레이터(NFVO: Network Function Virtual Orchestrator)에 배치되어, 상기 가상 네트워크 기능 워크로드 데이터베이스에 저장된 상기 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 글로벌 자원 할당(GRA: Global Resource Allocator) 모듈을 포함한다.In order to achieve the above object, a computing apparatus according to an embodiment of the present invention includes a VNF (Vir- net Network Function (VNF), which includes identification information of a virtual computer, resource capacity of each virtual computer, A virtual network function workload database for storing workload information, and a network function virtual orchestrator (NFVO) of a virtual network function (VNF) architecture, And a Global Resource Allocator (GRA) module that allocates the number of activated virtual machines and the workload of the active virtual machine using the VNF workload information stored in the database.

여기서, GRA 모듈은 상기 가상 네트워크 기능 워크로드 데이터베이스에 저장된 상기 VNF 워크로드 정보를 이용하여 상기 활성화 가상 컴퓨터 개수가 최소가 되면서 상기 활성화 가상 컴퓨터의 작업량이 60% 이상 100% 이하가 되도록 상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당할 수 있다.Here, the GRA module uses the VNF workload information stored in the virtual network function workload database so that the number of the activated virtual machines is minimized so that the amount of work of the active virtual machine is 60% or more and less than 100% And the workload of the activation virtual machine can be allocated.

또한, 가상 네트워크 기능 워크로드 데이터베이스는 상기 VNFO 내부에 배치될 수 있다.In addition, a virtual network function workload database may be located within the VNFO.

또한, GRA 모듈은 네트워크 서비스 매니저(Network Service Manager)로부터 할당이 필요한 멀티 네트워크 서비스 디스크립션을 업로드하기 위하여 웹 기반의 UI를 수신한 경우, 상기 UI에 포함된 정보와 상기 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당할 수 있다.In addition, when receiving a web-based UI for uploading a multi-network service description to be allocated from a network service manager, the GRA module activates the VNF workload using the information included in the UI and the VNF workload information The number of virtual machines and the workload of the activation virtual machine can be allocated.

또한, GRA 모듈은 상기 UI를 NFV 대량 배치 모듈(NFV nassuce deploy module)로 전달하고, 상기 NFV 대량 배치 모듈을 통해 NFVI로 NFV를 할당하도록 전달할 수 있다.In addition, the GRA module may forward the UI to the NFV mass deployment module and to allocate the NFV to the NFVI through the NFV mass deployment module.

또한, GRA 모듈은 유전자 알고리즘(Genetic Algorithms)을 구동시켜, VNF와 VNF가 어디 할당될지 결정하고, VIM을 통해 VNF를 해당하는 NFVI에 할당할 수 있다.The GRA module also drives the Genetic Algorithms to determine where VNFs and VNFs are allocated and to assign VNFs to the corresponding NFVIs via VIM.

본 발명의 다른 실시예에 따른 가상 네트워크 기능 자원 할당 방법은 컴퓨팅 장치에서 가상 컴퓨터의 식별정보, 각 가상 컴퓨터의 자원 용량과, 상기 각 가상 컴퓨터의 현재 워크로드를 포함하는 VNF(VNF: Virtyal Network Function) 워크로드 정보를 저장하는 단계, 및 상기 저장된 상기 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계를 포함한다.A method for allocating a virtual network function resource according to another embodiment of the present invention is a method for allocating a virtual network function resource (VNF) to a computing device, the method comprising: ) Storing workload information, and allocating the number of active virtual machines and the workload of the active virtual machine using the stored VNF workload information.

활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계는, 가상 네트워크 기능(VNF: Virtual Network Function) 아키텍처의 네트워크 기능 가상 오케스트레이터(NFVO: Network Function Virtual Orchestrator)에서 처리될 수 있다.The step of allocating the number of activated virtual machines and the workload of the activation virtual machine may be handled in a network function virtual orchestrator (NFVO) of a virtual network function (VNF) architecture.

VNF(VNF: Virtyal Network Function) 워크로드 정보를 저장하는 단계는, 가상 네트워크 기능(VNF: Virtual Network Function) 아키텍처의 네트워크 기능 가상 오케스트레이터(NFVO: Network Function Virtual Orchestrator)에서 처리될 수 있다.Storing VNF (Virtyal Network Function) workload information may be handled in a Network Function Virtual Orchestrator (NFVO) of a Virtual Network Function (VNF) architecture.

활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계는, 유전자 알고리즘(Genetic Algorithms)을 구동시켜, VNF와 VNF가 어디 할당될지 결정할 수 있다. The step of allocating the number of active virtual machines and the workload of the active virtual machine may drive a Genetic Algorithm to determine where VNF and VNF are allocated.

또한, 상기 VNF(VNF: Virtyal Network Function) 워크로드 정보를 저장하는 단계와 상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계 사이에, 네트워크 서비스 매니저(Network Service Manager)로부터 할당이 필요한 멀티 네트워크 서비스 디스크립션을 업로드하기 위하여 웹 기반의 UI를 수신하는 단계를 더 포함하고, 상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계는, 상기 수신된 UI에 포함된 정보와 상기 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당할 수 있다.In addition, the step of storing the VNF (Virtyal Network Function) workload information and the step of assigning the number of activated virtual machines to the amount of work of the activation virtual computer require allocation from a network service manager The method of claim 1, further comprising: receiving a web-based UI for uploading a multi-network service description, wherein the step of assigning the number of active virtual machines and the workload of the active virtual computer comprises: The number of activated virtual machines and the workload of the active virtual machine can be allocated using the workload information.

또한, 상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계 이후에, 상기 NFV 대량 배치 모듈을 통해 NFVI로 NFV를 할당하도록 전달하는 단계를 더 포하하여 구성될 수 있다. In addition, the step of allocating the number of active virtual machines and the amount of work of the activation virtual computer may further include transmitting the NFVs to be allocated to the NFVIs through the NFV bulk allocation module.

본 발명의 또 다른 실시예에 따른 상기의 가상 네트워크 기능 자원 할당 방법을 실현하는 컴퓨터 판독 가능한 기록매체에 기록된 프로그램을 제공할 수 있다.A program recorded on a computer-readable recording medium for realizing the virtual network function resource allocation method according to another embodiment of the present invention can be provided.

본 발명의 또 다른 실시예에 따른 상기의 가상 네트워크 기능 자원 할당 방법을 실현하는 컴퓨터 판독 가능한 기록매체를 제공할 수 있다.The present invention can provide a computer readable recording medium for realizing the virtual network function resource allocation method according to another embodiment of the present invention.

본 발명에 의하면, 아이들 상태(idle state)에서 서버의 전원을 끄고, 활성화 상태(active state)에서 구동 서버의 개수를 최소화 함으로써 에너지 소비비용을 최소화할 수 있고 대량 VNF의 효율적인 자원 할당이 가능한 효과가 있다.According to the present invention, it is possible to minimize the energy consumption cost by minimizing the number of the drive servers in the idle state by turning off the power of the server and in the active state, and efficient resource allocation of the large VNF is possible have.

도 1은 종래의 네트워크 기능 가상화(NFV: Network Function Virtualization) 아키텍처의 구성도이다.
도 2는 종래의 가상 컴퓨터 자원 할당 모듈의 배치도이다.
도 3은 종래의 가상 컴퓨터에 자원을 분배하는 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 글로벌 자원 할당(GRA: Global Resource Allocate) 모듈의 배치도이다.
도 5는 본 발명의 일 실시예에 따른 NFV 아키텍처의 구성도이다.
도 6은 본 발명의 일 실시예에 따라 GRA 모듈에서 활성화 가상 컴퓨터를 결정하는 방법을 설명하기 위한 도면이다.
도 7 내지 도 8은 본 발명의 일 실시예에 따라 가상 컴퓨터에 자원을 분배하는 방법을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따라 가상 컴퓨터에 자원을 분배하는 방법의 효율성을 검증하는 도면이다.
도 10은 본 발명의 일 실시예에 따른 유전자 알고리즘을 나타낸 도면이다.
1 is a block diagram of a conventional Network Function Virtualization (NFV) architecture.
2 is a layout diagram of a conventional virtual computer resource allocation module.
3 is a diagram for explaining a method of distributing resources to a conventional virtual computer.
4 is a layout diagram of a Global Resource Allocate (GRA) module according to an embodiment of the present invention.
5 is a block diagram of an NFV architecture according to an embodiment of the present invention.
FIG. 6 is a diagram illustrating a method for determining an activated virtual machine in a GRA module according to an embodiment of the present invention. Referring to FIG.
7 to 8 are diagrams for explaining a method of distributing resources to a virtual computer according to an embodiment of the present invention.
9 is a diagram for verifying the efficiency of a method of distributing resources to a virtual machine according to an embodiment of the present invention.
10 is a diagram illustrating a genetic algorithm according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 각 실시예에 따른 컴퓨팅 장치 및 가상 네트워크 기능 자원 할당 방법에 대하여 설명하도록 한다.Hereinafter, a computing apparatus and a virtual network function resource allocation method according to embodiments of the present invention will be described with reference to the accompanying drawings.

이하의 설명에서 본 발명에 대한 이해를 명확히 하기 위하여, 본 발명의 특징에 대한 공지의 기술에 대한 설명은 생략하기로 한다. 실시예들은 본 발명의 이해를 돕기 위한 상세한 설명이며, 본 발명의 권리범위를 제한하는 것은 아니다. 따라서, 본 발명과 동일한 기능을 수행하는 균등물 역시 본 발명의 권리 범위에 속한다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. The embodiments are described in detail to facilitate understanding of the present invention, and do not limit the scope of the present invention. Accordingly, equivalents that perform the same functions as the present invention are also within the scope of the present invention.

이하의 설명에서 동일한 식별 기호는 동일한 구성을 의미하며, 불필요한 중복적인 설명 및 공지 기술에 대한 설명은 생략하기로 한다. 본 발명의 실시 예에서 "통신", "통신망" 및 "네트워크"는 동일한 의미로 사용될 수 있다. 상기 세 용어들은, 프로그램, 파일, 패킷 등을 사용자 단말, 다른 사용자들의 단말 및 서버 사이에서 송수신할 수 있는 유무선의 송수신망을 포함한다. In the following description, the same reference numerals denote the same components, and unnecessary redundant explanations and descriptions of known technologies will be omitted. In the embodiments of the present invention, "communication "," communication network ", and "network" The three terms include wired and wireless transmission and reception networks capable of transmitting and receiving a program, a file, a packet, and the like between a user terminal, a terminal of another user, and a server.

이하, 첨부된 도면들을 참조하여 구체적인 실시예들을 설명하도록 한다.Hereinafter, specific embodiments will be described with reference to the accompanying drawings.

도 4는 본 발명의 일 실시예에 따른 글로벌 자원 할당(GRA: Global Resource Allocate) 모듈의 배치도이다.4 is a layout diagram of a Global Resource Allocate (GRA) module according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시예에 따른 글로벌 자원 할당(GRA: Global Resource Allocate) 모듈은 가상 네트워크 기능(VNF: Virtual Network Function) 아키텍처의 네트워크 기능 가상 오케스트레이터(NFVO: Network Function Virtual Orchestrator)에 배치된다.4, a Global Resource Allocate (GRA) module according to an exemplary embodiment of the present invention includes a network function virtual orchestrator (NFVO) of a virtual network function (VNF) .

서비스 제공자는 사용자의 위치에 가까운 미니 데이터센터를 배치하고, NFVI를 네트워크 에지로 이동시킬 수 있다. 재난 등에 대비하여 백업이 가능하고, 에너지 소비를 최적화하기 위하여 GRA 모듈을 NFV의 NFVO에 배치해야 한다. 여기서, GRA 모듈은 하드웨어 모듈로 형성되거나 또는 위 기능을 수행하는 소프트웨어 모듈로 형성될 수 있다. The service provider can place a mini-data center near the user's location and move the NFVI to the network edge. In order to be able to backup in case of disaster, and to optimize energy consumption, the GRA module should be placed in NFVO of NFV. Here, the GRA module may be formed of a hardware module or a software module performing the above functions.

도 5는 본 발명의 일 실시예에 따른 NFV 아키텍처의 구성도이다. 5 is a block diagram of an NFV architecture according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 일 실시예에 따른 NFV 아키텍처는 종래의 NFV 아키텍처에서, NFVO(100)에 GRA(110) 및 가상 네트워크 기능 워크로드 데이터베이스(120)를 추가한 형태를 갖는다. Referring to FIG. 5, the NFV architecture according to an embodiment of the present invention has a form of adding the GRA 110 and the virtual network function workload database 120 to the NFVO 100 in the conventional NFV architecture.

구체적으로, 네트워크 서비스 매니저(Network Service Manager)는 할당이 필요한 멀티 네트워크 서비스 디스크립션을 업로드하기 위하여 웹 기반의 UI를 사용할 수 있다. UI는 NFV 대량 배치 모듈(NFV nassuce deploy module)로 요청이 전달되고, NFV 대량 배치 모듈은 GRA(110)에서 NFVI(300)로 NFV를 할당하도록 전달할 수 있다. Specifically, the network service manager can use a web-based UI to upload multi-network service descriptions that need to be allocated. The UI can pass the request to the NFV mass deployment module and the NFV bulk deployment module to deliver the NFV from the GRA 110 to the NFVI 300. [

GRA(110)는 VNF의 종류와 각 NS에 포함된 VNF의 개수를 NS 카탈로그(NS catalogue)를 통해 체크한다. 즉, GRA(110)는 VNF 카탈로그와 NFV 리소스를 체크하여 각 VNF 리소스에 대한 정보를 가져오고, VNF 워크로드 예측 카탈로그의 데이터베이스를 체크하여 각 VNF 워크로드 정보를 가져올 수 있다. 또한, GRA(110)는 리소스 상태 카탈로그를 체크하여 각 NFVI의 리소스 상태를 가져올 수 있다. The GRA 110 checks the type of VNF and the number of VNFs included in each NS through the NS catalog. That is, the GRA 110 may check the VNF catalog and the NFV resource to obtain information on each VNF resource, and check the database of the VNF workload prediction catalog to obtain each VNF workload information. In addition, the GRA 110 may check the resource status catalog to obtain the resource status of each NFVI.

GRA(110)는 유전자 알고리즘(Genetic Algorithms)을 구동시켜, VNF와 VNF가 어디 할당될지 결정하고, VIM(200)을 통해 VNF를 해당하는 NFVI(300)에 할당할 수 있다. 이때, VIM(200)은 GRA(110)로부터 VNF의 매핑과 할당 스케쥴링을 위해 NFVI(300)로 요청을 전달하고, NFVI(300)는 VNF를 구동할 가상 컴퓨터(VM)를 할당할 수 있다. GRA 110 may drive Genetic Algorithms to determine where VNFs and VNFs are allocated and to allocate VNFs to corresponding NFVIs 300 via VIM 200. [ At this time, the VIM 200 transfers a request from the GRA 110 to the NFVI 300 for mapping and allocation scheduling of the VNF, and the NFVI 300 can allocate a virtual machine (VM) for driving the VNF.

도 6은 본 발명의 일 실시예에 따라 GRA 모듈에서 활성화 가상 컴퓨터를 결정하는 방법을 설명하기 위한 도면이다.FIG. 6 is a diagram illustrating a method for determining an activated virtual machine in a GRA module according to an embodiment of the present invention. Referring to FIG.

도 6을 참조하면, 본 발명의 일 실시예에 따라 GRA 모듈에서 활성화 가상 컴퓨터를 결정하는 방법은 활성화 가상 컴퓨터 개수가 최소가 되면서 활성화 가상 컴퓨터의 작업량이 60% 이상 100% 이하가 되도록 활성화 가상 컴퓨터 개수와 활성화 가상 컴퓨터의 작업량을 할당할 수 있다. Referring to FIG. 6, a method for determining an activated virtual machine in the GRA module according to an exemplary embodiment of the present invention includes: determining whether an activated virtual machine has a minimum number of active virtual machines, You can assign the number and the workload of the activation virtual machine.

구체적으로, 서버의 에너지 효율은 서버의 워크로드(workload) 및 하드웨어에 따른 최대 에너지 효율(보통 60% 내지 100%)에 대한 로드 레벨에 의존한다. 클라우드 서버의 에너지 효율을 높이기 위하여 서버에 할당된 가상 컴퓨터 구동 서비스 분배에 의해 서버의 워크로드를 증가시킬 수 있다. 소비 전력은 서버의 워크로드(CPU 이용률)에 따라 달라지고, 소비 전력과 CPU 이용률은 아래 [수학식 1]과 같이 나타난다.Specifically, the energy efficiency of a server depends on the load level for maximum energy efficiency (usually 60% to 100%) depending on the workload and hardware of the server. To increase the energy efficiency of the cloud server, the workload of the server can be increased by distributing the virtual machine driven service assigned to the server. The power consumption depends on the workload (CPU utilization) of the server, and the power consumption and the CPU utilization ratio are expressed by the following equation (1).

Figure pat00001
Figure pat00001

여기서, P는 소비 전력, u는 CPU 이용률, Pmax는 CPU 이용률이 100%일때 소비 전력, k는 Pmax 대비 Pidle, Pidle는 CPU 사용률이 0%일때 소비 전력을 나타낸다. Where P is the power consumption, u is the CPU utilization, Pmax is the power consumption when the CPU utilization is 100%, k is the Pidle versus Pmax, and Pidle is the power consumption when the CPU utilization is 0%.

도면에서, CPU 이용률을 60% 이상 100% 이하로 서버를 구동시키는 경우, 에너지 효율을 증가시킬 수 있는 것을 알 수 있다. In the figure, it can be seen that the energy efficiency can be increased when the server is driven with a CPU utilization rate of 60% or more and 100% or less.

도 7 내지 도 8은 본 발명의 일 실시예에 따라 가상 컴퓨터에 자원을 분배하는 방법을 설명하기 위한 도면이다. 7 to 8 are diagrams for explaining a method of distributing resources to a virtual computer according to an embodiment of the present invention.

도 7 내지 도 8을 참조하면, 본 발명의 일 실시예에 따라 가상 컴퓨터에 자원을 분배하는 방법은 글로벌 자원 할당(GRA: Global Resource Allocator) 모듈에서 가상 네트워크 기능 워크로드 데이터베이스에 저장된 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 활성화 가상 컴퓨터의 작업량을 할당할 수 있다. 7 to 8, a method for distributing resources to a virtual machine according to an embodiment of the present invention includes: distributing VNF workload information stored in a virtual network function workload database in a Global Resource Allocator (GRA) Can be used to allocate the number of active virtual machines and the workload of the active virtual machine.

구체적으로, 네트워크 기능 가상화에서, 가상 네트워크 기능이 요청되면, 네트워크 기능 가상화 인프라스트럭처(NFVI: Network Function Virtualization Infrastructure)에서 구동되는 호스트 가상 컴퓨터(VM)와 관련된다. CPU 이용률을 60% 내지 100%로 유지하며 활성화 상태를 유지하는 구동 서버의 개수를 최소화하고 비활성화 상태의 서버의 전원을 꺼서 에너지 소비 비용을 감소시킬 수 있다. Specifically, in network function virtualization, when a virtual network function is requested, it is associated with a host virtual machine (VM) running in a network function virtualization infrastructure (NFVI). It is possible to minimize the number of driving servers that maintain the active state while keeping the CPU utilization rate at 60% to 100%, and reduce the energy consumption cost by turning off the power of the server in the inactive state.

예를 들어, 4개의 가상 컴퓨터가 존재하고, 7개의 VNF 자원을 분배하는 경우, 2개의 가상 컴퓨터만 활성화 상태로 유지하고, 2개의 가상 컴퓨터는 비활성화 상태로 유지할 수 있다. 이때, 활성화 가상 컴퓨터의 워크로드 벡터는 [80% 60% 0 0]이 된다. For example, if there are four virtual machines and distribute seven VNF resources, only two virtual machines can be kept active and two virtual machines can be kept inactive. At this time, the workload vector of the active virtual machine is [80% 60% 0 0].

글로벌 자원 할당(GRA) 모듈(110)은 가상화 인프라스트럭처 관리자(VIM)(200)로 가상 네트워크 기능(VNF) 분배를 요청하고, 가상화 인프라스트럭처 관리자(VIM)(200)는 NFVI의 컴퓨팅, 저장, 및 네트워크 자원의 제어 및 관리를 담당할 수 있다. 각각의 VIM(200)은 전달된 개수의 가상 네트워크 기능(f1 내지 f7)을 각 가상 컴퓨터(VM)으로 분배할 수 있다. 이때, 각 가상 컴퓨터(VM)의 개수가 최소가 되고, CPU 이용률이 60% 내지 100%가 되도록 자원을 할당하게 되고, 한번에 한개의 가상 네트워크 기능을 할당한 후, 그 상태에서 각각의 가상 컴퓨터의 상태를 확인한 후, 다음번 가상 네트워크 기능을 할당할 가상 컴퓨터를 결정하게 된다. The Global Resource Allocation (GRA) module 110 requests a Virtual Network Function (VNF) distribution to the Virtual Infrastructure Manager (VIM) 200 and the Virtual Infrastructure Manager (VIM) And control and management of network resources. Each VIM 200 can distribute the delivered number of virtual network functions f1 to f7 to each virtual computer (VM). At this time, resources are allocated so that the number of virtual machines (VMs) becomes minimum and the CPU utilization rate becomes 60% to 100%. After one virtual network function is allocated at a time, After determining the status, the virtual machine to be assigned the next virtual network function is determined.

각 NFVI의 리소스 상태를 얻기 위하여 각 NFVI의 에어전트를 모니터링하고, 서버의 정보를 모니터링할 수 있다. 또한, 모니터링 서버로부터 VNF 워크로드 정보를 학습하여 VNF 워크로드 예측 데이터베이스를 업데이트할 수 있다. To obtain the resource status of each NFVI, you can monitor the air entities of each NFVI and monitor the server information. In addition, the VNF workload prediction database can be updated by learning VNF workload information from the monitoring server.

앞서 설명하였듯이, GRA(110)는 유전자 알고리즘(Genetic Algorithms)을 구동시켜, VNF와 VNF가 어디 할당될지 결정하고, VIM(200)을 통해 VNF를 해당하는 NFVI(300)에 할당할 수 있다. 유전자 알고리즘은 [수학식 2] 및 [수학식 3]과 같이, 하나의 서버에 배치된 각 VM의 총합이 1이고, 각 서버의 용량을 초과하지 않아야 한다.As described above, the GRA 110 may drive the Genetic Algorithms to determine where VNF and VNF are to be allocated and to allocate the VNF to the corresponding NFVI 300 via the VIM 200. [ The genetic algorithm is such that the sum of the VMs arranged in one server is 1 and does not exceed the capacity of each server as shown in [Equation 2] and [Equation 3].

Figure pat00002
Figure pat00002

여기서, xij는 VM의 위치 인디케이터로, xij=1 는 j번째 서버 내에 VM이 존재하는 것을 나타내고, 그 이외에는 xij=0을 나타낸다. Here, x ij is a position indicator of the VM, x ij = 1 indicates that VM exists in the jth server, and x ij = 0 otherwise .

Figure pat00003
Figure pat00003

여기서, N은 VFN의 개수이고, di r는 리소스 요청을 나타내고, i는 1이상 N이하이고, r은 서로 다른 리소스(워크로드, 예상 확률, CPU, Mem, Bandwith, actve) 요청을 나타낸다.Here, N represents the number of VFNs, d i r represents resource requests, i represents 1 to N, and r represents requests for different resources (workload, expected probability, CPU, Mem, Bandwith, actve).

n개의 하이퍼바이저 서버(Hypervisor Server)와 m개의 VNF를 서버에 할당하는 경우, 위의 유전자 알고리즘을 이용하여, n개의 하이퍼바이저 서버 리스트 중 워크로드가 최대가 되고, 리소스 할당을 최적화하도록 하이퍼바이저를 선택할 수 있다. When assigning n hypervisor servers and m VNFs to the server, the above genetic algorithm is used to maximize the workload among the n hypervisor server lists and to set the hypervisor to optimize resource allocation You can choose.

도 9는 본 발명의 일 실시예에 따라 가상 컴퓨터에 자원을 분배하는 방법의 효율성을 검증하는 도면이다. 9 is a diagram for verifying the efficiency of a method of distributing resources to a virtual machine according to an embodiment of the present invention.

도 9를 참조하면, 본 발명의 일 실시예에 따라 가상 컴퓨터에 자원을 분배하는 방법은 아래 [수학식 4]를 이용하여 계산될 수 있다.Referring to FIG. 9, a method of distributing resources to a virtual computer according to an embodiment of the present invention may be calculated using Equation (4) below.

Figure pat00004
Figure pat00004

여기서, i는 동시에 활성화된 가상 컴퓨터의 개수이고, P[k=i]는 i개의 VM이 동시에 활성화될 확률이고, N은 물리적 서버 상에서 구동될 수 있는 VM의 개수이고, A는 VM의 활성화 시간을 나타낸다. 이항 분포 E[x]는 A와 N의 곱과 같고, pdf 곡선은 (b)와 같다. 이를 실제 계산된 실시간 결과값과 비교하면 유사한 형태를 갖는 것을 확인할 수 있다. Where i is the number of simultaneously activated virtual machines, P [k = i] is the probability that i VMs will be activated simultaneously, N is the number of VMs that can be run on the physical server, A is the activation time . The binomial distribution E [x] is equal to the product of A and N, and the pdf curve is shown in (b). It can be confirmed that this is similar to the actual calculated real time result value.

[수학식 4]를 참조하면, 서버의 CPU 이용률의 평균은 33%이며, 이는 VM의 활성화 시간 확률 및 물리적 서버 상의 VM 개수와 관련되는 것을 알수 있고, 서버의 이용률이 60% 내지 100%가 되면 최대 에너지 효율을 얻을 수 있다. Referring to Equation (4), the average CPU utilization of the server is 33%, which is related to the activation time probability of the VM and the number of VMs on the physical server. If the utilization rate of the server is 60% to 100% Maximum energy efficiency can be obtained.

[표 1]은 물리적 서버에서 각각 실행되는 VM의 수(N)와 VM의 활성화 시간 확률(A)을 나타낸다. [표 1]을 참조하면, VM의 활성화 시간 확률이 0.6보다 높은 확은 경우, 물리적 서버의 대상 자원을 늘릴 필요가 없고, 평균 60%의 워크로드로 실행중인 실제 서버에 대하여 보증할 수 있다. VM의 활성화 시간 확률이 0.5보다 작으면 가상화 기술을 사용하여 실제 서버에서 실행되는 VM의 수를 늘릴 필요가 있다. 즉, A에 따라 워크로드를 증가 또는 감소시킬 수 있다. 따라서, 양자를 고려하여 자원을 분배할 필요가 있다.[Table 1] shows the number (N) of VMs executed in the physical server and the activation time probability A of the VM. [Table 1] Referring to Table 1, when the activation time probability of the VM is higher than 0.6, there is no need to increase the target resources of the physical server, and it is possible to guarantee against the real server that is running with an average 60% workload. If the activation time probability of a VM is less than 0.5, then you need to use virtualization technology to increase the number of VMs running on the real server. That is, the workload can be increased or decreased according to A. Therefore, it is necessary to distribute the resources in consideration of both.

AA NN P<= 100%P < = 100% P>100%P> 100% 50%<P<=100% 50% < P < = 100% TargetTarget >= 0.6> = 0.6 1010 1One 00 > 0.63> 0.63 100%100% 0.50.5 1212 0.99680.9968 0.00320.0032 0.60960.6096 120%120% 0.40.4 1515 0.99070.9907 0.00930.0093 0.58740.5874 150%150% 0.30.3 2020 0.98290.9829 0.01710.0171 0.56650.5665 200%200% 0.20.2 3030 0.97440.9744 0.02560.0256 0.54690.5469 300%300% <= 0.1&Lt; = 0.1 6060 >=0.9658> = 0.9658 <=0.0342<= 0.0342 <= 0.5286&Lt; = 0.5286 600%600%

도 10은 본 발명의 일 실시예에 따른 유전자 알고리즘을 나타낸 도면이다.10 is a diagram illustrating a genetic algorithm according to an embodiment of the present invention.

도 10을 참조하면, 유전자 알고리즘(Genetic Algorithms)은 VNF가 할당될 VM을 결정하는 과정을 프로그래밍한 것이다. Referring to FIG. 10, a Genetic Algorithm is a program for determining a VM to which a VNF is allocated.

유전자 알고리즘은 초기화 상태에서 선택할 수 있는 모든 항목의 등가확률을 처리하는 대신 각 항목에 가중치를 부여하여 확률이 높은 항목이 최종적으로 자동선택되도록 프로그램한 것이다.The genetic algorithms are programmed to assign the weight to each item instead of processing the equivalence probabilities of all items that can be selected in the initialization state so that the items with the highest probability are finally automatically selected.

이상에서 전술한 본 발명의 일 실시예에 따른 가상 네트워크 기능 자원 할당 분배 방법은, 컴퓨팅 장치에 기본적으로 설치된 어플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 어플리케이션 스토어 서버, 어플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 어플리케이션 제공 서버를 통해 단말기에 직접 설치한 어플리케이션(프로그램)에 의해 실행될 수도 있다. As described above, the virtual network function resource allocation and distribution method according to an embodiment of the present invention can be applied to an application installed in a computing device (which may include a program that is basically installed in a terminal or a operating system) And may be executed by an application (program) directly installed on the terminal by the user through an application providing server such as an application store server, an application, or a web server associated with the service.

이러한 의미에서, 전술한 본 발명의 일 실시예에 따른 가상 네트워크 기능 자원 할당 분배 방법은 컴퓨팅 장치에 기본적으로 설치되거나 사용자에 의해 직접 설치된 어플리케이션(프로그램)으로 구현되고 장치 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 이러한 프로그램은 컴퓨터에 의해 읽힐 수 있는 기록매체에 기록되고 컴퓨터에 의해 실행됨으로써 전술한 기능들이 실행될 수 있다.In this regard, the virtual network function resource allocation and distribution method according to an embodiment of the present invention may be implemented as an application (program) installed in a computing device or directly installed by a user, a computer readable record Can be recorded on the medium. Such a program may be recorded on a recording medium that can be read by a computer and executed by a computer so that the above-described functions can be executed.

이와 같이, 본 발명의 일 실시예에 따른 가상 네트워크 기능 자원 할당 분배 방법을 실행하기 위한 프로그램은 컴퓨터의 프로세서(CPU)에 의해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. As described above, the program for executing the virtual network function resource allocation and distribution method according to an embodiment of the present invention can be implemented by a computer-readable medium such as a computer-readable medium, such as C, C ++, JAVA, (Code).

이러한 코드는 상기 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소, 번지)에서 참조되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다. Such code may further include memory reference related code as to whether additional information or media needed to cause the processor of the computer to be executed should be referred to at any location (address, address) of the internal or external memory of the computer.

본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수 있다. A functional program for implementing the present invention and a code and a code segment related thereto can be easily read by programmers in the technical field of the present invention in consideration of a system environment of a computer that reads a recording medium and executes a program, And can be inferred or altered.

상기의 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있다. A computer-readable recording medium on which the program is recorded includes a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, and an optical media storage device.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위안에서라면, 그 모든 구성 요소들이 적어도 하나로 선택적으로 결합하여 동작할 수 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로는 자기 기록매체, 광 기록매체 등이 포함될 수 있다. While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. That is, within the scope of the present invention, all of the elements may be selectively coupled to at least one. In addition, although all of the components may be implemented as one independent hardware, some or all of the components may be selectively combined to perform a part or all of the functions in one or a plurality of hardware. As shown in FIG. The codes and code segments constituting the computer program may be easily deduced by those skilled in the art. Such a computer program can be stored in a computer-readable storage medium, readable and executed by a computer, thereby realizing an embodiment of the present invention. The storage medium of the computer program may include a magnetic recording medium, an optical recording medium, and the like.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention may be embodied otherwise without departing from the spirit and scope of the invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

100: 네트워크 기능 가상 오케스트레이터(NFVO)
110: 글로벌 자원 할당(GRA) 모듈
120: 가상 네트워크 기능 워크로드 데이터베이스
200: 가상화 인프라스트럭처 관리자(VIM)
300: 네트워크 기능 가상 인프라스트럭처(NFVI)
100: Network function Virtual orchestrator (NFVO)
110: Global Resource Allocation (GRA) module
120: Virtual network feature workload database
200: Virtualization Infrastructure Manager (VIM)
300: Network Features Virtual Infrastructure (NFVI)

Claims (14)

가상 컴퓨터의 식별정보, 각 가상 컴퓨터의 자원 용량과, 상기 각 가상 컴퓨터의 현재 워크로드를 포함하는 VNF(VNF: Virtyal Network Function) 워크로드 정보를 저장하는 가상 네트워크 기능 워크로드 데이터베이스; 및
가상 네트워크 기능(VNF: Virtual Network Function) 아키텍처의 네트워크 기능 가상 오케스트레이터(NFVO: Network Function Virtual Orchestrator)에 배치되어, 상기 가상 네트워크 기능 워크로드 데이터베이스에 저장된 상기 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 글로벌 자원 할당(GRA: Global Resource Allocator) 모듈;
을 포함하는 컴퓨팅 장치.
A virtual network function workload database that stores VNF (Virtyal Network Function) workload information including identification information of a virtual computer, resource capacity of each virtual computer, and current workload of each virtual computer; And
A network function of a Virtual Network Function (VNF) architecture. The network function is arranged in a Network Function Virtual Orchestrator (NFVO), and the VNF workload information stored in the Virtual Network Function Workload Database A Global Resource Allocator (GRA) module for allocating the workload of the activation virtual machine;
&Lt; / RTI &gt;
제1항에 있어서,
상기 GRA 모듈은, 상기 가상 네트워크 기능 워크로드 데이터베이스에 저장된 상기 VNF 워크로드 정보를 이용하여 상기 활성화 가상 컴퓨터 개수가 최소가 되면서 상기 활성화 가상 컴퓨터의 작업량이 60% 이상 100% 이하가 되도록 상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는, 컴퓨팅 장치.
The method according to claim 1,
Wherein the GRA module is configured to use the VNF workload information stored in the virtual network function workload database so that the number of the activated virtual computers is minimized so that the amount of work of the activated virtual computer becomes 60% And assigning a number and a workload of the activation virtual machine.
제1항에 있어서,
상기 가상 네트워크 기능 워크로드 데이터베이스는, 상기 VNFO 내부에 배치되는, 컴퓨팅 장치.
The method according to claim 1,
Wherein the virtual network function workload database is disposed within the VNFO.
제1항에 있어서,
상기 GRA 모듈은, 네트워크 서비스 매니저(Network Service Manager)로부터 할당이 필요한 멀티 네트워크 서비스 디스크립션을 업로드하기 위하여 웹 기반의 UI를 수신한 경우, 상기 UI에 포함된 정보와 상기 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는, 컴퓨팅 장치.
The method according to claim 1,
When receiving a web-based UI for uploading a multi-network service description to be allocated from a network service manager, the GRA module activates the VNF workload using information included in the UI and the VNF workload information And allocates the number of virtual machines and the workload of the activation virtual machine.
제4항에 있어서,
상기 GRA 모듈은, 상기 UI를 NFV 대량 배치 모듈(NFV nassuce deploy module)로 전달하고, 상기 NFV 대량 배치 모듈을 통해 NFVI로 NFV를 할당하도록 전달하는, 컴퓨팅 장치.
5. The method of claim 4,
Wherein the GRA module passes the UI to an NFV mass deployment module and to the NFV bulk deployment module to allocate an NFV to the NFV.
제1항에 있어서,
상기 GRA 모듈은, 유전자 알고리즘(Genetic Algorithms)을 구동시켜, VNF와 VNF가 어디 할당될지 결정하고, VIM을 통해 VNF를 해당하는 NFVI에 할당하는, 컴퓨팅 장치.
The method according to claim 1,
The GRA module drives Genetic Algorithms to determine where VNF and VNF are to be allocated and to assign VNF to the corresponding NFVI via VIM.
컴퓨팅 장치에서, 가상 컴퓨터의 식별정보, 각 가상 컴퓨터의 자원 용량과, 상기 각 가상 컴퓨터의 현재 워크로드를 포함하는 VNF(VNF: Virtyal Network Function) 워크로드 정보를 저장하는 단계; 및
상기 컴퓨팅 장치에서, 상기 저장된 상기 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계;
를 포함하는 가상 네트워크 기능 자원 할당 방법.
In a computing device, storing VNF (Virtyal Network Function) workload information including identification information of a virtual computer, resource capacity of each virtual computer, and a current workload of each of the virtual machines; And
Allocating a number of active virtual machines and a workload of the active virtual machine using the stored VNF workload information;
And allocating resources to the virtual network.
제7항에 있어서,
상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계는,
가상 네트워크 기능(VNF: Virtual Network Function) 아키텍처의 네트워크 기능 가상 오케스트레이터(NFVO: Network Function Virtual Orchestrator)에서 처리되는, 가상 네트워크 기능 자원 할당 방법.
8. The method of claim 7,
Wherein the step of allocating the number of active virtual machines and the amount of work of the activation virtual computer comprises:
A network function of a virtual network function (VNF) architecture A virtual network function resource allocation method handled by a network function virtual orchestrator (NFVO).
제7항에 있어서,
상기 VNF(VNF: Virtyal Network Function) 워크로드 정보를 저장하는 단계는,
가상 네트워크 기능(VNF: Virtual Network Function) 아키텍처의 네트워크 기능 가상 오케스트레이터(NFVO: Network Function Virtual Orchestrator)에서 처리되는, 가상 네트워크 기능 자원 할당 방법.
8. The method of claim 7,
The step of storing the VNF (VNF: Viryal Network Function)
A network function of a virtual network function (VNF) architecture A virtual network function resource allocation method handled by a network function virtual orchestrator (NFVO).
제7항에 있어서,
상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계는,
유전자 알고리즘(Genetic Algorithms)을 구동시켜, VNF와 VNF가 어디 할당될지 결정하는 것을 특징으로 하는, 가상 네트워크 기능 자원 할당 방법.
8. The method of claim 7,
Wherein the step of allocating the number of active virtual machines and the amount of work of the activation virtual computer comprises:
A method for allocating virtual network functional resources, characterized by driving Genetic Algorithms to determine where VNF and VNF are to be allocated.
제7항에 있어서,
상기 VNF(VNF: Virtyal Network Function) 워크로드 정보를 저장하는 단계와 상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계 사이에,
네트워크 서비스 매니저(Network Service Manager)로부터 할당이 필요한 멀티 네트워크 서비스 디스크립션을 업로드하기 위하여 웹 기반의 UI를 수신하는 단계;를 더 포함하고,
상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계는, 상기 수신된 UI에 포함된 정보와 상기 VNF 워크로드 정보를 이용하여 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 것을 특징으로 하는, 가상 네트워크 기능 자원 할당 방법.
8. The method of claim 7,
Storing the VNF (Virtyal Network Function) workload information, and allocating the number of active virtual machines and the workload of the activation virtual computer,
Receiving a web-based UI for uploading a multi-network service description to be allocated from a network service manager,
The step of allocating the number of active virtual machines and the amount of work of the activation virtual computer may include allocating the number of active virtual machines and the workload of the activation virtual computer using the information included in the received UI and the VNF workload information Characterized in that the method comprises the steps of:
제11항에 있어서,
상기 활성화 가상 컴퓨터 개수와 상기 활성화 가상 컴퓨터의 작업량을 할당하는 단계 이후에,
상기 NFV 대량 배치 모듈을 통해 NFVI로 NFV를 할당하도록 전달하는 단계;를
더 포함하여 구성되는, 가상 네트워크 기능 자원 할당 방법.
12. The method of claim 11,
After the step of allocating the number of active virtual machines and the workload of the activation virtual machine,
Delivering NFV to the NFVI through the NFV bulk deployment module;
Wherein the virtual network resource allocation method comprises the steps of:
제7항 내지 제13항 중 어느 한 항의 가상 네트워크 기능 자원 할당 방법을 실현하는 컴퓨터 판독 가능한 기록매체에 기록된 프로그램.
A program recorded on a computer-readable recording medium for realizing a virtual network function resource allocation method according to any one of claims 7 to 13.
제13항에 기재된 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.A computer-readable recording medium on which the program of claim 13 is recorded.
KR1020180005541A 2018-01-16 2018-01-16 Method, program, recording medium and computing device for allocating virtualization network function resource KR20190087131A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180005541A KR20190087131A (en) 2018-01-16 2018-01-16 Method, program, recording medium and computing device for allocating virtualization network function resource

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180005541A KR20190087131A (en) 2018-01-16 2018-01-16 Method, program, recording medium and computing device for allocating virtualization network function resource

Publications (1)

Publication Number Publication Date
KR20190087131A true KR20190087131A (en) 2019-07-24

Family

ID=67480994

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180005541A KR20190087131A (en) 2018-01-16 2018-01-16 Method, program, recording medium and computing device for allocating virtualization network function resource

Country Status (1)

Country Link
KR (1) KR20190087131A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170046721A (en) 2014-08-25 2017-05-02 후아웨이 테크놀러지 컴퍼니 리미티드 Energy-saving control method, management server and network device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170046721A (en) 2014-08-25 2017-05-02 후아웨이 테크놀러지 컴퍼니 리미티드 Energy-saving control method, management server and network device

Similar Documents

Publication Publication Date Title
US8347297B2 (en) System and method of determining an optimal distribution of source servers in target servers
CN104937584B (en) Based on the quality of shared resource to the service quality of virtual machine and application program offer optimization through priority ranking
US10776149B2 (en) Methods and apparatus to adjust energy requirements in a data center
US8959217B2 (en) Managing workloads and hardware resources in a cloud resource
EP3335119B1 (en) Multi-priority service instance allocation within cloud computing platforms
US11106508B2 (en) Elastic multi-tenant container architecture
US8104038B1 (en) Matching descriptions of resources with workload requirements
US10255091B2 (en) Adaptive CPU NUMA scheduling
EP1089173B1 (en) Dynamic adjustment of the number of logical processors assigned to a logical partition
CN107273185B (en) Load balancing control method based on virtual machine
US8280431B2 (en) Apparatus for end-user transparent utilization of computational, storage, and network capacity of mobile devices, and associated methods
US20190250946A1 (en) Migrating a software container taking into account resource constraints
US11570937B2 (en) Methods and apparatus to control power delivery based on predicted power utilization in a data center
US20060069761A1 (en) System and method for load balancing virtual machines in a computer network
US20190334765A1 (en) Apparatuses and methods for site configuration management
JP2008041093A (en) System and method for distributing virtual input/output operation for many logical partitions
CN113504954A (en) Method, system and medium for calling CSI LVM plug-in, dynamic persistent volume provisioning
CN114174993A (en) Optimizing cluster applications in a cluster infrastructure
US20200241910A1 (en) Methods and apparatus for rack nesting in virtualized server systems
KR20200080458A (en) Cloud multi-cluster apparatus
CN107846367B (en) Data transmission method and device
KR20190087131A (en) Method, program, recording medium and computing device for allocating virtualization network function resource
Alameddine et al. Protection plan design for cloud tenants with bandwidth guarantees
CN114090201A (en) Resource scheduling method, device, equipment and storage medium
CN110347473B (en) Method and device for distributing virtual machines of virtualized network elements distributed across data centers

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment