29
Takahiro Hirayama [ [email protected] ] ©National Institute of Information and Communication Technology SFC制御⾃動化のための機械学習モデル および再学習フレームワークの研究 平⼭ 孝弘 地引 昌弘 ベド カフレ 情報通信研究機構(NICT) 1 * 本研究の⼀部は、総務省委託研究「⾰新的AIネットワーク統合基盤 技術の研究開発(JPMI00316)」による⽀援を受けて実施している。

SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

Takahiro Hirayama [ [email protected] ]©National Institute of Information and Communication Technology

SFC制御⾃動化のための機械学習モデルおよび再学習フレームワークの研究

平⼭ 孝弘 地引 昌弘 ベド カフレ情報通信研究機構(NICT)

1

* 本研究の⼀部は、総務省委託研究「⾰新的AIネットワーク統合基盤技術の研究開発(JPMI00316)」による⽀援を受けて実施している。

Page 2: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

発表概要• 背景-ネットワーク仮想化(NFV)/サービス機能チェイン(SFC)基盤の制御の⾃動化• サービス機能チェイン(SFC)基盤制御への機械学習活⽤– SFC資源割当⾃動制御の概要– 計算機資源⾃動調停のためのリソース需要予測と再学習

• アンサンブル学習による予測と⼆段階再学習– SFCマイグレーション(移⾏)スケジューリングのための機械学習モデル

• Encoder-Decoder Recurrent Neural Network (ED-RNN)– 実機検証に向けた環境構築

2

Page 3: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

5G時代のスライシング

多種多様な QoS 要求

ネットワーク仮想化技術それぞれのQoS要求に合うネットワークを、同じ物理基盤上で論理的に構築

物理ネットワーク

仮想ネットワーク #1サービスA

仮想ネットワーク #2サービスB

※ 総務省 将来のネットワークインフラに関する研究会資料(2017.5.26)より抜粋

要求条件: 超低遅延、安全・信頼性、⼤容量(アクセス)、省電⼒化、柔軟化・⾼弾⼒化、⾼効率データ流通

要求条件: 柔軟化・⾼弾⼒化、⾼効率データ流通、安全・信頼性

要求条件: ⼤容量(コア・アクセス)、省電⼒化、柔軟化・⾼弾⼒化、⾼効率データ流通、安全・信頼性

3

Page 4: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

背景 〜 NFV and SFC 〜• Network Function Virtualization (NFV):– 複数のネットワーク機能(NFs)を汎⽤サーバからなる基盤上でソフトで実装

• Service Function Chaining (SFC):– 必要な複数のNFsを分散配置し、特定の経路に沿って転送されるパケットに対して適切な順番でネット

ワーク内処理を施すための仮想的なサービス機能チェインを構築→NFsを柔軟に分散配置でき、エンドユーザ毎に適時適切なサービスを迅速に提供可能• 参考: IETF RFC 7665 / RFC 8300, ETSI GS NFV-EVE 005 V1.1.1

4

仮想網

物理網

サービス機能チェイン

サービス機能パス

Firewall DPI NATCoding Caches

マッピング

* 資源:コンピュータ資源(CPU、メモリ、ストレージ容量、ソフトウェア基盤)

Page 5: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

仮想ネットワークおよびサービス機能チェイン構築制御の⾃動化• ⼈⼿をかけない• サービスインにかかるまでの時間を短縮• 品質を維持するための⼿間をかけない

⽣産年齢⼈⼝の減少→ネットワーク運⽤従事者数の減少 IoTデバイス数は急増

しかし⼀⽅で

※ 総務省 将来のネットワークインフラに関する研究会資料(2017.1.24)より抜粋

少⼦⾼齢化 2030年は⼈⼿不⾜は現在の5倍以上(644万⼈)(2018/10/24 7:07 ANN配信)

背景 〜求められる⾃動化〜

1.2倍

411倍

5

Page 6: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

