(57)【要約】  ネットワークノードから、ネットワークノードの通信に関する能力を示す装置情報及びネットワークノードにおけるデータの転送状況を示すトラヒック情報を受信する制御ＩＦ部（１２２）と、装置情報及びトラヒック情報から、対象ネットワークを仮想的に再現した擬似ネットワークを生成するサイバー環境生成部（１１２）と、擬似ネットワークにおいて、仮想の通信要求に対して、最適な制御を行う学習を実行し、制御ＩＦ部（１２２）が対象ネットワークから実際の通信要求を受信した場合に、その学習の結果に従って、対象ネットワークにおいて、実際の通信要求に対して、実際の制御を行う機械学習エンジン部（１１３）とを備える。
2020013214.tif 000002
【特許請求の範囲】
【請求項１】
データを転送するネットワークノードを含む対象ネットワークを制御するネットワーク制御装置であって、
前記ネットワークノードから、前記ネットワークノードの通信に関する能力を示す装置情報、及び、前記ネットワークノードにおけるデータの転送状況を示すトラヒック情報を受信する通信インタフェース部と、
前記装置情報及び前記トラヒック情報から、前記対象ネットワークを仮想的に再現した擬似ネットワークを生成するサイバー環境生成部と、
前記擬似ネットワークにおいて、仮想の通信要求に対して、最適な制御を行う学習を実行し、前記通信インタフェース部が前記対象ネットワークから実際の通信要求を受信した場合に、前記学習の結果に従って、前記対象ネットワークにおいて、前記実際の通信要求に対して、実際の制御を行う機械学習エンジン部と、を備えること
を特徴とするネットワーク制御装置。
【請求項２】
前記機械学習エンジン部は、前記実際の通信要求に対して、前記擬似ネットワークにおいて、前記実際の制御に対応する仮想の制御を行い、前記仮想の制御が適切である場合に、前記通信インタフェース部に、前記実際の制御を行う制御命令を前記対象ネットワークへ送信させること
を特徴とする請求項１に記載のネットワーク制御装置。
【請求項３】
前記機械学習エンジン部は、前記仮想の制御が行われた前記擬似ネットワークにおいて、データを転送する経路のメトリックが予め定められた条件を満たす場合に、前記仮想の制御が適切であると判断すること
を特徴とする請求項２に記載のネットワーク制御装置。
【請求項４】
前記機械学習エンジン部は、強化学習エンジンを用いて、前記学習を実行すること
を特徴とする請求項１から３の何れか一項に記載のネットワーク制御装置。
【請求項５】
前記機械学習エンジン部は、前記擬似ネットワーク又は前記対象ネットワークを制御する際に、別のネットワーク制御装置が制御する別のネットワークにおけるデータの転送状況が必要な場合には、前記通信インタフェース部を介して、前記別のネットワーク制御装置から、前記別のネットワークにおけるデータの転送状況を示す制御情報を取得すること
を特徴とする請求項１から４の何れか一項に記載のネットワーク制御装置。
【請求項６】
前記機械学習エンジン部は、前記擬似ネットワーク又は前記対象ネットワークを制御する際に、自装置及び別のネットワーク制御装置により制御されていない非制御ネットワークにおけるデータの転送状況が必要な場合には、非制御ネットワークにおけるデータの転送状況の予測を実行すること
を特徴とする請求項１から５の何れか一項に記載のネットワーク制御装置。
【請求項７】
前記機械学習エンジン部は、深層学習エンジンを用いて、前記予測を実行すること
を特徴とする請求項６に記載のネットワーク制御装置。
【請求項８】
データを転送するネットワークノードを含む対象ネットワークを制御するネットワーク制御装置が行うネットワーク制御方法であって、
前記ネットワークノードから、前記ネットワークノードの通信に関する能力を示す装置情報、及び、前記ネットワークノードにおけるデータの転送状況を示すトラヒック情報を受信し、
前記装置情報及び前記トラヒック情報から、前記対象ネットワークを仮想的に再現した擬似ネットワークを生成し、
前記擬似ネットワークにおいて、仮想の通信要求に対して、最適な制御を行う学習を実行し、前記対象ネットワークから実際の通信要求を受信した場合に、前記学習の結果に従って、前記対象ネットワークにおいて、前記実際の通信要求に対して、実際の制御を行うこと
を特徴とするネットワーク制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク制御装置及びネットワーク制御方法に関する。
【背景技術】
【０００２】
ＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）技術と５Ｇ（Ｇｅｎｅｒａｔｉｏｎ）の発展により、膨大な機器がネットワークにつながることとなり、２０１５年に約１５４億個だった世界のＩｏＴデバイス数は、２０２０年には約３０４億個まで増大すると予想されている。
また、ネットワークは、ベストエフォートサービスも含め、Ｃｏｎｎｅｃｔｅｄ  Ｃａｒ又は高精細映像配信等の多種多様なサービスを提供するインフラになる。【０００３】
従来、ネットワークの制御は、ルールベースで行われている。
例えば、特許文献１には、ユーザ需要に対して、実際に割り当てる割当リソースを、ユーザ需要で指定されている許容範囲内に収めるという制約条件の下、割当リソースと割当要求リソースとの間の差分が大きくなるほど大きくなるユーザ需要ペナルティを有するペナルティを最小にするように、数理最適化問題を解くことにより、割当リソースを計算する経路計算装置が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−１４７５１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ネットワークをより柔軟に構築及び制御するために、ネットワークの仮想化技術が研究されている。ネットワークの仮想化技術は、ネットワークの制御レイヤと転送レイヤとを分割し、中央制御装置又はネットワーク制御装置であるオーケストレータを用いてネットワーク全体を制御する。【０００６】
ネットワーク仮想化技術を利用することで、単一の物理ネットワーク上に複数の仮想ネットワーク（スライス）を構築することができる。各スライスにより利用されるリソースが干渉しないため、アプリケーション又はサービスを異なるスライスに割り当てることで、互いに影響なく制御することができる。
一方、ネットワークに提供するサービス及びアプリケーションの種類の増加に従い、スライスの数が増加し、ネットワークの物理リソース及び仮想リソースの制御も複雑になる。【０００７】
そのため、従来のルールベースの制御が対応できなくなってきており、ルールベースの制御の代わりに、より高度なネットワークの自動制御が必要になる。自動化の鍵となる機械学習技術を活用することである。機械学習エンジンを実ネットワークで運用するために、実トラヒックデータ、又は、実トラヒックデータに近いデータで機械学習エンジンを訓練する必要がある。また、機械学習エンジンをより賢くするために、成功と失敗のデータを両方学習させる必要がある。【０００８】
しかしながら、実サービスを提供している通信ネットワークで学習用のトラヒックを流したり、設定失敗のデータを収集したりすることはできないため、実ネットワークを使用して機械学習エンジンを訓練することが難しい。【０００９】
そこで、本発明の１又は複数の態様は、大規模化及び複雑化したネットワークにおいても、機械学習を使用して自動的に制御できるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
本発明の１態様に係るネットワーク制御装置は、データを転送するネットワークノードを含む対象ネットワークを制御するネットワーク制御装置であって、前記ネットワークノードから、前記ネットワークノードの通信に関する能力を示す装置情報、及び、前記ネットワークノードにおけるデータの転送状況を示すトラヒック情報を受信する通信インタフェース部と、前記装置情報及び前記トラヒック情報から、前記対象ネットワークを仮想的に再現した擬似ネットワークを生成するサイバー環境生成部と、前記擬似ネットワークにおいて、仮想の通信要求に対して、最適な制御を行う学習を実行し、前記通信インタフェース部が前記対象ネットワークから実際の通信要求を受信した場合に、前記学習の結果に従って、前記対象ネットワークにおいて、前記実際の通信要求に対して、実際の制御を行う機械学習エンジン部と、を備えることを特徴とする。【００１１】
本発明の１態様に係るネットワーク制御方法は、データを転送するネットワークノードを含む対象ネットワークを制御するネットワーク制御装置が行うネットワーク制御方法であって、前記ネットワークノードから、前記ネットワークノードの通信に関する能力を示す装置情報、及び、前記ネットワークノードにおけるデータの転送状況を示すトラヒック情報を受信し、前記装置情報及び前記トラヒック情報から、前記対象ネットワークを仮想的に再現した擬似ネットワークを生成し、前記擬似ネットワークにおいて、仮想の通信要求に対して、最適な制御を行う学習を実行し、前記対象ネットワークから実際の通信要求を受信した場合に、前記学習の結果に従って、前記対象ネットワークにおいて、前記実際の通信要求に対して、実際の制御を行うことを特徴とする。
【発明の効果】
【００１２】
本発明の１又は複数の態様によれば、大規模化及び複雑化したネットワークにおいても、機械学習を使用して自動的に制御を行うことができる。
【図面の簡単な説明】
【００１３】
【図１】通信ネットワークシステムの構成を概略的に示すブロック図である。
【図２】オーケストレータによるネットワークの第１の制御例を説明するためのブロック図である。
【図３】オーケストレータによるネットワークの第２の制御例を説明するためのブロック図である。
【図４】オーケストレータの構成を概略的に示すブロック図である。
【図５】ネットワークリソース記憶部の構成を概略的に示すブロック図である。
【図６】（Ａ）〜（Ｃ）は、設備情報の例を示す概略図である。
【図７】通信要求情報の例を示す概略図である。
【図８】仮想物理リソース対応情報の例を示す概略図である。
【図９】（Ａ）及び（Ｂ）は、ハードウェア構成例を示すブロック図である。
【図１０】ネットワークノードの追加構成を概略的に示すブロック図である。
【図１１】ネットワークノードが情報を送信する動作を示すフローチャートである。
【図１２】オーケストレータが情報を更新する動作を示すフローチャートである。
【図１３】オーケストレータの強化学習エンジンの初期設定及び訓練の動作を示すフローチャートである。
【図１４】オーケストレータで通信要求を処理する際の動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
図１は、実施の形態に係る通信ネットワークシステム１００の構成を概略的に示すブロック図である。
通信ネットワークシステム１００は、１又は複数のオーケストレータ１１０Ａ〜１１０Ｃが、ＲＡＮ（Ｒａｄｉｏ  Ａｃｃｅｓｓ  Ｎｅｔｗｏｒｋ）１０２、アクセスネットワーク及びメトロネットワーク１０３、並びに、コアネットワーク１０４を含むネットワーク１０１を制御する。
【００１５】
オーケストレータ１１０Ａ〜１１０Ｃの各々を特に区別する必要がない場合には、オーケストレータ１１０という。
なお、オーケストレータ１１０は、ネットワーク１０１を制御するためのネットワーク制御装置である。
また、図１では、ネットワーク１０１は、ＲＡＮ１０２、アクセスネットワーク及びメトロネットワーク１０３、並びに、コアネットワーク１０４により構成されているが、ネットワーク１０１の構成は、このような例に限定されない。例えば、ネットワーク１０１は、ＲＡＮ１０２、アクセスネットワーク及びメトロネットワーク１０３、並びに、コアネットワーク１０４の各々により構成されていてもよく、また、ＲＡＮ１０２、アクセスネットワーク及びメトロネットワーク１０３、並びに、コアネットワーク１０４の任意の組み合わせにより構成されていてもよい。
【００１６】
オーケストレータ１１０は、ネットワーク１０１を構成しているネットワークノード１３０Ａ〜１３０Ｒに制御命令を送ることで、ネットワーク１０１を制御する。ネットワークノード１３０Ａ〜１３０Ｒは、データを転送する転送装置である。
そして、オーケストレータ１１０は、ネットワーク１０１を制御することで、ネットワーク１０１に接続されている通信端末１５０Ａ〜１５０Ｆ間において、リソースを割り当てて、Ｅｎｄ−ｔｏ−Ｅｎｄのパスを自動的に設定する。
【００１７】
ここで、ネットワークノード１３０Ａ〜１３０Ｒの各々を特に区別する必要がない場合には、ネットワークノード１３０という。
また、通信端末１５０Ａ〜１５０Ｆの各々を特に区別する必要がない場合には、通信端末１５０という。
【００１８】
また、オーケストレータ１１０は、ネットワークノード１３０から、ネットワークノード１３０の通信に関する能力を示す装置情報と、ネットワークノード１３０におけるデータの転送状況を示すトラヒック情報とを収集する。
【００１９】
ここで、装置情報は、ネットワークノード１３０の属性を示すノード情報、ネットワークノード１３０の通信設定を示す仮想ネットワーク情報、及び、ネットワークノード１３０の接続状況を示す接続情報を含む。
ノード情報は、例えば、Ｌ２スイッチ、Ｌ３スイッチ若しくは光スイッチ等の装置種別、カード数、１００Ｇ（Ｇｉｇａ）ラインカード若しくは１０Ｇラインカード等のカードの種類、ポート数、１００Ｇ若しくは１０Ｇ等のポートの種類、又は、ポートのオン若しくはオフの状態を含む。
仮想ネットワーク情報は、ＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）設定、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）設定、又は、ＭＰＬＳ（Ｍｕｌｔｉ−Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ）ラベル設定を含む。
接続情報は、ルーティングテーブル又はスイッチングテーブルを含む。
【００２０】
トラヒック情報は、ネットワークノード１３０が転送を行った通信における、ＩＰアドレス又はＭＡＣアドレス等の送信元と宛先の情報、要求帯域、保留時間（リソースの占有時間）、優先度、サービスタイプ、又は、アプリケーションを含む。
【００２１】
ここで、複数のオーケストレータ１１０がある場合、Ｅｎｄ−ｔｏ−Ｅｎｄのパス、言い換えると、ネットワーク１０１に接続されている通信端末１５０間のパスを設定する際に、複数のオーケストレータ１１０間で制御情報の交換を行う。
制御情報は、使用可能なＶＬＡＮ数、波長数、タイムスロット若しくはＭＰＬＳラベル数等の設定可能なパス数、又は、オーケストレータ１１０が属するドメインの遅延等を含み、他のオーケストレータ１１０がパスを設定する際に必要とされる情報である。
【００２２】
例えば、図２に示されているように、オーケストレータ１１０が、ネットワーク１０１の一部である部分ネットワーク１０１Ａを制御している場合でも、他のオーケストレータ１１０から制御情報を取得することにより、Ｅｎｄ−ｔｏ−Ｅｎｄのパスを設定することができる。
【００２３】
また、図３に示されているように、オーケストレータ１１０＃１は、部分ネットワーク１０１Ｂの状態を把握し、オーケストレータ１１０＃２は、部分ネットワーク１０１Ｄの状態を把握している。
このような場合、オーケストレータ１１０＃１は、別のオーケストレータ１１０＃２から制御情報を取得することにより、部分ネットワーク１０１Ｂとは別のネットワークである部分ネットワーク１０１Ｄでのデータの転送状況を把握するとともに、何れのオーケストレータ１１０にも制御されていない非制御ネットワークである部分ネットワーク１０１Ｃでのデータの転送状況を予測することで、リソースの割り当て及びパスの設定を行う。なお、オーケストレータ１１０＃２がリソースの割り当て及びパスの設定を行う場合も同様である。
【００２４】
ここで、本実施の形態では、１つのオーケストレータ１１０がネットワーク１０１を制御している場合には、ネットワーク１０１を対象ネットワークという。また、複数のオーケストレータ１１０がネットワーク１０１を制御している場合には、１つのオーケストレータ１１０がネットワークノード１３０から装置情報及びトラヒック情報を取得して管理している、ネットワーク１０１の一部である部分ネットワークを、その１つのオーケストレータ１１０が制御（管理）している対象ネットワークという。
【００２５】
オーケストレータ１１０は、ネットワーク１０１におけるＥｎｄ−ｔｏ−Ｅｎｄのパスを設定するパス設定機能、ネットワークノード１３０から装置情報及びトラヒック情報を収集する機能、及び、ネットワーク制御を自動化する機械学習機能等の機能を有する。
【００２６】
図４は、オーケストレータ１１０の構成を概略的に示すブロック図である。
オーケストレータ１１０は、自動化制御部１１１と、情報制御部１１６と、ネットワークリソース記憶部１１７と、ユーザインタフェース部（ＵＩＦ部）１２１と、制御インタフェース部（制御ＩＦ部）１２２とを備える。
【００２７】
自動化制御部１１１は、ネットワーク１０１の制御の自動化を行う。
自動化制御部１１１は、サイバー環境生成部１１２と、機械学習エンジン部１１３とを備える。
【００２８】
サイバー環境生成部１１２は、ネットワークリソース記憶部１１７に記憶されている情報を用いて、対象ネットワークを仮想的に再現した擬似ネットワークを生成する。
例えば、サイバー環境生成部１１２は、対象ネットワークの全物理リソース及び仮想ネットワークの割当状況を擬似ネットワークに再現する。
さらに、サイバー環境生成部１１２は、対象ネットワークにおけるトラヒックを示すトラヒック情報を参照し、対象ネットワークにおけるトラヒックと同様な擬似トラヒックを擬似ネットワークに再現する。
これにより、自動化制御部１１１は、実ネットワークで提供しているサービスに影響させることなく、対象ネットワークのボトルネットとなるリンク、及び、トラヒックがなくてアイドル状態になったリンク等の情報を把握することができる。
【００２９】
機械学習エンジン部１１３は、サイバー環境生成部１１２が生成した擬似ネットワークを用いて、対象ネットワークの制御方法を学習し、ネットワーク１０１における通信要求に対して、リソースを割り当てて、Ｅｎｄ−ｔｏ−Ｅｎｄの最適なパスを自動的に設定する。具体的には、機械学習エンジン部１１３は、擬似ネットワークにおいて、仮想の通信要求に対して、最適な制御の学習を実行する。そして、機械学習エンジン部１１３は、制御ＩＦ部１２２が対象ネットワークから実際の通信要求を受信した場合に、その学習の結果に従って、対象ネットワークにおいて、実際の通信要求に対して、実際の制御を行う。
機械学習エンジン部１１３は、制御エンジン部１１４と、予測エンジン部１１５とを備える。
【００３０】
制御エンジン部１１４は、強化学習アルゴリズムによる強化学習エンジンを用いて、ネットワーク１０１の状況に応じた最適な制御を実施する。制御エンジン部１１４は、ネットワークリソースの割当、スライスの作成及びパス設定等の制御機能を備えている。
制御エンジン部１１４は、強化学習エンジンを使用することで、遅延、ホップ数、帯域及び複数のメトリック等を考慮した最適なＥｎｄ−ｔｏ−Ｅｎｄのパスを自動的に設定する。
【００３１】
なお、制御エンジン部１１４がパスを設定する際には、後述する予測エンジン部１１５での予測結果、及び、他のオーケストレータ１１０からの制御情報を使用する。
【００３２】
本実施の形態では、初期運用のとき、オペレータが、サイバー環境生成部１１２で生成された擬似ネットワークを使用して、制御エンジン部１１４の強化学習エンジンを訓練する。
具体的には、オペレータは、ＵＩＦ部１２１を用いて、擬似ネットワークに、仮想的に通信要求を生成し、その通信要求に応じた、リソースの割り当て及びパスの設定といった制御を行う。これにより、制御エンジン部１１４は、通信要求に対して、光パスの設定、ＶＬＡＮの設定、ＭＰＬＳパスの設定又はＱｏｓの設定等の、オペレータによる設定情報を蓄積する。制御エンジン部１１４は、蓄積された設定情報を用いて、例えば、強化学習手法である、Ａｃｔｏｒ−Ｃｒｉｔｉｃ手法により、ＡｃｔｏｒとＣｒｉｔｉｃの関係式のパラメータを最適化する。これにより、制御エンジン部１１４は、模倣学習を利用して、オペレータの制御方法を学習する。
【００３３】
なお、図２に示されているように、オーケストレータ１１０が、ネットワーク１０１の一部である部分ネットワーク１０１Ａを制御している場合でも、オペレータが、他のオーケストレータ１１０からの制御情報、又は、予測エンジン部１１５による予測結果を利用して、自オーケストレータ１１０が制御していない部分ネットワークにおける設定及び管理を行う。例えば、オペレータは、他のオーケストレータ１１０が波長１０番を使って１００Ｇの光パスを設定した場合、オーケストレータ１１０は、同じ波長１０番の１００Ｇの光パスを設定する必要があるといった内容を制御エンジン部１１４に学習させる。また、オペレータは、ある通信の遅延に対する要求が４ｍｓである場合に、オーケストレータ１１０が制御しているネットワークの遅延は２．５ｍｓであるという制御情報を、他のオーケストレータ１１０に送信し、その制御情報を他のオーケストレータ１１０が受信した後に、１．５ｍｓ以下の経路を選択するといった内容を制御エンジン部１１４に学習させる。
【００３４】
そして、制御エンジン部１１４は、実際の通信要求に対して、対象ネットワークにおける、リソースの割り当て及びパスの設定といった実際の制御に対応する仮想の制御を、擬似ネットワークにおいて行い、その仮想の制御が適切である場合に、制御ＩＦ部１２２に、その実際の制御を行う制御命令を対象ネットワークへ送信させる。
例えば、制御エンジン部１１４は、データを転送する経路のメトリックが予め定められた条件を満たす場合に、その仮想の制御が適切であると判断する。具体的には、データを転送する経路の遅延が、予め定められた閾値よりも短い場合、データを転送する経路の帯域が、予め定められた閾値よりも広い場合、又は、データを転送する経路のホップ数が予め定められた閾値よりも少ない場合等に、制御エンジン部１１４は、データを転送する経路のメトリックが予め定められた条件を満たすと判断すればよい。
【００３５】
予測エンジン部１１５は、オーケストレータ１１０が制御していない部分のネットワーク、言い換えると、ネットワーク１０１の対象ネットワーク以外の部分のパフォーマンスを予測する。
例えば、予測エンジン部１１５は、深層学習エンジンである深層ニューラルネットを用いて、パフォーマンスの予測を行う。
具体的には、予測エンジン部１１５は、教師あり学習を用いて、回帰問題を解いていく。予測エンジン部１１５は、過去の通信要求を入力データとし、予測する部分ネットワークを追加した後の遅延又はパケットロス等のパフォーマンスをラベルとする。予測エンジン部１１５は、深層ニューラルネットを学習させることで、次の通信要求がきた場合に、その部分ネットワークのパフォーマンスを予測することができる。
【００３６】
情報制御部１１６は、オーケストレータ１１０での処理に必要な情報の処理を制御する。
例えば、情報制御部１１６は、制御ＩＦ部１２２が受信した装置情報及びトラヒック情報を受け取り、その装置情報及びトラヒック情報により、ネットワークリソース記憶部１１７に記憶されている情報を更新する。
また、情報制御部１１６は、制御ＩＦ部１２２が受信した制御情報をネットワークリソース記憶部１１７に記憶させる。
さらに、情報制御部１１６は、自装置における制御情報を生成し、制御ＩＦ部１２２に他のオーケストレータ１１０へ送信させる。
【００３７】
ネットワークリソース記憶部１１７は、対象ネットワークの装置情報及びトラヒック情報、並びに、他のオーケストレータ１１０から送られてきた制御情報を記憶する。
図５は、ネットワークリソース記憶部１１７の構成を概略的に示すブロック図である。
ネットワークリソース記憶部１１７は、対象ネットワークに含まれるネットワークノード１３０の設備に関する設備情報１１８と、対象ネットワークにおける通信要求に関する通信要求情報１１９と、対象ネットワークにおける仮想リソースと物理リソースの対応関係に関する仮想物理リソース対応情報１２０とを記憶する。
【００３８】
図６（Ａ）〜（Ｃ）は、設備情報１１８の例を示す概略図である。
図６（Ａ）〜（Ｃ）に示されているように、設備情報１１８には、第１の設備テーブル１１８ａと、第２の設備テーブル１１８ｂと、第３の設備テーブル１１８ｃとを含む。
第１の設備テーブル１１８ａは、対象ネットワークに含まれているネットワークノード１３０の物理的なリソースと、接続状態とを含んでいる。例えば、第１の設備テーブル１１８ａは、ネットワークノード１３０毎に、ネットワークノード１３０を識別するためのノード識別情報であるノード番号、種別、ポート、ポートの稼働状態及び接続先を対応付けている。
【００３９】
第２の設備テーブル１１８ｂ及び第３の設備テーブル１１８ｃは、対象ネットワークに含まれているネットワークノード１３０の設備の詳細を格納する。
例えば、ネットワークノード１３０が、ＲＯＡＤＭ（Ｒｅｃｏｎｆｉｇｕｒａｂｌｅ  Ｏｐｔｉｃａｌ  Ａｄｄ／Ｄｒｏｐ  Ｍｕｌｔｉｐｌｅｘｅｒ）装置の場合、第２の設備テーブル１１８ｂは、図６（Ｂ）に示されているように、トランスポンダカードを識別するためのカード識別情報であるカード番号、スイッチカードのポートを識別するためのポート識別情報であるポート番号及び波長等の情報を対応付けている。
また、ネットワークノード１３０が、レイヤ２スイッチの場合、第３の設備テーブル１１８ｃは、図６（Ｃ）に示されているように、カードを識別するためのカード識別情報であるカード番号、ポートを識別するためのポート識別情報であるポート番号及びＶＬＡＮを識別するためのＶＬＡＮ  ＩＤ等の情報を対応付けている。
【００４０】
図７は、通信要求情報１１９の例を示す概略図である。
通信要求情報１１９は、例えば、図７に示されている通信要求テーブル１１９ａのようなテーブル形式の情報である。
通信要求テーブル１１９ａは、図７に示されているように、通信要求を識別するための通信要求識別情報である通信要求番号、通信要求のサービスタイプ、要求帯域、優先度及び保留時間等の情報を対応付けている。
【００４１】
図８は、仮想物理リソース対応情報１２０の例を示す概略図である。
仮想物理リソース対応情報１２０は、例えば、図８に示されている仮想物理リソース対応テーブル１２０ａのようなテーブル形式の情報である。
仮想物理リソース対応テーブル１２０ａは、図８に示されているように、対象ネットワークに設定されている仮想ネットワーク及びその仮想ネットワークで使用される物理リソースを対応付けている。具体的には、仮想ネットワークを識別するための仮想ネットワーク識別情報である仮想ネットワーク番号、ネットワークノード１３０を識別するためのネットワークノード識別情報であるネットワークノード名、ポート、波長及びＶＬＡＮ等の情報が対応付けられる。
【００４２】
ネットワークリソース記憶部１１７にある各テーブルは、制御ＩＦ部１２２を介して送信されたネットワークノード１３０の情報に基づいて更新される。例えば、装置情報により設備情報１１８及び仮想物理リソース対応情報１２０が更新され、トラヒック情報により通信要求情報１１９が更新される。
【００４３】
なお、図５には示されていないが、対象ネットワーク以外のネットワーク１０１の部分の状況を把握するために、他のオーケストレータ１１０から送信されてきた制御情報もネットワークリソース記憶部１１７に記憶される。
【００４４】
図４に戻り、ＵＩＦ部１２１は、オペレータからの入力を受け付けるユーザインタフェースである。
制御ＩＦ部１２２は、ネットワークノード１３０及び他のオーケストレータ１１０と通信を行う通信インタフェース部である。
制御ＩＦ部１２２は、ノード制御インタフェース部（ノード制御ＩＦ部）１２３と、オーケストレータ通信インタフェース部（オーケストレータ通信ＩＦ部）１２４とを備える。
【００４５】
ノード制御ＩＦ部１２３は、ネットワークノード１３０と通信する。
例えば、ノード制御ＩＦ部１２３は、制御エンジン部１１４からの制御命令をネットワークノード１３０に送信する。
また、ノード制御ＩＦ部１２３は、ネットワークノード１３０からの装置情報及びトラヒック情報を受信し、その装置情報及びトラヒック情報を情報制御部１１６に与える。
【００４６】
オーケストレータ通信ＩＦ部１２４は、オーケストレータ１１０と通信する。
例えば、オーケストレータ通信ＩＦ部１２４は、他のオーケストレータ１１０から制御情報を受信し、その制御情報を情報制御部１１６に与える。
また、オーケストレータ通信ＩＦ部１２４は、情報制御部１１６から制御情報を受け取り、他のオーケストレータ１１０に送信する。
【００４７】
以上に記載された自動化制御部１１１及び情報制御部１１６の一部又は全部は、例えば、図９（Ａ）に示されているように、メモリ１０と、メモリ１０に格納されているプログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等のプロセッサ１１とにより構成することができる。このようなプログラムは、ネットワークを通じて提供されてもよく、また、記録媒体に記録されて提供されてもよい。即ち、このようなプログラムは、例えば、プログラムプロダクトとして提供されてもよい。
【００４８】
また、自動化制御部１１１及び情報制御部１１６の一部は、例えば、図９（Ｂ）に示されているように、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ）又はＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の処理回路１２で構成することもできる。
【００４９】
なお、ネットワークリソース記憶部１１７は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の記憶装置により実現することができる。
【００５０】
図１０は、ネットワークノード１３０の追加構成を概略的に示すブロック図である。
ネットワークノード１３０は、ネットワークノード１３０としてデータの転送を行う本来の機能を実行する部分の他に、情報収集部１３１と、情報フィルタ部１３２と、情報送信部１３３とを備える。
【００５１】
情報収集部１３１は、ネットワークノード１３０の情報を収集する。
例えば、自装置がルータ又はスイッチの場合、情報収集部１３１は、ルーティングテーブル又はスイッチングテーブル、各ポートのオン又はオフの状態、ＶＬＡＮ設定、ＱｏＳ設定、通過したパケット数、又は、空き帯域等の情報を収集する。自装置が光伝送装置の場合、情報収集部１３１は、光パスの波長設定、光信号対雑音比（ＯＳＮＲ：Ｏｐｔｉｃａｌ  Ｓｉｇｎａｌ  ｔｏ  Ｎｏｉｓｅ  Ｒａｔｉｏ）等の物理レイヤ情報等の情報を収集する。自装置がＯＴＮ（Ｏｐｔｉｃａｌ  Ｔｒａｎｓｐｏｒｔ  Ｎｅｔｗｏｒｋ）装置の場合、情報収集部１３１は、ＯＤＵ（Ｏｐｔｉｃａｌ−ｃｈａｎｎｅｌ  Ｄａｔａ  Ｕｎｉｔ）チャネル番号等の情報を収集する。自装置がＭＰＬＳ−ＴＰ（Ｍｕｌｔｉ  Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ  −  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｆｉｌｅ）装置の場合、情報収集部１３１は、ＭＰＬＳ−ＴＰラベル情報等の情報を収集する。
【００５２】
情報フィルタ部１３２は、情報収集部１３１が収集した情報をフィルタリングする。
例えば、情報フィルタ部１３２は、収集された情報の更新がある場合、又は、ネットワーク１０１に大きな影響を与えることが発生した場合だけ、情報収集部１３１が収集した情報から装置情報及びトラヒック情報を生成する。具体的には、新しいパスが設定され、スイッチングテーブルが更新された場合、又は、あるポートに通過するパケットが急に増加するようなネットワークに輻輳が発生する可能性が高い場合等に、装置情報及びトラヒック情報を生成する。
【００５３】
情報送信部１３３は、情報フィルタ部１３２で生成された装置情報及びトラヒック情報をオーケストレータ１１０に送信する通信インタフェースである。
【００５４】
以上に記載された情報収集部１３１及び情報フィルタ部１３２の一部又は全部は、例えば、図９（Ａ）に示されているように、メモリ１０と、メモリ１０に格納されているプログラムを実行するプロセッサ１１とにより構成することができる。このようなプログラムは、ネットワークを通じて提供されてもよく、また、記録媒体に記録されて提供されてもよい。即ち、このようなプログラムは、例えば、プログラムプロダクトとして提供されてもよい。
また、情報収集部１３１及び情報フィルタ部１３２の一部又は全部は、例えば、図９（Ｂ）に示されているように、処理回路１２で構成することもできる。
【００５５】
図１１は、ネットワークノード１３０が情報を送信する動作を示すフローチャートである。
まず、情報収集部１３１は、自装置及びネットワーク１０１に関する情報を収集する（Ｓ１０）。
次に、情報フィルタ部１３２は、ステップＳ１０で収集された情報にフィルタをかける（Ｓ１１）。例えば、情報フィルタ部１３２は、輻輳が発生した場合、パスがダウンした場合、リンクに物理的な故障が発生した場合、又は、情報に更新がある場合に、装置情報及びトラヒック情報を生成して、次のステップＳ１２に進む。
【００５６】
ステップＳ１２では、情報フィルタ部１３２は、情報を送信するか否かを判断する。例えば、情報フィルタ部１３２は、ステップＳ１１で装置情報及びトラヒック情報が生成された場合には、情報を送信すると判断する。
情報を送信する場合（Ｓ１２でＹｅｓ）には、処理はステップＳ１３に進み、情報を送信しない場合（Ｓ１２でＮｏ）には、処理はステップＳ１０に戻る。
【００５７】
ステップＳ１３では、情報フィルタ部１３２は、装置情報及びトラヒック情報を情報送信部１３３に送り、情報送信部１３３は、受け取った装置情報及びトラヒック情報をオーケストレータ１１０に送信する。
【００５８】
図１２は、オーケストレータ１１０が情報を更新する動作を示すフローチャートである。
ノード制御ＩＦ部１２３は、ネットワークノード１３０から装置情報及びトラヒック情報を受信したか否かを判断する（Ｓ２０）。装置情報及びトラヒック情報を受信した場合（Ｓ２０でＹｅｓ）には、処理はステップＳ２１に進む。
【００５９】
ステップＳ２１では、情報制御部１１６は、ノード制御ＩＦ部１２３から受信された装置情報及びトラヒック情報を受け取り、その装置情報及びトラヒック情報に基づいて、ネットワークリソース記憶部１１７に記憶されている情報を更新する（Ｓ２１）。
そして、サイバー環境生成部１１２は、ネットワークリソース記憶部１１７に記憶されている情報の更新に従って、サイバー環境である擬似ネットワークを更新する（Ｓ２２）。
以上のようにして、ネットワークリソース記憶部１１７に記憶されている情報と、サイバー環境とは、常にネットワーク１０１の最新状況を反映することとなる。
【００６０】
図１３は、オーケストレータ１１０の強化学習エンジンの初期設定及び訓練の動作を示すフローチャートである。
まず、オペレータが、ＵＩＦ部１２１を介して、サイバー環境である擬似ネットワークを利用して、制御エンジン部１１４における強化学習エンジンを訓練する（Ｓ３０）。このステップにおいて、強化学習エンジンがオペレータのノウハウを学習する。
【００６１】
次に、オペレータは、ＵＩＦ部１２１を介して、擬似ネットワークに、ランダムに通信要求を発生し、強化学習エンジンの学習結果を確認する（Ｓ３１）。
そして、オペレータは、ステップＳ３１における確認結果により、適切な制御ができたか否かを判断する（Ｓ３２）。例えば、強化学習エンジンが、ステップＳ３１における通信要求に応じて、適切なリソースを割当し、適切なパスを設定することができた場合に、オペレータは、適切な制御ができたと判断する。
適切な制御ができた場合（Ｓ３２でＹｅｓ）には、模倣学習を終了する。適切な制御ができなかった場合（Ｓ３２でＮｏ）には、処理はステップＳ３０に戻り、引き続きオペレータの制御を学習する。
【００６２】
図１４は、オーケストレータ１１０で通信要求を処理する際の動作を示すフローチャートである。
ノード制御ＩＦ部１２３は、ネットワーク１０１から通信要求を受信したか否かを判断する（Ｓ４０）。通信要求は、例えば、他のオーケストレータ１１０のＵＩＦ部１２１を介して、オペレータが入力すること、又は、ネットワーク１０１に接続されている通信端末１５０で実行されているＳＤＮ（Ｓｏｆｔｗａｒｅ  Ｄｅｆｉｎｅｄ  Ｎｅｔｗｏｒｋ）のプロトコルであるＯｐｅｎＦｌｏｗのＰａｃｋｅｔ＿ｉｎメッセージを利用することで、ネットワーク１０１に送信される。
通信要求を受信した場合（Ｓ４０でＹｅｓ）には、処理はステップＳ４１に進む。
【００６３】
ステップＳ４１では、制御エンジン部１１４は、学習済みの強化学習エンジンを使用して、ステップＳ４０で受信された通信要求を処理して、ネットワークノード１３０を制御するための制御命令を発行する。
【００６４】
制御エンジン部１１４は、ステップＳ４１で発行した制御命令に対応する仮想の制御命令をネットワーク１０１に送信する前に、サイバー環境生成部１１２で生成された擬似ネットワークに送信して、その結果を確認する（Ｓ４２）。
制御エンジン部１１４は、ステップＳ４２での確認の結果、ステップＳ４１で発行した制御命令に対応する仮想の制御命令が適切な制御であるか否かを判断する（Ｓ４３）。例えば、制御エンジン部１１４は、仮想の制御命令に従って擬似ネットワークを制御した後に、その擬似ネットワークでデータを転送する。その結果により、転送されたデータの遅延が予め定められた閾値より短い場合には、制御エンジン部１１４は、適切な制御であると判断する。適切な制御である場合（Ｓ４３でＹｅｓ）には、処理はステップＳ４４に進み、適切な制御ではない場合（Ｓ４３でＮｏ）には、処理はステップＳ４５に進む。
【００６５】
ステップＳ４４では、制御エンジン部１１４は、ステップＳ４１で発行した制御命令をノード制御ＩＦ部１２３に送り、それをノード制御ＩＦ部１２３にネットワーク１０１へ送信させる。
一方、ステップＳ４５では、制御エンジン部１１４は、ステップＳ４２での確認の結果に従って、強化学習エンジンを更新する。そして、処理はステップＳ４１に戻り、制御エンジン部１１４は、更新された強化学習エンジンを使用して、もう一回制御命令を発行する。
【００６６】
以上のように、本実施の形態によれば、擬似ネットワークにおいて機械学習エンジンを強化することができるため、大規模化及び複雑化したネットワークにおいても、自動制御を実現することができる。
【符号の説明】
【００６７】
１００  通信ネットワークシステム、  １１０  オーケストレータ、  １１１  自動化制御部、  １１２  サイバー環境生成部、  １１３  機械学習エンジン部、  １１４  制御エンジン部、  １１５  予測エンジン部、  １１６  情報制御部、  １１７  ネットワークリソース記憶部、  １２１  ＵＩＦ部、  １２２  制御ＩＦ部、  １３０  ネットワークノード、  １３１  情報収集部、  １３２  情報フィルタ部、  １３３  情報送信部。
【図１】
2020013214.tif 000003
【図２】
2020013214.tif 000004
【図３】
2020013214.tif 000005
【図４】
2020013214.tif 000006
【図５】
2020013214.tif 000007
【図６】
2020013214.tif 000008
【図７】
2020013214.tif 000009
【図８】
2020013214.tif 000010
【図９】
2020013214.tif 000011
【図１０】
2020013214.tif 000012
【図１１】
2020013214.tif 000013
【図１２】
2020013214.tif 000014
【図１３】
2020013214.tif 000015
【図１４】
2020013214.tif 000016
【国際調査報告】
2020013214.tif 000017
2020013214.tif 000018
2020013214.tif 000019
2020013214.tif 000020