JP2018207241A - 管理装置、管理方法及び管理プログラム - Google Patents

管理装置、管理方法及び管理プログラム Download PDF

Info

Publication number
JP2018207241A
JP2018207241A JP2017108724A JP2017108724A JP2018207241A JP 2018207241 A JP2018207241 A JP 2018207241A JP 2017108724 A JP2017108724 A JP 2017108724A JP 2017108724 A JP2017108724 A JP 2017108724A JP 2018207241 A JP2018207241 A JP 2018207241A
Authority
JP
Japan
Prior art keywords
traffic
network
value
learning
model
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2017108724A
Other languages
English (en)
Other versions
JP6863091B2 (ja
Inventor
中津川 恵一
Keiichi Nakatsugawa
恵一 中津川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017108724A priority Critical patent/JP6863091B2/ja
Priority to US15/991,278 priority patent/US10965542B2/en
Publication of JP2018207241A publication Critical patent/JP2018207241A/ja
Application granted granted Critical
Publication of JP6863091B2 publication Critical patent/JP6863091B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities

Landscapes

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

Abstract

【課題】ネットワーク全体のトラフィックを大局的に分析すること。【解決手段】管理装置は、複数の通信装置を含むネットワークの外からネットワークの中へ入力される第1のトラフィックに基づいてネットワークの中からネットワークの外へ出力される第2のトラフィックを推定するモデルを記憶する記憶部と、第1のトラフィックの実測値を取得する取得部と、記憶部に記憶されたモデルへ取得部により取得された第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、所定の値とを比較する比較部と、を有する。【選択図】図5

Description

本発明は、管理装置、管理方法及び管理プログラムに関する。
通信ネットワークを流れるトラフィックは、量および質の両面で多様化しつつある。すなわち、企業の拠点間接続による業務トラフィックなどに加え、クラウドサービスやビッグデータの収集や分析、IoT(Internet of Things)による非ユーザ由来のトラフィックなどが増加している。また、通信ネットワーク自体も、多くのレイヤを含み、管理主体の異なる複数のドメインを経由するなど、大規模化、複雑化している。このため、通信ネットワークの運用管理も難しさを増している。
通信ネットワーク上を流れるトラフィックの監視は、一例として、通信装置の送信ポートまたは受信ポートにおける単位時間当たりの送信データ量または受信データ量などのトラフィックを定期的にモニタし、所定の閾値に達した場合にはネットワーク運用者へのアラームを通知するなどの方法で実施される。この閾値は、一例として、ネットワーク運用者により経験等に基づいて設定される。
ところが、トラフィックとの比較に固定の閾値を用いたのでは、通信ネットワークの規模や構成の複雑化に伴って複雑に変化するトラフィックに適切な閾値を設定することが困難な一面がある。
このことから、ニューラルネットワークを用いて、トラフィック量とその日付を対応付けて学習し、トラフィック量の変動の上限値を予測するトラフィック量予測装置が提案されている。
特開2007−221699号公報 特開平7−64944号公報
しかしながら、上記のトラフィック量予測装置は、ネットワークに含まれるポートやリンクを通過するトラフィックを局所的に分析するものに過ぎない。それ故、上記のトラフィック量予測装置では、ネットワーク全体のトラフィックを大局的に分析することができない場合がある。
1つの側面では、本発明は、ネットワーク全体のトラフィックを大局的に分析できる管理装置、管理方法及び管理プログラムを提供することを目的とする。
一態様では、管理装置は、複数の通信装置を含むネットワークの外から前記ネットワークの中へ入力される第1のトラフィックに基づいて前記ネットワークの中から前記ネットワークの外へ出力される第2のトラフィックを推定するモデルを記憶する記憶部と、前記第1のトラフィックの実測値を取得する取得部と、前記記憶部に記憶されたモデルへ前記取得部により取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、所定の値とを比較する比較部と、を有する。
ネットワーク全体のトラフィックを大局的に分析できる。
図1は、実施例1に係るネットワーク管理システムの構成例を示す図である。 図2は、トラフィックの変化の一例を示す図である。 図3は、トラフィックの変化の一例を示す図である。 図4は、トラフィックの学習方法の一例を示す図である。 図5は、実施例1に係るネットワーク管理装置の機能的構成を示すブロック図である。 図6は、実施例1に係る学習処理の手順を示すフローチャートである。 図7は、実施例1に係るトラフィックの監視処理の手順を示すフローチャートである。 図8は、トラフィックの学習方法の他の一例を示す図である。 図9は、トラフィックの学習方法の他の一例を示す図である。 図10は、トラフィックの学習方法の他の一例を示す図である。 図11は、レイヤ別のトラフィックの一例を示す図である。 図12は、学習サンプル数および誤差の関係の一例を示す図である。 図13は、応用例に係る学習処理の手順を示すフローチャートである。 図14は、学習回数および誤差の関係の一例を示す図である。 図15は、隠れ層およびニューロン数の変更例を示す図である。 図16Aは、トラフィックの一例を示す図である。 図16Bは、トラフィックの一例を示す図である。 図16Cは、トラフィックの一例を示す図である。 図17は、トラフィックの追加の一例を示す図である。 図18は、トラフィックの追加の一例を示す図である。 図19Aは、リンクの回線速度の一例を示す図である。 図19Bは、第1のトラフィックの時間変化の一例を示す図である。 図19Cは、ニューラルネットワークの一例を示す図である。 図20は、応用例に係る学習処理の手順を示すフローチャートである。 図21は、トラフィックの学習方法の他の一例を示す図である。 図22は、実施例1及び実施例2に係る管理プログラムを実行するコンピュータのハードウェア構成例を示す図である。
以下に添付図面を参照して本願に係る管理装置、管理方法及び管理プログラムについて説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
[システム構成]
図1は、実施例1に係るネットワーク管理システムの構成例を示す図である。図1に示すネットワーク管理システム1は、通信事業者や企業の通信システム等の監視対象システム3に構築されるネットワークNWの管理を実現するネットワーク管理サービスを提供するものである。このネットワーク管理サービスの一環として、ネットワーク管理システム1は、ネットワーク全体のトラフィックを大局的に分析するトラフィック分析機能も提供する。
図1に示すように、ネットワーク管理システム1には、監視対象システム3と、ネットワーク管理装置10と、クライアント端末50とが含まれる。この監視対象システム3には、通信装置30A〜30Cが収容される。以下では、通信装置30A〜30Cのことを総称する場合に「通信装置30」と記載する場合がある。
ここで、図1には、ユーザが使用する端末装置やサーバ装置などのエンドホストの図示を省略したが、監視対象システム3にエンドホストが含まれることを妨げない。また、図1には、あくまで一例として、監視対象システム3に3つの通信装置30が収容される例を示したが、任意の数の通信装置が収容されることとしてもよい。さらに、図1には、ネットワークNWに接続される装置として、ネットワーク管理装置10及び通信装置30を示したが、これ以外の他の装置がネットワークNWに接続されることを妨げず、また、通信装置30にも他の装置が接続されることとしてもかまわない。
ネットワーク管理装置10は、上記のネットワーク管理サービスを提供するコンピュータである。このネットワーク管理装置10は、管理装置の一例である。
一実施形態として、ネットワーク管理装置10は、上記のネットワーク管理サービスを実現するパッケージソフトウェアやオンラインソフトウェアを所望のコンピュータにインストールさせることによってSDN(Software-Defined Networking)コントローラとして実装できる。ここでは、あくまで一例として、ネットワーク管理装置10の一機能として上記のトラフィック分析機能が実装される場合を例示したが、上記のトラフィック分析機能は必ずしもネットワーク管理装置10の一機能として実装されずともかまわない。例えば、ネットワーク管理装置10の外部装置として、トラフィック分析機能を有する装置がネットワーク管理装置10またはネットワークNWに接続されることとしてもかまわない。このネットワーク管理装置10は、ネットワークNWの一例として、IP−VPN(Internet Protocol Virtual Private Network)や広域イーサネット(登録商標)などのキャリアイーサネット(登録商標)の監視、設定や制御などを含む管理を実行することができる。このようにネットワーク管理装置10により管理されるネットワークNWは、物理ネットワークに限定されず、SDNやNFV(Network Function Virtualization)などの技術により仮想化された仮想ネットワークであってもよい。
通信装置30は、監視対象システム3のネットワークNWを形成する装置である。この通信装置30には、一例として、イーサネット(登録商標)スイッチやMPLS(Multi Protocol Label Switching)スイッチ、IP(Internet Protocol)ルータ、L(Layer)4スイッチ、L7スイッチなどが含まれる。
クライアント端末50は、上記のネットワーク管理サービスの提供を受けるコンピュータである。このクライアント端末50は、一例として、ネットワークNWを管理するネットワーク管理者等の関係者により使用される。ここで、上記のネットワーク管理サービスの提供により、クライアント端末50は、必ずしもtelnetやSSH(Secure SHell)の動作環境を有さずともかまわない。このため、クライアント端末50には、汎用のブラウザの動作環境を有する任意のコンピュータを採用することができる。またクライアント端末50は、ネットワーク管理装置10と物理的に同一の装置として構成されてもよい。
[課題の一側面]
ここで、上記の従来技術における課題の一側面について説明する。一般的に、ネットワークNW上の数あるリンクやポートのトラフィックとの比較に固定の閾値が設定される運用管理が行われることがある。このような運用管理では、一側面として、ネットワークNWの規模や構成の複雑化に伴って複雑に変化するトラフィックに適切な閾値を設定できず、トラフィックの挙動を適切に監視することが困難である。
図2は、トラフィックの変化の一例を示す図である。図2には、ネットワークNW上のあるリンク1のトラフィックの時間変化が示されている。図2に示すように、昼間はトラフィック量が多く、夜間はトラフィック量が少ないといった時間的変動に、さらに、ユーザ数や、ユーザが使用するアプリケーションやサービスの増加により時間経過とともにトラフィック量が全体的に徐々に増加する変化が重畳する傾向にあるリンク1で計測されるトラフィックが示されている。
このような場合、当初、運用者は、ピークのトラフィック量を元に閾値Th1を設定し、ある時点までは、特に異常が無ければトラフィック急増などの変化が検知されることはない。ところが、トラフィック量が徐々に増加することによって、ある時点からピークのトラフィック量が閾値Th1を超過し、トラフィック変化の検知が繰り返される状況が起こり得る。このような、定常的なユーザ数の増加等によるトラフィック量の増加は、異常の発生ではないものの、異常が発生する場合と同じように閾値超過のアラートAL1及びAL2が通知されるので、運用者にとっては誤検知として不要な調査や確認などの作業が発生する一因となる。
図3は、トラフィックの変化の一例を示す図である。図3には、ネットワークNW上のあるリンク2のトラフィックの時間変化が示されている。図3に示すように、定常的に流れるトラフィック量は少ないものの、例えば、月曜の午前中にはソフトウェアアップデート、また、金曜午後にはストレージへのデータバックアップなどが定期的に予定されており、アップデートやバックアップが実行された時にだけトラフィック量が一時的に増加する傾向にあるリンク2で計測されるトラフィックが示されている。
このような場合、運用者は、定常的なトラフィック量を元に閾値Th2を設定し、通常時は特に異常が無ければトラフィック急増などの変化が検知されることはないが、ソフトウェアアップデートやデータバックアップなど一時的なトラフィック量の増加によってトラフィック量が閾値Th2を超過し、トラフィック変化の検知が繰り返される状況が起こり得る。このように意図的または計画的に起こり得るトラフィック量の増加は、異常の発生ではないものの、異常が発生する場合と同じように閾値超過のアラートAL3及びAL4が通知されるので、運用者にとっては誤検知として不要な調査や確認などの作業が発生する原因となる。また、これらの誤検知を回避するために、閾値Th2を大きな値に設定すると、ソフトウェアアップデートやデータバックアップが行われる時間帯以外の通常時に、ネットワークNWにおいて異常が発生してトラフィックが急増する場合に、その異常が検知されなくなってしまう。
図2及び図3に示す通り、ネットワークNWの規模や構成の複雑化に伴って複雑に変化するトラフィックに固定の閾値を設定するのでは、トラフィックの挙動を適切に分析するのは困難であることがわかる。これを解決するために、一例として、閾値を動的に変更しようとしても、リンクやポートが異なればトラフィックの時間変化の傾向も異なるので、閾値を動的に変更するアルゴリズムも個別に調整することになる。
これを背景にして、ニューラルネットワークを用いて、トラフィック量とその日付を対応付けて学習し、トラフィック量の変動の上限値を予測するトラフィック量予測装置が提案されている。
しかしながら、上記のトラフィック量予測装置は、ネットワークに含まれるポートやリンクを通過するトラフィックを局所的に分析するものに過ぎない。それ故、上記のトラフィック量予測装置では、ネットワーク全体のトラフィックを大局的に分析することができない場合がある。
[トラフィック分析機能の一側面]
そこで、本実施例に係るネットワーク管理装置10は、ネットワークNWの外からネットワークNW内へ入力される第1のトラフィックに基づいてネットワークNWの内からネットワークNW外へ出力される第2のトラフィックを推定するモデルを学習し、第2のトラフィックの推定値と実測値を比較する。
図4は、トラフィックの学習方法の一例を示す図である。図4に示すTR11、TR12及びTR13は、いずれかのエンドホストから送信されてネットワークNWへ入力され、ネットワークNW内で転送される第1のトラフィックを指す。また、図4に示すTR21、TR22及びTR23は、ネットワークNW内で転送され、最終的にいずれかのエンドホストへ向けて出力される第2のトラフィックを指す。
ネットワーク管理装置10は、多層構造のニューラルネットワークを用いる深層学習、いわゆるディープラーニングの教師データとして、各時刻における第1のトラフィックTR11〜TR13の実測値および第2のトラフィックTR21〜TR23の実測値の履歴を用いる。以下、各時刻における第1のトラフィックTR11〜TR13の実測値および第2のトラフィックTR21〜TR23の実測値の履歴、トラフィックの実測値の時系列データのことを「データセット」と記載する場合がある。
すなわち、ネットワーク管理装置10は、現在より前の各時刻における第1のトラフィックTR11〜TR13、および、第2のトラフィックTR21〜TR23のデータを、それぞれニューラルネットの入力層および出力層の値として用い、順伝播による出力値計算、誤差計算(例えば二乗誤差など)、誤差逆伝播法および重み係数の最適化手法(例えば確率的勾配降下法やAdamなど)による誤差の最小化などの計算を行う。これにより、ネットワークNWに対して第1のトラフィックTR11〜TR13がある値で入力された場合に、普段の挙動として、第2のトラフィックTR21〜TR23がそれぞれどのような値となるかが学習されることになる。
例えば、確率的勾配降下法が用いられる場合、ネットワーク管理装置10は、ある時刻における第1のトラフィックTR11〜TR13の実測値および第2のトラフィックTR21〜TR23の実測値の履歴を1サンプルとして用いる。すなわち、ネットワーク管理装置10は、第1のトラフィックTR11、TR12及びTR13の実測値をニューラルネットワークのモデルの入力層へ入力することにより、第2のトラフィックTR21〜TR23を推定する。このように推定される第2のトラフィックTR21〜TR23のことを「推定値」と記載する場合がある。その上で、ネットワーク管理装置10は、モデルから出力される第2のトラフィックTR21〜TR23の推定値と、第2のトラフィックTR21〜TR23の実測値との誤差を最小化するモデルの学習を実行する。すなわち、ネットワーク管理装置10は、誤差の勾配を用いて出力層から順に入力層へ向かって各層のニューロンごとに求められた重みの修正量にしたがって重みの修正が実施される。このような学習がデータセットのサンプルごとに実施される。なお、ここでは、正例のラベルが付与されたサンプルを学習に用いる場合を例示したが、負例のラベルが付与されたサンプルを学習に用いることができるのは言うまでもない。
このようにニューラルネットワークのモデル学習を実行した上で、ネットワーク管理装置10は、モデル学習により重み係数の最適化が行われたニューラルネットに対して、現在の第1のトラフィックTR11〜TR13の値を入力層へ入力し、モデルの出力層から出力される第2のトラフィックTR21〜TR23の計算結果を得る。この計算結果は、第1のトラフィックTR11〜TR13に対し、普段の挙動に基づいて推定される現在の第2のトラフィックTR21〜TR23の推定値と言える。
その後、ネットワーク管理装置10は、第2のトラフィックTR21〜TR23の推定値が計算結果として得られる度に、第2のトラフィックTR21〜TR23の推定値と、ネットワークNWの通信装置30で計測された同時刻の第2のトラフィックTR21〜TR23の実測値とを比較する。例えば、第2のトラフィックTR21の推定値と実測値の差、第2のトラフィックTR22の推定値と実測値の差、さらには、第2のトラフィックTR23の推定値と実測値の差が所定の閾値以上であるか否かを判定する。
この結果を通じて、ネットワーク管理装置10は、第2のトラフィックTR21〜TR23の実測値が普段と同じ傾向であるか、それとも異なる傾向であるかを分析し、普段と異なる挙動が発生しているかどうかを検知することができる。例えば、推定値と実測値の差が閾値以上である場合、ネットワーク管理装置10は、推定値と実測値の大小関係を比較する。そして、実測値が推測値よりも大きい場合、普段とトラフィックの傾向が異なる上、普段では想定されないほどトラフィックが異常に多い挙動を示していることを検出できる。例えばこの場合には、ネットワークNWの外から中へ入力されたトラフィックが、いずれかの通信装置30の先に接続された端末やサーバ装置へ集中している状況や、ネットワークの外から中へ入力されたトラフィックを送信している端末装置がコンピュータウィルス等に感染し、不特定多数の宛先に対してトラフィックを送信している状況が、発生している可能性があることが予想される。また、実測値が推定値よりも小さい場合、普段とトラフィックの傾向が異なる上、普段では想定されないほどトラフィックが異常に少ない挙動を示していることを検出できる。例えばこの場合には、ネットワークNWの外から中へ入力されたトラフィックは普段通りの傾向であるが、ネットワークNWの内部で通信装置や回線の障害が発生し、トラフィックの輻輳やパケットロスによりネットワークNWの中から外へ送信されるトラフィックが減少した可能性があることが予想される。これらの挙動のうち、ネットワーク管理装置10は、少なくともいずれか一方のアラートをクライアント端末50へ出力することができる。
このように、本実施例に係るネットワーク管理装置10は、ネットワークNWの内からネットワークNW外へ出力される第2のトラフィックを推定して推定値と実測値を比較するので、ネットワークNW全体のトラフィックを大局的に分析できる。さらに、本実施例に係るネットワーク管理装置10では、第2のトラフィックの推測値と実測値を比較するので、トラフィックと比較する閾値が固定化されず、ネットワークNWの規模や構成の複雑化に伴って複雑に変化するトラフィックの挙動を適切に分析できる。
[ネットワーク管理装置10の構成]
図5は、実施例1に係るネットワーク管理装置10の機能的構成を示すブロック図である。図5に示すように、ネットワーク管理装置10は、通信I/F(interface)部11と、記憶部13と、制御部15とを有する。なお、ネットワーク管理装置10は、図5に示した機能部以外にも既知のコンピュータが有する各種の機能部、例えば各種の入力デバイスや音声出力デバイスなどの機能部を有することとしてもかまわない。
通信I/F部11は、他の装置、例えば通信装置30やクライアント端末50との間で通信制御を行うインタフェースである。
一実施形態として、通信I/F部11は、LAN(Local Area Network)カードなどのネットワークインタフェースカードを採用できる。例えば、通信I/F部11は、各種のコマンドを通信装置30へ送信したり、通信装置30から通信装置30が記憶するConfig情報やMIB(Management Information Base)の全部またはその一部を受信したりする。また、通信I/F部11は、クライアント端末50からネットワークNWに対する各種の設定を受け付けたり、ネットワークNWのトラフィックの分析結果、例えば異常のアラートをクライアント端末50へ送信したりする。
記憶部13は、制御部15で実行されるOS(Operating System)を始め、上記のネットワーク管理サービスを実現するネットワーク管理プログラムなどの各種プログラムに用いられるデータを記憶する記憶デバイスである。
一実施形態として、記憶部13は、ネットワーク管理装置10における補助記憶装置に対応する。例えば、記憶部13には、HDD(Hard Disk Drive)、光ディスクやSSD(Solid State Drive)などを採用できる。この他、EPROM(Erasable Programmable Read Only Memory)などのフラッシュメモリも補助記憶装置に対応する。
記憶部13は、制御部15で実行されるプログラムに用いられるデータの一例として、トポロジ情報13aと、トラフィック情報13bと、モデル情報13cとを記憶する。これらトポロジ情報13a、トラフィック情報13b及びモデル情報13c以外にも、他の電子データを併せて記憶することもできる。例えば、記憶部13には、ネットワーク管理者等のユーザの権限を管理するために、ユーザごとに設定操作や閲覧を許可する通信装置30または通信装置30のグループが規定されたユーザ権限情報なども記憶することができる。なお、ここでは、ニューラルネットワークのモデルが学習される前から保存できるトポロジ情報13aの説明を先行して行い、トラフィック情報13b及びモデル情報13cについては生成が行われる制御部15の機能部の説明に合せて行うこととする。
トポロジ情報13aは、ネットワークNWの接続形状に関する情報である。このトポロジ情報13aには、デバイス情報13a1、ポート情報13a2及びリンク情報13a3などが含まれる。
このうち、デバイス情報13a1には、通信装置30に関する情報が定義される。例えば、デバイス情報13a1には、デバイスID(IDentification)やデバイス名、IPアドレスなどの項目が対応付けられたデータを採用できる。ここで言う「デバイスID」とは、通信装置30を識別する識別情報を指す。また、「デバイス名」とは、通信装置30に定義された名称を指す。また、「IPアドレス」は、言葉通りの意味であるが、ここでは、デバイスIDを持つ通信装置30に割り当てられたIPアドレスを指し、例えば、ネットワークNWの構築時にSE等により設定される。なお、ここでは、通信装置30を定義する項目の一例として、デバイス名やIPアドレスを例示したが、この他にも通信装置30の性能情報などの他の項目をデバイス情報13a1にさらに含めることもできる。
また、ポート情報13a2には、通信装置30が有するポートに関する情報が定義される。例えば、ポート情報13a2には、デバイスIDやポートID、インタフェース名、VLAN設定などの項目が対応付けられたデータを採用できる。ここで言う「デバイスID」は、デバイス情報13a1に含まれるデバイスIDと同様に、通信装置30の識別情報を指すが、ここでは、ポートIDで識別されるポートを有する通信装置30のことを意味する。また、「ポートID」とは、通信装置30が有するポートを識別する識別情報を指す。また、「インタフェース名」とは、ポートに定義されたインタフェースの名称を指す。また、「VLAN設定」とは、ポートベースVLANやタグVLANなどの設定を指す。
また、リンク情報13a3は、通信装置30のポート間を接続するリンクに関する情報が定義される。例えば、リンク情報13a3には、リンクID、デバイスID1、ポートID1、デバイスID2及びポートID2などの項目が対応付けられたデータを採用できる。ここで言う「リンクID」とは、リンクを識別する識別情報を指す。また、「ポートID1」及び「ポートID2」は、ポート情報13a2に含まれるポートIDと同様に、ポートの識別情報を指すが、ここでは、リンクIDで識別されるリンクを接続する2つのポートの識別情報を意味する。さらに、「デバイスID1」及び「デバイスID2」は、デバイス情報13a1に含まれるデバイスIDと同様に、通信装置30の識別情報を指すが、ここでは、ポートID1で識別されるポートを有する通信装置30の識別情報と、ポートID2で識別されるポートを有する通信装置30の識別情報のことを意味する。このように、リンク情報13a3には、ポート情報13a2に含まれるポートの中でも、結線済みのポートまたはリンクアップ後のポートが登録される。
制御部15は、ネットワーク管理装置10の全体制御を行う処理部である。
一実施形態として、制御部15は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などのハードウェアプロセッサにより実装することができる。ここでは、プロセッサの一例として、CPUやMPUを例示したが、汎用型および特化型を問わず、任意のプロセッサにより実装することができる。例えば、制御部15は、GPGPU(General-Purpose computing on Graphics Processing Units)等により実装することもできる。この他、制御部15は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによって実現されることとしてもかまわない。
制御部15は、図示しない主記憶装置として実装されるDRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などのRAMのワークエリア上に、上記のネットワーク管理サービスの機能を実現する管理プログラムを展開することにより、下記の処理部を仮想的に実現する。
制御部15は、図5に示すように、取得部15aと、選択部15bと、第1の設定部15cと、第2の設定部15dと、学習実行部15eと、推定部15fと、比較部15gと、出力部15hとを有する。
取得部15aは、通信装置30から各種の情報を取得する処理部である。
一実施形態として、取得部15aは、SNMP(Simple Network Management Protocol)マネージャなどにより実装できる。例えば、取得部15aは、通信装置30上で動作するSNMPエージェントにSNMPコマンドを所定の間隔、例えば5分間で送信することにより、各通信装置30のMIB情報を定期的に取得する。このとき、取得部15aは、MIB情報のうちインタフェース情報を取得するオブジェクトIDを指定してSNMPコマンドをSNMPエージェントへ送信することにより、SNMPエージェントが指定するポートのトラフィック量を取得することができる。このようにポート単位で取得されるトラフィックの時系列データ、すなわちトラフィックの履歴がトラフィック情報13bとして記憶部13へ保存される。このトラフィック情報13bがニューラルネットワークのモデルの学習に用いられる。また、ニューラルネットワークのモデルの学習後には、第2のトラフィックの推定を行うために、取得部15aにより取得された第2のトラフィックが推定部15fへ入力される。
なお、ここでは、MIB情報の取得によりトラフィック量を取得する場合を例示したが、他の方法によりトラフィック量を取得することもできる。例えば、通信装置30にSSH接続を行って通信装置30にログインした上でshow系のコマンドを送信する。これにより、通信装置30から各ポートのトラフィック量などのインタフェース情報をコマンドの戻り値として取得することもできる。
選択部15bは、学習対象とするトラフィックを選択する処理部である。
一実施形態として、選択部15bは、クライアント端末50から学習の実行指示を受け付けた場合、あるいはトラフィック情報13bとして所定のサンプル数に対応するトラフィックの履歴が記憶部13に蓄積された場合、次のような処理を実行する。すなわち、選択部15aは、記憶部13に記憶されたトポロジ情報13aを参照して、ネットワークNWの外からネットワークNW内へ入力される第1のトラフィックを受信する通信装置30、及び、ネットワークNWの内からネットワークNW外へ出力される第2のトラフィックを送信する通信装置30を選択する。続いて、選択部15bは、第1のトラフィックを受信する通信装置30ごとに当該通信装置30が有するポートのうち第1のトラフィックの受信に用いられるポートを選択すると共に、第2のトラフィックを送信する通信装置30ごとに当該通信装置30が有するポートのうち第2のトラフィックの送信に用いるポートを選択する。
第1の設定部15cは、ニューラルネットワークのモデルの初期パラメータを設定する処理部である。
一実施形態として、第1の設定部15cは、選択部15bにより選択された第1のトラフィックの数および第2のトラフィックの数に基づいて、ニューラルネットにおける入力層の入力数および出力層の出力数を設定する。例えば、第1の設定部15cは、モデルの入力層に第1のトラフィックの受信に用いるポートと同数のニューロンを設定すると共に、モデルの出力層に第2のトラフィックの送信に用いるポートと同数のニューロンを設定する。また、第1の設定部15cは、隠れ層の層数、隠れ層の各層のニューロン数の初期値を設定する。この初期値は、一例として、ネットワークNWの規模によらず、固定値を用いることができる。この他、トポロジ情報13aに基づいて設定することができる。例えば、通信装置30の数に応じて初期値を設定することができる。さらに、第1の設定部15cは、学習実行部15eによるモデル学習の実行後に誤差が所定の閾値以内に収束しない場合、隠れ層の層数、隠れ層の各層のニューロン数の設定を変更することができる。
第2の設定部15dは、ニューラルネットワークのモデルの学習パラメータを設定する処理部である。
一実施形態として、第2の設定部15dは、学習パラメータとして、モデルの学習に用いるサンプルの数やモデルの学習を実施する回数などを設定する。以下、モデルの学習に用いるサンプルの数のことを「学習サンプル数」と記載し、モデルの学習を実施する回数のことを「学習回数」と記載する場合がある。この学習パラメータには、一例として、上記の管理プログラムの開発者又は設計者等により設定された値を用いることができる他、ネットワーク管理者がリクエストする精度から逆算して設定することもできる。
学習実行部15eは、多層構造のニューラルネットワークをモデルとして用いる深層学習、いわゆるディープラーニングを実行する処理部である。
一実施形態として、学習実行部15eは、記憶部13に記憶されたトラフィック情報13bのうち、第1のトラフィックの受信に用いるポートで計測された第1のトラフィックおよび第2のトラフィックの送信に用いるポートで計測された第2のトラフィックを読み出す。このとき、学習実行部15eは、一例として、学習が開始された時刻から遡って、第2の設定部15dにより設定された学習サンプル数分の第1のトラフィック及び第2のトラフィックの履歴をデータセットとして記憶部13から読み出す。
その上で、学習実行部15eは、データセットに含まれるサンプルごとに、次のような処理を実行する。例えば、図4に示す例で言えば、学習実行部15eは、第1のトラフィックTR11、TR12及びTR13の実測値をニューラルネットワークのモデルの入力層へ入力することにより、第2のトラフィックTR21〜TR23を推定する。その後、学習実行部15eは、モデルから出力される第2のトラフィックTR21〜TR23の推定値と、第2のトラフィックTR21〜TR23の実測値との誤差、例えば平均二乗誤差や平均平方二乗誤差などを最小化するモデルの学習を実行する。すなわち、ネットワーク管理装置10は、誤差の勾配を用いて出力層から順に入力層へ向かって各層のニューロンごとに求められた重みの修正量にしたがって重みの修正が実施される。このような学習をサンプルごとに実行した上で、学習実行部15eは、第2の設定部15dにより設定された学習回数にわたってデータセットの学習を繰り返し実行する。この結果として得られたモデルのパラメータ、すなわちニューラルネットワークを形成する入力層、隠れ層及び出力層の各層のニューロンやシナプスなどの層構造を始め、各層の重みやバイアスなどのパラメータなどがモデル情報13cとして記憶部13に保存される。
推定部15fは、ニューラルネットワークのモデルを用いて、第2のトラフィックを推定する処理部である。
一実施形態として、推定部15fは、記憶部13にモデル情報13cが保存された後、取得部15aにより入力層の各ニューロンに対応する第1のトラフィックが取得される度に、次のような処理を実行することができる。例えば、図4に示す例で言えば、推定部15fは、取得部15aにより取得された入力層の各ニューロンに対応する第1のトラフィックTR11、TR12及びTR13の実測値をモデル情報13cにより定まるモデルの入力層へ入力する。これにより、モデルの出力層から第2のトラフィックTR21〜TR23の計算結果、すなわち推定値が出力される。
比較部15gは、第2のトラフィックの推定値と実測値を比較する処理部である。
一実施形態として、比較部15gは、推定部15fにより推定された第2のトラフィックの推定値と、取得部15aにより取得された第2のトラフィックの実測値とを比較する。例えば、図4に示す例で言えば、比較部15gは、第2のトラフィックTR21の推定値と実測値の差、第2のトラフィックTR22の推定値と実測値の差、さらには、第2のトラフィックTR23の推定値と実測値の差が所定の閾値以上であるか否かを判定する。なお、ここでは、一例として、第2のトラフィックTR22の推定値と実測値を比較する場合を例示したが、第2のトラフィックの実測値の代わりに所定の閾値を用い、第2のトラフィックTR22の推定値と所定の閾値を比較することとしてもかまわない。
出力部15hは、比較部15gによる比較結果を出力する処理部である。
一実施形態として、出力部15hは、比較部15gにより第2のトラフィックの推定値と実測値が比較される度に、第2のトラフィックの推定値と実測値の差をクライアント端末50へ出力することができる。この他、出力部15hは、第2のトラフィックの推定値と実測値の差が閾値以上である場合、アラートをクライアント端末50へ出力することができる。このとき、出力部15hは、実測値が推測値よりも大きい場合に絞ってアラートを出力することもできるし、推測値が実測値よりも小さい場合に絞ってアラートを出力することもできる。なお、第2のトラフィックTR22の推定値が閾値以上である場合、アラートを出力することもできる。
[処理の流れ]
次に、本実施例に係るネットワーク管理装置10の処理の流れについて説明する。ここでは、ネットワーク管理装置10により実行される(1)学習処理を説明した後に、ネットワーク管理装置10により実行される(2)トラフィックの監視処理を説明することとする。
(1)学習処理
図6は、実施例1に係る学習処理の手順を示すフローチャートである。この処理は、一例として、クライアント端末50から学習の実行指示を受け付けた場合、あるいはトラフィック情報13bとして所定のサンプル数に対応するトラフィックの履歴が記憶部13に蓄積された場合に開始される。
図6に示すように、選択部15bは、記憶部13に記憶されたトポロジ情報13aを参照して、ネットワークNWの外からネットワークNW内へ入力される第1のトラフィックを受信する通信装置30、及び、ネットワークNWの内からネットワークNW外へ出力される第2のトラフィックを送信する通信装置30を選択する(ステップS101)。
続いて、選択部15bは、ステップS101で第1のトラフィックを受信する通信装置30として選択された通信装置30が有するポートのうち第1のトラフィックの受信に用いられるポートを選択すると共に、ステップS101で第2のトラフィックを送信する通信装置30として選択された通信装置30が有するポートのうち第2のトラフィックの送信に用いるポートを選択する(ステップS102)。
そして、第1の設定部15cは、ステップS102で選択された第1のトラフィックの数および第2のトラフィックの数に基づいて、ニューラルネットにおける入力層の入力数および出力層の出力数を設定する(ステップS103)。さらに、第2の設定部15dは、モデルの学習に用いるサンプルの数やモデルの学習を実施する回数などの学習パラメータを設定する(ステップS104)。
その上で、学習実行部15eは、ステップS104で設定された学習回数にわたってステップS104で設定された学習サンプル数に対応するデータセットに含まれるサンプルごとに次のような学習処理を実行する(ステップS105)。すなわち、学習実行部15eは、ステップS102で選択された第1のトラフィックの受信ポートで計測される第1のトラフィックの実測値をステップS103で設定されたモデルの入力層へ入力することにより得られた第2のトラフィックの推定値と、第2のトラフィックの実測値との誤差を最小化するモデルの学習を実行する。
(2)トラフィックの監視処理
図7は、実施例1に係るトラフィックの監視処理の手順を示すフローチャートである。この処理は、一例として、記憶部13にモデル情報13cが保存された後に実行することができる。
図7に示すように、取得部15aにより入力層の各ニューロンに対応する第1のトラフィックの実測値が取得されると(ステップS201)、推定部15fは、ステップS201で取得された入力層の各ニューロンに対応する第1のトラフィックの実測値をモデル情報13cにより定まるモデルの入力層へ入力することにより、第2のトラフィックを推定する(ステップS202)。
続いて、比較部15gは、取得部15aにより取得された出力層の各ニューロンに対応する第2のトラフィックの実測値と、ステップS202で推定された第2のトラフィックの推定値とを比較する(ステップS203)。
ここで、第2のトラフィックの推定値と実測値の差が閾値以上である場合(ステップS204Yes)、出力部15hは、クライアント端末50にアラートを出力し(ステップS205)、ステップS201へ移行する。一方、第2のトラフィックの推定値と実測値の差が閾値以上でない場合(ステップS204No)、ステップS205の処理をスキップし、ステップS201へ移行する。
[効果の一側面]
上述してきたように、本実施例に係るネットワーク管理装置10は、ネットワークNWの外からネットワークNW内へ入力される第1のトラフィックに基づいてネットワークNWの内からネットワークNW外へ出力される第2のトラフィックを推定するモデルを学習し、第2のトラフィックの推定値と実測値を比較する。したがって、本実施例に係るネットワーク管理装置10によれば、ネットワークNW全体のトラフィックを大局的に分析できる。さらに、本実施例に係るネットワーク管理装置10では、ネットワークNWの規模や構成の複雑化に伴って複雑に変化するトラフィックの挙動を適切に分析することもできる。
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
[第1のトラフィックの推定]
上記の実施例1では、第1のトラフィックの実測値から第2のトラフィックを推定するモデルを学習する場合を例示したが、第2のトラフィックの実測値から第1のトラフィックを推定するモデルを学習することもできる。
図8は、トラフィックの学習方法の他の一例を示す図である。図8に示すTR11、TR12及びTR13は、いずれかのエンドホストから送信されてネットワークNWへ入力され、ネットワークNW内で転送される第1のトラフィックを指す。また、図8に示すTR21、TR22及びTR23は、ネットワークNW内で転送され、最終的にいずれかのエンドホストへ向けて出力される第2のトラフィックを指す。
ここで、ネットワーク管理装置10は、上記の実施例1と同様、多層構造のニューラルネットワークを用いる深層学習、いわゆるディープラーニングの教師データとして、各時刻における第1のトラフィックTR11〜TR13の実測値および第2のトラフィックTR21〜TR23の実測値の履歴を用いるが、入力層に入力される入力データとして、第1のトラフィックTR11〜TR13の実測値の代わりに第2のトラフィックTR21〜TR23の実測値をモデルの入力層へ入力し、第1のトラフィックを推定する点が異なる。
例えば、確率的勾配降下法が用いられる場合、ネットワーク管理装置10は、ある時刻における第2のトラフィックTR21〜TR23の実測値および第1のトラフィックTR11〜TR13の実測値の履歴を1サンプルとして用いる。すなわち、ネットワーク管理装置10は、第2のトラフィックTR21、T22及びTR23の実測値をニューラルネットワークのモデルの入力層へ入力することにより、第1のトラフィックTR11〜TR13を推定する。その上で、ネットワーク管理装置10は、モデルから出力される第1のトラフィックTR11〜TR13の推定値と、第1のトラフィックTR11〜TR13の実測値との誤差を最小化するモデルの学習を実行する。
このようにニューラルネットワークのモデル学習を実行した上で、ネットワーク管理装置10は、モデル学習により重み係数の最適化が行われたニューラルネットに対して、現在の第2のトラフィックTR21〜TR23の値を入力層へ入力し、モデルの出力層から出力される第1のトラフィックTR11〜TR13の計算結果を得る。この計算結果は、第2のトラフィックTR21〜TR23に対し、普段の挙動に基づいて推定される現在の第1のトラフィックTR11〜TR13の推定値と言える。
その後、ネットワーク管理装置10は、第1のトラフィックTR11〜TR13の推定値が計算結果として得られる度に、第1のトラフィックTR11〜TR13の推定値と、ネットワークNWの通信装置30で計測された同時刻の第1のトラフィックTR11〜TR13の実測値とを比較する。例えば、第1のトラフィックTR11の推定値と実測値の差、第1のトラフィックTR12の推定値と実測値の差、さらには、第1のトラフィックTR13の推定値と実測値の差が所定の閾値以上であるか否かを判定する。
この結果を通じて、ネットワーク管理装置10は、第1のトラフィックTR11〜TR13の実測値が普段と同じ傾向であるか、それとも異なる傾向であるかを分析し、普段と異なる挙動が発生しているかどうかを検知することができる。例えば、推定値と実測値の差が閾値以上である場合、ネットワーク管理装置10は、推定値と実測値の大小関係を比較する。そして、実測値が推測値よりも大きい場合、ネットワークNW外から入力されるトラフィックの傾向が普段と異なる上、普段では想定されないほどトラフィックが異常に多い挙動を示していることを検出できる。また、実測値が推測値よりも小さい場合、ネットワークNW外から入力されるトラフィックの傾向が普段と異なる上、普段では想定されないほどトラフィックが異常に少ない挙動を示していることを検出できる。これらの挙動のうち、ネットワーク管理装置10は、少なくともいずれか一方のアラートをクライアント端末50へ出力することができる。
このように、ネットワーク管理装置10は、ネットワークNW外から入力されるトラフィックの挙動を分析することができる。さらに、ネットワーク管理装置10は、上記の実施例1と組み合わせることにより、ネットワークNW外から入力されるトラフィックの挙動およびネットワークNW外へ出力されるトラフィックの挙動の両方を分析することもできる。
[ネットワークの利用情報を用いる学習]
ネットワーク管理装置10は、第1のトラフィックの実測値および第2のトラフィックの実測値に加えて、ネットワークの利用情報をさらに用いて、第2のトラフィックを推定することもできる。
ここで、ネットワークの利用情報の一例として、エンドホスト、例えば端末装置やサーバ装置などの稼働日、いわゆる営業日に関するインデックスを採用することができる。図9は、トラフィックの学習方法の他の一例を示す図である。例えば、エンドホストが所属する事業者が企業や教育機関などの団体である場合、カレンダにおける曜日や祝日、およびその団体が規定する営業日や休業日、また営業時間や休業時間などにより、「0」、「1」、「0.5」などのインデックスを付与することができる。具体例を挙げれば、月曜から金曜までの平日などのように、午前および午後の終日にわたって営業が行われる日付に計測されるトラフィックには、「1」が付与される。また、午前または午後の半日の営業、いわゆる半ドンが行われる日付に計測されるトラフィックには、「0.5」が付与される。この他、日曜や祝祭日などの休業日に計測されるトラフィックには、「0」が付与される。
図9に示すように、上記のインデックスが付与されたインデックスデータIx31をさらに参照して、ネットワーク管理装置10は、モデルの入力層にインデックス付きの第1のトラフィックの実測値を学習のサンプルとして入力することもできる。すなわち、モデルの入力層には、第1のトラフィックTR11〜TR13に加えて、インデックスデータIx31に定義されたインデックスを入力するニューロンが追加して設定された上で、当該ニューロンには、インデックスデータIx31に定義されたインデックスにしたがって「0」、「0.5」または「1」が入力される。これにより、第2のトラフィックTR21〜TR23の推定精度を高めることが可能になる。
[エッジに位置する通信装置のトラフィックを学習]
選択部15bは、学習対象とするトラフィックとして、ネットワークNWのエッジに位置する通信装置30が受信する第1のトラフィックまたはネットワークNWのエッジに位置する通信装置30から送信される第2のトラフィックを選択することができる。
図10は、トラフィックの学習方法の他の一例を示す図である。図10には、ネットワークNWに含まれる9つの通信装置30A〜30Iのトポロジが示されている。図10には、説明の便宜上、通信装置30間を接続するリンクを1つに集約して示しているが、必ずしも1つのリンクで接続されずともよく、アクセスポートで接続されるリンクやトランクポートで接続されるリンクが複数含まれていてもかまわない。
図10に示すトポロジでネットワークNWが形成される場合、通信装置30A〜30Fは、エンドホストやネットワークNWとは異なる他のネットワークに接続されており、ネットワークNWのエッジに位置していると識別できる。一方、通信装置30G〜30Iは、通信装置30A〜30Fから転送されたパケットを中継しており、ネットワークNWにおいて内部に位置していると識別できる。
このような場合、選択部15bは、学習対象として、通信装置30A〜30Fを選択する。さらに、選択部15bは、通信装置30A〜30Fが有するポートのうち第1のトラフィックが受信されるポートおよび第2のトラフィックが送信されるポートを選択する。例えば、通信装置30Aを例に挙げれば、第1のトラフィックTR11を受信するポートと、第2のトラフィックTR21が送信されるポートとが学習対象として選択される。その上で、学習実行部15eは、第1のトラフィックTR11〜TR16の実測値をニューラルネットワークのモデルの入力層へ入力することにより、第2のトラフィックTR21〜TR26を推定する。そして、学習実行部15eは、モデルから出力される第2のトラフィックTR21〜TR26の推定値と、第2のトラフィックTR21〜TR26の実測値との誤差を最小化するモデルの学習を実行する。
これにより、ネットワーク管理装置10は、多くの通信装置30を含む大規模なネットワークNWであっても、モデル学習の計算量を低減することができる。なお、図10では、通信装置30A〜30Fにおいて、送信元または宛先のエンドホストと接続している側のポートで計測される第1のトラフィックTR11〜TR16および第2のトラフィックTR21〜TR26を学習に用いる場合を例示したが、通信装置30G〜30Iと接続している側のポートで計測される第1のトラフィックをモデル学習に用いることとしてもかまわない。なぜなら、通信装置30A〜30Fにおいて、通信装置30G〜30Iと接続している側のポートで計測される第1のトラフィックの合計および第2のトラフィックの合計は、送信元または宛先のエンドホストと接続している側のポートで計測される第1のトラフィックTR11〜TR16および第2のトラフィックTR21〜TR26の合計とそれぞれ等価であるからである。
[指定されたレイヤのトラフィックの学習]
選択部15bは、学習対象とするトラフィックとして、所定のレイヤに位置する通信装置30で送受信されるトラフィックを選択することもできる。
図11は、レイヤ別のトラフィックの一例を示す図である。図11には、ネットワークNWに含まれる9つの通信装置30A〜30Iのトポロジが示されている。図11に示すように、ネットワークNWには、レイヤaおよびレイヤbの2階層が含まれる。このうち、レイヤaには、イーサネット(登録商標)フレームを転送するイーサネット(登録商標)スイッチまたはMPLSスイッチなどにより実装される3つの通信装置30G〜30Iが含まれる。一方、レイヤbには、レイヤaよりも上位のレイヤとして、IPルーティングを行うルータなどにより実装される6つの通信装置30A〜30Fが含まれる。
ここで、一例として、クライアント端末50への入力操作を介してレイヤaが監視対象として選択されたとしたとき、ネットワーク管理装置10は、レイヤaを学習対象として識別する。この場合、ネットワーク管理装置10は、通信装置30A〜30Fから送信され、通信装置30G〜30Iで受信される第1のトラフィックTR11〜TR16をニューラルネットの入力層の値として用いるとともに、通信装置30G〜30Iによって宛先に応じて中継され、通信装置30G〜30Iから通信装置30A〜30Fへ向けて送信される第2のトラフィックTR21〜TR26をニューラルネットの出力層の値として用いて、前述の学習を行う。
すなわち、選択部15bは、学習対象として、通信装置30G〜30Iを選択する。さらに、選択部15bは、通信装置30G〜30Iが有するポートのうち通信装置30A〜30Fの対向ポートから第1のトラフィックを受信するポートおよび通信装置30A〜30Fの対向ポートへ第2のトラフィックを送信するポートを選択する。例えば、通信装置30Gを例に挙げれば、第1のトラフィックTR11を受信するポート及び第1のトラフィックTR12を受信するポートと、第2のトラフィックTR21が送信されるポート及び第2のトラフィックTR22が送信されるポートとが学習対象として選択される。その上で、学習実行部15eは、第1のトラフィックTR11〜TR16の実測値をニューラルネットワークのモデルの入力層へ入力することにより、第2のトラフィックTR21〜TR26を推定する。そして、学習実行部15eは、モデルから出力される第2のトラフィックTR21〜TR26の推定値と、第2のトラフィックTR21〜TR26の実測値との誤差を最小化するモデルの学習を実行する。
これにより、ネットワークNWが多くの通信装置30を含み、複数のレイヤを含む大規模なネットワークであっても、所望のレイヤに選択して普段と異なる挙動が発生しているかどうかを検知できる。
[学習サンプル数の決定]
通信ネットワークのトラフィックを学習する場合、必ずしも学習サンプル数が多いほどトラフィックの推定精度が向上するとは限らない。すなわち、通信ネットワークにおけるトラフィック特性は様々である。例えば、毎日同様のトラフィックの推移を繰り返すようなリンクもあれば、平日は毎日同じ推移であるが、週末は平日とは異なる推移となり、これが週毎に繰り返されるような特性を示すリンクもある。また、例えば、ある程度の期間が経つと、ユーザ数の増減やネットワーク構成の変更などが行われることにより、ある時点を境にトラフィックの特性が変わることも有る。
ニューラルネットによる学習およびパターン認識の例として、広く知られている手書き数字や動物の写真の認識のように、特徴が不変のデータパターンを学習する場合、学習サンプル数が多いほど推定精度がより向上することになる。しかし、通信ネットワークのトラフィックをニューラルネットにより学習する場合、トラフィック毎にトラフィック特性は異なり、しかも不変ではなく時間が経つと変化することがある。このため、通信ネットワークのトラフィックを学習する場合、教師データとして用いる過去のトラフィックの実測値は多い方が良いとは限らず、トラフィック特性が変わった時点よりも前の古いデータまで用いて学習させてしまうと、かえって誤差が大きくなってしまう場合がある。
図12は、学習サンプル数および誤差の関係の一例を示す図である。図12に示すグラフの縦軸は、誤差、例えば推定値と実測値の差分の平均二乗和を指し、横軸は、教師データとする学習サンプル数を指す。ここで例として、例えば学習サンプルが5分周期で計測された第1および第2トラフィックの実測値であった場合は、教師データ数が1000であれば過去5分前から5000分前までの実測データ、また教師データ数が2000であれば過去5分前から10000分前までの実測データ、を学習サンプルとして用いるということを意味する。図12に示すように、学習サンプル数が5000になるあたりまでは学習サンプル数が増加するほど誤差が小さくなる傾向にあるが、学習サンプル数が5000を超えたあたりからその傾向には当てはまらなくなる。すなわち、学習サンプル数が7500となったあたりで誤差が最小となり、学習サンプル数が7500を超えると誤差が上昇する局面に入り、学習サンプル数が9000になったあたりでは学習サンプル数が7500である場合よりも誤差が上昇している。
このことから、第2の設定部15dは、複数の学習サンプル数の候補ごとにトラフィックを学習し、最も誤差が少ない学習サンプル数の候補で学習されたモデルをトラフィックの推定に用いることができる。
例えば、ネットワーク管理装置10は、教師データとして用いる過去のトラフィックの実測値の履歴の期間を変えることにより学習サンプル数を変更しながら、所定の学習回数で学習を試験的に行ってみて、誤差が最も小さくなる、あるいは所定の精度を満たす学習サンプル数を採用しても良い。例えば、過去1日分、過去5日分、過去7日分のトラフィックの実測値の履歴を教師データとして学習を行い、過去5日分の場合に最も誤差が小さくなる場合には、過去5日分の教師データを用いて次回以降の学習を行っても良い。
図13は、応用例に係る学習処理の手順を示すフローチャートである。図13には、図6に示すフローチャートと手順が異なるステップが抜粋して示されている。図13に示すように、第1の設定部15cによりニューラルネットにおける入力層の入力数および出力層の出力数が設定されると(ステップS103)、第2の設定部15dは、複数の学習サンプル数の候補の間で同一の学習回数を設定する(ステップS301)。
その後、学習実行部15eは、複数の学習サンプル数の候補のうち1つを選択する(ステップS302)。続いて、学習実行部15eは、ステップS301で設定された学習回数にわたってステップS302で候補として選択された学習サンプル数に対応するデータセットに含まれるサンプルごとに学習処理を実行する(ステップS303)。
そして、全ての学習サンプル数の候補が選択されるまで(ステップS304No)、上記のステップS302及びステップS303の処理が繰り返し実行される。その後、全ての学習サンプル数の候補が選択された場合(ステップS304Yes)、学習実行部15eは、学習サンプル数の候補ごとに学習が行われたモデルのうち誤差が最小である学習サンプル数の候補で学習が行われたモデルを選択し(ステップS305)、ステップS305で選択されたモデルのパラメータがモデル情報13cとして記憶部13に保存される。
これにより、学習に用いる教師データの数が過度に多くなることを抑制できる結果、トラフィックの推定精度を高めることができる。
[学習回数の決定]
前述の通り、通信ネットワークにおけるトラフィックの特性は様々である。また、通信ネットワークの規模、すなわち学習の対象となるトラフィックの数も様々である。例えば、毎日同様に、時間的な変化が少ない単調なトラフィック特性を示すリンクもあれば、日や時間帯によって複雑に変化するトラフィック特性を示すリンクもある。ニューラルネットにより学習を行う場合、計算回数は、前者のような単調なデータパターンを学習する場合よりも、後者のような複雑なデータパターンを学習する場合の方が、より多くの学習回数が要求される。このため、第2の設定部15dは、学習回数を増加させながら誤差の収束を判定し、誤差が最小となる学習回数、誤差が所定の閾値以内となった学習回数、あるいは所定の推定精度を満たす学習回数を採用することができる。なお、誤差が閾値以内であろうと、あるいは推定精度を満たそうと、誤差が収束するまでは学習回数を増加させることができるのは言うまでもない。
図14は、学習回数および誤差の関係の一例を示す図である。図14に示すグラフの縦軸は、誤差を指し、横軸は、学習回数を指す。図14には、1000回から10000回まで1000ずつ学習回数を増加させながらトラフィックの学習が行われた例が示されている。図14に示すように、8000回以上では誤差がそれ以上小さくならずに収束する場合、学習実行部15eは、8000回の学習回数で学習が行われたモデルのパラメータがモデル情報13cとして記憶部13に保存する。この場合、次回以降の学習では、第2の設定部15dは、学習回数を8000回に設定することもできる。
これにより、所望の推定精度を満たしながら、学習のための計算回数が過度に多くなることを抑制し、モデル学習の計算量を削減することができる。
[モデルのパラメータの再設定]
第1の設定部15cは、一定の回数、例えば8000回にわたってデータセットの学習を繰り返しても誤差が所定の閾値以内に収束しない場合、モデルに含まれる隠れ層の数や隠れ層に含まれるニューロン数を増加させることもできる。すなわち、学習回数が誤差を収束されるのに十分であっても、誤差が閾値以内とならない状態で誤差が収束し、それ以上誤差が小さくならない場合がある。このような場合、学習しようとする複雑な入力および出力のデータパターンに対して、ニューラルネットの隠れ層の数やニューロン数が少なすぎることが一因と考えられる。このことから、第1の設定部15cは、モデルに含まれる隠れ層の数または隠れ層に含まれるニューロン数を増加させることもできる。
図15は、隠れ層およびニューロン数の変更例を示す図である。図15には、一例として、第1のトラフィックTR11〜TR13の3つを入力層に入力し、第2のトラフィックTR21〜TR23の3つを出力層から出力するニューラルネットワークのモデルが示されている。例えば、第1の設定部15cは、隠れ層が1層であり、隠れ層のニューロン数が4つであるモデルを用いても誤差が閾値以内に収束しない場合、図15の左部に示すように、隠れ層の層数は1層のままで隠れ層のニューロン数を4つから6つに増加させることができる。これでも誤差が閾値以内に収束しない場合、第1の設定部15cは、図15の右部に示すように、隠れ層の数を1層から2層に増加させることもできる。なお、図15には、ニューロン数が6つの隠れ層を2層設定する場合を例示しているが、ニューロン数は4つのまま隠れ層の数を2層に変更することとしても良い。また、隠れ層の数を3層以上に変更しても良く、各隠れ層のニューロン数は同じであっても異なっていても良い。
これにより、誤差が閾値以内となるまでモデル学習を継続させることができるので、所望の推定精度を満たすモデルを生成することができる。
[トラフィックの追加および削除]
図10では、ネットワークNWのトポロジにおいて、エッジに位置する通信装置30で送信および受信されるトラフィックを学習対象として選択する例を示したが、トラフィックの流れ方によっては、学習を行っても所定の精度で推定を行えない場合がある。
図10に示された通信装置30A〜30Cで受信され、ネットワークNWへ入力される第1のトラフィックTR11〜TR13(例えば、各トラフィック量を100とする)は、例えば宛先となるエンドホスト(サーバ等)が、負荷分散や仮想マシンのマイグレーションなどによって変更となり、通信装置30D〜30Fのいずれかに向けて転送され、第1のトラフィックTR11〜TR13が合計された全てのトラフィックがエンドホストへ送信される場合を想定する。
図16A〜図16Cは、トラフィックの一例を示す図である。図16A〜図16Cには、第1のトラフィックTR11〜TR13の各々が100である場合が示されている。このうち、図16Aには、第1のトラフィックTR11〜TR13の全てのトラフィックが通信装置30Dから送信されるパターン1が示されている。また、図16Bには、全てのトラフィックが通信装置30Eから送信されるパターン2が示されている。さらに、図16Cには、全てのトラフィックが通信装置30Fから送信されるパターン3が示されている。
例えば、パターン1の場合、図16Aに示すように、全てのトラフィックが合計された第2のトラフィックTR21は300となる。一方、通信装置30Eおよび通信装置30Fから送信される第2のトラフィックTR22および第2のトラフィックTR23は0となる。
また、パターン2の場合、図16Bに示すように、全てのトラフィックが合計された第2のトラフィックTR22は300となる。一方、通信装置30Dおよび通信装置30Fから送信される第2のトラフィックTR21および第2のトラフィックTR23は0となる。
また、パターン3の場合、図16Cに示すように、全てのトラフィックが合計された第2のトラフィックTR23は300となる。一方、通信装置30Dおよび通信装置30Eから送信される第2のトラフィックTR21および第2のトラフィックTR22は0となる。
このような状況では、第1のトラフィックTR11〜TR13を入力層の値とし、第2のトラフィックTR21〜TR23を出力層の値としてニューラルネットにより学習を行ったとしても、入力層へ入力されるサンプルの値は常に入力1=100、入力2=100、入力3=100の1種類しかないため、入力層へ入力されるサンプルに応じて出力層から出力される計算結果として、出力1=300、出力2=0および出力3=0のパターン1、出力1=0、出力2=300及び出力3=0のパターン2、さらには、出力1=0、出力2=0及び出力3=300のパターン3のいずれかの出力を得るように学習することは困難であり、モデルに推定値を計算させたとしても誤差が大きくなってしまう。
このような場合、入力層へ入力されるサンプルの値が多くのバリエーションを含むようにして学習が適切に行われるようにするため、学習対象として他のトラフィックを入力層のデータとして追加しても良い。
(1)転送量が最大であるトラフィックの追加
図17は、トラフィックの追加の一例を示す図である。図17には、ネットワークNWのエッジに位置しない通信装置30G〜30I、すなわち第1のトラフィックTR11〜TR13を中継する通信装置30G〜30Iのうち、パターン1〜パターン3の各パターンの合計でより多くのトラフィックを中継する通信装置30Gが選択された例が示されている。さらに、図17には、通信装置30Gが有するポートのうち、通信装置30H側の対向ポートに接続されたポートが出力する第1のトラフィックTR15及び通信装置30I側の対向ポートに接続されたポートが出力する第1のトラフィックTR16を学習対象として入力層のニューロンに追加する例が示されている。
このようなトラフィックの追加が行われた場合、各パターン1〜3の間で、第1のトラフィックTR15および第1のトラフィックTR16の組合せが同一の値の組合せとならず、少なくともいずれかで異なる値を含むことになる。
例えば、パターン1の場合、通信装置30Aから受信した第1のトラフィックTR11および通信装置30Bから受信した第1のトラフィックTR12がそのまま通信装置30Hへ転送される。このため、第1のトラフィックTR16が0となる一方で、第1のトラフィックTR15が200となる。したがって、第1のトラフィックTR15を入力4、第1のトラフィックTR16を入力5とすると、入力層へ入力されるサンプルの値は、入力1=100、入力2=100、入力3=100、入力4=200、入力5=0となる。
また、パターン2の場合、通信装置30Aから受信した第1のトラフィックTR11が通信装置30Hへ転送される一方で、通信装置30Bから受信した第1のトラフィックTR12が通信装置30Iへ転送される。このため、第1のトラフィックTR15が100となると共に、第1のトラフィックTR16も100となる。したがって、入力層へ入力されるサンプルの値は、入力1=100、入力2=100、入力3=100、入力4=100、入力5=100となる。
また、パターン3の場合、通信装置30Aから受信した第1のトラフィックTR11および通信装置30Bから受信した第1のトラフィックTR12がそのまま通信装置30Iへ転送される。このため、第1のトラフィックTR15が0となると共に、第1のトラフィックTR16が200となる。したがって、入力層へ入力されるサンプルの値は、入力1=100、入力2=100、入力3=100、入力4=0、入力5=200となる。
このように、パターン1〜パターン3において第1のトラフィックTR11〜TR13が同一の値である場合でも、パターン1〜パターン3ごとに第1のトラフィックTR15および第1のトラフィックTR16の値が異なる。それ故、パターン1〜パターン3の各パターンの間で値が異なる入力の組合せを入力層へ入力することができる。したがって、入力層のニューロンへパターン1の入力が行われた場合に出力1=300、出力2=0および出力3=0をモデルから出力し、入力層のニューロンへパターン2の入力が行われた場合に出力1=0、出力2=300及び出力3=0をモデルから出力し、さらには、入力層のニューロンへパターン3の入力が行われた場合に出力1=0、出力2=0及び出力3=300を出力するモデル学習を実現できる。
(2)ポート数が最大である通信装置のトラフィックの追加
図18は、トラフィックの追加の一例を示す図である。図18には、ネットワークNWのエッジに位置しない通信装置30G〜30I、すなわち第1のトラフィックTR11〜TR13を中継する通信装置30G〜30Iのうち、ポート数が最大である通信装置30Iが選択された例が示されている。さらに、図18には、通信装置30Iが有するポートのうち、通信装置30G側の対向ポートに接続されたポートが受信する第1のトラフィックTR17および通信装置30Hが有する対向ポートに接続されたポートが出力する第1のトラフィックTR18を学習対象として入力層のニューロンに追加する例が示されている。
このようなトラフィックの追加が行われた場合、図17に示す例と同様、各パターン1〜3の間で、第1のトラフィックTR17および第1のトラフィックTR18の組合せが同一の値の組合せとならず、少なくともいずれかで異なる値を含むことになる。
したがって、パターン1〜パターン3において第1のトラフィックTR11〜TR13が同一の値である場合でも、パターン1〜パターン3ごとに第1のトラフィックTR17および第1のトラフィックTR18の値が異なる。それ故、パターン1〜パターン3の各パターンの間で値が異なる入力の組合せを入力層へ入力することができる。したがって、入力層のニューロンへパターン1の入力が行われた場合に出力1=300、出力2=0および出力3=0をモデルから出力し、入力層のニューロンへパターン2の入力が行われた場合に出力1=0、出力2=300及び出力3=0をモデルから出力し、さらには、入力層のニューロンへパターン3の入力が行われた場合に出力1=0、出力2=0及び出力3=300を出力するモデル学習を実現できる。
(3)転送量が相対的に少ないトラフィックの削除
上記(1)及び上記(2)では、入力層のニューロンを追加する例を説明したが、これとは逆に、例として、エッジに位置する通信装置30で送信および受信されるトラフィックを学習対象として選択し、学習を行うことによって所望の推定精度を満たす場合には、所望の推定精度を満たすことが可能な範囲で、学習対象からいずれかのトラフィックを除外し、モデル学習の計算量を削減することもできる。
図19Aは、リンクの回線速度の一例を示す図である。図19Aには、各通信装置30A〜30Iを接続するリンクの回線速度が図示されている。図19Aに示すように、トラフィックの中継を行う通信装置30G〜30Hを相互に接続するリンクは50Mbpsである。また、通信装置30A〜30Fが通信装置30G〜30Iのいずれかと相互に接続するリンクのうち、通信装置30Aおよび通信装置30Gを接続するリンク、通信装置30Bおよび通信装置30Gを接続するリンク、通信装置30Cおよび通信装置30Iを接続するリンク、通信装置30Dおよび通信装置30Hを接続するリンク、さらには、通信装置30Eおよび通信装置30Hを接続するリンクの5つのリンクは、10Mbpsである。一方、通信装置30Fおよび通信装置30Iを接続するリンクは、1Mbpsである。
このように、通信装置30A〜30Eを介してネットワークNWの外からネットワークNWの中へ入力される第1のトラフィックTR11〜TR15は、最大10Mbpsの速度で流れる。さらに、通信装置30A〜30Eを介してネットワークNWの内からネットワークNWの外へ出力される第2のトラフィックTR21〜TR25も、最大10Mbpsの速度で流れる。
一方、通信装置30Fを介してネットワークNWの外からネットワークNWの中へ入力される第1のトラフィックTR16は、最大でも1Mbpsの速度を超えることはなく、また、通信装置30Fを介してネットワークNWの内からネットワークNWの外へ出力される第2のトラフィックTR26も、最大でも1Mbpsの速度を超えることはない。
このように、第1のトラフィックTR16は、第1のトラフィックTR11〜TR15に比べて非常に小さく、また、第2のトラフィックTR26も、第2のトラフィックTR21〜TR25に比べて非常に小さい。そして、通信装置30Fから入力される第1のトラフィックTR16は、宛先に応じて転送されることによって分岐し、通信装置30A〜30Fから出力される第2のトラフィックTR21〜TR26にそれぞれ含まれることになるが、そのトラフィック量は宛先に応じて分散するので、さらに小さくなる。
言い換えると、通信装置30A〜30Fから出力される第2のトラフィックTR21〜TR26の大部分は、元々は通信装置30A〜30Eへ入力される第1のトラフィックTR11〜TR15が分岐および/または合流することにより転送されたものであり、通信装置30Fから入力される第1のトラフィックTR16が第2のトラフィックTR21〜TR26のトラフィック量に関与している度合いは非常に小さいと言える。
このように第2のトラフィックへの寄与が他のリンクに比べて相対的に低いリンクは、一例として、ネットワークNWのエッジに位置する通信装置30ごとに当該通信装置30がネットワークNWの内部の通信装置30と接続されるリンクの回線速度がネットワークNWに含まれる各リンクの回線速度の統計値の所定の割合、例えば10分の1以下であるか否かを判定することにより検出することができる。なお、ここで言う「統計値」には、一例として、平均値や中央値、最頻値などを用いることができる。
このような状況の下、ネットワーク管理装置10は、学習対象として、入力層から第1のトラフィックTR16についての入力を除外するように、ニューラルネットの構成を設定しても良い。図19Bは、第1のトラフィックの時間変化の一例を示す図である。図19Cは、ニューラルネットワークの一例を示す図である。図19Bに示すように、第1の設定部15cは、データセットから通信装置30Fへ入力される第1のトラフィックTR16の実測値の履歴を除外する。さらに、図19Cに示すように、第1の設定部15cは、入力層から第1のトラフィックTR16に対応するニューロンを削除するモデルパラメータの変更を実施する。
これにより、所望の推定精度を満たしつつ、学習対象を削減することができる結果、より少ない計算量でモデル学習を行うことができる。
(4)トラフィックの追加および削除の手順
図20は、応用例に係る学習処理の手順を示すフローチャートである。この処理も、図6に示す処理と同様、クライアント端末50から学習の実行指示を受け付けた場合、あるいはトラフィック情報13bとして所定のサンプル数に対応するトラフィックの履歴が記憶部13に蓄積された場合に開始される。
図20に示すように、選択部15bは、記憶部13に記憶されたトポロジ情報13aを参照して、ネットワークNWの外からネットワークNW内へ入力される第1のトラフィックを受信する通信装置30、及び、ネットワークNWの内からネットワークNW外へ出力される第2のトラフィックを送信する通信装置30を選択する(ステップS101)。
続いて、選択部15bは、ステップS101で第1のトラフィックを受信する通信装置30として選択された通信装置30が有するポートのうち第1のトラフィックの受信に用いられるポートを選択すると共に、ステップS101で第2のトラフィックを送信する通信装置30として選択された通信装置30が有するポートのうち第2のトラフィックの送信に用いるポートを選択する(ステップS102)。
そして、第1の設定部15cは、ステップS102で選択された第1のトラフィックの数および第2のトラフィックの数に基づいて、ニューラルネットにおける入力層の入力数および出力層の出力数を設定する(ステップS103)。さらに、第2の設定部15dは、モデルの学習に用いるサンプルの数やモデルの学習を実施する回数などの学習パラメータを設定する(ステップS104)。
その上で、学習実行部15eは、ステップS104で設定された学習回数にわたってステップS104で設定された学習サンプル数に対応するデータセットに含まれるサンプルごとに次のような学習処理を実行する(ステップS105)。すなわち、学習実行部15eは、ステップS102で選択された第1のトラフィックの受信ポートで計測される第1のトラフィックの実測値をステップS103で設定されたモデルの入力層へ入力することにより得られた第2のトラフィックの推定値と、第2のトラフィックの実測値との誤差を最小化するモデルの学習を実行する。
ステップS105の学習の結果、学習実行部15eは、誤差が所定の閾値以内に収束したか否かを判定する(ステップS401)。このとき、誤差が所定の閾値以内に収束しない場合(ステップS401No)、第1の設定部15cは、図17を用いて説明した転送量が最大である通信装置30が有するポートまたは図18を用いて説明したポート数が最大である通信装置30が有するポートで計測される第1のトラフィックに対応するニューロンを入力層に追加するニューラルネットワークの設定変更を実行し(ステップS402)、ステップS105の処理へ移行して再度のモデル学習を行う。
また、誤差が所定の閾値以内に収束した場合(ステップS401Yes)、学習実行部15eは、第2のトラフィックへの寄与が他のポートよりも相対的に小さいポートが存在するか否かを判定する(ステップS403)。ここで、第2のトラフィックへの寄与が小さいポートが存在する場合(ステップS403Yes)、第1の設定部15cは、当該ポートで計測される第1のトラフィックに対応するニューロンを入力層から削除するニューラルネットワークの設定変更を実行し(ステップS404)、ステップS105の処理へ移行する。
[将来予測1]
上記の実施例1では、第1のトラフィックの実測値から第2のトラフィックを推定するモデルを学習する場合を例示したが、第1のトラフィックの実測値から当該実測値よりも先の時刻の第2のトラフィックの推定値、言い換えれば予測値を推定するモデルを学習することもできる。
図21は、トラフィックの学習方法の他の一例を示す図である。図21に示すTR11、TR12及びTR13は、いずれかのエンドホストから送信されてネットワークNWへ入力され、ネットワークNW内で転送される第1のトラフィックを指す。また、図21に示すTR21、TR22及びTR23は、ネットワークNW内で転送され、最終的にいずれかのエンドホストへ向けて出力される第2のトラフィックを指す。
ここで、ネットワーク管理装置10は、上記の実施例1と同様、多層構造のニューラルネットワークを用いる深層学習、いわゆるディープラーニングの教師データとして、各時刻における第1のトラフィックTR11〜TR13の実測値および第2のトラフィックTR21〜TR23の実測値の履歴を用いるが、出力層から出力される出力データとして、第1のトラフィックTR11〜TR13が計測された時点から所定時間後の第2のトラフィックTR21〜TR23の予測値を推定する点が異なる。
例えば、確率的勾配降下法が用いられる場合、ネットワーク管理装置10は、ある時刻t1における第1のトラフィックTR11〜TR13の実測値および時刻t1から所定時間、例えばN分後の時刻t2における第2のトラフィックTR21〜TR23の実測値の履歴を1サンプルとして用いる。すなわち、ネットワーク管理装置10は、第1のトラフィックTR11、TR12及びTR13の実測値をニューラルネットワークのモデルの入力層へ入力することにより、時刻t2における第2のトラフィックTR21〜TR23を推定する。その上で、ネットワーク管理装置10は、モデルから出力される第2のトラフィックTR21〜TR23の予測値と、時刻t2における第2のトラフィックTR21〜TR23の実測値との誤差を最小化するモデルの学習を実行する。
このようにニューラルネットワークのモデル学習を実行した上で、ネットワーク管理装置10は、モデル学習により重み係数の最適化が行われたニューラルネットに対して、現在の第1のトラフィックTR11〜TR13の値を入力層へ入力し、モデルの出力層から出力されるN分後の第2のトラフィックTR21〜TR23の計算結果を得る。この計算結果は、普段の挙動に基づいて推定されるN分後の第2のトラフィックTR21〜TR23の予測値と言える。
その後、ネットワーク管理装置10は、第2のトラフィックTR21〜TR23の推定値が計算結果として得られる度に、N分後の第2のトラフィックTR21〜TR23の予測値と、ネットワークNWの通信装置30で時刻t1のN分後に計測された第2のトラフィックTR21〜TR23の実測値とを比較する。この他、ネットワーク管理装置10は、N分後の第2のトラフィックTR21〜TR23の予測値と、所定の閾値とを比較することもできる。これにより、現時刻である時刻t1からN分後である時刻t2でネットワークNWから出力されるトラフィックに異常があるか否かを検出することができる。そして、N分後の第2のトラフィックTR21〜TR23の予測値が閾値を超える場合、クライアント端末50にアラートを出力することができる。
このように、ネットワーク管理装置10は、ネットワークNW内からネットワークNW外へ出力されるトラフィックの挙動を将来予測することができる。なお、当然のことながら、ネットワーク管理装置10は、時刻t1における第2のトラフィックTR21、T22及びTR23の実測値をニューラルネットワークのモデルの入力層へ入力することにより、時刻t1のN分後である時刻t2における第1のトラフィックTR11〜TR13を推定する。その上で、ネットワーク管理装置10は、モデルから出力されるN分後の第1のトラフィックTR11〜TR13の予測値と、時刻t2における第1のトラフィックTR11〜TR13の実測値との誤差を最小化するモデルの学習を実行することもできる。これにより、N分後の第1のトラフィックTR11〜TR13の予測値が閾値を超える場合、クライアント端末50にアラートを出力することができる。このように、ネットワークNW外からネットワークNW内へ入力されるトラフィックの挙動を将来予測することもできる。
[分散および統合]
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、取得部15a、選択部15b、第1の設定部15c、第2の設定部15d、学習実行部15e、推定部15f、比較部15gまたは出力部15hをネットワーク管理装置10の外部装置としてネットワーク経由で接続するようにしてもよい。また、取得部15a、選択部15b、第1の設定部15c、第2の設定部15d、学習実行部15e、推定部15f、比較部15gまたは出力部15hを別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のネットワーク管理装置10の機能を実現するようにしてもよい。また、記憶部13に記憶されるトポロジ情報13a、トラフィック情報13bまたはモデル情報13cの全部または一部を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のネットワーク管理装置10の機能を実現するようにしてもかまわない。
[管理プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図22を用いて、上記の実施例と同様の機能を有する管理プログラムを実行するコンピュータの一例について説明する。
図22は、実施例1及び実施例2に係る管理プログラムを実行するコンピュータのハードウェア構成例を示す図である。図22に示すように、コンピュータ100は、操作部110aと、スピーカ110bと、カメラ110cと、ディスプレイ120と、通信部130とを有する。さらに、このコンピュータ100は、CPU150と、ROM160と、HDD170と、RAM180とを有する。これら110〜180の各部はバス140を介して接続される。
HDD170には、図22に示すように、上記の実施例1で示した取得部15a、選択部15b、第1の設定部15c、第2の設定部15d、学習実行部15e、推定部15f、比較部15g及び出力部15hと同様の機能を発揮する管理プログラム170aが記憶される。この管理プログラム170aは、図5に示した取得部15a、選択部15b、第1の設定部15c、第2の設定部15d、学習実行部15e、推定部15f、比較部15g及び出力部15hの各構成要素と同様、統合又は分離してもかまわない。すなわち、HDD170には、必ずしも上記の実施例1で示した全てのデータが格納されずともよく、処理に用いるデータがHDD170に格納されればよい。
このような環境の下、CPU150は、HDD170から管理プログラム170aを読み出した上でRAM180へ展開する。この結果、管理プログラム170aは、図22に示すように、管理プロセス180aとして機能する。この管理プロセス180aは、RAM180が有する記憶領域のうち管理プロセス180aに割り当てられた領域にHDD170から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、管理プロセス180aが実行する処理の一例として、図6や図7、図13、図20に示す処理などが含まれる。なお、CPU150では、必ずしも上記の実施例1で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
なお、上記の管理プログラム170aは、必ずしも最初からHDD170やROM160に記憶されておらずともかまわない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に管理プログラム170aを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から管理プログラム170aを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに管理プログラム170aを記憶させておき、コンピュータ100がこれらから管理プログラム170aを取得して実行するようにしてもよい。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)複数の通信装置を含むネットワークの外から前記ネットワークの中へ入力される第1のトラフィックに基づいて前記ネットワークの中から前記ネットワークの外へ出力される第2のトラフィックを推定するモデルを記憶する記憶部と、
前記第1のトラフィックの実測値を取得する取得部と、
前記記憶部に記憶されたモデルへ前記取得部により取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、所定の値とを比較する比較部と、
を有することを特徴とする管理装置。
(付記2)前記取得部は、前記第2のトラフィックの実測値をさらに取得し、
前記比較部は、前記記憶部に記憶されたモデルへ前記取得部により取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、前記取得部により取得された前記第2のトラフィックの実測値とを比較することを特徴とする付記1に記載の管理装置。
(付記3)前記第2のトラフィックの推定値および前記第2のトラフィックの実測値の差が所定の閾値以上である場合、アラートを出力する出力部をさらに有することを特徴とする付記2に記載の管理装置。
(付記4)前記出力部は、前記第2のトラフィックの推定値および前記第2のトラフィックの実測値の差が所定の閾値以上であり、かつ前記第2のトラフィックの実測値が前記第2のトラフィックの推定値よりも小さい場合、アラートを出力することを特徴とする付記3に記載の管理装置。
(付記5)前記モデルの学習を実行する学習実行部をさらに有することを特徴とする付記1に記載の管理装置。
(付記6)前記学習実行部は、前記第1のトラフィックと共に、前記第1のトラフィックが計測された時間が営業状態、半営業状態または休業状態のいずれに対応するかを示す状態情報にさらに基づいて前記モデルを学習し、
前記取得部は、前記第1のトラフィックと共に前記第1のトラフィックが取得される時間に対応する状態情報をさらに取得し、
前記比較部は、前記モデルへ前記第1のトラフィックの実測値と共に前記状態情報を入力することにより得られる第2のトラフィックの推定値を比較に用いることを特徴とする付記5に記載の管理装置。
(付記7)前記学習実行部は、前記第1のトラフィックおよび前記第2のトラフィックとして、前記ネットワークのトポロジ上でエッジに位置する通信装置のポートが受信または送信を行うトラフィックを前記モデルの学習に用いることを特徴とする付記5に記載の管理装置。
(付記8)前記学習実行部は、前記ネットワークに含まれる複数のレイヤの中からレイヤの指定を受け付けた場合、前記指定を受け付けたレイヤに属する通信装置のポートが受信または送信を行うトラフィックを前記モデルの学習に用いることを特徴とする付記5に記載の管理装置。
(付記9)前記学習実行部は、前記モデルの学習に用いる前記第1のトラフィックおよび前記第2のトラフィックを含む学習サンプルの数の候補ごとに前記モデルの学習を実行し、最も誤差が少ない学習サンプル数の候補で学習されたモデルを選択することを特徴とする付記5に記載の管理装置。
(付記10)前記モデルの学習が所定の学習回数にわたって実行される度に誤差が所定の閾値以内に収束したか否かを判定し、前記誤差が前記閾値以内に収束した学習回数を前記学習実行部が用いる学習パラメータとして設定する第1の設定部をさらに有することを特徴とする付記5に記載の管理装置。
(付記11)前記学習実行部による前記モデルの学習時に誤差が所定の閾値以内になる前に収束する場合、前記モデルに設定された隠れ層の層数または隠れ層のニューロン数を増加させる設定変更を行う第2の設定部をさらに有することを特徴とする付記5に記載の管理装置。
(付記12)前記学習実行部は、前記モデルの学習時に誤差が所定の閾値以内になる前に収束する場合、前記第1のトラフィックおよび前記第2のトラフィックとして、前記ネットワークのトポロジ上でエッジに位置する通信装置に加えて、前記エッジに位置しない通信装置のうち転送量またはポート数が最大である通信装置のポートが受信または送信を行うトラフィックを前記モデルの学習に用いることを特徴とする付記7に記載の管理装置。
(付記13)前記学習実行部は、前記ネットワークのトポロジ上でエッジに位置する通信装置ごとに当該通信装置が前記ネットワークの内部の通信装置と接続されるリンクの回線速度が前記ネットワークに含まれる各リンクの回線速度の統計値の所定の割合以下であるか否かを判定し、前記統計値の所定の割合以下であるリンクを持つ通信装置を介して前記ネットワークの外から前記ネットワークの中へ入力される第1のトラフィックを除外して前記モデルの学習を実行することを特徴とする付記7に記載の管理装置。
(付記14)前記記憶部は、前記第1のトラフィックが計測されてから所定時間後の第2のトラフィックを推定するモデルを記憶し、
前記比較部は、前記記憶部に記憶されたモデルへ前記取得部により取得された前記第1のトラフィックの実測値を入力することにより推定された所定時間後の第2のトラフィックの推定値と、所定の値とを比較することを特徴とする付記1に記載の管理装置。
(付記15)複数の通信装置を含むネットワークの中から前記ネットワークの外へ出力される第2のトラフィックに基づいて前記ネットワークの外から前記ネットワークの中へ入力される第1のトラフィックを推定するモデルを記憶する記憶部と、
前記第2のトラフィックの実測値を取得する取得部と、
前記記憶部に記憶されたモデルへ前記取得部により取得された前記第2のトラフィックの実測値を入力することにより推定された第1のトラフィックの推定値と、所定の値とを比較する比較部と、
を有することを特徴とする管理装置。
(付記16)複数の通信装置を含むネットワークの外から前記ネットワークの中へ入力される第1のトラフィックの実測値を取得し、
前記第1のトラフィックに基づいて前記ネットワークの中から前記ネットワークの外へ出力される第2のトラフィックを推定するモデルに対し、取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、所定の値とを比較する、
処理をコンピュータが実行することを特徴とする管理方法。
(付記17)前記取得する処理は、前記第2のトラフィックの実測値をさらに取得し、
前記比較する処理は、前記モデルへ前記取得する処理で取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、前記取得する処理で取得された前記第2のトラフィックの実測値とを比較することを特徴とする付記16に記載の管理方法。
(付記18)前記第2のトラフィックの推定値および前記第2のトラフィックの実測値の差が所定の閾値以上である場合、アラートを出力する処理を前記コンピュータがさらに実行することを特徴とする付記17に記載の管理方法。
(付記19)前記出力する処理は、前記第2のトラフィックの推定値および前記第2のトラフィックの実測値の差が所定の閾値以上であり、かつ前記第2のトラフィックの実測値が前記第2のトラフィックの推定値よりも小さい場合、アラートを出力することを特徴とする付記18に記載の管理方法。
(付記20)複数の通信装置を含むネットワークの外から前記ネットワークの中へ入力される第1のトラフィックの実測値を取得し、
前記第1のトラフィックに基づいて前記ネットワークの中から前記ネットワークの外へ出力される第2のトラフィックを推定するモデルに対し、取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、所定の値とを比較する、
処理をコンピュータに実行させることを特徴とする管理プログラム。
1 ネットワーク管理システム
3 監視対象システム
10 ネットワーク管理装置
11 通信I/F部
13 記憶部
13a トポロジ情報
13b トラフィック情報
13c モデル情報
15 制御部
15a 取得部
15b 選択部
15c 第1の設定部
15d 第2の設定部
15e 学習実行部
15f 推定部
15g 比較部
15h 出力部
30A,30B,30C 通信装置
50 クライアント端末

Claims (10)

  1. 複数の通信装置を含むネットワークの外から前記ネットワークの中へ入力される第1のトラフィックに基づいて前記ネットワークの中から前記ネットワークの外へ出力される第2のトラフィックを推定するモデルを記憶する記憶部と、
    前記第1のトラフィックの実測値を取得する取得部と、
    前記記憶部に記憶されたモデルへ前記取得部により取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、所定の値とを比較する比較部と、
    を有することを特徴とする管理装置。
  2. 前記取得部は、前記第2のトラフィックの実測値をさらに取得し、
    前記比較部は、前記記憶部に記憶されたモデルへ前記取得部により取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、前記取得部により取得された前記第2のトラフィックの実測値とを比較することを特徴とする請求項1に記載の管理装置。
  3. 前記第2のトラフィックの推定値および前記第2のトラフィックの実測値の差が所定の閾値以上である場合、アラートを出力する出力部をさらに有することを特徴とする請求項2に記載の管理装置。
  4. 前記出力部は、前記第2のトラフィックの推定値および前記第2のトラフィックの実測値の差が所定の閾値以上であり、かつ前記第2のトラフィックの実測値が前記第2のトラフィックの推定値よりも小さい場合、アラートを出力することを特徴とする請求項3に記載の管理装置。
  5. 前記モデルの学習を実行する学習実行部をさらに有することを特徴とする請求項1〜4のいずれか1つに記載の管理装置。
  6. 前記学習実行部は、前記第1のトラフィックと共に、前記第1のトラフィックが計測された時間が営業状態、半営業状態または休業状態のいずれに対応するかを示す状態情報にさらに基づいて前記モデルを学習し、
    前記取得部は、前記第1のトラフィックと共に前記第1のトラフィックが取得される時間に対応する状態情報をさらに取得し、
    前記比較部は、前記モデルへ前記第1のトラフィックの実測値と共に前記状態情報を入力することにより得られる第2のトラフィックの推定値を比較に用いることを特徴とする請求項5に記載の管理装置。
  7. 前記学習実行部は、前記第1のトラフィックおよび前記第2のトラフィックとして、前記ネットワークのトポロジ上でエッジに位置する通信装置のポートが受信または送信を行うトラフィックを前記モデルの学習に用いることを特徴とする請求項5に記載の管理装置。
  8. 複数の通信装置を含むネットワークの中から前記ネットワークの外へ出力される第2のトラフィックに基づいて前記ネットワークの外から前記ネットワークの中へ入力される第1のトラフィックを推定するモデルを記憶する記憶部と、
    前記第2のトラフィックの実測値を取得する取得部と、
    前記記憶部に記憶されたモデルへ前記取得部により取得された前記第2のトラフィックの実測値を入力することにより推定された第1のトラフィックの推定値と、所定の値とを比較する比較部と、
    を有することを特徴とする管理装置。
  9. 複数の通信装置を含むネットワークの外から前記ネットワークの中へ入力される第1のトラフィックの実測値を取得し、
    前記第1のトラフィックに基づいて前記ネットワークの中から前記ネットワークの外へ出力される第2のトラフィックを推定するモデルに対し、取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、所定の値とを比較する、
    処理をコンピュータが実行することを特徴とする管理方法。
  10. 複数の通信装置を含むネットワークの外から前記ネットワークの中へ入力される第1のトラフィックの実測値を取得し、
    前記第1のトラフィックに基づいて前記ネットワークの中から前記ネットワークの外へ出力される第2のトラフィックを推定するモデルに対し、取得された前記第1のトラフィックの実測値を入力することにより推定された第2のトラフィックの推定値と、所定の値とを比較する、
    処理をコンピュータに実行させることを特徴とする管理プログラム。
JP2017108724A 2017-05-31 2017-05-31 管理装置、管理方法及び管理プログラム Active JP6863091B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017108724A JP6863091B2 (ja) 2017-05-31 2017-05-31 管理装置、管理方法及び管理プログラム
US15/991,278 US10965542B2 (en) 2017-05-31 2018-05-29 Management apparatus, management method and non-transitory computer-readable storage medium for storing management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017108724A JP6863091B2 (ja) 2017-05-31 2017-05-31 管理装置、管理方法及び管理プログラム

Publications (2)

Publication Number Publication Date
JP2018207241A true JP2018207241A (ja) 2018-12-27
JP6863091B2 JP6863091B2 (ja) 2021-04-21

Family

ID=64460133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017108724A Active JP6863091B2 (ja) 2017-05-31 2017-05-31 管理装置、管理方法及び管理プログラム

Country Status (2)

Country Link
US (1) US10965542B2 (ja)
JP (1) JP6863091B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021103838A (ja) * 2019-12-25 2021-07-15 株式会社日立製作所 通信監視装置及び通信監視方法
WO2022259475A1 (ja) * 2021-06-10 2022-12-15 日本電信電話株式会社 パス制御装置、パス制御方法、及び、パス制御プログラム
WO2023026417A1 (ja) * 2021-08-25 2023-03-02 日本電信電話株式会社 経路制御方法および経路制御装置
US11616704B2 (en) 2021-03-08 2023-03-28 Fujitsu Limited Information processing method, storage medium, and information processing device
CN116319378A (zh) * 2023-05-16 2023-06-23 合肥工业大学 基于深度学习的网络流量矩阵估计、模型训练方法和系统
JP7382468B1 (ja) 2022-09-06 2023-11-16 ソフトバンク株式会社 通信監視装置、通信監視装置の制御方法、及び通信監視装置の制御プログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7298343B2 (ja) * 2019-07-01 2023-06-27 日本電信電話株式会社 故障影響推定装置、故障影響推定方法、及びプログラム
CN110782550B (zh) * 2019-09-20 2021-08-31 腾讯科技(深圳)有限公司 一种数据采集方法、装置及设备
CN111064721A (zh) * 2019-12-11 2020-04-24 中国科学院深圳先进技术研究院 网络流量异常检测模型的训练方法及检测方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007221699A (ja) * 2006-02-20 2007-08-30 Kddi Corp トラヒック量変動の上限値を予測するトラヒック量予測装置、プログラム及び方法
JP2010511359A (ja) * 2006-11-29 2010-04-08 ウイスコンシン アラムナイ リサーチ フオンデーシヨン ネットワーク異常検出のための方法と装置
WO2015057119A1 (en) * 2013-10-18 2015-04-23 Telefonaktiebolaget L M Ericsson (Publ) Alarm prediction in a telecommunication network

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0764944A (ja) 1993-08-30 1995-03-10 Fuji Xerox Co Ltd ニューラルネットワークの学習方法
AU692369B2 (en) * 1995-02-02 1998-06-04 Aprisma Management Technologies, Inc. Method and apparatus for learning network behavior trends and predicting future behavior of communications networks
JP3430930B2 (ja) 1998-07-31 2003-07-28 日本電気株式会社 パケット交換ネットワーク網におけるトラフィック推定方法および装置
EP1250022A1 (en) * 2001-04-09 2002-10-16 Lucent Technologies Inc. Providing quality of service in a telecommunications system such as a UMTS or other third generation system
JP2004023114A (ja) 2002-06-12 2004-01-22 Nippon Telegr & Teleph Corp <Ntt> 通信トラヒック予測方法およびその装置
US7583587B2 (en) * 2004-01-30 2009-09-01 Microsoft Corporation Fault detection and diagnosis
US8676964B2 (en) * 2008-07-31 2014-03-18 Riverbed Technology, Inc. Detecting outliers in network traffic time series
EP2887590B1 (en) * 2012-09-25 2017-09-20 Huawei Technologies Co., Ltd. Flow control method, device and network
US8995249B1 (en) * 2013-02-13 2015-03-31 Amazon Technologies, Inc. Predicting route utilization and non-redundant failures in network environments
US9813321B2 (en) * 2014-10-01 2017-11-07 Viblast Ood Hybrid content delivery system
US9780909B2 (en) * 2014-12-29 2017-10-03 Juniper Networks, Inc. Network topology optimization with feasible optical paths
EP3041283B1 (en) * 2014-12-30 2019-05-29 Comptel Corporation Prediction of failures in cellular radio access networks and scheduling of preemptive maintenance
US10320825B2 (en) * 2015-05-27 2019-06-11 Cisco Technology, Inc. Fingerprint merging and risk level evaluation for network anomaly detection
US10070328B2 (en) * 2015-08-20 2018-09-04 International Business Mahcines Corporation Predictive network traffic management
CN106411934B (zh) * 2016-11-15 2017-11-21 平安科技(深圳)有限公司 DoS/DDoS攻击检测方法和装置
US11151471B2 (en) * 2016-11-30 2021-10-19 Here Global B.V. Method and apparatus for predictive classification of actionable network alerts
US10601768B2 (en) * 2017-04-10 2020-03-24 Verizon Digital Media Services Inc. Automated steady state traffic management

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007221699A (ja) * 2006-02-20 2007-08-30 Kddi Corp トラヒック量変動の上限値を予測するトラヒック量予測装置、プログラム及び方法
JP2010511359A (ja) * 2006-11-29 2010-04-08 ウイスコンシン アラムナイ リサーチ フオンデーシヨン ネットワーク異常検出のための方法と装置
WO2015057119A1 (en) * 2013-10-18 2015-04-23 Telefonaktiebolaget L M Ericsson (Publ) Alarm prediction in a telecommunication network

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021103838A (ja) * 2019-12-25 2021-07-15 株式会社日立製作所 通信監視装置及び通信監視方法
JP7409866B2 (ja) 2019-12-25 2024-01-09 株式会社日立製作所 通信監視装置及び通信監視方法
US11616704B2 (en) 2021-03-08 2023-03-28 Fujitsu Limited Information processing method, storage medium, and information processing device
WO2022259475A1 (ja) * 2021-06-10 2022-12-15 日本電信電話株式会社 パス制御装置、パス制御方法、及び、パス制御プログラム
WO2023026417A1 (ja) * 2021-08-25 2023-03-02 日本電信電話株式会社 経路制御方法および経路制御装置
JP7382468B1 (ja) 2022-09-06 2023-11-16 ソフトバンク株式会社 通信監視装置、通信監視装置の制御方法、及び通信監視装置の制御プログラム
CN116319378A (zh) * 2023-05-16 2023-06-23 合肥工业大学 基于深度学习的网络流量矩阵估计、模型训练方法和系统
CN116319378B (zh) * 2023-05-16 2023-07-21 合肥工业大学 基于深度学习的网络流量矩阵估计、模型训练方法和系统

Also Published As

Publication number Publication date
US20180351823A1 (en) 2018-12-06
US10965542B2 (en) 2021-03-30
JP6863091B2 (ja) 2021-04-21

Similar Documents

Publication Publication Date Title
JP6863091B2 (ja) 管理装置、管理方法及び管理プログラム
Rahman et al. Auto-scaling VNFs using machine learning to improve QoS and reduce cost
US20200236038A1 (en) Dynamic Deployment of Network Applications Having Performance and Reliability Guarantees in Large Computing Networks
US20210012239A1 (en) Automated generation of machine learning models for network evaluation
US10608901B2 (en) System and method for applying machine learning algorithms to compute health scores for workload scheduling
Verba et al. Modeling industry 4.0 based fog computing environments for application analysis and deployment
Singh et al. Machine-learning-based prediction for resource (re) allocation in optical data center networks
US11032150B2 (en) Automatic prediction of behavior and topology of a network using limited information
WO2018076791A1 (zh) 一种资源负载均衡控制方法及集群调度器
JP2021530067A (ja) データセンターハードウェアインスタンスネットワークのトレーニング
US10841173B2 (en) System and method for determining resources utilization in a virtual network
da Silva et al. Horizontal auto-scaling in edge computing environment using online machine learning
WO2020119627A1 (zh) 应用于分布式容器云平台的异常检测与定位方法及装置
Tuli et al. Carol: Confidence-aware resilience model for edge federations
KR20200126766A (ko) Ict 인프라의 운용 관리 장치 및 방법
JP6068296B2 (ja) 制御装置、計算資源管理方法及び計算資源管理プログラム
Hosamani et al. Elastic provisioning of Hadoop clusters on OpenStack private cloud
CN106406082B (zh) 一种系统控制方法、装置,控制器及控制系统
Xia et al. Learn to optimize: Adaptive VNF provisioning in mobile edge clouds
JP2016010124A (ja) 管理装置、管理プログラム及び情報処理システム
KR20210058468A (ko) 지능형 에지 네트워킹의 인공지능 운용자 지원 시스템 장치 및 방법
Nikbazm et al. KSN: Modeling and simulation of knowledge using machine learning in NFV/SDN-based networks
Miyazawa et al. Supervised learning based automatic adaptation of virtualized resource selection policy
Martinez-Julia et al. Explained intelligent management decisions in virtual networks and network slices
CN111327494B (zh) 一种多域sdn网络流量态势评估方法及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210128

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210302

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210315

R150 Certificate of patent or registration of utility model

Ref document number: 6863091

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150