サービスネットワーク基盤制御 全体的な課題• 資源利⽤状況変動や障害発⽣時にも、 5G時代における多種多様なサービス品質要求を満たすこ

とが必要– 既存⼿法(例:⼿動操作や最適化⼿法等)では、処理に時間がかかり、環境変動に追従できない– 各サービスを提供するための計算資源が不⾜し、サービス品質が劣化

• サービス品質の維持と有限な計算資源の有効利⽤を図りつつ、環境変動に追従する⾼速な計算資源⾃動制御機構を備えた、サービス機能チェイニング基盤(データ・サービス・制御・管理 各々プレーン)が必要

6

機械学習活⽤を含め、AIサービスネットワーク基盤制御技術の研究開発の取組みを紹介

Page 7: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

発表概要• 背景-ネットワーク仮想化(NFV)/サービス機能チェイン(SFC)基盤の制御の⾃動化• SFC基盤制御への機械学習活⽤– SFC資源割当⾃動制御の概要– 計算機資源⾃動調停のためのリソース需要予測と再学習

• アンサンブル学習による予測と⼆段階再学習– SFCマイグレーション(移⾏)スケジューリングのための機械学習モデル

• Encoder-Decoder Recurrent Neural Network (ED-RNN)– 実機検証に向けた環境構築

7

Page 8: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

SFC基盤⾃動制御技術の検討

資源管理リソース監視・予測

AI AI

需要予測 資源調停

Closed-loop control

vNF vNF

Proxy Proxy

Server

vNF vNF

Proxy Proxy

Server

SFFSFF

SFC A

SFC B

SFC再構成

ネットワーク基盤

Unit Unit Unit Unit Unit Unit

t =1 t = 2 t = n

t = 1 t = 2 t = n

Encoder Decoder

h

NF demands (time-series)

Solutions (time-series)

SF移行計画の立案Encoder-Decoder RNNによる移⾏時期・移⾏先決定• 需要の時系列データを分析• いつ・どこへSFを移行させるかを判断

Forgetting

Regressors Regressors

⻑周期の再学習

即時再学習

Regressors

DynamicEnsemble

トレンドの変化による予測精度の低下

予測再学習による予測精度向上

再学習なし

実データ

予測ベースの調停

リソース使用量

(Long-term) (Short-term)

8

Page 9: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

発表概要• 背景-ネットワーク仮想化(NFV)/サービス機能チェイン(SFC)基盤の制御の⾃動化• SFC基盤制御への機械学習活⽤– SFC資源割当⾃動制御の概要– 計算機資源⾃動調停のためのリソース需要予測と再学習

• アンサンブル学習による予測と⼆段階再学習– SFCマイグレーション(移⾏)スケジューリングのための機械学習モデル

• Encoder-Decoder Recurrent Neural Network (ED-RNN)– 実機検証に向けた環境構築

9

Page 10: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

サービス機能を、応答時間の増加や途絶なく、過不足なく提供することが必要。⇒計算資源利用状況変動に合わせてリソース割当量を動的に制御して有効利用

課題 解決策

サービスを止めずに、品質を改善外部要因(人流変化)によってサービスに十分な計算機リソースが不足

計算資源不足

資源利用変動

資源利用変動

人流変化時 人流変化時

調停

品質劣化

想定される課題と解決策10

Page 11: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

サーバ内VNF間資源調停のためのトラヒック予測• スタッキングのような強/弱の2段階構成の予測フレームワーク– コントローラが集約したトラヒック情報に基づき弱学習器群をトレーニング– サーバは弱学習器群と強学習器を⽤いてトラヒックを予測

• 強学習器はサーバに到着するトラヒック情報でトレーニング• 弱学習器群と強学習器をそれぞれ異なるデータサイズ/周期で再学習– 弱学習器群: 多量のデータ。⻑周期(数週間に1回)の再学習 (Forgetting)– 強学習器: 少量のデータ。短周期(予測精度悪化時、数時〜数⽇に1回)の再学習 (Dynamic Ensemble)

11

2018/02/282018/02/07

