(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-14
(45)【発行日】2025-01-22
(54)【発明の名称】トラフィック監視装置、トラフィック監視方法、及びプログラム
(51)【国際特許分類】
H04L 43/026 20220101AFI20250115BHJP
H04L 43/022 20220101ALI20250115BHJP
【FI】
H04L43/026
H04L43/022
(21)【出願番号】P 2023567360
(86)(22)【出願日】2021-12-14
(86)【国際出願番号】 JP2021046133
(87)【国際公開番号】W WO2023112173
(87)【国際公開日】2023-06-22
【審査請求日】2024-05-30
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】100098394
【氏名又は名称】山川 茂樹
(74)【代理人】
【識別番号】100153006
【氏名又は名称】小池 勇三
(74)【代理人】
【識別番号】100064621
【氏名又は名称】山川 政樹
(74)【代理人】
【識別番号】100121669
【氏名又は名称】本山 泰
(72)【発明者】
【氏名】関原 悠介
(72)【発明者】
【氏名】吉田 周平
(72)【発明者】
【氏名】鵜澤 寛之
(72)【発明者】
【氏名】大輝 晶子
(72)【発明者】
【氏名】池田 奈美子
(72)【発明者】
【氏名】八田 彩希
【審査官】宮島 郁美
(56)【参考文献】
【文献】特開2008-244635(JP,A)
【文献】特開2010-34708(JP,A)
【文献】国際公開第2021/240634(WO,A1)
【文献】国際公開第2021/234764(WO,A1)
【文献】特開2020-78057(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L12/00-13/18,41/00-69/40
(57)【特許請求の範囲】
【請求項1】
通信ネットワークのトラフィックをフローごとに監視するトラフィック監視装置であって、
前記通信ネットワークを流れる複数のパケットを順次受信する受信部と、
前記受信部が順次受信した前記複数のパケットのそれぞれについて、監視対象のフローに属するか否かを順次識別するパケット識別部と、
前記パケット識別部により前記監視対象のフローに属すると識別されたパケットについて集計を行う集計部と、
前記集計部による集計の結果を出力する出力部と、
前記受信部が順次受信した前記複数のパケットに基づいて、トラフィック流量又はその増加量が第1基準より大きくなったフローをバーストフローとして検出するバーストフロー検出部と、
前記受信部が順次受信した前記複数のパケットのうち一部のパケットをサンプリングするパケットサンプリング部と、
前記パケットサンプリング部によりサンプリングされた前記一部のパケットに基づいて当該一部のパケットのそれぞれが属するフローのサンプリング前の平均的なトラフィック流量を推定し、推定した前記平均的なトラフィック流量が第2基準よりも多いフローを多流量フローとして検出する多流量フロー検出部と、
前記バーストフローとして検出された前記フローを前記監視対象に追加し、かつ、前記多流量フローとして検出された前記フローを前記監視対象に追加する監視対象制御部と、
を備えるトラフィック監視装置。
【請求項2】
前記パケット識別部は、前記受信部が順次受信した前記複数のパケットのそれぞれを、ルールテーブルに登録されている、前記監視対象のフローに属するパケットを指定するルールと比較し、前記複数のパケットのうち前記ルールと一致するパケットを監視対象のフローに属するパケットと識別し、
前記監視対象制御部は、前記バーストフロー又は前記多流量フローを前記監視対象のフローに追加するときに、前記バーストフロー又は前記多流量フローに属するパケットを指定するルールを前記ルールテーブルに追加する、
請求項1に記載のトラフィック監視装置。
【請求項3】
前記監視対象制御部は、前記集計部による集計結果に基づいて、当該集計結果により示されるトラフィック流量が第3基準よりも低いフローを前記監視対象から削除する、
請求項1又は2に記載のトラフィック監視装置。
【請求項4】
通信ネットワークのトラフィックをフローごとに監視するトラフィック監視方法であって、
受信部が順次受信した前記通信ネットワークを流れる複数のパケットのそれぞれについて、監視対象のフローに属するか否かを順次識別するパケット識別ステップと、
前記パケット識別ステップにより前記監視対象のフローに属すると識別されたパケットについて集計を行う集計ステップと、
前記受信部が順次受信した前記複数のパケットに基づいて、トラフィック流量又はその増加量が第1基準より大きくなったフローをバーストフローとして検出するバーストフロー検出ステップと、
前記受信部が順次受信した前記複数のパケットのうち一部のパケットをサンプリングするパケットサンプリングステップと、
前記パケットサンプリングステップによりサンプリングされた前記一部のパケットに基づいて当該一部のパケットのそれぞれが属するフローのサンプリング前の平均的なトラフィック流量を推定し、推定した前記平均的なトラフィック流量が第2基準よりも多いフローを多流量フローとして検出する多流量フロー検出ステップと、
前記バーストフローとして検出された前記フローを前記監視対象に追加し、かつ、前記多流量フローとして検出された前記フローを前記監視対象に追加する監視対象制御ステップと、
を備えるトラフィック監視方法。
【請求項5】
通信ネットワークのトラフィックをフローごとに監視するコンピュータに、
受信部が順次受信した前記通信ネットワークを流れる複数のパケットのそれぞれについて、監視対象のフローに属するか否かを順次識別するパケット識別ステップと、
前記パケット識別ステップにより前記監視対象のフローに属すると識別されたパケットについて集計を行う集計ステップと、
前記受信部が順次受信した前記複数のパケットに基づいて、トラフィック流量又はその増加量が第1基準より大きくなったフローをバーストフローとして検出するバーストフロー検出ステップと、
前記受信部が順次受信した前記複数のパケットのうち一部のパケットをサンプリングするパケットサンプリングステップと、
前記パケットサンプリングステップによりサンプリングされた前記一部のパケットに基づいて当該一部のパケットのそれぞれが属するフローのサンプリング前の平均的なトラフィック流量を推定し、推定した前記平均的なトラフィック流量が第2基準よりも多いフローを多流量フローとして検出する多流量フロー検出ステップと、
前記バーストフローとして検出された前記フローを前記監視対象に追加し、かつ、前記多流量フローとして検出された前記フローを前記監視対象に追加する監視対象制御ステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、トラフィック監視装置、トラフィック監視方法、及びプログラムに関する。
【背景技術】
【0002】
通信ネットワークの通信状況、特に、通信ネットワークを流れる宛先及び又は送信元などが共通するパケットの集合であるフローのトラフィック異常を把握するため、通信ネットワークを流れる全パケットを取得して全フローのトラフィックを監視することが一般的に行われている(例えば、非特許文献1)。ここで、通信ネットワークの仮想化により複数の通信ネットワークが単一の物理構成上で構成されるようになったことなどを要因として、通信ネットワーク上には多量のフローが存在する。
【先行技術文献】
【非特許文献】
【0003】
【文献】Michal Kekely, Jan Korenek, “Mapping of P4 Match Action Tables to FPGA,” 2017 27th International Conference on Field Programmable Logic and Applications (FPL)
【発明の概要】
【発明が解決しようとする課題】
【0004】
通信ネットワーク上に多量のフローが存在する場合、全てのフローを監視するのは現実的ではなく、一部のフローのみを監視対象とした方がよい。
【0005】
本発明は、監視対象のフローの取捨選択を適切に行うことを課題とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明に係るトラフィック監視装置は、通信ネットワークのトラフィックをフローごとに監視するトラフィック監視装置であって、前記通信ネットワークを流れる複数のパケットを順次受信する受信部と、前記受信部が順次受信した前記複数のパケットのそれぞれについて、監視対象のフローに属するか否かを順次識別するパケット識別部と、前記パケット識別部により前記監視対象のフローに属すると識別されたパケットについて集計を行う集計部と、前記集計部による集計の結果を出力する出力部と、前記受信部が順次受信した前記複数のパケットに基づいて、トラフィック流量又はその増加量が第1基準より大きくなったフローをバーストフローとして検出するバーストフロー検出部と、前記受信部が順次受信した前記複数のパケットのうち一部のパケットをサンプリングするパケットサンプリング部と、前記パケットサンプリング部によりサンプリングされた前記一部のパケットに基づいて当該一部のパケットのそれぞれが属するフローのサンプリング前の平均的なトラフィック流量を推定し、推定した前記平均的なトラフィック流量が第2基準よりも多いフローを多流量フローとして検出する多流量フロー検出部と、前記バーストフローとして検出された前記フローを前記監視対象に追加し、かつ、前記多流量フローとして検出された前記フローを前記監視対象に追加する監視対象制御部と、を備える。
【0007】
また、本発明に係るトラフィック監視方法は、通信ネットワークのトラフィックをフローごとに監視するトラフィック監視方法であって、受信部が順次受信した前記通信ネットワークを流れる複数のパケットのそれぞれについて、監視対象のフローに属するか否かを順次識別するパケット識別ステップと、前記パケット識別ステップにより前記監視対象のフローに属すると識別されたパケットについて集計を行う集計ステップと、前記受信部が順次受信した前記複数のパケットに基づいて、トラフィック流量又はその増加量が第1基準より大きくなったフローをバーストフローとして検出するバーストフロー検出ステップと、前記受信部が順次受信した前記複数のパケットのうち一部のパケットをサンプリングするパケットサンプリングステップと、前記パケットサンプリングステップによりサンプリングされた前記一部のパケットに基づいて当該一部のパケットのそれぞれが属するフローのサンプリング前の平均的なトラフィック流量を推定し、推定した前記平均的なトラフィック流量が第2基準よりも多いフローを多流量フローとして検出する多流量フロー検出ステップと、前記バーストフローとして検出された前記フローを前記監視対象に追加し、かつ、前記多流量フローとして検出された前記フローを前記監視対象に追加する監視対象制御ステップと、を備える。
【0008】
また、本発明に係るプログラムは、通信ネットワークのトラフィックをフローごとに監視するコンピュータに、受信部が順次受信した前記通信ネットワークを流れる複数のパケットのそれぞれについて、監視対象のフローに属するか否かを順次識別するパケット識別ステップと、前記パケット識別ステップにより前記監視対象のフローに属すると識別されたパケットについて集計を行う集計ステップと、前記受信部が順次受信した前記複数のパケットに基づいて、トラフィック流量又はその増加量が第1基準より大きくなったフローをバーストフローとして検出するバーストフロー検出ステップと、前記受信部が順次受信した前記複数のパケットのうち一部のパケットをサンプリングするパケットサンプリングステップと、前記パケットサンプリングステップによりサンプリングされた前記一部のパケットに基づいて当該一部のパケットのそれぞれが属するフローのサンプリング前の平均的なトラフィック流量を推定し、推定した前記平均的なトラフィック流量が第2基準よりも多いフローを多流量フローとして検出する多流量フロー検出ステップと、前記バーストフローとして検出された前記フローを前記監視対象に追加し、かつ、前記多流量フローとして検出された前記フローを前記監視対象に追加する監視対象制御ステップと、を実行させる。
【発明の効果】
【0009】
本発明によれば、監視対象のフローの取捨選択が適切に行われる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、本発明の一実施形態のトラフィック監視装置の構成図である。
【
図2】
図2は、パケットのデータ構造の一例を示す図である。
【
図3】
図3は、ルールテーブルの構成例を示す図である。
【
図4】
図4は、マイクロバーストが発生したときのトラフィック流量の変化を示すグラフである。
【
図5】
図5は、高流量フローのトラフィック流量の変化を示すグラフである。
【
図6】
図6は、第1ルール制御処理のフローチャートである。
【
図7】
図7は、第2ルール制御処理のフローチャートである。
【
図8】
図8は、
図1のトラフィック監視装置をコンピュータにより構成したときの構成図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態について図面を参照して説明する。
【0012】
本実施の形態に係るトラフィック監視装置10は、
図1に示すように、受信部11と、パケット識別部12と、集計部13と、出力部14と、を備える。トラフィック監視装置10は、さらに、バーストフロー検出部15と、パケットサンプリング部16Aと、多流量フロー検出部16Bと、監視対象制御部17と、記憶部19と、を備える。このような構成のトラフィック監視装置10は、通信ネットワークNWのトラフィックをフローごとに監視するように構成されている。
【0013】
上記各部11~17の少なくとも一部は、例えば、FPGA(Field-Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などに書き込まれた論理回路から構成される。各部11~17の少なくとも一部は、プログラムを実行するCPU(Central Processing Unit)などのプロセッサにより構成されてもよい。記憶部19は、フラッシュメモリ、SSD(Solid State Drive)などの適宜の不揮発性の記憶装置からなる。記憶部19は、FPGA(Field-Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などの少なくとも一部のメモリにより構成されてもよい。各部11~17は、処理中のデータなどを一時的に保持するメモリを含んで構成されてもよい。
【0014】
受信部11は、通信ネットワークNWで送受信されている複数のパケット(より具体的にはミラーリングパケット)を1つずつ順次受信する。パケットは、
図2に示すように、データ(ペイロードともいう)と、データの前に配置されたヘッダと、で構成されている。ヘッダを構成する各データは、あるビット数ごとに意味づけられている。この意味づけられたビット区切りのデータを、ヘッダフィールド値といい、ヘッダフィールド値が一致するパケットの一群をフローという。従って、ヘッダフィールド値はフローを特定する情報でもある。なお、ヘッダフィールド値は、L3ヘッダの送信元及び宛先を示す各IP(Internet Protocol)アドレスなどを含んでもよい。フローは、例えば、宛先、送信元、及び、通信プロトコルのうちの少なくとも1つを示すヘッダフィールド値が共通するパケットの集合であればよい。
【0015】
図1に戻り、受信部11が受信したパケットは、1つ1つ、当該受信部11から見て互いに並列に配置されているパケット識別部12、バーストフロー検出部15、パケットサンプリング部16Aのそれぞれに入力される。
【0016】
パケット識別部12は、受信部11が順次受信した複数のパケットのそれぞれについて、監視対象のフローに属するか否かを識別する。監視対象のフローは、後述のように、バーストフロー又は多流量フローとして検出され、監視対象に追加されたフローである。
【0017】
例えば、パケット識別部12は、処理対象のパケットからヘッダフィールド値を抽出する。さらに、パケット識別部12は、記憶部19が記憶するルールテーブル19Aを参照する。ルールテーブル19Aには、監視対象のフローに属するパケットを指定するルールが登録されている。
図3に示すように、ルールは、監視対象のフローごとに登録され、1つのルールは、そのフローのヘッダフィールド値と、当該ヘッダフィールド値に対応付けられたフローIDと、そのフローが監視対象となった監視原因(バーストフロー又は多流量フロー)と、を含む。フローIDは、ルールを識別するルールIDからなってもよい。
【0018】
パケット識別部12は、ルールテーブル19Aから、前記で抽出したヘッダフィールド値を検索する。検索がヒットした場合、今回の処理対象のパケットが監視対象のフローに属していると識別される。この場合、パケット識別部12は、検索に使用したヘッダフィールド値に対応するフローID及び監視原因をルールテーブル19Aから取得する。パケット識別部12は、さらに、今回の処理対象のパケットのデータ量を計測する。ここでは、データ量として、バイト数がカウントされる。その後、パケット識別部12は、取得したフローID及び監視原因と、計測したデータ量とを集計部13に出力する。検索がヒットしなかった場合、今回の処理対象のパケットが属するフローは監視対象となっていない。この場合、パケット識別部12は、フローID、監視原因、及びデータ量を集計部13に出力しない。
【0019】
以上のようにして、パケット識別部12は、受信部11が順次受信した複数のパケットのそれぞれを、ルールテーブル19Aに登録されている、監視対象のフローに属するパケットを指定するルールと比較する。パケット識別部12は、前記複数のパケットのうち前記ルールと一致するパケットを監視対象のフローに属するパケットと識別する。
【0020】
集計部13は、パケット識別部12により監視対象のフローに属すると識別されたパケットについて集計を行う。ここでは、集計部13は、パケット識別部12からのフローIDの受信回数を、フローIDごとつまりフローごとにカウントする。カウントされる受信回数は、受信部11が受信したパケットの数つまりパケット数ともいえる。集計部13は、データ量を、フローIDごとつまりフローごとに積算する。集計部13は、一定期間ごとに、監視対象のフローそれぞれについて、当該一定期間にカウント又は積算したパケット数及びデータ量と、フローID及び監視原因とを集計結果として出力部14に出力する。集計結果は、パケット数とバイト数とのいずれかであってもよい。集計結果は、監視対象制御部17にも出力される。
【0021】
出力部14は、集計部13からの集計結果を出力する。出力部14は、フローID(又はフローIDから特定されるフロー又はルールの名称など)と、フローごとの上記パケット数及び積算データ量と、のうちの少なくとも後者を集計結果として出力してもよい。出力部14は、例えば、トラフィック監視装置10が備える又はトラフィック監視装置10の外部の表示装置などに集計結果を表示する。出力部14は、例えば、集計結果を、トラフィック監視装置10の内部又は外部に設けられた処理部に出力し、当該処理部は、集計の結果に基づいて、フローごとにトラフィック異常の有無を判定してもよい。処理部は、トラフィック異常があると判定したフローを前記表示装置に表示する処理、及び又は、当該フローでの通信を遮断するための処理を実行してもよい。
【0022】
バーストフロー検出部15は、受信部11が順次受信した複数のパケットに基づいて、トラフィック流量又はその増加量が第1基準より大きくなったフローをバーストフローとして検出する。バーストフロー検出部15により検出されるバーストフローを
図4に示す。バーストフローは、トラフィック量が急増する。バーストフローは、通信ネットワークNWの挙動に対して突発的に大きな影響を与える。
【0023】
図1に戻り、バーストフロー検出部15は、例えば、フローごと(ヘッダフィールド値ごと)に、一定期間Pごとのパケット数及びパケットの合計データ量をトラフィック流量として監視する。バーストフロー検出部15は、直近の期間Pのパケット数又は合計データ量が所定の閾値を超えたかを判別する。前記パケット数又は合計データ量が所定の閾値を超えた場合、そのフローでのトラフィック流量が増加し始めていることになり(
図4の期間Tなど)、そのフローがバーストフローとして検出される。監視対象のトラフィック流量は、パケット数及び合計データ量のうちのいずれか一方のみであってもよい。バーストフローの検出方法は、国際公開WO/2021/014552号公報に記載のバーストトラフィックの発生の検知の方法により行われてもよい。この公報のバーストトラフィックの検知が、バーストフローの検出に相当する。バーストフロー検出部15は、単位時間当たりのパケット数又は合計データ量をトラフィック流量としたときのトラフィック流量の時間変化を監視し、トラフィック流量の増加量が所定の閾値を超えたフローをバーストフローとして検出してもよい。バーストフロー検出部15は、検出したバーストフローが属するパケットのフィールド値を監視対象制御部17に供給する。
【0024】
パケットサンプリング部16Aは、受信部11が順次受信した複数のパケットのうち一部のパケットをサンプリングする。これにより、受信部11が順次受信した全てのパケットから、一部のパケットが無作為に抽出される。パケットサンプリング部16Aは、サンプリングにより得た前記一部のパケットのみを後段の多流量フロー検出部16Bに順次供給する。
【0025】
多流量フロー検出部16Bは、パケットサンプリング部16Aによりサンプリングされた一部のパケットに基づいて、当該一部のパケットのそれぞれが属するフローのサンプリング前の平均的なトラフィック流量を推定する。多流量フロー検出部16Bは、推定した平均的なトラフィック流量が第2基準よりも多いフローを多流量フローとして検出する。第2基準は、フロー毎に異なってもよい。多流量フロー検出部16Bで検出される多流量フローを
図5に示す。多流量フローは、トラフィック流量が長期間にわたって多くなっている。多流量フローは、通信ネットワークNWの挙動に対して長期的な影響を与える。
【0026】
多流量フロー検出部16Bは、例えば、パケットサンプリング部16Aからサンプリングされたパケットをフローごと(ヘッダフィールド値ごと)に保持する。多流量フロー検出部16Bは、新たなパケットを保持したときに、この新たなパケットと、このパケットと同じフロー(ヘッダフィールド値)の保持中のパケットとに基づいて、サンプリング前、つまり、サンプリングをしなかったとしたときの元の全パケットによるフローの平均的なトラフィック流量を推定する。この平均的なトラフィック流量は、例えば、前記の新たなパケットの保持タイミングを含む所定期間における単位時間当たりのパケット数又は合計データ量(トラフィック量)の平均値又は代表値などである。推定方法は、サンプリング定理などを用いた任意の方法により行われる。推定方法は、機械学習などで学習した方法などであってもよい。多流量フロー検出部16Bは、推定した平均的なトラフィック流量が所定の閾値を超えているかを判別する。平均的なトラフィック流量が所定の閾値を超えていると判別されたとき、前記の新たなパケットが属するフローが、トラフィック流量の多い多流量フローとして検出される。このとき、多流量フロー検出部16Bは、前記の新たなパケットのヘッダフィールド値を監視対象制御部17に供給する。サンプリングを行ってから元のフローのトラフィック流量を推定することにより、マイクロバーストなどによるトラフィック流量の急減の影響が低減され、高精度に多流量フローが検出される。
【0027】
監視対象制御部17は、バーストフロー検出部15によりバーストフローとして検出されたフローを、監視対象に追加する。さらに、監視対象制御部17は、多流量フロー検出部16Bにより多流量フローとして検出されたフローを、監視対象に追加する。この追加は、ここでは、各フローに属するパケットを指定するルール、つまり、フローIDとヘッダフィールド値との組み合わせがルールテーブル19Aに追加登録されることにより行われる。
【0028】
監視対象制御部17は、例えば
図6に示す第1ルール制御処理を実行することで上記フローの監視対象への追加を行う。監視対象制御部17は、第1ルール制御処理を、トラフィック監視装置10の起動時から実行する。
【0029】
監視対象制御部17は、ルール制御処理において、まず、バーストフロー検出部15からヘッダフィールド値が供給されたかを判別する(ステップS11)。監視対象制御部17は、この判別結果が肯定の場合、供給されたヘッダフィールド値がルールテーブル19Aに登録されているかを判別する(ステップS12)。肯定の場合、そのヘッダフィールド値のフローがすでに監視対象となっている。この場合、監視対象制御部17は、ステップS21の処理に進む。
【0030】
ステップS12の判別結果が否定の場合、監視対象制御部17は、今回供給されたヘッダフィールド値に対応するフローIDを取得する(ステップS13)。監視対象制御部17は、例えば、記憶部19などに記憶されたフローIDとヘッダフィールド値との対応関係を示すテーブルを参照し、今回供給されたヘッダフィールド値に対応するフローIDを取得する。監視対象制御部17は、今回供給されたヘッダフィールド値が前記のテーブルに登録されていない場合、フローIDを新規に発行することで、当該フローIDを取得する。この場合、監視対象制御部17は、当該フローIDとヘッダフィールド値とを前記テーブルにも登録する。
【0031】
監視対象制御部17は、今回供給されたヘッダフィールド値と、ステップS13で取得したフローIDとを1つのルールとして互いに対応付けてルールテーブル19Aに登録する(ステップS14)。
【0032】
ステップS14のあと、ステップS11の判別結果が否定の場合、又は、ステップS12の判別結果が肯定の場合、監視対象制御部17は、多流量フロー検出部16Bからヘッダフィールド値が供給されたかを判別する(ステップS21)。監視対象制御部17は、この判別結果が肯定の場合、ステップS22~S24の処理を実行する。ステップS22~S24は、それぞれ、ステップS12~S14と同様の処理であるので、その詳細な説明は省略する。ステップS24のあと、ステップS21の判別結果が否定の場合、又は、ステップS22の判別結果が肯定の場合、監視対象制御部17は、再度ステップS11を実行する。
【0033】
監視対象制御部17は、例えば
図7に示す第2ルール制御処理を実行することで監視対象のフローの削除を行う。監視対象制御部17は、第2ルール制御処理を、トラフィック監視装置10の起動時から実行する。
【0034】
監視対象制御部17は、第2ルール制御処理において、まず、集計部13から集計結果が供給されたかを判別する(ステップS31)。判別結果が肯定の場合、監視対象制御部17は、監視対象のフローのそれぞれについて、集計結果に含まれる上記パケット数又はデータ量つまりトラフィック流量が第3基準よりも低いかを判別する(ステップS32)。判別結果が肯定の場合、監視対象制御部17は、判別対象のフローが正常になったとして、処理対象の集計結果に含まれるフローIDを含むルールをルールテーブル19Aから削除する(ステップS33)。これにより、正常となったフローが監視対象から削除される。ステップS31又はS32の判別結果が否定あるいはステップS33のあとは、再度ステップS31が実行される。第3基準は、フローごと及び又は監視原因ごとに異なってもよい。
【0035】
以上のように、監視対象制御部17は、集計結果に含まれる上記パケット数又はデータ量つまりトラフィック流量が第3基準よりも低いフローを正常となったフローとして監視対象から除外する。
【0036】
以上のような一連の処理により、バーストフロー及び多流量フローが、パケット識別部12による監視対象に追加される。上述のように、バーストフロー及び多流量フローは、通信ネットワークNWの挙動に異なる態様の影響を与える。ここで、バーストフローは、変化が急峻であり(
図4参照)、パケットサンプリング部16A及び多流量フロー検出部16Bによるサンプリングを用いた検出方法では検出困難である。他方、多流量フローは、変化が少ないため(
図5参照)、バーストフロー検出部15によっては検出困難である。この実施の形態では、バーストフロー検出部15と、パケットサンプリング部16A及び多流量フロー検出部16Bとのそれぞれにより、バーストフローと多流量フローとを各フローの検出に好適な方法により別個に検出する。そして、検出されたフローは、監視対象制御部17により、パケット識別部12による監視対象のフローに追加される。従って、通信ネットワークNWの挙動を与える2種のフローを適切に監視対象に加えることができ、これにより、監視対象のフローの取捨選択を適切に行われることになる。また、監視対象のフローの管理に、ルールテーブル19Aが使用されることで、監視対象のフローが容易となっている。
【0037】
さらに、本実施の形態では、集計結果に含まれる上記パケット数又はデータ量つまりトラフィック流量が第3基準よりも低いフローを正常となったフローとして監視対象から除外するので、正常となったフローが監視対象に残ることが抑制され、監視対象のフローの取捨選択を適切に行われることになる。
【0038】
図8にトラフィック監視装置10をコンピュータにより構成したときのハードウェア構成図を示す。トラフィック監視装置10は、CPUなどのプロセッサ101と、プロセッサ101のメインメモリ102と、プログラム及び各種データを記憶し、
図1の記憶部19を構成する不揮発性の記憶装置103と、を備える。さらに、トラフィック監視装置10は、通信ネットワークNWに接続され、パケットを中継するNIC(Network Interface Card)104を備える。プロセッサ101は、記憶装置103に記憶され、メインメモリ102に読み出されたプログラム及びデータを実行又は使用して上記各部11~17として動作する。なお、受信部11及び出力部14は、プログラムを実行するプロセッサ101とNIC104との組み合わせにより実現されてもよい。
【0039】
[本発明の範囲]
本発明は、上記の実施の形態及び変形例に限定されるものではない。例えば、本発明には、本発明の技術思想の範囲内で当業者が理解し得る、上記の実施の形態及び変形例に対する様々な変更が含まれる。上記実施の形態及び変形例に挙げた各構成は、矛盾の無い範囲で適宜組み合わせることができる。また、上記の各構成のうちの任意の構成を削除することも可能である。上記各種のプログラムは、不揮発性の記憶装置103に限らず、非一時的なコンピュータ読み取り可能な記憶媒体に記憶されてもよい。「装置」及び「部」は、その動作を実現する構成が一つの筐体に収容された物であっても、その動作を実現する構成が複数の筐体に分散して収容された物(システム)であってもよい。
【符号の説明】
【0040】
10…トラフィック監視装置、11…受信部、12…パケット識別部、13…集計部、14…出力部、15…バーストフロー検出部、16A…パケットサンプリング部、16B…多流量フロー検出部、17…監視対象制御部、19…記憶部、19A…ルールテーブル、101…プロセッサ、102…メインメモリ、103…記憶装置、NW…通信ネットワーク。