KR20220030193A - 서비스 기능의 자원 사용량 예측 방법 및 장치 - Google Patents

서비스 기능의 자원 사용량 예측 방법 및 장치 Download PDF

Info

Publication number
KR20220030193A
KR20220030193A KR1020210116352A KR20210116352A KR20220030193A KR 20220030193 A KR20220030193 A KR 20220030193A KR 1020210116352 A KR1020210116352 A KR 1020210116352A KR 20210116352 A KR20210116352 A KR 20210116352A KR 20220030193 A KR20220030193 A KR 20220030193A
Authority
KR
South Korea
Prior art keywords
resource usage
vnfs
vnf
learning
output
Prior art date
Application number
KR1020210116352A
Other languages
English (en)
Other versions
KR102569442B1 (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 고려대학교 산학협력단
Publication of KR20220030193A publication Critical patent/KR20220030193A/ko
Application granted granted Critical
Publication of KR102569442B1 publication Critical patent/KR102569442B1/ko

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/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/5038Allocation 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 execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명에 따른 서비스 기능의 자원 사용량 예측 장치는 다수의 서비스 기능 체인에 대한 VNF(Virtualized Network Function)들의 순서가 포함된 SFC 테이블, 각 VNF들의 자원 사용량에 대한 정보가 포함된 자원 사용량 테이블 및 VNF들의 식별자 정보가 포함된 VNF 테이블을 저장하도록 구성된 메모리; 및 상기 VNF들의 자원 사용량에 대한 정보를 상기 자원 사용량 테이블에 업데이트하고, 상기 업데이트된 정보에 기반하여 상기 VNF들의 자원 사용량을 예측하고, 상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하도록 구성된 프로세서를 포함한다.

Description

서비스 기능의 자원 사용량 예측 방법 및 장치{Method adnd Aparatus of Resource Usage Prediction in Service Function}
본 발명은 서비스 기능 체이닝 환경에서 효율적인 자원 배치를 위해 서비스 기능의 자원 사용량을 예측하는 방법에 관한 것이다.
네트워크 기능 가상화 기술은 기존의 전통적인 네트워크 환경에서 전용 하드웨어 장치를 소프트웨어로 구현한 기술로 네트워크 사업자 또는 운영자의 기존 네트워크 장비 대비 투자비용과 운용 비용을 절감하고 있다. 또한, 네트워크 관리자의 요구사항에 따라 동적으로 네트워크 구성을 변경하여 운용할 수 있는 유연성을 제공한다.
네트워크 기능 가상화 기술과 함께 동적인 네트워크 구성에 중요한 기술 중 하나는 서비스 기능 체이닝 기술이다. 서비스 기능 체이닝 기술은 서비스 정책 및 요구사항에 따라 서비스 기능들을 특정 순서로 구성한 뒤 네트워크로 들어오는 트래픽들을 서비스 기능들의 특정 순서에 따라 순차적으로 전달하고 처리하는 기술이다. 서비스 기능 체이닝 기술은 네트워크 기능 가상화 기술과 함께 결합하여 유연한 네트워크 제어 및 관리를 가능하게 한다. 하지만 동적이고 유연한 네트워크로의 변화에도 불구하고 가상 네트워크 생성 및 관리에는 여전히 관리자가 개입해야 한다는 문제가 있다.
그러므로 최근에는 기계학습 기술이 고도화됨에 따라서 자동화된 네트워크 관리에 기계학습 기술을 도입하려는 많은 시도가 있다. 특히, 서비스 기능 체이닝 환경에서는 서비스의 안정성과 네트워크 운용 비용을 절감하기 위해서 동적으로 자원 (e.g. 메모리, 디스크, CPU)을 할당하는 것이 중요하고, 이를 위해서는 기계학습 기술을 활용해서 미래의 자원 사용량을 정확하게 예측하는 방법이 필요하다.
본 발명은 서비스 기능 체인 상의 서비스 기능에 대한 자원 사용량 예측 방법을 통해 미래 자원 사용량에 대한 예측 정확도를 높이려는 것을 목표로 한다.
본 발명에서는 자원 사용량을 정확하게 예측하기 위해 예측하고자 하는 서비스 기능의 자원 사용량과 체인 상의 다른 서비스 기능들의 자원 사용량을 모두 고려한 예측모델을 제안하고자 한다.
또한, 본 발명의 해당 모델은 기존의 방법들이 고려하고 있지 않는 상황 (다수의 서비스 기능 체인이 배치된 상황)을 고려함으로써 다양한 환경에서도 정확한 예측이 가능한 모델을 제안하는 것을 목표로 한다.
본 발명에 따른 서비스 기능의 자원 사용량 예측 장치는 다수의 서비스 기능 체인에 대한 virtualized network function (VNF)들의 순서가 포함된 SFC 테이블, 각 VNF들의 자원 사용량에 대한 정보가 포함된 자원 사용량 테이블 및 VNF들의 식별자 정보가 포함된 VNF 테이블을 저장하도록 구성된 메모리; 및 상기 VNF들의 자원 사용량에 대한 정보를 상기 자원 사용량 테이블에 업데이트하고, 상기 업데이트된 정보에 기반하여 상기 VNF들의 자원 사용량을 예측하고, 상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하도록 구성된 프로세서를 포함한다.
본 발명의 다른 양상에 따른 서비스 기능의 자원 사용량을 예측하는 방법은 자원 사용량 예측 장치에 의해 수행된다. 상기 방법은 다수의 서비스 기능 체인에 대한 virtualized network function (VNF)들의 순서가 포함된 SFC 테이블, 각 VNF들의 자원 사용량에 대한 정보가 포함된 자원 사용량 테이블 및 VNF들의 식별자 정보가 포함된 VNF 테이블을 구성하는 SFC/VNF 테이블 구성 과정 상기 VNF들의 자원 사용량에 대한 정보를 상기 자원 사용량 테이블에 업데이트하고, 상기 업데이트된 정보에 기반하여 상기 VNF들의 미래의 자원 사용량을 예측하는 자원 사용량 예측 과정; 및 상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하는 자원 할당 과정을 포함한다.
본 발명에 따르면, TD-LRCN(Target Dependent Long-term Recurrent Convolutional Network)은 기존의 방식보다 자원 사용량에 대한 예측정확도가 높다는 것을 확인할 수 있다.
본 발명에 따르면, 짧은 학습 시간에도 불구하고 낮은 오차값을 달성하는 것을 확인 할 수 있다.
본 발명에 따르면, 서비스 기능에 시간적인 특성과 공간적인 특성에 대한 고려뿐 만 아니라 여러 체인이 지나가는 상황에 대한 고려를 통해 예측 정확도를 높일 수 있다.
상술한 본 발명의 특징 및 효과는 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다.
도 1은 본 발명에 따른 TD-LRCN이 적용된 service function chaining (SFC) 구조를 나타낸다.
도 2는 본 발명에 따른 SFC 인에이블 네트워크와 연관된 방향 그래프와 차수 세트를 나타낸다.
도 3은 본 발명에 따른 TD-LRCN의 구조를 나타낸다.
도 4는 CAT-LSTM의 CPU 사용량에 대한 예측값을 나타내는 그래프이다.
도 5는 본 발명에 따른 TD-LRCN의 CPU 사용량에 대한 예측값을 나타내는 그래프이다.
도 6은 CAT-LSTM과 TD-LRCN의 학습시간에 따른 예측값과 실제값 사이의 오차값을 나타내는 그래프이다.
도 7은 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법의 흐름도를 나타낸다.
도 8은 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법 중 자원 사용량 예측 과정의 상세한 흐름도를 나타낸다.
상술한 본 발명의 특징 및 효과는 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다.
제1, 제2등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않아야 한다.
이하의 설명에서 사용되는 구성요소에 대한 접미사 모듈, 블록 및 부는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 당해 분야에 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 설명한다. 하기에서 본 발명의 실시 예를 설명함에 있어, 관련된 공지의 기능 또는 공지의 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
이하에서는, 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법 및 장치에 대해 설명한다.
NFV(Network function virtualization) 기술을 통해 서비스 기능을 가상화된 머신형태로 네트워크 기능을 제공하고 있기 때문에 이후부터는 서비스 기능 대신 VNF(Virtualized Network Function)라는 용어를 사용한다.
도 1은 본 발명에 따른 TD-LRCN이 적용된 SFC(Service Function Chaining) 구조를 나타낸다. 제어 평면의 컨트롤러는 SFC 테이블, 자원 사용량 테이블, VNF 테이블을 유지한다. SFC 테이블 엔트리는 체인에 대한 VNF들의 순서가 들어있고, 자원 사용량 테이블에는 각 VNF들의 자원 사용량에 대한 정보, VNF 테이블에는 배포된 VNF들의 식별자 정보가 들어있다. 패킷이 지나야 하는 실제 네트워크 상의 경로를 SFP(Service Function Path)라 하는데 SFC 테이블의 SFP는 VNF의 식별자를 통해 표현된다.
예를 들어, FW-L3(Firewall-Layer3)는 1번, IPS(intrusion prevention system)는 2번, WAF(Web Application Firewall)는 3번 식별자를 가진다면, FW-L3 - IPS - WAF 체인의 경우 SFP 테이블에는 1 - 2 - 3의 순서로 명시되어 있다. 한편, 컨트롤러는 VNF들의 자원 사용량에 대한 정보를 주기적으로 테이블에 업데이트하고 수집된 데이터들은 TD-LRCN을 학습하는데 활용된다. 학습이 완료된 TD-LRCN은 주기적으로 VNF들의 자원 사용량을 예측함으로써 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하도록 한다. 그로 인해 각 VNF에는 서비스의 요구사항을 충족시킬 만한 충분한 자원이 할당될 수 있으며 SFC 도메인으로 유입되는 패킷들은 SFP에 정의된 순서에 따라 원하는 서비스를 받을 수 있다.
도 2는 본 발명에 따른 SFC 인에이블 네트워크와 연관된 방향 그래프와 차수 세트를 나타낸다. 도 2(a)는 SFC 영역의 방향 그래프(directed graph)를 나타낸다. 도 2(b)는 일 예로 VNF2의 차수 세트, 예컨대 제1 및 제2 업스트림 세트와 제1 및 제2 다운 스트림 세트를 나타낸다.
도 1 및 도 2를 참조하면, VNF2의 제1 세트는 VNF1, VNF4 및 VNF5로 구성되고, NF2의 제2 세트는 VNF1, VNF3 및 VNF5로 구성된다. 다수의 SC(Service Chain)들이 있을 수 있으므로 일부 VNF에서는 여러 차수 세트에 포함될 수 있다. 방향 그래프의 모든 정점에 대해 VNF도 정의되고, VNF는 업스트림 VNF 및 다운스트림 VNF으로 구분된다. 업 스트림 VNF는 패킷이 이미 통과한 VNF이며 다운스 트림 VNF는 패킷이 통과할 VNF이다. 예를 들어,도 2(b)에서 VNF2가 예측할 VNF이고, VNF3, VNF4, VNF5는 업스트림 VNF이고, VNF1, VNF4, VNF5는 다운스트림 VNF일 수 있다. 따라서 차수 세트의 의미를 결합하면, VNF4 및 VNF5가 VNF2의 제1 업 스트림 세트가 된다. 유사한 관점에서, VNF3가 VNF2의 제2 업 스트림 세트가 된다. 또한, 다운스트림 세트도 업 스트림 세트에서와 동일한 방식으로 결정된다.
임의의 업 스트림 또는 다운 스트림 세트는 일부의 VNF들로 구성될 수 있고, 이는 수학식 1로 표현될 수 있다.
Figure pat00001
여기서, u는 j번째 업 스트립 VNF들 중 하나이고, d는 j번째 다운 스트립 VNF들 중 하나이고, k는 SC들의 개수이다. 본 발명은 Cv´,t´의 이력 데이터(historical data)가 주어진 경우 Cv,t+h를 예측하는 것이다. 여기서, v´및 t´는 각각 neighbor (v) 및 {t-p, ..., t}에 속하고 p는 이력 측정의 길이이다.
도 3은 본 발명에 따른 TD-LRCN의 구조를 나타낸다. TD-LRCN은 A, B와 C, 이렇게 3개의 모듈로 구성이 되어 있고, 각각의 모듈은 업스트림 VNF 학습 모듈(upstream VNF learning module), 템퍼럴 학습 모듈(temporal learning module), 다운스트림 VNF 학습 모듈(downstream VNF learning module)을 나타낸다.
도 3의 (B)는 temporal learning 모듈을 나타낸다. 미래 VNF의 자원 사용량은 과거 자원 사용량이 가지는 패턴과 상관관계가 존재하기 때문에 temporal learning 모듈은 VNF의 과거 자원 사용량이 가지는 시간적인 특성을 학습하고, 이를 미래 자원 사용량 예측에 반영한다. 해당 모듈은 미래의 자원 사용량과 과거 자원 사용량과의 상관관계를 정확하게 학습하기 위해 시계열 데이터 학습에 좋은 성능을 내는 LSTM 모델을 사용하고 있다. LSTM 모델의 입력 순서는 미래를 예측하는데 가장 최신의 정보가 가장 큰 영향을 미치도록 하기 위해 가장 과거의 자원 사용량에 대한 정보를 가장 먼저 입력하고, 가장 최근의 정보를 가장 나중에 입력하는 구조를 가진다. 즉, temporal learning 모듈은 LSTM 모델을 활용해서 예측하고자 하는 VNF의 자원 사용량이 가지는 시간적인 특성을 학습하고 이를 예측에 반영하는 역할을 수행한다.
도 3의 (A)와 (C)는 각각 upstream VNF learning 모듈과 downstream VNF learning 모듈을 나타낸다. SFC 도메인에서 VNF의 자원 사용량은 과거 자원 사용량 뿐만 아니라 주변 VNF들의 자원 사용량에도 영향을 받고 상관관계가 존재한다. 그러므로, 해당 모듈들은 예측하고자 하는 VNF의 자원 사용량과 주변 VNF들의 자원 사용량과의 관계를 학습하고, 이를 예측에 반영한다. 하지만 예측하고자 하는 VNF를 기준으로 패킷이 들어오는 방향에 존재하는 VNF들과 패킷이 나가는 방향에 존재하는 VNF들은 예측하고자 하는 VNF의 자원 사용량에 서로 다른 영향을 미치기 때문에 VNF들을 upstream VNF와 downstream VNF로 분류하여 각각이 미치는 영향을 upstream VNF learning 모듈과 downstream VNF learning 모듈에서 따로 학습한다.
도 3(A)인 upstream VNF learning 모듈은 LRCN 모델을 활용해서 upstream VNF들과 예측하고자 하는 VNF의 자원 사용량 사이의 관계를 학습한다. 예를 들어 체인이 1번 VNF - 2번 VNF - 3번 VNF - 4번 VNF - 5번 VNF - 6번 VNF로 구성되어 있고, 3번 VNF가 예측하고자 하는 VNF라고 한다면 해당 모듈은 3번 VNF (예측하고자 하는 VNF)과 1번과 2번 VNF (ingress VNF들) 사이의 자원 사용량 간의 관계를 학습한다. 즉, upstream VNF들과 예측하고자 하는 VNF 사이의 자원 사용량 간의 관계를 학습한다. upsteam VNF들인 1번과 2번 VNF에 대한 정보가 LRCN에 입력 되는 순서는 temporal learning 모듈에서와 유사하게 가장 인접한 VNF들의 자원 사용량이 미래 자원 사용량을 예측하는데 가장 큰 영향을 미치도록 하기 위해서 3번 VNF와 가장 인접하게 연결된 2번 VNF에 대한 정보를 가장 나중에 입력되고 1번 VNF에 대한 정보를 가장 먼저 입력한다. 즉, 예측하고자 하는 VNF와 가장 직접적으로 연결 되어 있는 VNF들의 정보를 가장 나중에 입력하는 구조를 가짐으로서 가장 인접한 VNF의 자원 사용량에 대한 정보가 미래 자원 사용량을 예측하는데 가장 많이 반영되도록 한다.
도 3(C)인 downstream VNF learning 모듈은 upstream VNF learning 모듈과 동일하게 LRCN 모델을 활용해서 주변 VNF들과의 관계를 학습하고 있지만, downstream VNF들과의 관계를 학습한다. 위와 동일한 상황에서 해당 모듈은 3번 VNF와 downstream VNF들인 4번과 5번 VNF들 사이의 관계를 학습하고 이를 예측에 반영한다. Downstream VNF의 자원 사용량에 대한 정보가 입력되는 순서는 upstream VNF learning 모듈과 동일하게 가장 인접하게 연결된 VNF들의 정보가 가장 나중에 입력되는 구조를 가진다.
도 2 및 도 3을 참조하면, 자원 사용량의 템포럴(temporal)패턴의 학습 과정은 수학식 2로 표현될 수 있다.
Figure pat00002
여기서, v는 예측할 VNF이고, σ는 sigmoid 함수를 나타내고, ⊙는 요소별 곱(element-wise multiplication)을 나타낸다. 가중치 W 및 바이어스 b는 LSTM의 파라미터를 구성한다.
한편, 본 발명에 따른 자원 사용량 예측 방법은 수학식 3 및 수학식 4와 같이 convolutional neural network (CNN)로 요약될 수 있다.
Figure pat00003
Figure pat00004
수학식 3을 참조하면, j는 {1, 2, ..., r}에 속하고, r은 차수의 최대값을 나타내고, σ는 비선형 활성화 함수(nonlinear activation function)을 나타낸다. 가중치 W 및 바이어스 b는 CNN의 파라미터를 구성하고, 컨벌루션 동작이 모든 차수에 대해 수행되고, 수학식 4와 같이 표현된다.
수학식 4를 참조하면, 각 차수의 사용량 패턴의 각 특징을 포함하고, Fup과 유사한 방식으로 다운 스트림에 대해서도 Fdown을 획득할 수 있다.
LSTM은 많은 다른 영역들의 템포럴 특징들을 학습하는데 사용된다. 업 스트립 VNF들의 공간 패턴들(spatial patterns)의 학습 과정은 수학식 5로 표현될 수 있다.
Figure pat00005
여기서, Fup,r은 r번째 차수 단계에서의 입력이다. 업 스트림 VNF 학습 모듈(111)의 출력 oup,r은 업 스트림 VNF들의 공간 표현들(spatial representations)을 포함한다. 이와 유사하게, 다운 스트림 VNF 학습 모듈(112)의 출력 odown,r은 다운 스트림 VNF들의 공간 표현들을 포함한다.
마지막으로, 템포럴 학습 모듈(112), 업 스트림 VNF 학습 모듈(111) 및 다운 스트림 VNF 학습 모듈(113)의 출력인 ov,t+1, oup,r 및 odown,r은 완전 연결 레이어(fully connected layer)(114)에서 연접(concatenate)될 수 있다. 이후, 완전 연결 레이어(114)는 연접된 3개의 출력들을 여러 레이어로 구성된 뉴럴 네트워크를 통해 트레이닝한다. 따라서, 완전 연결 레이어(114)는 최종적으로 VNF의 미래 사용량을 출력하여 시공간 연관(spatio-temporal correlation)을 예측한다.
한편, 업 스트림들의 개수는 도 2의 3개에 한정되는 것은 아니고, n개의 업 스트림들로 간주될 수 있다. 이와 유사하게, 다운 스트림들의 개수는 도 2의 2개에 한정되는 것은 아니고, m개의 다운 스트림들로 간주될 수 있다. 따라서, 본 발명은 n개의 업 스트림들 각각에 대해 VNF와 주변 VNF들의 자원 사용량과의 관계를 CNN 기반으로 LSTM 모델에 따라 학습을 수행할 수 있다. 또한, 본 발명은 m개의 업 스트림들 각각에 대해 VNF와 주변 VNF들의 자원 사용량과의 관계를 CNN 기반으로 LSTM 모델에 따라 학습을 수행할 수 있다.
주변 VNF들 사이의 관계를 학습하는데 LRCN 모델을 사용한 이유는 LRCN이 두 종류의 모델로 구성되어 있지만 하나의 손실 함수로 학습이 가능한 end to end trainable 모델이고 다른 LSTM 변형 모델보다도 좋은 성능을 가지는 모델이기 때문이다.
최종적으로 TD-LRCN은 3개의 모듈들의 출력값을 fully connected layer에서 종합하여 미래의 자원 사용량을 예측한다.
이상에서는 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법의 기술적 특징에 대해 설명하였다. 이하에서는 본 발명에서 청구하고자 하는 서비스 기능의 자원 사용량 예측 장치에 대해 설명한다.
도 1 및 도 3을 참조하면, 자원 사용량 예측 장치는 제어 평면(Control Plane) 상의 SDN(Software Defined Network) 컨트롤러일 수 있지만, 이에 한정되는 것은 아니고 네트워크상의 임의의 기기일 수 있다.
도 1 및 도 3을 참조하면, 자원 사용량 예측 장치는 프로세서(100) 및 메모리(200)를 포함하도로 구성될 수 있다. 프로세서(100)는 학습부(110) 및 사용량 예측부(120)를 포함하도로 구성될 수 있다.
메모리(200)는 SFC 테이블, 자원 사용량 테이블 및 VNF 테이블을 저장하도록 구성될 수 있다. 이에 따라, 메모리(200)는 다수의 서비스 기능 체인에 대한 virtualized network function (VNF)들의 순서가 포함된 SFC 테이블, 각 VNF들의 자원 사용량에 대한 정보가 포함된 자원 사용량 테이블 및 VNF들의 식별자 정보가 포함된 VNF 테이블을 저장하도록 구성된다.
프로세서(100)는 VNF들의 자원 사용량에 대한 정보를 상기 자원 사용량 테이블에 업데이트하고, 상기 업데이트된 정보에 기반하여 상기 VNF들의 자원 사용량을 예측하도록 구성될 수 있다. 프로세서(100)는 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하도록 구성될 수 있다.
프로세서(100)는 SFC 테이블을 통해 상기 VNF들의 순서를 추출하고, VNF 테이블을 통해 상기 VNF들의 식별자 정보를 추출하도로 구성될 수 있다. 따라서, 프로세서(100)는 추출된 VNF들의 식별자 정보 및 VNF들의 순서에 기반하여, 패킷이 지나야 하는 실제 네트워크상의 경로인 service function path (SFP)를 식별하도록 구성될 수 있다.
프로세서(100)는 SFC 도메인으로 유입되는 서로 다른 서비스 유형의 패킷들을 상기 VNF들의 식별자 정보에 대응하는 서비스의 형태로 상기 SFP에 띠라 정의된 네트워크 경로를 통해 전달할 수 있다. 따라서, 프로세서(100)는 상기 VNF들의 순서에 따라 목적지로 패킷 전송이 수행되도록 제어할 수 있다.
도 3을 참조하면, 프로세서(100)는 학습부(110) 및 사용량 예측부(120)를 포함하도로 구성될 수 있다.
학습부(110)는 식별된 SFP 및 상기 자원 사용량 테이블에 업데이트된 자원 사용량에 대한 정보에 기반하여, 미래의 자원 사용량과 연관된 target dependent long-term recurrent convolutional network (TD-LRCN) 학습을 수행할 수 있다. 사용량 예측부(120)는 상기 학습된 결과에 따라 상기 VNF들의 미래의 자원 사용량을 예측하고, 상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하도록 구성될 수 있다.
프로세서(100)는 업 스트림 VNF 학습 모듈(111), 템포럴(temporal) 학습 모듈(112) 및 다운 스트림 VNF 학습 모듈(113)을 포함하도록 구성될 수 있다. 프로세서(100)는 완전 연결 레이어(fully connected laye, 114)를 더 포함하도록 구성될 수 있다.
업 스트림 VNF 학습 모듈(111)는 복수의 업 스트림들의 각각을 LSTM 모델에 기반하여 미래의 자원 사용량을 예측하도록 구성될 수 있다. 템포럴 학습 모듈(112)은 미래의 자원 사용량과 과거 자원 사용량과의 상관관계를 학습하도록 구성될 수 있다. 다운 스트림 VNF 학습 모듈(113)은 복수의 다운 스트림들의 각각을 LSTM 모델에 기반하여 미래의 자원 사용량을 예측하도록 구성될 수 있다. 이와 관련하여, 상기 업 스트림들 및 상기 다운 스트림들은 패킷이 들어오는 방향에 존재하는 VNF 및 패킷이 나가는 방향에 존재하는 VNF 인지 여부를 기준으로 분류될 수 있다.
업 스트림 VNF 학습 모듈(111)은 특정 VNF의 자원 사용량과 주변 VNF들의 자원 사용량과의 관계를 학습하고, 상기 학습된 관계를 상기 미래의 자원 사용량을 예측하는 것에 반영할 수 있다. 이와 유사하게, 다운 스트림 VNF 학습 모듈(113)도 특정 VNF의 자원 사용량과 주변 VNF들의 자원 사용량과의 관계를 학습하고, 상기 학습된 관계를 상기 미래의 자원 사용량을 예측하는 것에 반영할 수 있다.
업 스트림 VNF 학습 모듈(111)은 복수의 LSTM 모델들의 각각의 출력을 인접한 LSTM 모델에 입력하여, 상기 복수의 업 스트림들 중 제1 업 스트림의 제1 출력을 완전 연결 레이어(114)로 입력되도록 제어할 수 있다. 이와 유사하게, 다운 스트림 VNF 학습 모듈(113)도 복수의 LSTM 모델들의 각각의 출력을 인접한 LSTM 모델에 입력하여, 상기 복수의 다운 스트림들 중 제1 다운 스트림에 대응하는 제2 출력을 완전 연결 레이어(114)로 입력되도록 제어할 수 있다.
이와 관련하여, 업 스트림 VNF 학습 모듈(111)은 가장 최신의 정보가 가장 큰 영향을 미치도록 하기 위해 가장 과거의 자원 사용량에 대한 정보를 가장 먼저 입력하고, 가장 최근의 정보를 가장 나중에 입력하는 구조로 형성될 수 있다. 이와 유사하게, 다운 스트림 VNF 학습 모듈(113)도 가장 최신의 정보가 가장 큰 영향을 미치도록 하기 위해 가장 과거의 자원 사용량에 대한 정보를 가장 먼저 입력하고, 가장 최근의 정보를 가장 나중에 입력하는 구조로 형성될 수 있다.
프로세서(100)에 구현되는 완전 연결 레이어(114)는 업 스트림 VNF 학습 모듈(111)의 제1 출력, 다운 스트림 VNF 학습 모듈(113)의 제2 출력 및 템포럴 학습 모듈(112)의 제3 출력이 입력되도록 구성될 수 있다. 프로세서(100)는 제1 다운 스트림에 대응하는 제1 LSTM 모듈의 제1 출력, 제1 업 스트림에 대응하는 제1 LSTM 모듈의 제2 출력 및 템포럴 학습 모듈(112) 내의 LSTM 모듈의 제3 출력이 완전 연결 레이어(114)로 입력되도록 제어할 수 있다. 따라서, 프로세서(100)는 상기 제1 출력, 상기 제2 출력 및 상기 제3 출력이 상기 완전 연결 레이어(114)에서 합산되어 출력된 최종 출력값을 상기 미래의 자원 사용량으로 예측할 수 있다.
이상에서는 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법 및 장치에 대해 설명하였다. 이하에서는 실험 결과에 기반하여 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법과 관련의 기술적 효과를 설명한다.
도 4는 CAT-LSTM의 CPU 사용량에 대한 예측값을 나타내는 그래프이다. 도 3을 참조하면, CAT-LSTM 방법에서는 예측(prediction) 대비 실제(real) CPU 사용량이 차이가 크다는 것을 알 수 있다.
도 5는 본 발명에 따른 TD-LRCN의 CPU 사용량에 대한 예측값을 나타내는 그래프이다. 도 5를 참조하면, 본원의 TD-LRCN 방법에서는 예측(prediction) 대비 실제(real) CPU 사용량이 거의 일치하여 그 차이가 매우 작게 나타난다.
한편, 도 6는 CAT-LSTM과 TD-LRCN의 학습시간에 따른 예측값과 실제값 사이의 오차값을 나타내는 그래프이다. 도 6을 참조하면, CAT-LSTM 방법 대비 본원의 TD-LRCN 방법이 손실 값(Loss)이 작게 나타남을 알 수 있다. 특히, 100 step 이하의 적은 수의 반복 과정을 통해서도 CAT-LSTM 방법 대비 본원의 TD-LRCN 방법이 작은 손실 값을 갖는다.
이상에서는 본 발명의 일 양상에 따른 서비스 기능의 자원 사용량 예측 장치에 대해 설명하였다. 이하에서는 본 발명의 일 양상에 따른 서비스 기능의 자원 사용량 예측 방법에 대해 설명하였다. 이와 관련하여, 도 7은 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법의 흐름도를 나타낸다. 한편, 도 8은 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법 중 자원 사용량 예측 과정의 상세한 흐름도를 나타낸다.
도 7 및 도 8을 참조하면, 자원 사용량 예측 방법은 자원 사용량 예측 장치에 의해 수행될 수 있다. 상기 자원 사용량 예측 방법은 SFC/VNF 테이블 구성 과정(S100), 구성/주기 업데이트 여부 판단 과정(S150), 자원 사용량 예측 과정(S200) 및 자원 할당 과정(S300)을 포함할 수 있다.
SFC/VNF 테이블 구성 과정(S100)에서, SFC 테이블, 자원 사용량 테이블 및 VNF 테이블을 구성하고 저장한다. SFC/VNF 테이블 구성 과정(S100)에서, 다수의 서비스 기능 체인에 대한 virtualized network function (VNF)들의 순서가 포함된 SFC 테이블, 각 VNF들의 자원 사용량에 대한 정보가 포함된 자원 사용량 테이블 및 VNF들의 식별자 정보가 포함된 VNF 테이블을 구성한다.
구성/주기 업데이트 여부 판단 과정(S150)에서, 자원 사용량이 변경될 것으로 판단되는 구성 상의 변경이나 주기 도래 여부에 따라 자원 사용량 테이블에 업데이트 여부를 판단할 수 있다. 업데이트 여부 판단 과정(S150)에서 구성/주기 관점에서 자원 사용량 테이블에 업데이트가 필요하다고 판단되면, 상기 VNF들의 자원 사용량에 대한 정보를 상기 자원 사용량 테이블에 업데이트한다. 한편, 업데이트 여부 판단 과정(S150)에서 구성/주기 관점에서 자원 사용량 테이블에 업데이트가 필요하지 않다고 판단되면, 과거 및/또는 현재 구성에 따라 자원 할당 과정(S300)이 수행될 수 있다.
자원 사용량 예측 과정(S200)에서, 상기 업데이트된 정보에 기반하여 상기 VNF들의 미래의 자원 사용량을 예측할 수 있다. 자원 할당 과정(S300)에서, 상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당할 수 있다.
자원 할당 과정(S300)의 이후에, 상기 방법은 SFP 식별 과정(S400) 및 패킷 전송 제어 과정(S500)을 더 포함할 수 있다. SFP 식별 과정(S400)에서, 상기 SFC 테이블을 통해 추출된 VNF들의 식별자 정보 및 및 상기 VNF 테이블을 통해 추출된 VNF들의 순서에 기반하여, 패킷이 지나야 하는 실제 네트워크상의 경로인 service function path (SFP)를 식별한다.
패킷 전송 제어 과정(S500)에서, SFC 도메인으로 유입되는 패킷들을 상기 식별된 SFP에 띠라 정의된 네트워크 경로를 통해 상기 VNF들의 순서 및 상기 예측된 미래의 자원 사용량에 따라 목적지로 패킷 전송을 수행한다.
자원 사용량 예측 과정(S200)은 자원 사용량 학습 과정(S210) 및 미래 자원 사용량 예측 과정(S220)을 포함할 수 있다. 자원 사용량 학습 과정(S210)에서 복수의 업 스트림들의 각각 또는 복수의 다운 스트림들의 각각을 LSTM 모델에 기반하여 학습하고, 미래의 자원 사용량과 과거 자원 사용량과의 상관관계를 학습한다. 미래 자원 사용량 예측 과정(S220)에서, 상기 LSTM 모델에 기반하여 학습된 결과 및 상기 상관 관계에 따라 상기 미래의 자원 사용량을 예측한다.
자원 사용량 학습 과정(S210)은 업 스트림/다운 스트림 구분 과정(S211), 업 스트림 VNF 학습 과정(S212), 다운 스트림 VNF 학습 과정(S213) 및 과거/미래 자원 사용량 상관관계 학습 과정(S214)를 포함하도록 구성될 수 있다.
업 스트림/다운 스트림 구분 과정(S211)에서, 패킷이 들어오는 방향에 존재하는 VNF 및 패킷이 나가는 방향에 존재하는 VNF 인지 여부를 구분하여, 상기 패킷을 업 스트림 또는 다운 스트림으로 판단한다. 상기 패킷을 업 스트림이라고 판단되면 업 스트림 VNF 학습 과정(S212)에서, 상기 패킷 복수의 업 스트림들의 각각을 LSTM 모델에 기반하여 미래의 자원 사용량을 예측한다. 상기 패킷이 다운 스트림이라고 판단되면 다운 스트림 VNF 학습 과정(S213)에서, 상기 패킷 복수의 다운 스트림들의 각각을 LSTM 모델에 기반하여 미래의 자원 사용량을 예측한다.
한편, 과거/미래 자원 사용량 상관관계 학습 과정(S214)에서, 미래의 자원 사용량과 과거 자원 사용량과의 상관관계를 학습한다. 자원 사용량 학습 과정(S210)은 완전 연결 레이어 구성 과정(S215)를 더 포함할 수 있다. 완전 연결 레이어 구성 과정(S215)에서, 제1 다운 스트림에 대응하는 제1 LSTM 모듈의 제1 출력, 제1 업 스트림에 대응하는 제1 LSTM 모듈의 제2 출력 및 템포럴 학습 모듈 내의 LSTM 모듈의 제3 출력이 완전 연결 레이어로 입력되도록 구성할 수 있다. 이에 따라, 미래 자원 사용량 예측 과정(S220)에서, 상기 제1 출력, 상기 제2 출력 및 상기 제3 출력이 상기 완전 연결 레이어에서 합산되어 출력된 최종 출력값을 상기 미래의 자원 사용량으로 예측할 수 있다.
이상에서는 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법 및 장치에 대해 설명하였다. 본 발명에 따른 서비스 기능의 자원 사용량 예측 방법 및 장치의 기존 기술 대비 차별점은 다음과 같다.
관련 특허로써 "기계학습을 적용한 가상 네트워크 기능 자원의 수요 예측 방법 (Method for Prediction Demand of Virtual Network Function Resource)", 포항공과대학교 산학협력단, 출원번호: 1020190026890’는 NFV 환경에서 VNF의 자원 수요 예측 기법을 제안한다. VNF 자원 정보 예측을 위해서 개별 VNF의 자원만을 데이터로 활용하는 것이 아니라 주변의 VNF의 정보도 이용하고 있다. 또한 기계학습의 성능을 높이는 기술 중의 하나인 임베딩 기술과 어텐션 학습을 활용해서 예측 정확도를 높이고 있다. 한편, 본 방법에서는 VNF에 여러 체인이 걸린 환경을 고려하지 않고 있다.
또한 특허 "2. 클라우드 컴퓨팅 자원관리 시스템에서의 자원 요구량 예측 방법 (Method for Resource Provisioning in Cloud Computing Resource Management System)", 수원대학교산학협력단, 출원번호: 1020150058977는 강화 학습에 기반하여 클라우드 컴퓨팅 환경에서 사용자의 동적인 자원 요구량을 예측하는 방법을 제안한다. 자원 요구량 예측 방법은 현재 상태와 사전에 준비된 가상 머신을 기반으로 다음번 서비스에 준비할 자원량을 결정한다. 본 발명에 따르면, 가상 머신을 배포하는 지연 시간이 낮으며 초당 처리율이 높아서 사용자들에게 QoS 보장이 가능하다. 한편, 본 방법에서는 SFC 환경을 고려하지 않고 있다.
본 발명에 따른 서비스 기능의 자원 사용량 예측 방법 및 장치의 기술적 효과는 다음과 같다.
본 발명에 따르면, target dependent long-term recurrent convolutional network (TD-LRCN)은 기존의 방식보다 자원 사용량에 대한 예측정확도가 높다는 것을 확인할 수 있다.
본 발명에 따르면, 짧은 학습 시간에도 불구하고 낮은 오차값을 달성하는 것을 확인 할 수 있다.
본 발명에 따르면, 서비스 기능에 시간적인 특성과 공간적인 특성에 대한 고려뿐 만 아니라 여러 체인이 지나가는 상황에 대한 고려를 통해 예측 정확도를 높일 수 있다.
상술한 본 발명의 특징 및 효과는 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능뿐만 아니라 각각의 구성 요소들에 대한 설계 및 파라미터 최적화는 별도의 소프트웨어 모듈로도 구현될 수 있다. 적절한 프로그램 언어로 쓰여진 소프트웨어 어플리케이션으로 소프트웨어 코드가 구현될 수 있다. 상기 소프트웨어 코드는 메모리에 저장되고, 제어부(controller) 또는 프로세서(processor)에 의해 실행될 수 있다.

Claims (15)

  1. 서비스 기능의 자원 사용량 예측 방법을 수행하는 장치에 있어서,
    다수의 서비스 기능 체인에 대한 virtualized network function (VNF)들의 순서가 포함된 SFC 테이블 엔트리, 각 VNF들의 자원 사용량에 대한 정보가 포함된 자원 사용량 테이블 및 VNF들의 식별자 정보가 포함된 VNF 테이블을 저장하도록 구성된 메모리; 및
    상기 VNF들의 자원 사용량에 대한 정보를 상기 자원 사용량 테이블에 업데이트하고, 상기 업데이트된 정보에 기반하여 상기 VNF들의 자원 사용량을 예측하고, 상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하도록 구성된 프로세서를 포함하는, 자원 사용량 예측 장치.
  2. 제1 항에 있어서,
    상기 프로세서는,
    상기 SFC 테이블을 통해 상기 VNF들의 순서를 추출하고,
    상기 VNF 테이블을 통해 상기 VNF들의 식별자 정보를 추출하고,
    상기 추출된 VNF들의 식별자 정보 및 VNF들의 순서에 기반하여, 패킷이 지나야 하는 실제 네트워크상의 경로인 service function path (SFP)를 식별하는, 자원 사용량 예측 장치.
  3. 제2 항에 있어서,
    상기 프로세서는,
    SFC 도메인으로 유입되는 서로 다른 서비스 유형의 패킷들을 상기 VNF들의 식별자 정보에 대응하는 서비스의 형태로 상기 SFP에 띠라 정의된 네트워크 경로를 통해 전달하여, 상기 VNF들의 순서에 따라 목적지로 패킷 전송이 수행되도록 제어하는, 자원 사용량 예측 장치.
  4. 제2 항에 있어서,
    상기 프로세서는,
    상기 식별된 SFP 및 상기 자원 사용량 테이블에 업데이트된 자원 사용량에 대한 정보에 기반하여, 미래의 자원 사용량과 연관된 target dependent long-term recurrent convolutional network (TD-LRCN) 학습을 수행하는 학습부; 및
    상기 학습된 결과에 따라 상기 VNF들의 미래의 자원 사용량을 예측하고, 상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하도록 구성된 사용량 예측부를 포함하는, 자원 사용량 예측 장치.
  5. 제4 항에 있어서,
    상기 프로세서는,
    복수의 업 스트림들의 각각을 LSTM 모델에 기반하여 미래의 자원 사용량을 예측하는 업 스트림 VNF 학습 모듈;
    미래의 자원 사용량과 과거 자원 사용량과의 상관관계를 학습하는 템포럴(temporal) 학습 모듈; 및
    복수의 다운 스트림들의 각각을 LSTM 모델에 기반하여 미래의 자원 사용량을 예측하는 다운 스트림 VNF 학습 모듈을 포함하고,
    상기 업 스트림들 및 상기 다운 스트림들은 패킷이 들어오는 방향에 존재하는 VNF 및 패킷이 나가는 방향에 존재하는 VNF 인지 여부를 기준으로 분류되는, 자원 사용량 예측 장치.
  6. 제5 항에 있어서,
    상기 업 스트림 VNF 학습 모듈 및 상기 다운 스트림 VNF 학습 모듈은,
    특정 VNF의 자원 사용량과 주변 VNF들의 자원 사용량과의 관계를 학습하고, 상기 학습된 관계를 상기 미래의 자원 사용량을 예측하는 것에 반영하는, 자원 사용량 예측 장치.
  7. 제5 항에 있어서,
    상기 업 스트림 VNF 학습 모듈 및 상기 다운 스트림 VNF 학습 모듈은,‘
    복수의 LSTM 모델들의 각각의 출력을 인접한 LSTM 모델에 입력하여, 상기 복수의 업 스트림들 중 제1 업 스트림의 제1 출력과 상기 복수의 다운 스트림들 중 제1 다운 스트림에 대응하는 제2 출력을 완전 연결 레이어(fully connected layer)로 입력되도록 제어하는, 자원 사용량 예측 장치.
  8. 제5 항에 있어서,
    상기 업 스트림 VNF 학습 모듈 및 상기 다운 스트림 VNF 학습 모듈은,
    가장 최신의 정보가 가장 큰 영향을 미치도록 하기 위해 가장 과거의 자원 사용량에 대한 정보를 가장 먼저 입력하고, 가장 최근의 정보를 가장 나중에 입력하는 구조로 형성되고,
    상기 프로세서는,
    상기 업 스트림 VNF 학습 모듈의 제1 출력, 상기 다운 스트림 VNF 학습 모듈의 제2 출력 및 상기 템포럴 학습 모듈의 제3 출력이 입력되도록 구성된 완전 연결 레이어(fully connected layer)를 더 포함하는, 자원 사용량 예측 장치.
  9. 제7 항에 있어서,
    상기 프로세서는,
    상기 제1 다운 스트림에 대응하는 제1 LSTM 모듈의 제1 출력, 상기 제1 업 스트림에 대응하는 제1 LSTM 모듈의 제2 출력 및 상기 템포럴 학습 모듈 내의 LSTM 모듈의 제3 출력이 상기 완전 연결 레이어로 입력되도록 제어하고,
    상기 제1 출력, 상기 제2 출력 및 상기 제3 출력이 상기 완전 연결 레이어에서합산되어 출력된 최종 출력값을 상기 미래의 자원 사용량으로 예측하는, 자원 사용량 예측 장치.
  10. 제3 항에 있어서,
    상기 프로세서는,
    제어 평면(Control Plane)에서 SDN (Software Defined Network) 방식으로 학습된 결과에 따라 상기 VNF들의 미래의 자원 사용량을 예측하고,
    상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면(Date Plance)상의 VNF들에 할당하고,
    상기 SFC 도메인으로 유입되는 패킷들을 상기 SFP에 띠라 정의된 네트워크 경로를 통해 상기 VNF들의 순서 및 상기 예측된 미래의 자원 사용량에 따라 목적지로 패킷 전송을 수행하는, 자원 사용량 예측 장치.
  11. 서비스 기능의 자원 사용량을 예측하는 방법에 있어서, 상기 방법은 자원 사용량 예측 장치에 의해 수행되고, 상기 방법은,
    다수의 서비스 기능 체인에 대한 virtualized network function (VNF)들의 순서가 포함된 SFC 테이블, 각 VNF들의 자원 사용량에 대한 정보가 포함된 자원 사용량 테이블 및 VNF들의 식별자 정보가 포함된 VNF 테이블을 구성하는 SFC/VNF 테이블 구성 과정;
    상기 VNF들의 자원 사용량에 대한 정보를 상기 자원 사용량 테이블에 업데이트하고, 상기 업데이트된 정보에 기반하여 상기 VNF들의 미래의 자원 사용량을 예측하는 자원 사용량 예측 과정; 및
    상기 예측된 자원 사용량에 따른 적절한 컴퓨팅 자원을 데이터 평면상의 VNF들에 할당하는 자원 할당 과정을 포함하는, 자원 사용량 예측 방법.
  12. 제11 항에 있어서,
    상기 자원 할당 과정의 이후에,
    상기 SFC 테이블을 통해 추출된 VNF들의 식별자 정보 및 및 상기 VNF 테이블을 통해 추출된 VNF들의 순서에 기반하여, 패킷이 지나야 하는 실제 네트워크상의 경로인 service function path (SFP)를 식별하는 SFP 식별 과정; 및
    SFC 도메인으로 유입되는 패킷들을 상기 식별된 SFP에 띠라 정의된 네트워크 경로를 통해 상기 VNF들의 순서 및 상기 예측된 미래의 자원 사용량에 따라 목적지로 패킷 전송을 수행하는 패킷 전송 제어 과정을 더 포함하는, 자원 사용량 예측 방법.
  13. 제12 항에 있어서,
    상기 자원 사용량 예측 과정은,
    복수의 업 스트림들의 각각 또는 복수의 다운 스트림들의 각각을 LSTM 모델에 기반하여 학습하고, 미래의 자원 사용량과 과거 자원 사용량과의 상관관계를 학습하는 자원 사용량 학습 과정; 및
    상기 LSTM 모델에 기반하여 학습된 결과 및 상기 상관 관계에 따라 상기 미래의 자원 사용량을 예측하는 미래 자원 사용량 예측 과정을 포함하는, 자원 사용량 예측 방법.
  14. 제12 항에 있어서,
    상기 자원 사용량 학습 과정은,
    패킷이 들어오는 방향에 존재하는 VNF 및 패킷이 나가는 방향에 존재하는 VNF 인지 여부를 구분하여, 상기 패킷을 업 스트림 또는 다운 스트림으로 판단하는 업 스트림/다운 스트림 구분 과정;
    상기 패킷이 업 스트림이라고 판단되면, 상기 패킷 복수의 업 스트림들의 각각을 LSTM 모델에 기반하여 미래의 자원 사용량을 예측하는 업 스트림 VNF 학습 과정;
    상기 패킷이 다운 스트림이라고 판단되면, 상기 패킷 복수의 다운 스트림들의 각각을 LSTM 모델에 기반하여 미래의 자원 사용량을 예측하는 다운 스트림 VNF 학습 과정; 및
    미래의 자원 사용량과 과거 자원 사용량과의 상관관계를 학습하는 과거/미래 상관관계 학습 과정을 포함하는, 자원 사용량 예측 방법.
  15. 제14 항에 있어서,
    상기 자원 사용량 학습 과정은,
    제1 다운 스트림에 대응하는 제1 LSTM 모듈의 제1 출력, 제1 업 스트림에 대응하는 제1 LSTM 모듈의 제2 출력 및 템포럴 학습 모듈 내의 LSTM 모듈의 제3 출력이 완전 연결 레이어로 입력되도록 구성하는 완전 연결 레이어 구성 과정을 더 포함하고,
    상기 자원 사용량 학습 과정의 이후에,
    상기 제1 출력, 상기 제2 출력 및 상기 제3 출력이 상기 완전 연결 레이어에서합산되어 출력된 최종 출력값을 상기 미래의 자원 사용량으로 예측하는 미래 자원 사용량 예측 과정을 더 포함하는, 자원 사용량 예측 방법.
KR1020210116352A 2020-09-02 2021-09-01 서비스 기능의 자원 사용량 예측 방법 및 장치 KR102569442B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200111851 2020-09-02
KR20200111851 2020-09-02

Publications (2)

Publication Number Publication Date
KR20220030193A true KR20220030193A (ko) 2022-03-10
KR102569442B1 KR102569442B1 (ko) 2023-08-23

Family

ID=80816445

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210116352A KR102569442B1 (ko) 2020-09-02 2021-09-01 서비스 기능의 자원 사용량 예측 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102569442B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240073634A (ko) 2022-11-18 2024-05-27 고려대학교 산학협력단 프로그래밍 가능한 네트워크 가상화에서의 제어 트래픽 시계열 예측 기반의 제어 채널 고립 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019071004A (ja) * 2017-10-11 2019-05-09 日本電信電話株式会社 サービス開発システム、リソース予測方法及びサービス開発プログラム
KR20200063943A (ko) * 2018-11-23 2020-06-05 포항공과대학교 산학협력단 기계학습을 적용한 가상 네트워크 기능 자원의 수요 예측 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019071004A (ja) * 2017-10-11 2019-05-09 日本電信電話株式会社 サービス開発システム、リソース予測方法及びサービス開発プログラム
KR20200063943A (ko) * 2018-11-23 2020-06-05 포항공과대학교 산학협력단 기계학습을 적용한 가상 네트워크 기능 자원의 수요 예측 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
기계학습기반의 VNF 최적 배치 모델에 관한 연구(2020.05.15.) 1부.* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240073634A (ko) 2022-11-18 2024-05-27 고려대학교 산학협력단 프로그래밍 가능한 네트워크 가상화에서의 제어 트래픽 시계열 예측 기반의 제어 채널 고립 방법 및 장치

Also Published As

Publication number Publication date
KR102569442B1 (ko) 2023-08-23

Similar Documents

Publication Publication Date Title
Troia et al. Reinforcement learning for service function chain reconfiguration in NFV-SDN metro-core optical networks
Abed-alguni et al. Island-based Cuckoo Search with elite opposition-based learning and multiple mutation methods for solving optimization problems
CN110022230B (zh) 基于深度强化学习的服务链并行部署方法及装置
JP7118726B2 (ja) ワークフローエンジンフレームワーク
Kim et al. Multi-agent reinforcement learning-based resource management for end-to-end network slicing
US20200409744A1 (en) Workflow engine framework
CN108111335A (zh) 一种调度和链接虚拟网络功能的方法及系统
Wang et al. A reinforcement learning approach for online service tree placement in edge computing
Wang et al. Adaptive service function chain scheduling in mobile edge computing via deep reinforcement learning
Moradi et al. Comparison of machine learning techniques for VNF resource requirements prediction in NFV
KR102569442B1 (ko) 서비스 기능의 자원 사용량 예측 방법 및 장치
Li et al. Constructing service function chain test database: An optimal modeling approach for coordinated resource allocation
Cenggoro et al. Dynamic bandwidth management based on traffic prediction using Deep Long Short Term Memory
Bu et al. Towards delay-optimized and resource-efficient network function dynamic deployment for VNF service chaining
GB2541170A (en) Network function virtualization
Huang et al. Self-learning routing for optical networks
Liu et al. A new approach for delivering customized security everywhere: Security service chain
Hojeij et al. Dynamic placement of O-CU and O-DU functionalities in open-ran architecture
Zerwas et al. Ismael: Using machine learning to predict acceptance of virtual clusters in data centers
Bakhshi et al. Model-based reinforcement learning framework of online network resource allocation
Zheng et al. Parallelism-aware service function chaining and embedding for 5G networks
Suzuki et al. Cooperative multi-agent deep reinforcement learning for dynamic virtual network allocation
Barzegar et al. Autonomous flow routing for near real-time quality of service assurance
US10505823B2 (en) System and method for orchestrating control actions of the access network layer, the core network layer and the application platform layer
Głąbowski et al. Modified direct method for point-to-point blocking probability in multi-service switching networks with resource allocation control

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right