2018/02/05

2018/02/012018/01/31

2018/01/30

2018/01/302018/01/31

需要の実測値, Dw(直近 Tw⽇分)

バギング(k-means or ランダムクラスタリング)

弱学習器1

弱学習器2

Nw個の弱学習器群(ランダムフォレスト,

Elastic Net, RNN)

Training(Periodic)

弱学習器1

弱学習器2

強学習器2018/03/01

需要予測アンサンブル学習(ガウス過程)

2018/02/282018/02/23

2018/02/22

需要の実測値, Ds(直近 Ts⽇分)

学習

2018/03/01

1. コントローラでの学習 2. サーバでの学習および予測

実測値再学習(必要な場合)

常時⽐較

データ集約

サーバへ配信

Dynamic EnsembleForgetting

弱学習器Nw

Cf.1. 平⼭、地引、カフレ

IN研究会(2020年3⽉)2. Hirayama, Jibiki, Kafle,

IEEE Netsoft (2020年7⽉(予定))

Page 12: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

トラヒック予測⽅法• 時刻[t1, t2]のトラヒックから、時刻[t3, t4]の平均トラヒックを予測– t2とt3の間はマイグレーションなどの処理のためのマージン

12

t1(=10:50)

Monitoring Window(M(=60) min.)

Prediction Objective(Avg. value within 20 min.)

t2(=11:49) t3(=12:00) t4(=12:19)

Interval(I(=10) min.)

Traffic arrival every 1 min.

Avg. traffic every 20 min.

Page 13: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

トラヒックデータの(再)学習• 2018/1/30~2018/2/28までの30⽇分のWebサーバリクエスト数を学習– ⽇中(12:00~19:59)、夜間(18:00~25:59)、および両⽅(12:00〜25:59)の3データセットを⽤意

13

弱学習器群A (⽇中データを学習)

弱学習器群B (夜間データを学習)

弱学習器群C (全データを学習)

2018/02/28

2018/02/07

2018/02/05

2018/02/012018/01/31

2018/01/30

2018/01/30

2018/01/31

������, Dw(�� Tw ��)

���(k-means or ���� �����)

����1

����2

Nw �������( �������,

Elastic Net, RNN)

Training(Periodic)

Forgetting

2018/02/28

2018/02/07

2018/02/05

2018/02/012018/01/31

2018/01/30

2018/01/30

2018/01/31

������, Dw(�� Tw ��)

���(k-means or ���� �����)

����1

����2

Nw �������( �������,

Elastic Net, RNN)

Training(Periodic)

Forgetting

2018/02/28

2018/02/07

2018/02/05

2018/02/012018/01/31

2018/01/30

2018/01/30

2018/01/31

������, Dw(�� Tw ��)

���(k-means or ���� �����)

����1

����2

Nw �������( �������,

Elastic Net, RNN)

Training(Periodic)

Forgetting

����1

����2

����2018/03/01

� ����� �(�����)

2018/02/28

2018/02/232018/02/22

� ����, Ds(�� Ts��)

2018/03/01

���� �(� ���)

����

Dynamic Ensemble

����Nw

2時間(20分×6回)の予測が3度外れると再学習直近7⽇間のデータセットを使⽤

(少量のデータで1個の学習器を短時間で訓練)

定期的(15⽇おき)に直近30⽇間のデータを学習(多量のデータで多数の学習器を⻑時間かけて訓練)

弱学習器の数=3×15=45個

Forgetting

Dynamic Ensemble

Page 14: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

• 2018/3/1~4/29までの60⽇間のトラヒックを予測し性能を評価• (左図)再学習ありは再学習なしに⽐べると予測精度が⼤きく向上– 実トラヒック(破線)に近い推移を描く

• (右図)再学習あり(DEのみ、DE+FG)は他の予測⼿法に⽐べて過剰/過⼩な資源割当発⽣率を低減(ARMAやRNNのほぼ半分)

再学習による予測精度の向上14

実トラヒック vs. 予測

