(57)【要約】【課題】制御対象ネットワークに分析対象のトラフィックが増大しても、適切にトラフィック分析することができる。【解決手段】通信装置間の通信において送受信されるデータを中継するスイッチのトラフィックを、フローごとに分析するトラフィック分析装置であって、前記スイッチから前記フローごとの単位時間あたりの通信量を取得する取得部と、前回取得した前回通信量に基づき予測した予測通信量と、今回取得した今回通信量との差異に基づく異常度を、前記フローごとに算出する算出部と、前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する分析部とを有する。【選択図】図６
2019029980.tif 000002
【特許請求の範囲】
【請求項１】
通信装置間の通信において送受信されるデータを中継するスイッチのトラフィックを、フローごとに分析するトラフィック分析装置であって、
前記スイッチから前記フローごとの単位時間あたりの通信量を取得する取得部と、
前回取得した前回通信量に基づき予測した予測通信量と、今回取得した今回通信量との差異に基づく異常度を、前記フローごとに算出する算出部と、
前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する分析部とを有する
トラフィック分析装置。
【請求項２】
前記算出部は、前記今回通信量と前記予測通信量の差異を二乗し、前記異常度を算出する
請求項１記載のトラフィック分析装置。
【請求項３】
前記トポロジ値は、前記フローに対応する第１スイッチと前記フローの送信先の第１通信装置とが、他のスイッチを介して接続している場合、第１の値であり、前記第１スイッチと前記第１通信装置とが、他のスイッチを介さずに接続している場合、前記第１の値より大きい第２の値である
請求項１記載のトラフィック分析装置。
【請求項４】
前記算出部は、さらに、前回通信量の取得時に算出した異常値を示す前回異常値と、今回通信量の取得時に算出した異常値を示す今回異常値との差異である異常値差異を算出し、
前記分析部は、前記今回異常値と、前記トポロジ値と、前記異常度差異とに基づき、前記優先度を算出する
請求項１記載のトラフィック分析装置。
【請求項５】
前記分析部は、前記今回異常値と、前記トポロジ値と、前記異常度差異とを加算した値を、前記優先度として算出し、前記優先度が大きい順にフローを選択する
請求項４記載のトラフィック分析装置。
【請求項６】
前記分析部は、さらに、前記選択において選択されないフローから所定数のフローを分析対象として選択する第２選択とを行う
請求項１記載のトラフィック分析装置。
【請求項７】
前記分析部は、前記優先度が第１閾値より低いフローが第１数存在する場合、前記第１数のフローを前記第１数以下の第２数のフローに集約する
請求項１記載のトラフィック分析装置。
【請求項８】
前記分析部は、前記優先度が第２閾値より高いフローが第３数存在する場合、前記第３数のフローを前記第３数以上の第４数のフローに分散する
請求項１記載のトラフィック分析装置。
【請求項９】
通信装置間の通信において送受信されるデータを中継するスイッチのトラフィックを、フローごとに分析するトラフィック分析装置におけるトラフィック分析方法であって、
前記スイッチから前記フローごとの単位時間あたりの通信量を取得し、
前回取得した前回通信量に基づき予測した予測通信量と、今回取得した今回通信量との差異に基づく異常度を、前記フローごとに算出し、
前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する
トラフィック分析方法。
【請求項１０】
通信装置間の通信において送受信されるデータを中継するスイッチのトラフィックを、フローごとに分析するトラフィック分析装置におけるトラフィック分析プログラムであって、
前記スイッチから前記フローごとの単位時間あたりの通信量を取得し、
前回取得した前回通信量に基づき予測した予測通信量と、今回取得した今回通信量との差異に基づく異常度を、前記フローごとに算出し、
前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する処理を、
前記トラフィック分析装置の有するコンピュータに実行させるトラフィック分析プログラム。
【請求項１１】
複数の通信装置と、
前記複数の通信装置間において送受信されるデータを中継するスイッチと、
前記スイッチのトラフィックを、フローごとに分析するトラフィック分析装置とを有する通信システムであって、
前記スイッチは、前記フローごとの単位時間あたりの通信量を、前記トラフィック分析装置に送信し、
前記トラフィック分析装置は、前記通信量を前記スイッチより受信し、前回受信した前回通信量に基づき予測した予測通信量と、今回受信した今回通信量との差異に基づく異常度を、前記フローごとに算出し、前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する
通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トラフィック分析装置、トラフィック分析方法、トラフィック分析プログラム、及びシステムに関する。
【背景技術】
【０００２】
ネットワーク管理者は、ネットワークの異常を検出するため、例えば、定期的にトラフィックを収集し、分析する。ネットワーク管理者は、例えば、ネットワークの異常として、トラフィックの急激な増加を検出する。ネットワーク管理者は、当該トラフィックの急激な増加による通信の輻輳や、特定の装置の故障を防止するため、新たなスイッチの設置や、トラフィックを分散させるための通信経路の制御を行う。
【０００３】
トラフィックの分析に関する技術は、以下の特許文献１〜３に記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第2012/127894号
【特許文献２】特開2002-16599号公報
【特許文献３】特開2004-343203号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、例えば、仮想ネットワークやＩｏＴ（Internet of Things）の普及に伴い、分析すべきトラフィックが増加している。そこで、例えば、トラフィック分析用のアプリケーションプログラムを用いてトラフィックの分析を行うことで、短期間に多くのトラフィックを分析することを可能としている。
【０００６】
しかし、ネットワーク管理者または分析用アプリケーションプログラムのいずれかにおいても、分析対象となるトラフィックが多く存在するネットワークにおいて、短期間で全てのトラフィックを分析することができない場合がある。
【０００７】
全てのトラフィックを分析するのに長時間を要すると、ネットワークへの対応に遅延が生じ、ネットワークの異常を改善するのに時間がかかってしまい、ネットワーク利用者へ提供するサービス品質が低下する。
【０００８】
そこで、一開示は、制御対象ネットワークに分析対象のトラフィックが増大しても、適切にトラフィック分析することができるトラフィック分析装置、トラフィック分析プログラム、トラフィック分析方法、及び通信システムを提供する。
【課題を解決するための手段】
【０００９】
一開示によると、通信装置間の通信において送受信されるデータを中継するスイッチのトラフィックを、フローごとに分析するトラフィック分析装置であって、前記スイッチから前記フローごとの単位時間あたりの通信量を取得する取得部と、前回取得した前回通信量に基づき予測した予測通信量と、今回取得した今回通信量との差異に基づく異常度を、前記フローごとに算出する算出部と、前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する分析部とを有する。
【発明の効果】
【００１０】
一開示は、制御対象ネットワークに分析対象のトラフィックが増大しても、適切にトラフィック分析することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、通信システム１０の構成例を示す図である。
【図２】図２は、制御装置３００の構成例を示す図である。
【図３】図３は、スイッチ２００の構成例を示す図である。
【図４】図４は、トラフィック分析処理の処理フローチャートの例を示す図である。
【図５】図５は、トラフィック分析処理の例を示す図である。
【図６】図６は、分析対象フロー選択処理Ｓ１００の処理フローチャートの例を示す図である。
【図７】図７は、異常度算出処理Ｓ１０２の処理フローチャートの例を示す図である。
【図８】図８は、フロー関連情報テーブル３２４の例を示す図である。
【図９】図９は、異常度差異算出処理の処理フローチャートの例を示す図である。
【図１０】図１０は、優先度算出処理Ｓ１０４の処理フローチャートの例を示す図である。
【図１１】図１１は、トポロジ重要度決定処理Ｓ２００の処理フローチャートの例を示す図である。
【図１２】図１２は、分析対象フローとして選択されるフローの例を示す図である。
【図１３】図１３は、第２の実施の形態における分析対象フロー選択処理Ｓ１００の処理フローの例を示す図である。
【図１４】図１４は、第２の実施の形態における、分析対象フローとして選択されるフローの例を示す図である。
【図１５】図１５は、第３の実施の形態における分析対象フロー選択処理Ｓ１００の処理フローの例を示す図である。
【図１６】図１６は、フロー集約分散処理Ｓ３００の処理フローチャートの例を示す図である。
【図１７】図１７は、フローを集約する例を示す図である。
【図１８】図１８は、フローを分散する例を示す図である。
【発明を実施するための形態】
【００１２】
［第１の実施の形態］
第１の実施の形態について説明する。
【００１３】
＜通信システムの構成例＞
図１は、通信システム１０の構成例を示す図である。通信システム１０は、通信装置１００−１〜５、スイッチ２００−１〜５、及び制御装置３００（トラフィック分析装置）を有する。通信装置１００−１〜５（以下、通信装置１００と呼ぶ場合がある）は、スイッチ２００−１〜５（以下、スイッチ２００と呼ぶ場合がある）を介して、通信相手である通信装置１００にデータパケットを送信することで、通信を実現する。スイッチ２００は、例えば、受信したパケットの送信元又は送信先のアドレスに基づき、受信したパケットを隣接するスイッチ２００又は通信装置１００に送信する。
【００１４】
通信装置１００は、例えば、ＩＰ（Internet Protocol）アドレスを有し、ＩＰアドレスを送信先、送信元としてパケットに含めることで、通信を実現する。図１におけるカッコ内の数値は、各通信装置１００のＩＰアドレスの例を示す。
【００１５】
スイッチ２００は、それぞれ複数のポートを有し、ポートを介して他のスイッチ２００や通信装置１００と接続する。スイッチ２００は、通信経路を切り替える装置であり、例えば、レイヤ３スイッチ、レイヤ２スイッチ、又は、ＬＡＮ（Local Area Network）スイッチである。
【００１６】
例えば、スイッチ２００−１は、ポートＰ１１〜Ｐ１３を有する。ポートＰ１１は、スイッチ２００−２のポートＰ２１と接続している。そして、ポートＰ１２は通信装置１００−１と、ポートＰ１３は通信装置１００−２と、それぞれ接続している。なお、スイッチ２００−２はポートＰ２１〜Ｐ２４を、スイッチ２００−３はポートＰ３１〜Ｐ３２を、スイッチ２００−４はポートＰ４１〜Ｐ４３を、スイッチ２００−５はポートＰ５１〜Ｐ５４を、それぞれ有する。
【００１７】
スイッチ２００は、自装置のポートがどの装置と接続しているかを管理しており、受信したパケットの送信先に応じて、パケットを送信するポートを決定する。例えば、スイッチ２００−２は、ポートＰ２２又はＰ２３で通信装置１００−１宛てのパケットを受信すると、通信装置１００−１にパケットを中継するスイッチ２００−１と接続するポートＰ２１から、受信したパケットを送信する。
【００１８】
そして、スイッチ２００は、フロー単位でトラフィックを収集し、収集したトラフィックを制御装置３００に送信する。フローは、例えば、通信の単位であり、パケットを受信したポート番号やパケットを送信したポート番号により分類される。また、フローは、スイッチ２００が中継するパケットの送信元又は送信先によって分類されてもよい。すなわち、フローは、パケットを送信するポート番号、パケットを受信するポート番号、パケットの送信元、及びパケットの送信先の、少なくとも１つ、又はそれぞれの組み合わせによって決定する通信の単位である。
【００１９】
スイッチ２００は、例えば、定期的に、又は制御装置３００からの要求に応じて、トラフィックを制御装置３００に送信する。トラフィックは、スイッチ２００が収集する情報であり、例えば、単位時間あたりにフローを通過するデータ量（通信量）である。スイッチ２００は、例えば、単位時間あたりにフローを通過するデータ量を収集し、内部メモリに記憶する。
【００２０】
制御装置３００は、スイッチ２００からフローごとのトラフィックを取得（受信）し、トラフィックの分析を行う。制御装置３００は、例えば、定期的にトラフィック分析を行う場合、遅くとも次回のトラフィック分析を行うタイミングまでにトラフィック分析を完了させるため、全てのフローに対してトラフィック分析を行うことができない場合がある。そこで、制御装置３００は、フローごとに優先度を算出し、優先度の高いフローを優先的に分析する。制御装置３００は、フローごとの異常度（異常値）、異常度差異（異常値差異）、トポロジ重要度（トポロジ値）に基づき、フローごとの優先度を算出する。
【００２１】
制御装置３００は、受信したトラフィック（通信量）に基づき、フローごとの異常度を算出する。異常度は、例えば、実際に取得したトラフィック（以降、実トラフィックと呼ぶ場合がある）と、制御装置３００又は通信システム１０の管理者が予測したトラフィック（以降、予測トラフィックと呼ぶ場合がある）との差異の度合いである。異常度は、例えば、実トラフィックと予測トラフィックとの差異が大きい程、大きい値となる。異常度が大きいフローは、異常が発生している可能性が高い。なお、異常度の算出方法については、後述する。
【００２２】
また、制御装置３００は、トポロジに基づいたフローごとの重要度（以下、トポロジ重要度と呼ぶ場合がある）を算出する。トポロジ重要度は、フローが属するスイッチ２００の通信システム１０内における設置場所や、フローが属するスイッチ２００に隣接する装置に基づいて算出される重要度である。トポロジ重要度は、例えば、通信装置１００に隣接していないスイッチ２００に属するフローは、通信装置１００に隣接するスイッチ２００よりも低くなる。また、トポロジ重要度は、例えば、他のスイッチ２００で通信経路が代替できない場合、高くなる。
【００２３】
制御装置３００は、算出した異常度及びトポロジ重要度に基づいて、フローごとの優先度を算出し、算出した優先度が高いフローを、優先的に分析する。これにより、制御装置３００は、例えば、あるトラフィックの収集周期内で全てのフローを分析できない場合でも、優先度に従い分析するフローを選択することができる。制御装置３００は、例えば、ランダムで分析するフローを選択する場合と比較して、異常が発生している可能性が高いフローを優先的に分析することができ、ネットワーク内の異常を早期で検出できる可能性が高くなる。
【００２４】
＜制御装置の構成例＞
図２は、制御装置３００の構成例を示す図である。制御装置３００は、例えば、コンピュータであり、ＣＰＵ（Central Processing Unit）３１０、ストレージ３２０、メモリ３３０、及びＮＩ（Network Interface）３４０を有する。制御装置３００は、通信システム１０において、スイッチ２００からトラフィックを取得し、フローごとのトラフィックを分析する。
【００２５】
ストレージ３２０は、プログラムやデータを記憶する、フラッシュメモリ、ＨＤＤ（Hard Disk Drive）、又はＳＳＤ（Solid State Drive）などの補助記憶装置である。ストレージ３２０は、トラフィック分析プログラム３２１、分析対象フロー選択プログラム３２２、トポロジ重要度情報テーブル３２３、及びフロー関連情報テーブル３２４を有する。
【００２６】
トポロジ重要度情報テーブル３２３は、例えば、フローごとのトポロジ重要度を記憶するテーブルである。トポロジ重要度情報テーブル３２３は、例えば、制御装置３００の管理者（通信システム１０の管理者でもよい）によって、事前に登録される。また、トポロジ重要度情報テーブル３２３は、後述するトポロジ重要度決定処理によって決定されたフローごとのトポロジ重要度を、制御装置３００が記憶してもよい。
【００２７】
フロー関連情報テーブル３２４は、例えば、フローごとのトラフィックや優先度を記憶するテーブルである。なお、フロー関連情報テーブル３２４の詳細については、後述する。
【００２８】
メモリ３３０は、ストレージ３２０に記憶されているプログラムをロードする領域である。また、メモリ３３０、プログラムがデータを記憶する領域としても使用される。
【００２９】
ＮＩ３４０は、スイッチ２００と接続し、通信を行う装置である。ＮＩ３４０は、例えば、ネットワークケーブルを介してスイッチ２００と接続する、ネットワークインターフェースカードである。また、ＮＩ３４０は、例えば、ハブなどを介して、スイッチ２００と接続してもよい。
【００３０】
ＣＰＵ３１０は、ストレージ３２０に記憶されているプログラムを、メモリ３３０にロードし、ロードしたプログラムを実行し、各処理を実現するプロセッサである。
【００３１】
ＣＰＵ３１０は、トラフィック分析プログラム３２１を実行することで、分析部を構築し、トラフィック分析処理を行う。トラフィック分析処理は、フローごとのトラフィックをスイッチ２００から取得し、取得したトラフィックを分析する処理である。制御装置３００は、トラフィック分析処理において、所定数のフローを選択し、選択したフローのトラフィックを分析する。
【００３２】
また、ＣＰＵ３１０は、トラフィック分析プログラム３２１が有するトラフィック取得モジュール３２１１を実行することで、取得部を構築し、トラフィック取得処理を行う。トラフィック取得処理は、スイッチ２００からフローごとのトラフィックを受信する処理である。制御装置３００は、例えば、トラフィック取得処理において、定期的にスイッチ２００にトラフィックを送信するよう要求するトラフィック要求メッセージを送信し、トラフィック要求メッセージに応答したスイッチが送信する、トラフィックを含むトラフィック応答メッセージを受信する。また、制御装置３００は、例えば、トラフィック取得処理において、スイッチ２００が定期的に送信する、トラフィックを含むトラフィック通知メッセージを受信する。
【００３３】
ＣＰＵ３１０は、分析対象フロー選択プログラム３２２を実行することで、算出部及び分析部を構築し、分析対象フロー選択処理を行う。分析対象フロー選択処理は、トラフィックの分析対象とするフローを選択する処理である。制御装置３００は、分析対象フロー選択処理において、トラフィックを取得する周期内で分析可能な数のフローを選択する。
【００３４】
また、ＣＰＵ３１０は、分析対象フロー選択プログラム３２２が有する異常度算出モジュール３２２１を実行することで、算出部を構築し、異常度算出処理を行う。異常度算出処理は、受信したトラフィックに基づき、フローごとの異常度を算出する処理である。
【００３５】
さらに、ＣＰＵ３１０は、分析対象フロー選択プログラム３２２が有する異常度差異算出モジュール３２２２を実行することで、分析部及び算出部を構築し、異常度差異算出処理を行う。異常度差異算出処理は、算出した異常度と、前回トラフィックを取得しときに算出した異常度との差異を、フローごとに算出する処理である。
【００３６】
さらに、ＣＰＵ３１０は、分析対象フロー選択プログラム３２２が有する優先度算出モジュール３２２３を実行することで、分析部を構築し、優先度算出処理を行う。優先度算出処理は、異常度と、異常度差異と、トポロジ重要度に基づき、トラフィック分析を行う優先度を、フローごとに算出する処理である。
【００３７】
＜スイッチの構成例＞
図３は、スイッチ２００の構成例を示す図である。スイッチ２００は、ＣＰＵ２１０、ストレージ２２０、メモリ２３０、ＮＩ２４０、及びポート２５０−１〜ｎを有する。スイッチ２００は、通信装置１００間で送受信されるパケットを中継する中継装置である。
【００３８】
ストレージ２２０は、プログラムやデータを記憶する、フラッシュメモリ、ＨＤＤ、又はＳＳＤなどの補助記憶装置である。ストレージ２２０は、パケット中継プログラム２２１、トラフィック送信プログラム２２２、及びフロー制御情報テーブル２２３を有する。
【００３９】
フロー制御情報テーブル２２３は、例えば、受信したパケットの送信元、送信先と、送信先ポート番号の関係を記憶するテーブルである。スイッチ２００は、パケットを受信すると、フロー制御情報テーブル２２３を参照し、受信したパケットの送信先を決定する。
【００４０】
メモリ２３０は、ストレージ２２０に記憶されているプログラムをロードする領域である。また、メモリ２３０、プログラムがデータを記憶する領域としても使用される。
【００４１】
ＮＩ２４０は、制御装置３００と接続し、通信を行う装置である。ＮＩ２４０は、例えば、ネットワークケーブルを介して制御装置３００と接続する、ネットワークインターフェースカードである。また、ＮＩ２４０は、例えば、ハブなどを介して、制御装置３００と接続してもよい。
【００４２】
ポート２５０−１〜ｎは、他のスイッチ２００や通信装置１００と接続する接続インターフェースである。ポート２５０−１〜ｎは、例えば、スイッチ２００−１のポートＰ１１〜Ｐ１３に対応する。
【００４３】
ＣＰＵ２１０は、ストレージ２２０に記憶されているプログラムを、メモリ２３０にロードし、ロードしたプログラムを実行し、各処理を実現するプロセッサである。
【００４４】
ＣＰＵ２１０は、パケット中継プログラム２２１を実行することで、中継部を構築し、パケット中継処理を行う。パケット中継処理は、通信装置１００間で送受信されるパケットを中継する処理である。スイッチ２００は、パケット中継処理において、隣接する（接続する）スイッチ２００又は通信装置１００からパケットを受信し、パケットの送信先に基づいて、受信したパケットを送信する。なお、スイッチ２００は、フロー制御情報テーブル２２３を参照し、パケットを送信するポートを決定する。
【００４５】
ＣＰＵ２１０は、トラフィック送信プログラム２２２を実行することで、送信部を構築し、トラフィック送信処理を行う。トラフィック送信処理は、トラフィックを収集し、収集したトラフィックを制御装置３００に送信する処理である。スイッチ２００は、トラフィック送信処理において、制御装置３００がトラフィックを送信するよう要求したとき、又はトラフィックを送信する契機となるタイマが満了したときに、トラフィックを送信する。スイッチ２００は、フローごとにトラフィックを収集し、制御装置３００に送信する。トラフィックは、例えば、単位時間あたりの通信量である。また、トラフィックは、所定時間における通信速度の平均値であってもよい。さらに、トラフィックは、通信の良好度合いを示す情報であり、例えば、エラーパケットの受信数や割合、無通信時間などを含んでもよい。
【００４６】
また、ＣＰＵ２１０は、トラフィック送信プログラム２２２が有するトラフィック収集モジュール２２２１を実行することで、収集部を構築し、トラフィック収集処理を行う。トラフィック収集処理は、フローごとのトラフィックを収集する処理である。スイッチ２００は、トラフィック収集処理において、例えば、送受信するパケットを監視し、送受信するデータ量を内部メモリに記憶する。
【００４７】
＜トラフィック分析処理＞
図４は、トラフィック分析処理の処理フローチャートの例を示す図である。制御装置３００は、例えば、周期的に、トラフィック分析処理Ｓ１０を実行する。制御装置３００は、トラフィック分析処理Ｓ１０において、各フローのトラフィックを取得する（Ｓ１１）。トラフィックの取得は、例えば、スイッチ２００からトラフィックを含むメッセージを受信することで行う。また、トラフィックの取得は、例えば、制御装置３００がスイッチ２００に対して、トラフィックを含むメッセージを送信するよう要求するメッセージを送信してもよい。
【００４８】
そして、制御装置３００は、分析対象フロー選択処理を行う（Ｓ１００）。制御装置３００は、分析対象フロー選択処理Ｓ１００において、トラフィック分析を行う対象となるフローを選択する。なお、制御装置３００は、トラフィック測定周期内に全てのフローのトラフィックを分析することが可能な場合、全てのフローを分析対象フローとして選択してもよい。分析対象フロー選択処理Ｓ１００については、後述する。
【００４９】
そして、制御装置３００は、分析対象フローのトラフィックを分析する（Ｓ１２）。トラフィック分析は、例えば、急激な通信量の増減の発生や、予測トラフィックとの大幅な差異の発生などの通信システム１０に発生している問題を検出することである。
【００５０】
そして、制御装置３００は、分析結果に応じた対処を実行する（Ｓ１３）。分析結果に応じた対処とは、例えば、通信システム１０内に新たなスイッチ２００を増設したり、問題が発生しているスイッチ２００を交換したりする処置である。また、制御装置３００は、制御装置３００の管理者に分析結果を通知するため、制御装置３００の表示部に分析結果を表示したり、分析結果を文字データとしてファイル化したりしてもよい。
【００５１】
図５は、トラフィック分析処理の例を示す図である。制御装置３００は、トラフィック分析周期Ｔａごとに、フローごとのトラフィックを取得する。そして、制御装置３００は、トラフィック分析周期Ｔａの期間内に、所定数のフローを分析する。図４において、制御装置３００は、例えば、４つのフローを分析する。すなわち、制御装置３００は、図４の分析対象フロー選択処理Ｓ１００において、４つのフローを分析対象フローとして選択する。そして、制御装置３００は、分析処理Ｂ１〜Ｂ４を完了し、トラフィック分析周期Ｔａが経過すると、新たなトラフィックを取得する。制御装置３００は、図５に示すように、トラフィック周期Ｔａごとに、各フローの分析処理を繰り返し実施する。
【００５２】
＜分析対象フロー選択処理＞
図６は、分析対象フロー選択処理Ｓ１００の処理フローチャートの例を示す図である。制御装置３００は、フローを選択する（Ｓ１０１）。選択処理Ｓ１０１は、以下に説明する優先度を算出する対象となるフローを選択する処理である。制御装置３００は、分析対象フロー選択処理Ｓ１００が完了するまでに全てのフローの優先度が算出されるように、選択処理Ｓ１０１を行う。制御装置３００は、例えば、選択処理Ｓ１０１において、フローＩＤ（identifier）の昇順にフローを選択する。
【００５３】
制御装置３００は、異常度算出処理を行う（Ｓ１０２）。異常度算出処理Ｓ１０２は、今回取得したトラフィック（実トラフィックと呼ぶ場合がある）と、予測トラフィックとの差異に基づく数値である異常度を算出する処理である。なお、異常度算出に使用するトラフィックは、例えば、フローにおける単位時間あたりの通信量である。
【００５４】
図７は、異常度算出処理Ｓ１０２の処理フローチャートの例を示す図である。制御装置３００は、当該フローの予測トラフィックを取得する（Ｓ１０２−１）。当該フローとは、分析対象フロー選択処理Ｓ１００の選択処理Ｓ１０１で選択されたフローである。
【００５５】
制御装置３００は、処理Ｓ１０２−１において、予測トラフィックを算出する。制御装置は、例えば、過去に取得したトラフィックを内部メモリに記憶する。そして、制御装置３００は、記憶したトラフィックの時系列モデルとして、ＡＲ(Auto Regressive:自己回帰)モデルを選択し、ＡＲモデルに基づく変動モデルを作成する。すなわち、制御装置３００は、記憶したトラフィックをＡＲモデルに適用し、ＡＲモデルの係数を算出し、算出した係数を使用して次回トラフィック取得時の予測トラフィックを算出する。
【００５６】
なお、制御装置３００は、例えば、トラフィックを取得したときに、次回トラフィックを取得したときの予測トラフィックを算出し、算出した予測トラフィックを内部メモリに記憶してもよい。この場合、制御装置３００は、処理Ｓ１０２−１において、内部メモリに記憶した、前回トラフィック取得時に算出した予測トラフィックを内部メモリから取り出し、予測トラフィックを取得する。
【００５７】
そして、制御装置３００は、当該フローの実トラフィックを取得する（Ｓ１０２−２）。制御装置３００は、予測トラフィックと実トラフィックの差分に基づき、異常度を算出する（Ｓ１０２−３）。異常度は、例えば、予測トラフィックと実トラフィックの差分の二乗である。また、異常度は、例えば、予測トラフィックと実トラフィックの差分の絶対値であってもよい。
【００５８】
制御装置３００は、算出した異常度を、当該フローの異常度として内部メモリに記憶する（Ｓ１０２−４）。制御装置３００は、例えば、フロー関連情報テーブル３２４に、異常度を記憶する。
【００５９】
図８は、フロー関連情報テーブル３２４の例を示す図である。フロー関連情報テーブル３２４の情報要素は、「フロー」、「ＳＷ」、「マッチ条件」、「アクション」、「トラフィック（Ｂｙｔｅ）」、「異常度（前回）」、「異常度（今回）」、「トポロジ重要度」、「異常度差異」、及び「優先度」である。
【００６０】
「フロー」は、フローＩＤを示す。フローＩＤは、フローごとに付される番号であり、フローを一意に示す識別子である。フローＩＤは、ランダムな番号であってもよいし、フローの生成順に付された番号であってもよい。
【００６１】
「ＳＷ」は、スイッチ２００の識別子である。図６の「ＳＷ」の番号は、スイッチ２００−ｍにおけるｍを示す。例えば、図６において、「ＳＷ」の「１」は、スイッチ２００−１を示す。
【００６２】
「マッチ条件」は、受信したパケットに対して「アクション」を行う条件を示す。図６において、「マッチ条件」は、送信先アドレスを示す。また、「アクション」は、「マッチ条件」に合致するパケットを受信した場合に、受信したパケットを送信するポート番号を示す。
【００６３】
図６において、例えば、フロー１は、スイッチ２００−１が受信したパケットの送信先アドレスが「１０．１．１．１」である場合、受信したパケットをスイッチ２００−１のポートＰ１２に送信することを示す。
【００６４】
なお、「フロー」、「マッチ条件」、「アクション」は、スイッチ２００が有するフロー制御情報テーブル２２３の情報要素であってもよい。スイッチ２００は、フロー制御情報テーブル２２３に「フロー」、「マッチ条件」、「アクション」を記憶することで、フロー制御情報テーブル２２３を参照することで、受信したパケットの送信先を決定することができる。
【００６５】
「トラフィック（Ｂｙｔｅ）」は、単位時間あたりのデータ量であるトラフィックをしめす。また、「トラフィック（Ｂｙｔｅ）」の単位は、Ｂｙｔｅである。なお、「トラフィック（Ｂｙｔｅ）」に記憶されるトラフィックは、実トラフィックである。
【００６６】
「異常度（前回）」は、前回トラフィック受信時（前回のトラフィック分析時）に算出した異常度である。また、「異常度（今回）」は、今回トラフィック受信時に算出した異常度である。「異常度（前回）」は、例えば、「異常度（今回）」の更新タイミングにおいて、同時に更新される。
【００６７】
「トポロジ重要度」は、トポロジ重要度を示す。なお、トポロジ重要度は、通信システム１０のスイッチ２００や通信装置１００の構成により決定する値であり、例えば、事前に管理者により記憶される。トポロジ重要度の決定方法については、後述する。
【００６８】
「異常度差異」は、「異常度（今回）」から「異常度（前回）」を減じた値である異常度差異を示す。異常度差異の算出方法は、後述する。
【００６９】
「優先度」は、トラフィック分析を行う優先度である。優先度の算出方法は、後述する。
【００７０】
制御装置３００は、  図７に示す異常度算出処理Ｓ１０２において、異常度を算出する。制御装置３００は、例えば、図８によると、フロー１の実トラフィック「１００」と、予測トラフィックに基づき、異常度「１０」を算出し、フロー関連情報テーブル３２４に記憶する。同様に、制御装置３００は、フロー２〜１０の異常度を算出し、フロー関連情報テーブル３２４に記憶する。
【００７１】
図６の処理フローチャートに戻り、制御装置３００は、異常度差異算出処理を行う（Ｓ１０３）。異常度差異算出処理Ｓ１０３は、異常度差異を算出する処理である。
【００７２】
図９は、異常度差異算出処理の処理フローチャートの例を示す図である。制御装置３００は、当該フローの異常度を取得する（Ｓ１０３−１）。制御装置３００は、処理Ｓ１０３−１において、フロー関連情報テーブル３２４の「異常度（今回）」から異常度を取得する。
【００７３】
制御装置３００は、当該フローの前回の異常度を取得する（Ｓ１０３−２）。制御装置３００は、処理Ｓ１０３−２において、フロー関連情報テーブル３２４の「異常度（前回）」から前回の異常度を取得する。
【００７４】
制御装置３００は、今回の異常度から前回の異常度を減じた数値を、異常度差異として算出する（Ｓ１０３−３）。なお、異常度差異は、今回の異常度から前回の異常度を減じた数値の絶対値であってもよい。
【００７５】
制御装置３００は、算出した異常度差異を、当該フローの異常度差異として内部メモリに記憶する（Ｓ１０３−４）。制御装置３００は、処理Ｓ１０３−４において、フロー関連情報テーブル３２４に、異常度差異を記憶する。
【００７６】
制御装置３００は、例えば、図８に示すように、フロー１の異常度差異として、今回の異常度「５０」から前回の異常度「１０」を減じた数値「４０」を算出し、フロー関連情報テーブル３２４に記憶する。制御装置３００は、同様に、フロー２〜１０の異常度差異を算出し、フロー関連情報テーブル３２４に記憶する。
【００７７】
図６の処理フローチャートに戻り、制御装置３００は、優先度算出処理を行う（Ｓ１０４）。優先度算出処理Ｓ１０４は、トラフィック分析の優先度を算出する処理である。
【００７８】
図１０は、優先度算出処理Ｓ１０４の処理フローチャートの例を示す図である。制御装置３００は、当該フローの異常度を取得する（Ｓ１０４−１）。そして、制御装置３００は、当該フローの異常度差異を取得する（Ｓ１０４−２）。制御装置３００は、処理Ｓ１０４−１、２において、フロー関連情報テーブル３２４から、異常度及び異常度差異を取得する。
【００７９】
制御装置３００は、当該フローのトポロジ重要度を取得する（Ｓ１０４−３）。制御装置３００は、処理Ｓ１０４−３において、トポロジ重要度情報テーブル３２３を参照し、当該フローのトポロジ重要度を取得する。
【００８０】
図１１は、トポロジ重要度決定処理Ｓ２００の処理フローチャートの例を示す図である。制御装置３００（又は管理者）は、当該フローはエッジスイッチに相当するか否かを判定する（Ｓ２００−１）。エッジスイッチとは、通信の末端に位置するスイッチ２００であり、例えば、通信装置１００と他のスイッチ２００を介さずに、直接接続されているスイッチ２００である。
【００８１】
例えば、図８において、フロー６は、スイッチ２００−４のフローであり、送信先は「１０．２．２．２」をＩＰアドレスとして有する通信装置１００−２である。スイッチ２００−４から通信装置１００−２に送信されるパケットは、図１によると、スイッチ２００−２及びスイッチ２００−１を経由する。すなわち、フロー６が属するスイッチ２００−４は、送信先が通信装置１００−２である通信において、エッジスイッチではない。
【００８２】
一方、図８において、フロー７は、スイッチ２００−４のフローであり、送信先は「１０．３．３．３」をＩＰアドレスとして有する通信装置１００−３である。スイッチ２００−４から通信装置１００−３に送信されるパケットは、図１によると、他のスイッチを経由しない。すなわち、フロー７が属するスイッチ２００−４は、送信先が通信装置１００−３である通信において、エッジスイッチである。
【００８３】
制御装置３００は、フローが属するスイッチ２００がエッジスイッチであると判定すると（Ｓ２００−１のＹｅｓ）、トポロジ重要度を１００に決定する（Ｓ２００−２）。一方、制御装置３００は、フローが属するスイッチ２００がエッジスイッチでないと判定すると（Ｓ２００−１のＮｏ）、トポロジ重要度を１０に決定する（Ｓ２００−３）。すなわち、制御装置３００は、フローが属するスイッチ２００がエッジスイッチでない場合、トポロジ重要度を第１の値（図１１においては１０）とし、エッジスイッチである場合、トポロジ重要度を第１の値より大きい第２の値（図１１においては１００）とする。これにより、エッジスイッチに属するフローのトポロジ重要度が大きくなり、エッジスイッチに属するフローの優先度が高くなる。
【００８４】
図１０の処理フローチャートに戻り、制御装置３００は、異常度、異常度差異、及びトポロジ重要度を加算した数値を、優先度として算出する（Ｓ１０４−４）。そして、制御装置３００は、算出した優先度を、当該フローの優先度として内部メモリに記憶する（Ｓ１０４−５）。制御装置３００は、処理Ｓ１０４−５において、フロー関連情報テーブル３２４に、優先度を記憶する。
【００８５】
制御装置３００は、例えば、図８に示すように、フロー１の優先度として、今回の異常度「５０」、異常度差異「４０」、及びトポロジ重要度「１００」を加算した数値「１９０」を、フロー関連情報テーブル３２４に記憶する。制御装置３００は、同様に、フロー２〜１０の優先度を算出し、フロー関連情報テーブル３２４に記憶する。
【００８６】
図６の処理フローチャートに戻り、制御装置３００は、全フローの優先度を算出したか否かを確認する（Ｓ１０５）。制御装置３００は、全フローの優先度を算出していない場合（Ｓ１０５のＮｏ）、未選択のフローを選択し（Ｓ１０１）、処理Ｓ１０２〜処理Ｓ１０４を行う。
【００８７】
制御装置３００は、全フローの優先度を算出している場合（Ｓ１０５のＹｅｓ）、優先度が高い順に分析対象フローを選出し（Ｓ１０６）、処理を終了する。
【００８８】
図１２は、分析対象フローとして選択されるフローの例を示す図である。制御装置３００は、図６の処理Ｓ１０６において、例えば、４つのフローを分析対象フローとして選出する。図１２によると、優先度が最も高いフローは、優先度「２２０」のフロー７である。図１２によると、２番目に優先度が高いフローは、優先度「１９０」のフロー１である。図１２によると、３番目に優先度が高いフローは、優先度「１４５」のフロー２である。そして、図１２によると、４番目に優先度が高いフローは、優先度「１３０」のフロー１０である。制御装置３００は、図１２の網掛けで示す、フロー１、２、７、及び１０を、トラフィックの分析対象フローとして選出する。
【００８９】
第１の実施の形態において、制御装置３００は、優先度が高いフローを、優先的に分析対象フローとする。優先度が高いフローは、異常が発生している可能性が高い、あるいは、異常が発生した場合に早急に対処する必要があるなど、トラフィック分析を優先的に実施したほうがよいフローである。これにより、制御装置３００は、重要度が高いフローや、異常発生可能性が高いフローを優先的に分析することができ、全フローのトラフィックを分析できない場合でも、重大な異常の検出ができる可能性が高くなる。
【００９０】
［第２の実施の形態］
次に、第２の実施の形態について説明する。第２の実施の形態において、制御装置３００は、２段階で分析対象フローの選択を行う。制御装置３００は、一次選択として、優先度が高い順にフローを選択する。そして、制御装置３００は、二次選択（第２選択）として、一次選択で選択しなかったフローから、優先度以外の条件で、フローを選択する。
【００９１】
＜分析対象フロー選択処理＞
図１３は、第２の実施の形態における分析対象フロー選択処理Ｓ１００の処理フローの例を示す図である。処理Ｓ１０１〜処理Ｓ１０５は、図６に示す分析対象フロー選択処理Ｓ１００と同様である。
【００９２】
制御装置３００は、全フローの優先度を算出すると（Ｓ１０５のＹｅｓ）、一次選択を行う（Ｓ１０７）。一次選択Ｓ１０７は、優先度が高い（大きい）順にＮ個のフローを、分析対象として選択する処理である。Ｎ個は、例えば、制御装置３００がトラフィック収集周期内にトラフィック分析することが可能なフローの数よりも小さい数である。
【００９３】
そして、制御装置３００は、二次選択を行う（Ｓ１０８）。二次選択Ｓ１０８は、一次選択で選択しなかったフローから、Ｍ個のフローを分析対象として選択する処理である。制御装置３００は、二次選択Ｓ１０８において、優先度に関わらず、Ｍ個のフローを選択する。Ｎ個は、例えば、制御装置３００がトラフィック収集周期内にトラフィック分析することが可能なフローの数から、一次選択Ｓ１０７における選択数Ｎ個を減じた数である。すなわち、制御装置３００は、Ｎ＋Ｍのフローを分析対象とする。
【００９４】
制御装置３００は、二次選択Ｓ１０８において、例えば、ランダム（無作為）にＭ個の分析対象フローを選択する。
【００９５】
また、制御装置３００は、二次選択Ｓ１０８において、例えば、所定時間以上分析していないフローから、Ｍ個の分析対象フローを選択してもよい。
【００９６】
さらに、制御装置３００は、二次選択Ｓ１０８において、例えば、分析していない時間が長い順に、Ｍ個の分析対象フローを選択してもよい。
【００９７】
図１４は、第２の実施の形態における、分析対象フローとして選択されるフローの例を示す図である。制御装置３００は、例えば、一次選択で３個（Ｎ＝３）、二次選択で１個（Ｍ＝１）の分析対象フローを選択する。
【００９８】
図１３の一次選択Ｓ１０７において、制御装置３００は、優先度が高い順に３個のフローを分析対象フローとして選択する。図１４によると、優先度が最も高いフローは、優先度「２２０」のフロー７である。図１４によると、２番目に優先度が高いフローは、優先度「１９０」のフロー１である。図１４によると、３番目に優先度が高いフローは、優先度「１４５」のフロー２である。制御装置３００は、一次選択Ｓ１０７において、フロー１、２、７を分析対象フローとして選択する。
【００９９】
そして、制御装置３００は、図１３の二次選択Ｓ１０８において、フロー４を分析対象フローとして選択する。制御装置３００は、例えば、ランダム（無作為）でフロー４を選択する。
【０１００】
制御装置３００は、一次選択Ｓ１０７及び二次選択Ｓ１０８により、フロー１、２、４、７を、分析対象フローとして選択する。
【０１０１】
第２の実施の形態において、制御装置３００は、二次選択として、優先度に関わらず、一部の分析対象フローを選択する。これにより、制御装置３００は、長期間優先度が低いため、長期間分析対象となっていないフローを分析対象として選択することができ、特定のフローが全く分析されないことを防止する。
【０１０２】
［第３の実施の形態］
次に、第３の実施の形態について説明する。第３の実施の形態において、制御装置３００は、優先度に応じて、フローの集約又は分散を行う。
【０１０３】
＜分析対象フロー選択処理＞
図１５は、第３の実施の形態における分析対象フロー選択処理Ｓ１００の処理フローの例を示す図である。処理Ｓ１０１〜処理Ｓ１０６は、図６に示す分析対象フロー選択処理Ｓ１００と同様である。第３の実施の形態における分析対象フロー選択処理Ｓ１００は、優先度が高い順に分析対象フローを選出する（Ｓ１０６）前に、フロー集約分散処理を行う（Ｓ３００）。フロー集約分散処理Ｓ３００は、優先度に基づき、フローを分散又は集約する処理である。集約とは、例えば、第１数（複数）のフローを、第１数より少ない第２数のフローに結合することである。また、分散とは、例えば、第３数のフローを、第３数より多い第４数（複数）のフローに分割することである。
【０１０４】
図１６は、フロー集約分散処理Ｓ３００の処理フローチャートの例を示す図である。制御装置３００は、第１閾値より優先度が低いフローが複数存在するか否かを確認する（Ｓ３００−１）。制御装置３００は、第１閾値より優先度が低いフローが複数存在する場合（Ｓ３００−１のＹｅｓ）、第１閾値より優先度が低いフローのうち、集約可能な複数のフローを集約し、集約したフローの優先度を算出する（Ｓ３００−２）。
【０１０５】
一方、制御装置３００は、第１閾値より優先度が低いフローが複数存在しない場合（Ｓ３００−１のＮｏ）、処理Ｓ３００−２を実施せず、処理Ｓ３００−２を行う。
【０１０６】
制御装置３００は、第２閾値より優先度が高いフローが存在するか否かを確認する（Ｓ３００−３）。制御装置３００は、第２閾値より優先度が高いフローが存在する場合（Ｓ３００−３のＹｅｓ）、第２閾値より優先度が高いフローのうち、分散可能なフローを分散し、分散したフローの優先度を算出する（Ｓ３００−４）。
【０１０７】
一方、制御装置３００は、第２閾値より優先度が高いフローが存在しない場合（Ｓ３００−３のＮｏ）、処理Ｓ３００−４を実施せず、処理を終了する。
【０１０８】
図１７は、フローを集約する例を示す図である。制御装置３００は、優先度が第１閾値（例えば２０とする）より小さいフローが２つ（フロー１，２）存在することを確認する（図１６のＳ３００−１のＹｅｓ）。そして、制御装置３００は、フロー１，２が集約可能であるか否かを判定する。
【０１０９】
フロー１，２は、共に送信先アドレスが１０．４．４．４（通信装置１００−４）であり、同一の送信先である（図１７（Ａ））。そこで、制御装置３００は、フロー１，２の送信元アドレスをマッチ条件から削除し、送信先アドレスのみをマッチ条件にした新規のフロー１を生成することで、集約前のフロー１，２を、集約後の新規フロー１に集約することができる（図１７（Ｂ））。このように、複数のフローの送信先又は送信元が同じである場合、複数のフローは集約することができる。また、複数のフローのアクションが同じである場合（同じポートに送信される場合）、複数のフローは集約することができる。
【０１１０】
図１８は、フローを分散する例を示す図である。制御装置３００は、優先度が第２閾値（例えば１５０とする）より小さいフロー（フロー１）が存在することを確認する（図１６のＳ３００−３のＹｅｓ）。そして、制御装置３００は、フロー１が分散可能であるか否かを判定する。
【０１１１】
フロー１は、送信先アドレスはマッチ条件となっているが、送信元アドレスはマッチ条件となっていない（図１８（Ａ））。そこで、制御装置３００は、フロー１の送信元アドレスをマッチ条件に追加し、送信先アドレスと送信元アドレスの両方をマッチ条件にした新規のフロー１及び２を生成することで、分散前のフロー１を、分散後の新規フロー１，２に分散することができる（図１８（Ｂ））。このように、フローのマッチ条件が送信先又は送信元のどちらか一方である場合、フローは複数のフローに分散することができる。
【０１１２】
第３の実施の形態において、制御装置３００は、優先度が低い複数のフローを集約し、１つのフローとする。制御装置３００は、フローを集約することで、分析対象となるフローの数が減少させ、トラフィック分析の負荷が減少する。また、優先度が高い複数のフローを分散し、複数のフローとする。制御装置３００は、フローを分散することで、分散前に優先度が高かったフローを、細分化して分析することができ、分析精度が向上する。
【０１１３】
以上の第１から第３の実施の形態を含む実施形態に関し、更に以下の付記を開示する。
【０１１４】
（付記１）
通信装置間の通信において送受信されるデータを中継するスイッチのトラフィックを、フローごとに分析するトラフィック分析装置であって、
前記スイッチから前記フローごとの単位時間あたりの通信量を取得する取得部と、
前回取得した前回通信量に基づき予測した予測通信量と、今回取得した今回通信量との差異に基づく異常度を、前記フローごとに算出する算出部と、
前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する分析部とを有する
トラフィック分析装置。
【０１１５】
（付記２）
前記算出部は、前記今回通信量と前記予測通信量の差異を二乗し、前記異常度を算出する
付記１記載のトラフィック分析装置。
【０１１６】
（付記３）
前記算出部は、前記今回通信量と前記予測通信量の差異の絶対値を、前記異常度として算出する
付記１記載のトラフィック分析装置。
【０１１７】
（付記４）
前記トポロジ値は、前記フローに対応する第１スイッチと前記フローの送信先の第１通信装置とが、他のスイッチを介して接続している場合、第１の値であり、前記第１スイッチと前記第１通信装置とが、他のスイッチを介さずに接続している場合、前記第１の値より大きい第２の値である
付記１記載のトラフィック分析装置。
【０１１８】
（付記５）
前記算出部は、さらに、前回通信量の取得時に算出した異常値を示す前回異常値と、今回通信量の取得時に算出した異常値を示す今回異常値との差異である異常値差異を算出し、
前記分析部は、前記今回異常値と、前記トポロジ値と、前記異常度差異とに基づき、前記優先度を算出する
付記１記載のトラフィック分析装置。
【０１１９】
（付記６）
前記分析部は、前記今回異常値と、前記トポロジ値と、前記異常度差異とを加算した値を、前記優先度として算出し、前記優先度が大きい順にフローを選択する
付記５記載のトラフィック分析装置。
【０１２０】
（付記７）
前記分析部は、さらに、前記選択において選択されないフローから所定数のフローを分析対象として選択する第２選択とを行う
付記１記載のトラフィック分析装置。
【０１２１】
（付記８）
前記分析部は、前記第２選択において、無作為でフローを選択する
付記７記載のトラフィック分析装置。
【０１２２】
（付記９）
前記分析部は、前記第２選択において、所定時間以上分析されていないフローを選択する
付記７記載のトラフィック分析装置。
【０１２３】
（付記１０）
前記分析部は、前記第２選択において、分析されていない時間が長い順にフローを選択する
付記７記載のトラフィック分析装置。
【０１２４】
（付記１１）
前記分析部は、前記優先度が第１閾値より低いフローが第１数存在する場合、前記第１数のフローを前記第１数以下の第２数のフローに集約する
付記１記載のトラフィック分析装置。
【０１２５】
（付記１２）
前記分析部は、前記優先度が第２閾値より高いフローが第３数存在する場合、前記第３数のフローを前記第３数以上の第４数のフローに分散する
付記１記載のトラフィック分析装置。
【０１２６】
（付記１３）
前記分析部は、前記優先度が第１閾値より低いフローが第１数存在する場合、前記第１数のフローを前記第１数以下の第２数のフローに集約し、前記優先度が前記第１閾値よりも大きい第２閾値より高いフローが第３数存在する場合、前記第３数のフローを前記第３数以上の第４数のフローに分散する
付記１記載のトラフィック分析装置。
【０１２７】
（付記１４）
前記フローは、前記スイッチが中継するデータの送信元及び送信先のどちらか一方又は両方に基づき決定する、前記通信装置間の通信の一部である
付記１記載のトラフィック分析装置。
【０１２８】
（付記１５）
通信装置間の通信において送受信されるデータを中継するスイッチのトラフィックを、フローごとに分析するトラフィック分析装置におけるトラフィック分析方法であって、
前記スイッチから前記フローごとの単位時間あたりの通信量を取得し、
前回取得した前回通信量に基づき予測した予測通信量と、今回取得した今回通信量との差異に基づく異常度を、前記フローごとに算出し、
前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する
トラフィック分析方法。
【０１２９】
（付記１６）
通信装置間の通信において送受信されるデータを中継するスイッチのトラフィックを、フローごとに分析するトラフィック分析装置におけるトラフィック分析プログラムであって、
前記スイッチから前記フローごとの単位時間あたりの通信量を取得し、
前回取得した前回通信量に基づき予測した予測通信量と、今回取得した今回通信量との差異に基づく異常度を、前記フローごとに算出し、
前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する処理を、
前記トラフィック分析装置の有するコンピュータに実行させるトラフィック分析プログラム。
【０１３０】
（付記１７）
複数の通信装置と、
前記複数の通信装置間において送受信されるデータを中継するスイッチと、
前記スイッチのトラフィックを、フローごとに分析するトラフィック分析装置とを有する通信システムであって、
前記スイッチは、前記フローごとの単位時間あたりの通信量を、前記トラフィック分析装置に送信し、
前記トラフィック分析装置は、前記通信量を前記スイッチより受信し、前回受信した前回通信量に基づき予測した予測通信量と、今回受信した今回通信量との差異に基づく異常度を、前記フローごとに算出し、前記異常度と、前記フローのトポロジに応じたトポロジ値とに基づき、前記フローごとの優先度を算出し、前記算出したフローごとの優先度のうち、前記優先度の高いフローを選択し、前記選択したフローのトラフィックを分析する
通信システム。
【符号の説明】
【０１３１】
１０…通信システム、                  １００…通信装置、
２００…スイッチ、                    ２１０…ＣＰＵ、
２２０…ストレージ、                  ２２１…パケット中継プログラム、
２２２…トラフィック送信プログラム、  ２２２１…トラフィック収集モジュール、
２２３…フロー制御情報テーブル、      ２３０…メモリ、
２４０…ＮＩ、                        ２５０…ポート、
３００…制御装置、                    ３１０…ＣＰＵ、
３２０…ストレージ、                  ３２１…トラフィック分析プログラム、
３２１１…トラフィック取得モジュール、３２２…分析対象フロー選択プログラム、
３２２１…異常度算出モジュール、      ３２２２…異常度差異算出モジュール、
３２２３…優先度算出モジュール、      ３２３…トポロジ重要度情報テーブル、
３２４…フロー関連情報テーブル、      ３３０…メモリ、
３４０…ＮＩ
【図１】
2019029980.tif 000003
【図２】
2019029980.tif 000004
【図３】
2019029980.tif 000005
【図４】
2019029980.tif 000006
【図５】
2019029980.tif 000007
【図６】
2019029980.tif 000008
【図７】
2019029980.tif 000009
【図８】
2019029980.tif 000010
【図９】
2019029980.tif 000011
【図１０】
2019029980.tif 000012
【図１１】
2019029980.tif 000013
【図１２】
2019029980.tif 000014
【図１３】
2019029980.tif 000015
【図１４】
2019029980.tif 000016
【図１５】
2019029980.tif 000017
【図１６】
2019029980.tif 000018
【図１７】
2019029980.tif 000019
【図１８】
2019029980.tif 000020