短期再学習(DE)のみ

DE+⻑期再学習(FG)

過⼩/過剰割当発⽣頻度の和

Page 15: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

発表概要• 背景-ネットワーク仮想化(NFV)/サービス機能チェイン(SFC)基盤の制御の⾃動化• SFC基盤制御への機械学習活⽤– SFC資源割当⾃動制御の概要– 計算機資源⾃動調停のためのリソース需要予測と再学習

• アンサンブル学習による予測と⼆段階再学習– SFCマイグレーション(移⾏)スケジューリングのための機械学習モデル

• Encoder-Decoder Recurrent Neural Network (ED-RNN)– 実機検証に向けた環境構築

15

Page 16: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

サービスを実現する機能チェインの再構成回数を最⼩化し、処理を⾼速化

コーディング配信 コピー

サービス機能チェインのイメージ(例:映像配信サービス)

チェイン再構成のイメージ

従来⼿法 本研究開発⼈が経験で解けない問題に対し、• 逐次の最適解 ⇒ 再構成回数が多い• 未来を⾒据えた最適解 ⇒ 1時間から

1⽇以上必要

EDRNNでは、• 時系列分析に基づく再構成回数最⼩• 秒単位で、サービス機能移⾏先を決定を同時に実現

サービス機能移⾏

サービス機能移⾏

サービス機能移⾏

サービス機能移⾏

16

資源融通と実⾏場所変更

想定される課題と解決策

Page 17: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

AIによるSF移⾏スケジューリング (⽬標)• サーバの資源量、SFチェインの需要変動、VNFのリソース要求量などを参照して、VNFの移⾏先

&移⾏時期をすばやく(数秒程度で)決定– 数ステップ先を⾒据えて、同じVNFの移⾏が頻繁に起きないように配慮

17

SRV-1

SRV-2

SRV-3

VNF A-2

SRV-1

SRV-2

SRV-3

SFC CSFC B

SFC A

Migration Scheduling AI

t = 0

SFC ASFC BSFC C

SFC Demands

VNF A-2: CPU↑, MEM↓, …VNF A-1: CPU↑, MEM↑, …

VNF B-1: CPU↑, MEM↑, …

……

Function Requirements

VNF C-1: CPU↓, MEM↑, …

SRV-1

SRV-2

SRV-3

VNF A-1

VNF B-1

VNF A-2

t = 2

Server Status(Current)

SRV-1

SRV-2

SRV-3

VNF A-2

VNF A-1

VNF A-1

t = 1 t = 3

Server Status(Prediction)

A-1 A-3

A-2

Function Dependency

VNF A-1 VNF A-1

VNF X-n VNF X-n

VNF A-1VNF A-2

Stats Predict

Frequent(Bad)

Infrequent(Good)

Page 18: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

SFチェイン移⾏スケジューリング問題の簡略化• スケジューリング問題を下記のように簡略化して、AIのモデルの選定、チューニング– 各SFチェインを構成するVNFの中の⼀つに着⽬

• リソース要求はCPUのみ、VNF間の依存関係も考慮せず– 時刻ごとに各SFチェインの要求するリソース量が変動する中で、複数あるパスのどのパスにどのSFチェ

インを通すか?

18

SRV-1

SRV-2

SRV-3

VNF A-2…

SRV-1

SRV-2

SRV-3

…SFC C

SFC B

SFC A

Migration Scheduling AI

t = 0

SFC ASFC BSFC C

SFC Demands

VNF A-2: CPU↑, MEM↓, …VNF A-1: CPU↑, MEM↑, …

VNF B-1: CPU↑, MEM↑, …

……

Function Requirements

VNF C-1: CPU↓, MEM↑, …

SRV-1

SRV-2

SRV-3

VNF A-1

VNF B-1

VNF A-2

t = 2

Server Status(Current)

SRV-1

SRV-2

SRV-3

VNF A-2

VNF A-1

VNF A-1

t = 1 t = 3

Server Status(Prediction)

A-1 A-3

A-2

Function Dependency

VNF A-1 VNF A-1

VNF X-n VNF X-n

VNF A-1VNF A-2

Stats Predict

Frequent(Bad)

Infrequent(Good)

IS1

S2

EC1

C2

SNCN

Orchestrator

SFC-1

SFC-2SFC-F

F本のSFチェインが通るパスを時刻ごとに振り分け

Page 19: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

移⾏スケジューリングAI作成の⽅針• エンコーダ・デコーダ型のRNN (ED-RNN)を使⽤ (RNN: リカレントニューラルネットワーク)– ⾃然⾔語翻訳等への利⽤を想定したRNN構成– ⽂章のような、時系列データの処理に有効

• ⼊⼒データを⼆度読み込み、翻訳精度を向上• ⼀度⽬の読み込みで⼊⼒の前後関係や重要度を試算、⼆度⽬の読み込みで解を出⼒

• 最適化問題の解を教師データとして使⽤– ⼊⼒: SFチェインの需要変動の時系列データ– 出⼒: 資源不⾜・VNF移⾏回数を最⼩にする移⾏スケジュール

19

��"#$����

�� ��

� �

�� ��

� �

� ��������

������ %����&

������ %��!��&

ED-RNN(概略図)

IS1

S2

EC1

C2

SNCN

Orchestrator

SFC-1

SFC-2SFC-F

VNF移行スケジューリング問題

最適解を学習

Cf.1. 平⼭、地引、カフレ

IN研究会(2019年3⽉)2. Hirayama, Jibiki, Kafle,

IEEE Netsoft (2019年7⽉)

Page 20: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

教師データの作成• 時刻ごとのサーバの資源不⾜量𝑆!(𝑡)と、移⾏回数𝑚!,#(𝑡)の総和を

最⼩化するVNF移⾏スケジュールを定式化して解を探索 i: サーバ、t: 時刻、f: VNF– 𝑥!,#(𝑡)(∈ 0,1)の最適な組み合わせを出⼒ (tにiがfを収容→𝑥!,# 𝑡 = 1)

20

IS1

S2

EC1

C2

SNCN

Orchestrator

SFC-1

SFC-2SFC-F

!=1 2 3 4 5 …

"=1 0 1 0 0 0 …

2 1 0 0 0 0 …

3 0 1 0 0 0 …

……

VNF(!)

Server status ("#,! ($%))

VNF(!)

Demand Transition (&!($))

t1 t2 t3 … tT"=1 H L L …

2 M M M …

3 L H H …

……

!=1 2 3 4 5 …

"=1 0 1 0 0 0 …

2 1 0 0 0 0 …

3 1 0 0 0 0 …

……

Server status ("#,! ($&))

VNF(! = ') is migrated."%,'($%) = ("%,'($)) = %Eq. (3): *!"#,! $ ⋅ &!($) − -# < .#($), ( ≤ .# $ , ∀), ∀$

Eq. (4):0#,! $1 ≥ "#,!($1) − "#,!($1− %)0#,! $1 ∈ ((, % , 1 = ) … 4)

Eq. (2): *#"#,!,$ = %, ∀*, ∀$

Objective (Eq. (1)): 0#5#0#67 89 ⋅ *# *$.#($) + 80 ⋅ *#*!*$0#,!($),(89 > (, 80 > ()

+1

VNF移⾏スケジューリング問題の定式化(図解)

Page 21: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

エンコーダ・デコーダRNN(ED-RNN)の構成と仕組み• 時刻𝑡$から𝑡%(𝑇 = 10)までの⼊⼒をEncoder, Decoderで2度読み込む– RNNを構成するセルにはGRU(Gated Recurrent Unit)を使⽤

• Encoderの最終セル(𝑡%)の隠れ層出⼒(ℎ&(𝑡%))に加え、各時刻の出⼒(Attention)を記憶し、Decoderへ渡す– Attentionを導⼊し、時刻𝑡$から𝑡%の中で重要な時刻がいつかを決定する

• Decoderは前時刻の出⼒を参照し次状態を決定するので、前時刻との差分(移⾏回数)を低くすることが可能になる

21

GRU GRU GRU

Encoder Decoder

he(tT)

e(t1) e(t2) e(tT)Attn-GRU

Attn-GRU

Attn-GRU

ET

O(t1) O(t2) O(tT-1)hd (t1) hd (t2)

hd (tT-1)

Attention

!("1)!("2)⋮!("$)

InputI(t1)

InputI(t2)

InputI(tT)

InputI(t1)

InputI(t2)

InputI(tT)

SolutionO(t1)

SolutionO(t2)

SolutionO(tT)

Attn-GRUの構造は割愛(補⾜1に記載)

Page 22: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

評価結果(1/2)図(a): ED-RNN(Attentionあり/なし)のどちらも同程度の学習効率– ⼀⽅、DNNは学習回数を増やしても損失関数はほとんど変化せず

図(b): ED-RNN(Attentionあり)とランダムは資源不⾜量を同程度に軽減– 最適解のおよそ3倍だが、DNNやAttentionなしに⽐べると⾮常によい

22

0.2

0.4

0.6

0.8

0 10 20 30 40 50 60 70 80 90 100

(a)

Loss

Val

ue

With AttentionWithout Attention

DNN

0

2

4

0 10 20 30 40 50 60 70 80 90 100

(b)

Avg

. val

ue o

f Sho

rtage

With AttentionWithout Attention

DNNOptimization

Random

0

2

4

0 10 20 30 40 50 60 70 80 90 100

(c)

Freq

uenc

y of

Mig

ratio

n

0

0.5

1

1.5

2

0 10 20 30 40 50 60 70 80 90 100

(d)

Val

ue o

fO

bjec

tive

Func

tion

Epoch

0.2

0.4

0.6

0.8

0 10 20 30 40 50 60 70 80 90 100

(a)

Loss

Val

ue

With AttentionWithout Attention

DNN

0

2

4

0 10 20 30 40 50 60 70 80 90 100

(b)

Avg

. val

ue o

f Sho

rtage

With AttentionWithout Attention

DNNOptimization

Random

0

2

4

0 10 20 30 40 50 60 70 80 90 100

(c)

Freq

uenc

y of

Mig

ratio

n

0

0.5

1

1.5

2

0 10 20 30 40 50 60 70 80 90 100

(d)

Val

ue o

fO

bjec

tive

Func

tion

Epoch

学習回数 学習回数

損失

関数

資源

不⾜

量(平

均)

移⾏

回数

(平均

)⽬

的関

※どのグラフも0に近いほど好ましい

※評価シナリオは補⾜2参照

Page 23: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

評価結果(2/2)図(c): ED-RNN(Attentionあり)はVNF移⾏回数を少なく抑えられている– ⼀⽅、ランダムは資源不⾜量は⼩さいが移⾏回数が⾮常に多い

図(d): (b),(c)の結果から、⽬的関数の値もED-RNN(Attentionあり)が次善– 最適解にはおよばないが、ランダム、DNN, Attentionなしより良い

23

0.2

0.4

0.6

0.8

0 10 20 30 40 50 60 70 80 90 100

(a)

Loss

Val

ue

With AttentionWithout Attention

DNN

0

2

4

0 10 20 30 40 50 60 70 80 90 100

(b)

Avg

. val

ue o

f Sho

rtage

With AttentionWithout Attention

DNNOptimization

Random

0

2

4

0 10 20 30 40 50 60 70 80 90 100

(c)

Freq

uenc

y of

Mig

ratio

n

0

0.5

1

1.5

2

0 10 20 30 40 50 60 70 80 90 100

(d)

Val

ue o

fO

bjec

tive

Func

tion

Epoch

0.2

0.4

0.6

0.8

0 10 20 30 40 50 60 70 80 90 100

(a)

Loss

Val

ue

With AttentionWithout Attention

DNN

0

2

4

0 10 20 30 40 50 60 70 80 90 100

(b)

Avg

. val

ue o

f Sho

rtage

With AttentionWithout Attention

DNNOptimization

Random

0

2

4

0 10 20 30 40 50 60 70 80 90 100

(c)

Freq

uenc

y of

Mig

ratio

n

0

0.5

1

1.5

2

0 10 20 30 40 50 60 70 80 90 100

(d)

Val

ue o

fO

bjec

tive

Func

tion

Epoch

学習回数 学習回数

損失

関数

資源

不⾜

量(平

均)

移⾏

回数

(平均

)⽬

的関

※どのグラフも0に近いほど好ましい

Page 24: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

発表概要• 背景-ネットワーク仮想化(NFV)/サービス機能チェイン(SFC)基盤の制御の⾃動化• SFC基盤制御への機械学習活⽤– SFC資源割当⾃動制御の概要– 計算機資源⾃動調停のためのリソース需要予測と再学習

• アンサンブル学習による予測と⼆段階再学習– SFCマイグレーション(移⾏)スケジューリングのための機械学習モデル

• Encoder-Decoder Recurrent Neural Network (ED-RNN)– 実機検証に向けた環境構築

24

Page 25: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

実機検証に向けたAI実装• RFC準拠の

SFC基盤を構築• AIを実装し

⾃動制御を評価

25

グローバル調停AIシステム

(状態分析、経路選択)

Service Plane(cf. RFC7665)àサービス機能提供

Data Plane

エンドホスト

(サーバ)Service Classifier(cf. RFC8300)

物理SDNスイッチ

ネットワークノード

SFCマネージャ(各コンポーネントのDB情報取得、計算資源(CPU)量増減制御、etc)

SFF

SFC proxy SFC proxy

SF1 (vNF) SF2 (vNF)

インフラコントローラ

(SFC基盤制御)

テナントコントローラ1(SFC要求受付)

※SF, proxy, SFFは、ネットワークノード内のVMとして実装

ローカル調停AIシステム

(トラヒック変動予測、資源調停)

ホストOSに常駐するプロセスとして実装

CPU CPU CPU CPU調停

エンドホスト

(クライアント)

ノード1 ノード2 ノード3

テナントコントローラ2

Page 26: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

サービス間CPU割当量⾃動調停の簡易評価• サービス利⽤量(VNFに到着するトラヒック量)を予測し、

CPUコア数を⾃動で増減• サービスに優先度(⾼or低)を設定し、

⾼優先サービスのCPUリソースを確保– ⾼優先(QoS保証型)サービスのリソース確保のための⾃動調停

• 両⽤可能なCPUコアのうち、何コアを⾼優先サービスに割り当てるかを制御

• 今回は下図における境界①or②を予測に基づき選択• ⾼優先サービスを最⼤2でつ収容できるように空きCPUを予約

– 低優先(ベストエフォート)サービスはCPUを共有

26

0

10

20

30

40

50

0 200 400 600 800 1000 1200 1400Duration [s]

noarbarb

CPU利用率

⾃動調停あり

⾃動調停なし

時刻

0

1.5x107

3x107

4.5x107

0 200 400 600 800 1000 1200 1400

0

1

2

Traffi

c [B

ytes

/s]

# o

f CPU

cor

es

Duration [s]

TrafficCPU coresト

ラヒック量

[Byt

es/s

]

割当

CPUコア数

CPU利⽤率が約3割向上

�� �� �� �� ����

(���)CPU��(ex. 6��)

����������/���

���������� �����

���A

������

���B

� � � � ���

���A ���A ���C

実⾏例

Page 27: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

まとめと今後の課題• 周期の異なる2段階の再学習による需要予測と⾃動資源調停– アンサンブル学習で⽤いる弱学習器群の定期的(⻑周期的)な再学習 (Forgetting)

• ⻑期的なトレンドの変化に追随– 強学習器の性能劣化時に随時(しきい値ベース)⾏う再学習 (Dynamic Ensemble)

– 再学習により予測精度が向上し、資源の有効利⽤を実現

• エンコーダ・デコーダRNNを⽤いたSFC移⾏スケジューリング– 時系列データをエンコーダ、デコーダで2度読み込み解析– 最適化問題の解を、教師データとして学習させる– リソースの不⾜を回避しつつ、VNFの移⾏回数も抑える

• 今後の課題– 数⼗〜百ノード規模での実機検証(JOSE利⽤)– 他社との連携実験

27

Page 28: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

• ⼊⼒I(tk)に、前段の出⼒O(tk-1)とAttentionを組み合わせて⼊⼒– Linearセル(Y=wX+b)やMultiplyセル(⾏列積)などを使⽤– 出⼒はone-hotベクトル形式

• ⼀番⾼い値を⽰した要素のインデックスがVNF-fを収容すべきサーバ• Ex. Of = (0, 0.3, 0.7, 0.4)と出⼒された場合は、VNF-fはサーバ2に置くのが適切– ちなみに、教師データはOf = (0, 0, 0.1, 0)

GRU GRU GRU

Encoder Decoder

he(tT)

e(t1) e(t2) e(tT)Attn-GRU

Attn-GRU

Attn-GRU

ET

O(t1) O(t2) O(tT-1)hd (t1) hd (t2)

hd (tT-1)

Attention

!("1)!("2)⋮!("$)

InputI(t1)

InputI(t2)

InputI(tT)

InputI(t1)

InputI(t2)

InputI(tT)

SolutionO(t1)

SolutionO(t2)

SolutionO(tT)

(補⾜1) Attn-GRUの概要28

O = F(N+1)

Linear&Soft.

InputI(tk)

SolutionO(tk-1)

AttentionET

HiddenHd(tk-1)

Multiply

Linear&ReLU

GRU&Log-Soft.

LinearO1(tk)

LinearOF(tk)

SolutionO(tk)

T�H(matrix)

I = N+F+1

I

O

T

H

HH

H H

H

H

N+1

N+1

O

F classifiers

Unit-A:UA

Unit-B:UB

Unit-C:UC

Unit-D:UD

N+1

Page 29: SFC制御⾃動化のための機械学習モデル および再学習フレーム …nv/NV2020-03-hirayama.pdf · sfc制御⾃動化のための機械学習モデル および再学習フレームワークの研究

(補⾜2) 学習および性能評価シナリオ• 15,000パターンの教師データを作成し、100サイクル学習– サーバ数𝑁 = 3~5, SFC数𝐹 = 5~15(ランダム)、𝑇 = 10, 𝑃& = 1, 𝑃' = 0.01– 𝑒 𝑡 , ℎ( 𝑡 , ℎ)(𝑡)の⼤きさ(𝐻)はそれぞれ200、ソルバはAmsgrad(学習率0.001)– 15,000個のデータの⼊⼒順は毎回ランダム

• 1,000パターンの検証データ(教師データとは)を⽤いて性能評価– 評価指標

• 資源不⾜量(平均値)• VNF移⾏回数(平均値)• ⽬的関数(資源不⾜量+0.01*VNF移⾏回数)

– ⽐較対象• 最適解 (教師データと同じ解法)• ランダム (毎時VNFをランダムに振り分け)• ED-RNN (Attentionなし)• 3層(𝐿 = 3)のDNN(𝑙!, 𝑙", 𝑙#) = (500, 600, 400)– 時刻𝑡!から𝑡"の状態を⼀つのテンソルにまとめて⼊出⼒

29

Solution O(t1) �

Solution O(t2) �

Solution O(t3) �

Solution O(tT) �

l1 units (Linear)�

l2 units (Linear)�

lL units (Linear)�

…�

Input I(t1) �

Input I(t2) �

Input I(t3) �

Input I(tT) �

(N+F+1)T�

F(N+1)T�

DNN(⽐較対象)の構成