(57)【要約】【課題】ネットワーク監視装置で収集されたログデータのデータ量を削減してからネットワーク予測装置へ提供する。【解決手段】ネットワークに接続されたユーザ端末が送受信するパケットのトラヒック量を集計する分析装置は、ネットワークのパケットを監視する監視装置が出力するログデータを受信し、ログデータを集計してユーザ端末毎のトラヒック量を算出して集計情報とし、集計情報をトラヒック量でソートしたソート済み集計情報を生成し、ソート済み集計情報で所定のトラヒック量以上のデータを送受信しているユーザ端末を特定し、特定されたユーザ端末のログデータを予測対象データとして抽出し、分析装置からの出力に基づいてトラヒック量を予測する予測装置は、予測対象データを受け付けて、ネットワークのトラヒック量の傾向を分析し、トラヒック量の将来の需要を予測する。【選択図】図４
2020102776.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザ端末が接続されたネットワークで、前記ユーザ端末が送受信するパケットのトラヒック量を集計する分析装置と、前記分析装置からの出力に基づいてトラヒック量を予測する予測装置とを有するネットワーク分析システムであって、
前記分析装置は、
前記ネットワークのパケットを監視する監視装置が出力するログデータを受信し、前記ログデータを集計して前記ユーザ端末毎のトラヒック量を算出して集計情報として格納するログデータ取得部と、
前記集計情報をトラヒック量でソートしたソート済み集計情報を生成し、前記ソート済み集計情報で所定のトラヒック量以上のデータを送受信しているユーザ端末を特定し、前記特定されたユーザ端末のログデータを予測対象データとして抽出するログデータ分析部と、を有し、
前記予測装置は、
前記分析装置から前記予測対象データを受け付けて、前記ネットワークのトラヒック量の傾向を分析し、前記分析した傾向に基づいてトラヒック量の将来の需要を予測するネットワーク予測部を有することを特徴とするネットワーク分析システム。
【請求項２】
請求項１に記載のネットワーク分析システムであって、
前記ログデータ分析部は、
前記トラヒック量の指定値を受け付けて、前記ソート済み集計情報で前記指定値以上のトラヒック量のデータを送受信しているユーザ端末を特定し、前記特定されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析システム。
【請求項３】
請求項１に記載のネットワーク分析システムであって、
前記ログデータ分析部は、
前記ソート済み集計情報から、全ユーザ端末のトラヒック量に占める各ユーザ端末のトラヒック量の割合を算出し、前記ソート済み集計情報で前記割合が所定の割合以上のユーザ端末を特定して、トラヒック量の多いユーザ端末から順に前記特定されたユーザ端末までのログデータを選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析システム。
【請求項４】
請求項１に記載のネットワーク分析システムであって、
前記ログデータ分析部は、
前記ソート済み集計情報でユーザ端末毎のトラヒック量を、前記ソート済み集計情報の前後のユーザ端末のトラヒック量と比較し、前記比較したトラヒック量の差分が最大のユーザ端末を特定して、トラヒック量の多いユーザ端末から順に前記特定されたユーザ端末までのログデータを選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析システム。
【請求項５】
請求項１に記載のネットワーク分析システムであって、
前記ログデータ分析部は、
前記ソート済み集計情報で最初のユーザ端末からｎ番目のユーザ端末までのユーザ端末の数が全ユーザ端末の数に占める第１の累積比率を算出し、最初のユーザ端末からｎ番目のユーザ端末までの合計トラヒック量が全ユーザ端末の合計トラヒック量に占める第２の累積比率を算出し、前記ソート済み集計情報の前後のユーザ端末で前記第２の累積比率の差分を算出し、前記第２の累積比率の差分が最大のユーザ端末を特定し、当該特定されたユーザ端末よりもトラヒック量が大きいユーザ端末を選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析システム。
【請求項６】
複数のユーザ端末が接続されたネットワークで、前記ユーザ端末が送受信するパケットのトラヒック量を集計してトラヒック量を予測するネットワーク分析装置であって、
前記ネットワーク分析装置は、
前記ネットワークのパケットを監視する監視装置が出力するログデータを受信し、前記ログデータを集計して前記ユーザ端末毎のトラヒック量を算出して集計情報として格納するログデータ取得部と、
前記集計情報をトラヒック量でソートしたソート済み集計情報を生成し、前記ソート済み集計情報で所定のトラヒック量以上のデータを送受信しているユーザ端末を特定し、前記特定されたユーザ端末のログデータを予測対象データとして抽出するログデータ分析部と、
前記予測対象データを受け付けて、前記ネットワークのトラヒック量の傾向を分析し、前記分析した傾向に基づいてトラヒック量の将来の需要を予測するネットワーク予測部と、
を有することを特徴とするネットワーク分析装置。
【請求項７】
請求項６に記載のネットワーク分析装置であって、
前記ログデータ分析部は、
前記トラヒック量の指定値を受け付けて、前記ソート済み集計情報で前記指定値以上のトラヒック量のデータを送受信しているユーザ端末を特定し、前記特定されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析装置。
【請求項８】
請求項６に記載のネットワーク分析装置であって、
前記ログデータ分析部は、
前記ソート済み集計情報から、全ユーザ端末のトラヒック量に占める各ユーザ端末のトラヒック量の割合を算出し、前記ソート済み集計情報で前記割合が所定の割合以上のユーザ端末を特定して、トラヒック量の多いユーザ端末から順に前記特定されたユーザ端末までのログデータを選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析装置。
【請求項９】
請求項６に記載のネットワーク分析装置であって、
前記ログデータ分析部は、
前記ソート済み集計情報でユーザ端末毎のトラヒック量を、前記ソート済み集計情報の前後のユーザ端末のトラヒック量と比較し、前記比較したトラヒック量の差分が最大のユーザ端末を特定して、トラヒック量の多いユーザ端末から順に前記特定されたユーザ端末までのログデータを選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析装置。
【請求項１０】
請求項６に記載のネットワーク分析装置であって、
前記ログデータ分析部は、
前記ソート済み集計情報で最初のユーザ端末からｎ番目のユーザ端末までのユーザ端末の数が全ユーザ端末の数に占める第１の累積比率を算出し、最初のユーザ端末からｎ番目のユーザ端末までの合計トラヒック量が全ユーザ端末の合計トラヒック量に占める第２の累積比率を算出し、前記ソート済み集計情報の前後のユーザ端末で前記第２の累積比率の差分を算出し、前記第２の累積比率の差分が最大のユーザ端末を特定し、当該特定されたユーザ端末よりもトラヒック量が大きいユーザ端末を選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析装置。
【請求項１１】
プロセッサとメモリを有する計算機が、ネットワークに接続された複数のユーザ端末で送受信されるパケットのトラヒック量を集計してトラヒック量を予測するネットワーク分析方法であって、
前記計算機が、前記ネットワークのパケットを監視する監視装置から出力されたログデータを受信し、前記ログデータを集計して前記ユーザ端末毎のトラヒック量を算出して集計情報として格納する第１のステップと、
前記計算機が、前記集計情報をトラヒック量でソートしたソート済み集計情報を生成し、前記ソート済み集計情報で所定のトラヒック量以上のデータを送受信しているユーザ端末を特定し、前記特定されたユーザ端末のログデータを予測対象データとして抽出する第２のステップと、
前記計算機が、前記予測対象データを取得して、前記ネットワークのトラヒック量の傾向を分析し、前記分析した傾向に基づいてトラヒック量の将来の需要を予測する第３のステップと、
を含むことを特徴とするネットワーク分析方法。
【請求項１２】
請求項１１に記載のネットワーク分析方法であって、
前記第２のステップは、
前記トラヒック量の指定値を受け付けて、前記ソート済み集計情報で前記指定値以上のトラヒック量のデータを送受信しているユーザ端末を特定し、前記特定されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析方法。
【請求項１３】
請求項１１に記載のネットワーク分析方法であって、
前記第２のステップは、
前記ソート済み集計情報から、全ユーザ端末のトラヒック量に占める各ユーザ端末のトラヒック量の割合を算出し、前記ソート済み集計情報で前記割合が所定の割合以上のユーザ端末を特定して、トラヒック量の多いユーザ端末から順に前記特定されたユーザ端末までのログデータを選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析方法。
【請求項１４】
請求項１１に記載のネットワーク分析方法であって、
前記第２のステップは、
前記ソート済み集計情報でユーザ端末毎のトラヒック量を、前記ソート済み集計情報の前後のユーザ端末のトラヒック量と比較し、前記比較したトラヒック量の差分が最大のユーザ端末を特定して、トラヒック量の多いユーザ端末から順に前記特定されたユーザ端末までのログデータを選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析方法。
【請求項１５】
請求項１１に記載のネットワーク分析方法であって、
前記第２のステップは、
前記ソート済み集計情報で最初のユーザ端末からｎ番目のユーザ端末までのユーザ端末の数が全ユーザ端末の数に占める第１の累積比率を算出し、最初のユーザ端末からｎ番目のユーザ端末までの合計トラヒック量が全ユーザ端末の合計トラヒック量に占める第２の累積比率を算出し、前記ソート済み集計情報の前後のユーザ端末で前記第２の累積比率の差分を算出し、前記第２の累積比率の差分が最大のユーザ端末を特定し、当該特定されたユーザ端末よりもトラヒック量が大きいユーザ端末を選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出することを特徴とするネットワーク分析方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク分析システム、ネットワーク分析装置及びネットワーク分析方法に関するものである。
【背景技術】
【０００２】
ネットワークの運用者は、将来のネットワークのトラヒック量の需要を予測し、その予測値に基づいてネットワークを設計している。
【０００３】
特許文献１では、ネットワーク内のネットワーク装置や、構成要素の運用状態を監視し、各ネットワーク装置から取得したトラヒック量を基に、今後のトラヒック量の予測を行う技術が開示されている。
【０００４】
特許文献２では、電力の需要を予測する技術として、日付（月、曜日）、気温、原油価格などを説明変数とした重回帰モデルなどを用いて、需要を予測する技術が開示されている。
【０００５】
さらに、特許文献３では、ネットワーク監視装置がカウントしたパケット数の時系列データを用いて、将来のトラヒック量の需要を予測する技術が開示されている。
【０００６】
また、ネットワークのトラヒックについて、詳細なデータを収集する技術として、Ｄｅｅｐ  Ｐａｃｋｅｔ  Ｉｎｓｐｅｃｔｉｏｎ（以下、ＤＰＩ）が知られている。ＤＰＩでは、ヘッダ以外のデータ部分についても内容を収集することができる。
【０００７】
また、ユーザ端末単位でのネットワークのトラヒックを測定する技術としては、非特許文献１の技術が知られている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−１２４６５１号公報
【特許文献２】特開２０１８−６４４５４号公報
【特許文献３】特開２０１５−１４４３４３号公報
【非特許文献】
【０００９】
【非特許文献１】Kenjiro Cho、Kensuke Fukuda、Hiroshi Esaki、Akira Kato  著、“The Impact and Implications of the Growth in Residential User-to-User Traffic,”、SIGCOMM '06 Proceedings of the 2006 conference on Applications, technologies, architectures, and protocols for computer communications、Pages 207-218
【発明の概要】
【発明が解決しようとする課題】
【００１０】
特許文献２や特許文献３に開示された技術を用いれば、ネットワーク監視装置で収集された時系列データを説明変数として重回帰モデルを作成し、これによってネットワークのトラヒック量の需要を予測することが可能である。このとき重回帰モデルは、説明変数が予測対象の変数と高い相関を有する場合に、予測精度が高くなる性質がある。
【００１１】
また、上記ＤＰＩを用いて、ネットワークのトラヒックの内容等からデータの傾向などを取得することで、上記予測精度をさらに向上させることが期待される。
【００１２】
しかしながら、ネットワーク監視装置で収集されたデータをネットワーク予測装置へ転送して分析する場合、データのサイズが大きいと転送及び分析に多くの時間を要することになる。例えば、ネットワーク監視装置でＤＰＩによるログを収集した場合、データサイズが膨大になってしまい、分析を行う計算機へのデータの転送及び分析に要する時間が過大になる、という問題があった。
【００１３】
本発明の目的は、ネットワーク監視装置で収集されたログデータをネットワーク予測装置へ送信する際のデータのサイズを、将来のネットワークのトラヒック量の需要を予測するのに必要十分なサイズに削減することである。
【課題を解決するための手段】
【００１４】
本発明は、複数のユーザ端末が接続されたネットワークで、前記ユーザ端末が送受信するパケットのトラヒック量を集計する分析装置と、前記分析装置からの出力に基づいてトラヒック量を予測する予測装置とを有するネットワーク分析システムであって、前記分析装置は、前記ネットワークのパケットを監視する監視装置が出力するログデータを受信し、前記ログデータを集計して前記ユーザ端末毎のトラヒック量を算出して集計情報として格納するログデータ取得部と、前記集計情報をトラヒック量でソートしたソート済み集計情報を生成し、前記ソート済み集計情報で所定のトラヒック量以上のデータを送受信しているユーザ端末を特定し、前記特定されたユーザ端末のログデータを予測対象データとして抽出するログデータ分析部と、を有し、前記予測装置は、前記分析装置から前記予測対象データを受け付けて、前記ネットワークのトラヒック量の傾向を分析し、前記分析した傾向に基づいてトラヒック量の将来の需要を予測するネットワーク予測部を有する。
【発明の効果】
【００１５】
本発明によれば、ネットワーク監視装置で収集されたログデータをネットワーク予測装置へ送信して分析する場合でも、ログデータのサイズは必要十分なサイズに削減されており、送信及び分析に要する負荷を低減できる。
【００１６】
本明細書において開示される主題の、少なくとも一つの実施の詳細は、添付されている図面と以下の記述の中で述べられる。開示される主題のその他の特徴、態様、効果は、以下の開示、図面、請求項により明らかにされる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施例を示し、ネットワーク分析システムの構成の一例を示すブロック図である。
【図２】本発明の実施例を示し、ログデータ分析装置の構成の一例を示すブロック図である。
【図３】本発明の実施例を示し、ネットワーク予測装置の構成の一例を示すブロック図である。
【図４】本発明の実施例を示し、ログデータ分析装置とネットワーク予測装置で行われる処理の一例を示すシーケンス図である。
【図５】本発明の実施例を示し、ログデータ蓄積領域に保存されるログデータの一例を示す図である。
【図６】本発明の実施例を示し、ログデータ分析プログラムの構成の一例を示すブロック図である。
【図７】本発明の実施例を示し、ログデータに基づいてユーザ端末毎にトラヒック量を集計した集計テーブルの一例を示す図である。
【図８】本発明の実施例を示し、ユーザ端末毎にトラヒック量を集計したログデータをソートしたソート済み集計テーブルの一例を示す図である。
【図９】本発明の実施例を示し、ユーザ端末とトラヒック量の関係の一例を示すグラフである。
【図１０】本発明の実施例を示し、予測に必要十分なデータを抽出する処理の一例を示すフローチャートである。
【図１１】本発明の実施例を示し、分析結果蓄積領域に保存される予測対象データテーブルの一例を示す図である。
【図１２】本発明の実施例を示し、分析結果蓄積領域に保存されるトラヒック量の抽出結果テーブルの一例を示す図である。
【図１３】本発明の実施例を示し、トラヒック量需要予測プログラムの構成の一例を示すブロック図である。
【図１４】本発明の実施例を示し、モデル式蓄積領域に保存されるモデルテーブルの一例を示す図である。
【図１５】本発明の実施例を示し、予測結果蓄積領域に保存される予測テーブルの一例を示す図である。
【図１６】本発明の実施例を示し、トラヒック量の需要予測の結果を出力する画面の一例を示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明の一実施形態を図面に基づいて説明する。
【００１９】
＜ネットワーク構成＞
図１は、ネットワーク分析システムの構成の一例を示すブロック図である。本実施例では通信事業者が提供する地域毎のネットワークで、各ネットワークを利用するユーザ端末の利用状況を分析する例を示す。
【００２０】
ネットワークを提供する地域として、地域７０ａ、７０ｂ、７０ｃの例を示す。以下、複数の地域の中で地域を特定しない場合にはアルファベットの小文字を省略した符号「７０」とし、また他の構成要素の符号についても同じように表す。また、地域の単位としては、自治体の単位や、通信事業者が運営する局舎単位、通信事業者が設置するネットワーク装置単位等となる。
【００２１】
地域７０ａには、パケットを送受信するユーザ端末５０ａ、５０ｂが存在する。地域７０ｂには、パケットを送受信するユーザ端末５０ｃ、５０ｄが存在する。地域７０ｃには、パケットを送受信するユーザ端末５０ｅ、５０ｆが存在する。
【００２２】
ここでユーザ端末５０は、パーソナルコンピュータ（ＰＣ）や、スマートフォン、タブレット型ＰＣ等で構成され、家庭内ルータや事業所内ルータと有線で、もしくはアクセスポイントと無線で接続されている。
【００２３】
ユーザ端末５０ａ、５０ｂが接続されるルータやアクセスポイントは、通信事業者が保有するネットワーク装置４０ａとケーブルで接続しており、ユーザ端末５０ａ、５０ｂが送受信するパケットを中継している。
【００２４】
ユーザ端末５０ｃ、５０ｄが接続されるルータやアクセスポイントは、通信事業者が保有するネットワーク装置４０ｂとケーブルで接続しており、ユーザ端末５０ｃ、５０ｄが送受信するパケットを中継している。
【００２５】
ユーザ端末５０ｅ、５０ｆが接続されるルータやアクセスポイントは、通信事業者が保有するネットワーク装置４０ｃとケーブルで接続しており、ユーザ端末５０ｅ、５０ｆが送受信するパケットを中継している。
【００２６】
ネットワーク装置４０ａは、インターネット６０とケーブル８０ｂで接続される。ユーザ端末５０ａ、５０ｂは、ネットワーク装置４０ａを介してインターネット６０との間でパケットを交換する。
【００２７】
ネットワーク装置４０ｂは、インターネット６０とケーブル８０ｄで接続され。ユーザ端末５０ｃ、５０ｄはネットワーク装置４０ｂを介してインターネット６０との間でパケットを交換する。
【００２８】
ネットワーク装置４０ｃは、インターネット６０とケーブル８０ｅで接続され、ユーザ端末５０ｅ、５０ｆはネットワーク装置４０ｃを介してインターネット６０との間でパケットを交換する。
【００２９】
地域７０ａのケーブル８０ｂで転送されるパケットは、ネットワーク装置４０ａによってコピーされてケーブル８０ｇを経由して、ネットワーク監視装置３０ａへ転送される。ネットワーク監視装置３０ａは、転送されたパケットを監視し、パケットの内容をログデータとして出力し、保存もしくはログデータ分析装置１０ａへ送信する。
【００３０】
ネットワーク監視装置３０ａが生成するログデータとしては、パケットのヘッダの情報に加えて、Ｄｅｅｐ  Ｐａｃｋｅｔ  Ｉｎｓｐｅｃｔｉｏｎ（以下、ＤＰＩ）によって、ヘッダ以外のデータ部分の情報を含むことができる。ＤＰＩを用いたログデータとしては、例えば、パケットのデータに対応するサービス名やアプリケーション名などの属性を含めることで、ユーザ端末５０の利用者の傾向などを収集することができる。
【００３１】
同様に、地域７０ｂのケーブル８０ｄで転送されるパケットは、ネットワーク装置４０ｂによってコピーされてケーブル８０ｈを経由してネットワーク監視装置３０ｂへ転送される。ネットワーク監視装置３０ｂは、転送されたパケットを監視し、パケットの内容を上述のログデータとして出力し、保存もしくはログデータ分析装置１０ｂへ送信する。
【００３２】
更に、地域７０ｃのケーブル８０ｅで転送されるパケットは、ネットワーク装置４０ｃによってコピーされてケーブル８０ｉを経由してネットワーク監視装置３０ｃへ転送される。ネットワーク監視装置３０ｃは、転送されたパケットを監視し、パケットの内容を上述のログデータとして出力し、ログデータ分析装置１０ｃへ送信する。ここで、ネットワーク監視装置３０は、ネットワーク装置４０とインターネット６０の間に配置されてもよい。
【００３３】
ログデータ分析装置１０は、ネットワーク監視装置３０が送信したログデータを取得し、ログデータを分析して分析対象のログデータのサイズを削減してから、削減後のログデータをネットワーク予測装置２０へ送信する。ログデータ分析装置１０がログデータを分析してデータのサイズを削減する手順は後述する。
【００３４】
ネットワーク予測装置２０は、各地域７０のログデータ分析装置１０と間接的に接続されており、ログデータ分析装置１０が送信したログデータを受信し、保存し、分析する。そして、ネットワーク予測装置２０は、各地域７０のネットワークのトラヒック量の傾向を分析した結果に基づいて、将来のトラヒック量の需要予測を実施する。トラヒック量の需要予測をする手順は後述する。ネットワーク予測装置２０は、データセンタ９０内に配置されてもよい。なお、本実施例では、トラヒック量をパケット数またはバイト数で表す例を示す。
【００３５】
なお、ログデータ分析装置１０とネットワーク予測装置２０とネットワーク監視装置３０とネットワーク装置４０については、その構成や、種類、数は、図１に示した例に限らず、適宜、他の態様とすることが可能である。
【００３６】
＜ログデータ分析装置の構成＞
図２は、ログデータ分析装置１０の構成の例を示すブロック図である。ログデータ分析装置１０は、パケット送受信ポート１１ａと、ストレージ１２ａと、メモリ１３ａと、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ，中央演算処理装置）１４ａを含む計算機である。なお、ログデータ分析装置１０には、出力装置としての表示装置２７ａが接続され、入力装置としてのキーボード２８ａとマウス２９ａが接続される。
【００３７】
ストレージ１２ａには、ソフトウェア処理部１５ａのプログラムの一部または全てが格納されている。ここで、ストレージ１２ａとは、ハードディスクや半導体ディスクやフラッシュメモリ等の不揮発性の記憶媒体で構成される。
【００３８】
メモリ１３ａには、ログデータ分析装置１０が実行されるときに、少なくともその処理に必要なプログラムが読み込まれる。ＣＰＵ１４ａは、メモリ１３ａへ読み込まれたプログラムに従って、ログデータ分析装置１０の処理を実行する。メモリ１３ａは、ソフトウェア処理部１５ａ以外に図示を省略したＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等のプログラム実行環境を含んでもよいし、ＣＰＵ１４ａが一時的に読み書きするデータを含んでもよい。ＣＰＵ１４ａは複数のプロセッサコアで構成されてもよい。
【００３９】
ソフトウェア処理部１５ａは、パケット送受信プログラム１６ａと、ログデータ取得プログラム１７と、ログデータ分析プログラム１８と、ユーザインタフェースプログラム１９ａを含む。
【００４０】
各プログラムはＣＰＵ１４ａで実行されることにより各処理部として機能する。例えば、ＣＰＵ１４ａはログデータ分析プログラム１８を実行することで、ログデータ分析部とし機能する。他のプログラムも同様である。このため、以下では、プログラムを主語とする説明は、プログラムを実行するＣＰＵ１４ａを主語とする説明に置き換えてもよい。また、ソフトウェア処理部１５ａは、ログデータ蓄積領域２１と、分析結果蓄積領域２２ａを含む。また、分析結果蓄積領域２２ａには、集計テーブル１８１１と、ソート済み集計テーブル１８２１と、予測対象データテーブル１８４１と、抽出結果テーブル１８３１が含まれる。
【００４１】
ユーザインタフェースプログラム１９ａは、分析結果蓄積領域２２ａに格納されたデータを取得し、分析結果を表示装置２７ａに出力するプログラムである。また、ユーザインタフェースプログラム１９ａは、ネットワーク運用者がキーボード２８ａやマウス２９ａを操作した内容を、入力として受け付けるプログラムとしても実行される。
【００４２】
＜ネットワーク予測装置の構成＞
図３は、ネットワーク予測装置２０の構成の一例を示すブロック図である。ネットワーク予測装置２０は、パケット送受信ポート１１ｂ、ストレージ１２ｂ、メモリ１３ｂ、ＣＰＵ１４ｂを含む計算機である。なお、ネットワーク予測装置２０には、出力装置としての表示装置２７ｂが接続され、入力装置としてのキーボード２８ｂとマウス２９ｂが接続される。
【００４３】
ストレージ１２ｂには、ソフトウェア処理部１５ｂのプログラムの一部または全てが格納されている。ここで、ストレージ１２ｂとは、ハードディスクや半導体ディスクやフラッシュメモリ等の不揮発性の記憶媒体で構成される。
【００４４】
メモリ１３ｂには、ネットワーク予測装置２０が実行されるときに、少なくともその処理に必要なプログラムが読み込まれる。ＣＰＵ１４ｂは、メモリ１３ｂへ読み込まれたプログラムに従って、ネットワーク予測装置２０の処理を実行する。メモリ１３ｂは、ソフトウェア処理部１５ｂ以外に図示を省略したＯＳ等のプログラム実行環境を含んでもよいし、ＣＰＵ１４ｂが一時的に読み書きするデータを含んでもよい。ＣＰＵ１４ｂは複数のプロセッサコアで構成されてもよい。
【００４５】
ソフトウェア処理部１５ｂは、パケット送受信プログラム１６ｂと、分析結果取得プログラム２３と、トラヒック量需要予測プログラム２４と、ユーザインタフェースプログラム１９ｂを含む。
【００４６】
各プログラムはＣＰＵ１４ｂで実行されることにより処理部として機能する。例えば、ＣＰＵ１４ｂは、トラヒック量需要予測プログラム２４を実行することで、トラヒック量需要予測部として機能する。他のプログラムも同様である。このため、以下では、プログラムを主語とする説明は、プログラムを実行するＣＰＵ１４ｂを主語とする説明に置き換えてもよい。また、ソフトウェア処理部１５ｂは、分析結果蓄積領域２２ｂと、モデル式蓄積領域２５と、予測結果蓄積領域２６を含む。
【００４７】
ユーザインタフェースプログラム１９ｂは、予測結果蓄積領域２６に蓄積されたデータを取得し、予測結果を表示装置２７ｂに出力するプログラムである。また、ユーザインタフェースプログラム１９ｂは、ネットワーク運用者がキーボード２８ｂやマウス２９ｂを操作した内容を、入力として受け付けるプログラムとしても実行される。
【００４８】
＜ログデータ分析装置とネットワーク予測装置の間の処理のシーケンス＞
図４は、ログデータ分析装置１０とネットワーク予測装置２０との間で行われる処理の一例を示すシーケンス図である。ネットワーク監視装置３０は、ネットワーク装置４０から転送されたパケットを監視し、パケットの内容からログデータを生成し、ログデータ分析装置１０へ送信する（１００１）。ログデータは、例えば、ＣＳＶ（Ｃｏｍｍａ−Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ）等の形式となっている。
【００４９】
図５はＣＳＶ形式のログデータの一例を示す図である。ＣＳＶ形式ログデータ２０１の１行目は、ログデータのヘッダ部である。このログデータには、日時、サービス種別、ユーザ名、受信バイト数、送信バイト数等を記載すると宣言している。
【００５０】
ＣＳＶ形式ログデータ２０１の２行目以降が、ログデータのデータ部である。例えば２行目は、「２０１８年６月４日２０時００分」の日時で代表する時間帯に、「ユーザ端末５０ａ」が「Ｗｅｂブラウジング」のサービスを利用し、「４９３」バイトを受信し、「２０７」バイトを送信したことを示している。
【００５１】
ログデータ分析装置１０内のパケット送受信プログラム１６ａは、パケットとなって分割されたログデータをパケット送受信ポート１１ａを介して受信し、分割されたパケットをログデータ（２０１）として再構成する。
【００５２】
パケット送受信プログラム１６ａは、再構成されたログデータをログデータ取得プログラム１７へ転送する。ログデータ取得プログラム１７は、ログデータを受信するとログデータ蓄積領域２１の集計テーブル１８１１に格納する。
【００５３】
ログデータ分析プログラム１８は、ログデータ蓄積領域２１の集計テーブル１８１１に格納されたログデータを取得する。そして、取得したログデータを分析し、予測対象となるログデータのサイズを削減する（１００２）。
【００５４】
なお、ログデータ分析装置１０で行われる削減の手順は後述する。また、ログデータ分析プログラム１８は、キーボード２８ａやネットワーク予測装置２０からの指令や所定の周期などの所定のタイミングで実行される。
【００５５】
ログデータ分析プログラム１８は、サイズを削減したログデータを分析結果蓄積領域２２ａの予測対象データテーブル１８４１に格納し、予測対象データテーブル１８４１のデータをネットワーク予測装置２０へ送信する（１００３）。また、ログデータ分析プログラム１８は、ログデータのサイズを削減したトラヒック量の情報を抽出結果テーブル１８３１に格納し、ネットワーク予測装置２０へ送信する。
【００５６】
ネットワーク予測装置２０内のパケット送受信プログラム１６ｂは、パケットとなって分割された予測対象データ（予測対象データテーブル１８４１の各エントリ）をパケット送受信ポート１１ｂを介して受信し、分割されたパケットを予測対象データとして再構成する。また、パケット送受信プログラム１６ｂは、抽出結果テーブル１８３１についても同様に再構成する。
【００５７】
パケット送受信プログラム１６ｂは、再構成された予測対象データと抽出結果テーブルを分析結果取得プログラム２３へ転送する。分析結果取得プログラム２３は、予測対象データを取得すると分析結果蓄積領域２２ｂに格納する。なお、分析結果蓄積領域２２ｂに格納される予測対象データは、ログデータ分析装置１０の予測対象データテーブル１８４１と同様に構成される。
【００５８】
トラヒック量需要予測プログラム２４は、分析結果蓄積領域２２ｂに蓄積された予測対象データを取得する。そして、トラヒック量需要予測プログラム２４は、予測対象となるトラヒック量と相関の高い変数を、予測対象データから抽出する。
【００５９】
次に、トラヒック量需要予測プログラム２４は、予測対象となるトラヒック量と抽出した変数との関係を分析してモデル式を生成する（１００４）。また、トラヒック量需要予測プログラム２４は、生成したモデル式をモデル式蓄積領域２５のモデルテーブル２５０１に格納する。
【００６０】
続いて、トラヒック量需要予測プログラム２４は、生成したモデル式を用いてネットワーク運用者が指定した期間のトラヒック量の需要を予測する（１００５）。なお、トラヒック量需要予測プログラム２４は、トラヒック量を予測する期間をキーボード２８ａから受け付けることができる。また、トラヒック量需要予測プログラム２４で行われる予測の手順は後述する。トラヒック量需要予測プログラム２４は、予測した結果を予測結果蓄積領域２６の予測テーブル２６０１に格納する。
【００６１】
予測テーブル２６０１の予測結果は、ユーザインタフェースプログラム１９ｂによって表示装置２７ｂに出力される。
【００６２】
＜ログデータを分析しデータのサイズを削減する手順＞
図６は、ログデータ分析プログラム１８の構成の一例を示すブロック図である。ログデータ分析プログラム１８は、トラヒック量集計プログラム１８１と、ユーザソートプログラム１８２と、データ抽出プログラム１８３を含む。
【００６３】
トラヒック量集計プログラム１８１は、ログデータ蓄積領域２１に格納されたログデータを取得し、サービス種別、ユーザ名（またはＩＰアドレス）の２つの文字列の組み合わせをキーとして、該当するエントリを収集し、トラヒック量（受信バイト数および送信バイト数）を時間単位、日単位、ユーザ端末単位で集計し、集計テーブル１８１１を生成する。生成された集計テーブル１８１１は、分析結果蓄積領域２２ａに格納される。
【００６４】
図７は、ユーザ端末５０毎にトラヒック量（受信バイト数および送信バイト数）を日単位、時間単位で集計した集計テーブル１８１１の一例を示す図である。図７の集計テーブル１８１１は、ユーザ名１８１２と、サービス名１８１３と、受信バイト数１８１４と、送信バイト数１８１５等を一つのエントリに含む。
【００６５】
例えば、エントリ１８１７ａでは、「２０１８年６月４日」に、「ユーザ端末５０ａ」が「ストリーミング」サービスを利用し、合計「９８７６」バイトを受信し、また合計「４５６」バイトを送信したことを示している。更に、「２０１８年６月４日」の０時の時間帯に、合計「９５」バイトを受信し、また合計「８２」バイトを送信したことを示している。
【００６６】
更に、トラヒック量集計プログラム１８１は、全ユーザ端末５０のトラヒック量（受信バイト数および送信バイト数）を集計する。例えば、エントリ１８１８ａでは、「２０１８年６月４日」に、「ストリーミング」サービスを利用した全ユーザ端末５０で、合計「３００５６７１」バイトを受信し、合計「１００４５６１」バイトを送信したことを示している。
【００６７】
ユーザソートプログラム１８２は、トラヒック量の集計テーブル１８１１を参照し、トラヒック量の値（１８１４）をキーとして、トラヒック量が大きい順にソート済み集計テーブル１８２１を生成する。
【００６８】
図８は、トラヒック量の集計テーブル１８１１を、トラヒック量の値（１８１４）をキーとして大きい順にソートしたソート済み集計テーブル１８２１の一例を示す図である。
【００６９】
トラヒック量のソート済み集計テーブル１８２１は、順番１８２２と、ユーザ名１８１２と、サービス名１８１３と、受信バイト数１８１４と、送信バイト数１８１５等を一つのエントリに含む。なお、順番１８２２を除く他の項目は、図７の集計テーブルと同様であり、同じ項目に同じ符号を付与する。また、他のテーブルについても同様である。
【００７０】
ソート済み集計テーブル１８２１では、例えば、「２０１８年６月４日」の受信バイト数１８１４の大きい順にユーザ端末５０（ユーザ名１８１２）をソートした結果、トラヒック量の集計テーブル１８１１のエントリが１８１７ｄ、１８１７ｃ、１８１７ａ、１８１７ｅ、１８１７ｂの順にソートされたことを示している。ユーザソートプログラム１８２は、ソート済み集計テーブル１８２１の受信バイト数１８１４の大きい順に順番１８２２を付与してソート済み集計テーブル１８２１を生成する。
【００７１】
なお、図８では、ユーザソートプログラム１８２がトラヒック量の受信バイト数１８１４が大きい順でユーザ端末５０（ユーザ名１８１２）をソートする例を示したが、これに限定されるものではない。ユーザソートプログラム１８２は、トラヒック量の送信バイト数１８１５でソートしてもよいし、受信バイト数１８１４と送信バイト数１８１５の合計値についてソートしてソート済み集計テーブル１８２１を生成することができる。
【００７２】
ここで、上記非特許文献１に記載されるように、ネットワークのトラヒックは、一部のヘビーユーザのトラヒック量が、全体のトラヒック量の大部分を消費していることが知られている。
【００７３】
図９は、トラヒック量の累積比率とユーザ端末５０の累積比率の関係を示すグラフである。図９のグラフは、縦軸をトラヒック量の累積比率とし、横軸をユーザ端末５０の累積比率とし、横軸は対数目盛となっている。
【００７４】
図中実線１９５０は、上位約１０％のユーザ端末５０が全体のトラヒック量の約８０％を消費し、残りの約９０％のユーザ端末５０は全体のトラヒック量の約２０％しか消費していないことを示している。実線１９５０は、非特許文献１で開示された上記傾向を示している。
【００７５】
例えば、点線１９５２、点線１９５３が直交する点１９６０は、上位４％のユーザ端末５０が全体のトラヒック量の７５％を消費していることを意味している。よって、これらのヘビーユーザのトラヒックの傾向を見ることで、全体のトラヒックの傾向を推し量ることが可能である。
【００７６】
データ抽出プログラム１８３は、トラヒック量でソートしたソート済み集計テーブル１８２１から、トラヒック量の需要を予測する上で必要十分なサイズのログデータを抽出する。
【００７７】
図１０は、データ抽出プログラム１８３が、ソート済み集計テーブル１８２１から、トラヒック量の需要を予測する上で必要十分なサイズのログデータを抽出する処理の一例を示すフローチャートである。
【００７８】
ステップＳ１８３０〜Ｓ１８３３では、データ抽出プログラム１８３が、ソート済み集計テーブル１８２１の順番１８２２の先頭から最後のエントリまで以下の処理を繰り返す。
【００７９】
データ抽出プログラム１８３は、ソート済み集計テーブル１８２１を参照し、各エントリについて、順番ｎをエントリ１８１７ｆ（最下位のエントリ）に記された順番１８２２の値で除算し、順番ｎまでのユーザ端末５０の累積比率を算出する。
【００８０】
図示の例では、データ抽出プログラム１８３が、順番ｎ（１８２２）をエントリ１８１７ｆに記された順番「１００００」で除算し、順番ｎまでのユーザ端末５０の累積比率を算出する。順番「１０００」までのユーザ端末５０の累積比率は「０．１（１０％）」となる。
【００８１】
累積比率が「１０％」の場合、「１０」を底とする対数に変換すると値が「１」となるので、変数Ｘに「１」を入力する。次に、データ抽出プログラム１８３は、順番１から順番ｎまでのユーザ端末５０のトラヒック量（受信バイト数もしくは送信バイト数）を合算し、エントリ１８１８に記された全ユーザ端末５０のトラヒック量で除算し、トラヒック量の累積比率を算出する。そして、データ抽出プログラム１８３は、算出したトラヒック量の累積比率を、変数Ｙ（Ｘ）に入力する（Ｓ１８３１）。
【００８２】
図示の例では、データ抽出プログラム１８３は、順番１から順番１０００までのユーザ端末５０のトラヒック量（受信バイト数もしくは送信バイト数）を合算し、エントリ１８１８に格納された全ユーザ端末５０のトラヒック量（受信バイト数は「３００５６７１」、送信バイト数は「１００４５６１」）で除算し、トラヒック量の累積比率を算出する。そして、データ抽出プログラム１８３は、算出したトラヒック量の累積比率を、変数Ｙ（１）に入力する。
【００８３】
続いてデータ抽出プログラム１８３は、例えば、Ｙ（Ｘｍ）−Ｙ（Ｘｍ−１）を実施し、変数Ｘが一定量変化したときの変数Ｙの変化量を変数Ｚ（Ｘ）の値に入力する（Ｓ１８３２）。
【００８４】
データ抽出プログラム１８３は、これらの処理を、ソート済み集計テーブル１８２１の全エントリに対して実施した後、変数Ｚ（Ｘ）の最大値を算出する。そして、データ抽出プログラム１８３は、変数Ｚ（Ｘ）が最大値を取ったときの変数Ｘ’の値を特定する（Ｓ１８３４）。なお、図中ＭＡＸ（Ｚ（Ｘ））は、変数Ｚ（Ｘ）の最大値を導出する関数である。
【００８５】
図９では、実線１９５４が実線１９５０に接する点１９６０で、Ｙ軸（トラヒック量の累積比率）方向の変化量Ｚ（Ｘ）が最大となっている。ユーザ端末５０の累積比率が１％でＸ軸（ユーザ端末５０の累積比率）の値が０となる点と、ユーザ端末５０の累積比率が１０％でＸの値が１となる点との間で、Ｙの変化量Ｚ（Ｘ）が最大となっている。
【００８６】
データ抽出プログラム１８３は、Ｘの値が、例えば０．６のときにＹの変化量Ｚ（Ｘ）が最大となっているとすると、変数Ｘ’の値を０．６と特定する。
【００８７】
次に、データ抽出プログラム１８３は、上記対数の底に使用した値「１０」に変数Ｘ’をべき乗し、変数Ｎに入力する（Ｓ１８３５）。図９の例では、データ抽出プログラム１８３が「１０」に０．６をべき乗して「４」を算出し、変数Ｎに「４」を入力する。
【００８８】
続いてデータ抽出プログラム１８３は、ソート済み集計テーブル１８２１を参照し、全エントリのＮ％となるログデータを順番１（１８２２）のエントリから順に抽出し、予測対象データとして選択する（Ｓ１８３６）。
【００８９】
また、データ抽出プログラム１８３は、抽出したログデータ（予測対象データ）を分析結果蓄積領域２２の予測対象データテーブル１８４１に格納し、この予測対象データテーブル１８４１をインターネット６０を介してネットワーク予測装置２０へ送信する。
【００９０】
なお、上記ではユーザ端末５０の出現数の累積比率と、トラヒック量の累積比率を用いてユーザ端末５０を特定する例を示したが、これに限定されるものではなく、例えば、累積比率を用いてユーザ端末５０を特定してもよいし、トラヒック量の絶対値でユーザ端末５０を特定してもよい。
【００９１】
図１１は、トラヒック量のソート済み集計テーブル１８２１から全エントリの４％となるデータを順番１（１８２２）のエントリから順に抽出した予測対象データテーブル１８４１の図である。
【００９２】
分析結果蓄積領域２２の予測対象データテーブル１８４１は、順番１８２２、ユーザ名１８１２、サービス名１８１３、受信バイト数１８１４、送信バイト数１８１５等を一つのエントリに含む。各項目は、図８のソート済み集計テーブル１８２１と同様である。
【００９３】
データ抽出プログラム１８３は、抽出したユーザ端末５０のトラヒック量（受信バイト数および送信バイト数）を集計し、最後のエントリ１８１８ｂに記載する。例えば、エントリ１８１８ｂでは、抽出したユーザ端末５０が「２０１８年６月４日」に「ストリーミング」サービスを利用したトラヒック量は、受信バイト数が「２２５４２５３」であり、送信バイト数が「７５３４２０」であることを示している。
【００９４】
上記処理によって、データ抽出プログラム１８３は、ソート済み集計テーブル１８２１（ソート済み集計情報）で最初のユーザ端末５０（１８１７ｄ）からｎ番目のユーザ端末までのユーザ端末５０の数が、全ユーザ端末５０の数に占める累積比率Ｘ（第１の累積比率）を算出し、最初のユーザ端末５０（１８１７ｄ）からｎ番目のユーザ端末５０までの合計トラヒック量が全ユーザ端末の合計トラヒック量に占める累積比率Ｙ（第２の累積比率）を算出し、ソート済み集計テーブル１８２１の前後のユーザ端末５０で累積比率Ｙの変化量Ｚ（差分）を算出し、変化量Ｚが最大のユーザ端末５０を特定し、当該特定されたユーザ端末５０よりもトラヒック量（１８１４、１８１５）が大きいユーザ端末５０を予測対象として選択し、選択されたユーザ端末５０のログデータを予測対象データとして抽出して、予測対象データテーブル１８４１を生成し、ネットワーク予測装置２０へ送信する。
【００９５】
さらに、データ抽出プログラム１８３は、抽出したユーザ端末５０のトラヒック量が全ユーザ端末５０のトラヒック量に占める割合を算出する。「２０１８年６月４日」の場合、抽出したユーザ端末５０の合計受信バイト数は「２２５４２５３」であり、合計送信バイト数は「７５３４２０」となる。
【００９６】
一方で、全ユーザ端末５０の合計受信バイト数は、図８のソート済み集計テーブル１８２１で示したように「３００５６７１」であり、合計送信バイト数は「１００４５６１」である。従って、抽出したユーザ端末５０のトラヒック量が全ユーザ端末５０のトラヒック量に占める割合は、受信バイト数の場合７５％であり、送信バイト数の場合６５％となる。
【００９７】
データ抽出プログラム１８３は、全ユーザ端末５０のトラヒック量（合計受信バイト数および合計送信バイト数）と、抽出したユーザ端末５０のトラヒック量が全ユーザ端末５０のトラヒック量に占める割合（受信バイト数および送信バイト数）を分析結果蓄積領域２２の抽出結果テーブル１８３１に格納し、ネットワーク予測装置２０へ送信する。
【００９８】
図１２は、抽出結果テーブル１８３１の一例を示す図である。抽出結果テーブル１８３１は、全ユーザ端末５０のトラヒック量（合計受信バイト数および合計送信バイト数）と、抽出したユーザ端末５０のトラヒック量が全ユーザ端末５０のトラヒック量に占める割合（受信バイト数および送信バイト数）を格納するテーブルである。
【００９９】
抽出結果テーブル１８３１は、計測日１８３２と、全ユーザの受信バイト数１８３３と、抽出ユーザの割合１８３４と、全ユーザの送信バイト数１８３５と、抽出ユーザの割合１８３６を一つのエントリに含む。
【０１００】
計測日１８３２は、各エントリのデータとなるパケットを測定した日付が格納される。全ユーザの受信バイト数１８３３には、全てのユーザ端末５０の受信バイト数が格納され、図８のソート済み集計テーブル１８２１のエントリ１８１８ａの受信バイト数１８１４の値が格納される。抽出ユーザの割合１８３４には、図１１の受信バイト数１８１４を図８の受信バイト数１８１４で除算した比率（百分率）が格納される。
【０１０１】
全ユーザの送信バイト数１８３５には、全てのユーザ端末５０の送信バイト数が格納され、図８のソート済み集計テーブル１８２１のエントリ１８１８ａの送信バイト数１８１５の値が格納される。抽出ユーザの割合１８３６には、図１１の送信バイト数１８１５を図８の送信バイト数１８１５で除算した比率（百分率）が格納される。
【０１０２】
エントリ１８３８では、「２０１８年６月４日」の全ユーザ端末５０の合計受信バイト数は「３００５６７１」、抽出したユーザ端末５０の合計受信バイト数はその７５％、全ユーザ端末５０の合計送信バイト数は「１００４５６１」、抽出したユーザ端末５０の合計送信バイト数はその６５％であることを示している。
【０１０３】
上記に記した処理により、ネットワーク監視装置３０が出力するログデータを削減してネットワーク予測装置２０へ提供するために、ログデータ分析装置１０が一部のヘビーユーザとそうでないユーザとを分離する点（１９６０）をソート済み集計テーブル１８２１で特定し、ヘビーユーザのログデータを予測対象データとして抽出する。予測対象データは、ネットワーク監視装置３０が出力した全てのログデータに比してデータ量が削減されているため、ネットワーク予測装置２０への転送及び処理に要する負荷を低減することができる。
【０１０４】
なお、ネットワーク監視装置３０が出力した全てのログデータのデータ量を削減する手法としては、上記の他に、単に全エントリの５分の１のデータを抽出し、データを削減する等の手法も考えられる。また、ネットワーク運用者が指定するトラヒック量をログデータ分析装置１０のキーボード２８ａで受け付けて、指定されたトラヒック量以上のパケットを送受信しているユーザ端末５０を特定し、当該特定されたユーザ端末５０のログデータから予測対象データテーブル１８４１と抽出結果テーブル１８３１を生成してもよい。
【０１０５】
また、ソート済み集計テーブル１８２１のトラヒック量（１８１４、１８１５）の割合で予測対象データを抽出することもできる。この場合、ログデータ分析装置１０は、ソート済み集計テーブル１８２１から、全ユーザ端末５０のトラヒック量（１８１４、１８１５）に占める各ユーザ端末５０のトラヒック量の割合を算出し、ソート済み集計テーブル１８２１で前記割合が所定の割合以上のユーザ端末５０を特定して、トラヒック量の多いユーザ端末５０（１８１７ｄ）から順に、特定されたユーザ端末５０までのログデータを予測対象データとして選択し、選択されたユーザ端末５０のログデータを予測対象データとして抽出し、予測対象データテーブル１８４１に書き込めばよい。
【０１０６】
また、ソート済み集計テーブル１８２１のトラヒック量（１８１４、１８１５）で、予測対象データを抽出することもできる。この場合、ログデータ分析装置１０は、ソート済み集計テーブル１８２１でユーザ端末５０毎のトラヒック量を、ソート済み集計テーブル１８２１の前後のユーザ端末５０のトラヒック量と比較し、比較したトラヒック量の差分が最大のユーザ端末５０を特定して、トラヒック量の多いユーザ端末５０（１８１７ｄ）から順に、特定されたユーザ端末５０までのログデータを予測対象データとして選択し、選択されたユーザ端末５０のログデータを予測対象データとして抽出し、予測対象データテーブル１８４１に書き込めば良い。
【０１０７】
＜トラヒック量の需要を予測する手順＞
図１３は、トラヒック量需要予測プログラム２４の構成の一例を示すブロック図である。トラヒック量需要予測プログラム２４は、予測モデル生成プログラム２４１と、説明変数生成プログラム２４２と、予測プログラム２４３を含む。
【０１０８】
予測モデル生成プログラム２４１は、分析結果蓄積領域２２ｂに格納された予測対象データ（図１１の予測対象データテーブル１８４１）からログデータを取得し、予測対象となるトラヒック量と相関の高い変数を抽出する。
【０１０９】
次に、予測モデル生成プログラム２４１は、予測対象となるトラヒック量と、上記抽出した変数との関係を分析し、目的変数と説明変数からなるモデル式を生成する。モデル式は、例えば「Ｙ＝ａＸ１＋ｂＸ２＋ｃＸ３＋ｄＸ４＋ｅＸ５＋ｆ」のような式となり、Ｙが目的変数であり、Ｘ１からＸ５が説明変数である。なお、「ａ」〜「ｆ」の英子文字は、係数を示す。
【０１１０】
目的変数としては、図１１に示した全ユーザ端末５０のトラヒック量（受信バイト数や送信バイト数）等の値となる。説明変数としては、分析結果蓄積領域２２ｂに格納された予測対象データ内のヘビーユーザのエントリ数や、ヘビーユーザのトラヒック量（受信バイト数や送信バイト数）や、日付、曜日、天気等の値となる。予測モデル生成プログラム２４１は、モデル式を生成するとモデル式蓄積領域２５のモデルテーブル２５０１に格納する。
【０１１１】
図１４は、モデル式蓄積領域２５のモデルテーブル２５０１の一例を示す図である。モデル式蓄積領域２５のモデルテーブル２５０１は、地域名２５０２と、予測するトラヒック量２５０３と、モデル式２５０４を一つのエントリに含む。
【０１１２】
例えば、エントリ２５０６ａでは、地域「７０ａ」で「受信バイト数」のトラヒック量を予測する場合、モデル式として「Ｙ＝ａＸ１＋ｂＸ２＋ｃＸ３＋ｄＸ４＋ｅＸ５＋ｆ」を利用することが示されている。
【０１１３】
また、説明変数生成プログラム２４２は、ネットワーク運用者が指定した予測期間における、モデル式内の説明変数の値を生成する。説明変数の値は、過去のデータをもとに統計的に算出してもよい。または、ネットワーク運用者が、独自の計算に基づいて算出してもよい。
【０１１４】
続いて、予測プログラム２４３は、モデル式蓄積領域２５のモデルテーブル２５０１を参照して、ネットワーク運用者が指定した地域７０のトラヒック量を予測するモデル式を取得し、上記生成した説明変数をモデル式に入力する。なお、ネットワーク運用者は、キーボード２８ｂから地域７０を指定することができる。
【０１１５】
これにより予測プログラム２４３は、予測期間のトラヒック量（受信バイト数および送信バイト数等）の需要を算出する。そして予測プログラム２４３は、予測した結果を予測結果蓄積領域２６の予測テーブル２６０１に格納する。また、ユーザインタフェースプログラム１９ｂを使用して、予測した結果を表示装置２７ｂに出力する。
【０１１６】
図１５は、予測結果蓄積領域２６の予測テーブル２６０１の一例を示す図である。予測テーブル２６０１は、予測日時２６０２と、全ユーザ端末５０の受信バイト数の予測値２６０３を一つのエントリに含む。例えば、エントリ２６０５ａでは、「２０１９年１月１日」の全ユーザ端末５０の受信バイト数として、「６１３００００」バイトを予測している。
【０１１７】
図１６は、ユーザインタフェースプログラム１９ｂがトラヒック量の予測値を表示装置２７ｂに出力した予測画面２４００の一例を示す図である。
【０１１８】
予測画面２４００は、縦軸をトラヒック量、横軸を日時（年月日）としたグラフを表示する。グラフの実線１９２１は過去のトラヒック量の実測値を示しており、例えば図８のエントリ１８１８ａに記した、全ユーザ端末５０の受信バイト数の過去のデータを示している。
【０１１９】
一方、グラフの破線１９２２は、将来のトラヒック量の予測値を示しており、例えば図１５のエントリ２６０５ａ、２６０５ｂ、２６０５ｃに記載した、全ユーザ端末５０の受信バイト数の予測データを示している。
【０１２０】
以上で説明した処理により、ネットワーク監視装置３０が出力するログデータのサイズをログデータ分析装置１０が削減した上で、ネットワーク予測装置２０でトラヒック量の需要予測を実施する。
【０１２１】
これにより、大量のログデータから予測を実施する業務であっても、ログデータの転送や予測処理に大きな時間を要することなく需要予測を実施できる。このとき、予測に必要なデータのサイズを削減することができるため、長期間のデータの蓄積が可能となる。そのため、長期間のトラヒックの傾向を捉えることも可能となり、長期的な予測も実施できる。
【０１２２】
なお、本実施例は、ログデータ分析装置１０、ネットワーク予測装置２０、及びネットワーク監視装置３０による構成のほか、ネットワーク分析方法や、ログデータ分析装置１０及びネットワーク予測装置２０で実行されるコンピュータプログラムとしても構成することができる。コンピュータプログラムは、コンピュータが読取可能な記録媒体に記録されていてもよい。記録媒体としては、例えば、フロッピーディスクやＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、光磁気ディスク、メモリカード、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の不揮発性の媒体を利用することができる。
【０１２３】
また、上記実施例では、各地域７０のログデータ分析装置１０で予測対象データテーブル１８４１を生成して、データセンタ９０のネットワーク予測装置２０へ送信し、ネットワーク予測装置２０が各地域毎にトラヒック量の予測を実施する例を示したが、これに限定されるものではない。
【０１２４】
例えば、各地域７０毎にネットワーク予測装置２０を設けてもよく、ログデータ分析装置１０とネットワーク予測装置２０をひとつの計算機（ネットワーク分析装置）で実現してもよい。この場合、ネットワーク分析装置は、ログデータ取得部（ログデータ取得プログラム１７）と、ログデータ分析部（ログデータ分析プログラム１８）と、分析結果取得部（分析結果取得プログラム２３）と、予測部（トラヒック量需要予測プログラム２４）を含む。
【０１２５】
＜まとめ＞
以上のように、上記実施例のネットワーク分析システムは、複数のユーザ端末（５０）が接続されたネットワーク（ネットワーク装置４０）で、前記ユーザ端末（５０）が送受信するパケットのトラヒック量を集計する分析装置（ログデータ分析装置１０）と、前記分析装置（１０）からの出力に基づいてトラヒック量を予測する予測装置（ネットワーク予測装置２０）とを有するネットワーク分析システムであって、前記分析装置（１０）は、前記ネットワーク（４０）のパケットを監視する監視装置（ネットワーク監視装置３０）が出力するログデータを受信し、前記ログデータを集計して前記ユーザ端末（５０）毎のトラヒック量を算出して集計情報（集計テーブル１８１１）として格納するログデータ取得部（ログデータ取得プログラム１７）と、前記集計情報（集計テーブル１８１１）をトラヒック量でソートしたソート済み集計情報（ソート済み集計テーブル１８２１）を生成し、前記ソート済み集計情報（１８２１）で所定のトラヒック量以上のデータを送受信しているユーザ端末（５０）を特定し、前記特定されたユーザ端末（６０）のログデータを予測対象データ（予測対象データテーブル１８４１）として抽出するログデータ分析部（ログデータ分析プログラム１８）と、を有し、前記予測装置（２０）は、前記分析装置（１０）から前記予測対象データ（１８４１）を受け付けて、前記ネットワーク（４０）のトラヒック量の傾向を分析し、前記分析した傾向に基づいてトラヒック量の将来の需要を予測するネットワーク予測部（トラヒック量需要予測プログラム２４）を有する。
【０１２６】
上記構成により、ログデータ分析装置１０は、ネットワーク監視装置３０が出力するログデータを削減してネットワーク予測装置２０へ提供することができる。すなわち、ログデータ分析装置１０が一部のヘビーユーザが使用するユーザ端末５０とそうでないユーザのユーザ端末５０とを分離する点（１９６０）をソート済み集計テーブル１８２１で特定し、ヘビーユーザが使用するユーザ端末５０のログデータを予測対象データ（予測対象データテーブル１８４１）として抽出し、ネットワーク予測装置２０へ転送する。これにより、予測対象データのデータ量は、ヘビーユーザのユーザ端末５０のログデータに絞り込まれ、ネットワーク監視装置３０が出力するログデータに比して削減されるので、予測対象データの転送や処理に要する負荷を低減できる。
【０１２７】
また、前記ログデータ分析部（１０）は、前記トラヒック量の指定値を受け付けて、前記ソート済み集計情報（１８２１）で前記指定値以上のトラヒック量のデータを送受信しているユーザ端末（５０）を特定し、前記特定されたユーザ端末（５０）のログデータを予測対象データ（１８４１）として抽出する。
【０１２８】
上記構成により、ログデータ分析装置１０は、受け付けた指定値以上のトラヒック量を送受信するユーザ端末５０を、ヘビーユーザのユーザ端末５０とそうでないユーザのユーザ端末５０とを分離する点（１９６０）として特定する。これにより、予測対象データのデータ量は、ヘビーユーザのユーザ端末５０のログデータに絞り込まれ、ネットワーク監視装置３０が出力するログデータに比して削減されるので、予測対象データの転送や処理に要する負荷を低減できる。
【０１２９】
また、前記ログデータ分析部（１０）は、前記ソート済み集計情報（１８２１）から、全ユーザ端末（５０）のトラヒック量に占める各ユーザ端末（５０）のトラヒック量の割合を算出し、前記ソート済み集計情報（１８２１）で前記割合が所定の割合以上のユーザ端末（５０）を特定して、トラヒック量の多いユーザ端末から順に前記特定されたユーザ端末（５０）までのログデータを選択し、前記選択されたユーザ端末（５０）のログデータを予測対象データ（１８４１）として抽出する。
【０１３０】
上記構成により、ログデータ分析装置１０は、トラヒック量の割合が所定の割合以上のユーザ端末５０を、ヘビーユーザのユーザ端末５０とそうでないユーザのユーザ端末５０とを分離する点（１９６０）として特定する。これにより、予測対象データのデータ量は、ヘビーユーザのユーザ端末５０のログデータに絞り込まれ、ネットワーク監視装置３０が出力するログデータに比して削減されるので、予測対象データの転送や処理に要する負荷を低減できる。
【０１３１】
また、前記ログデータ分析部（１０）は、前記ソート済み集計情報（１８２１）でユーザ端末（５０）毎のトラヒック量を、前記ソート済み集計情報（１８２１）の前後のユーザ端末（５０）のトラヒック量と比較し、前記比較したトラヒック量の差分が最大のユーザ端末（５０）を特定して、トラヒック量の多いユーザ端末（５０）から順に前記特定されたユーザ端末（５０）までのログデータを選択し、前記選択されたユーザ端末（５０）のログデータを予測対象データ（１８４１）として抽出することを特徴とするネットワーク分析システム。
【０１３２】
上記構成により、ログデータ分析装置１０は、トラヒック量の差分が最大のユーザ端末５０を、ヘビーユーザのユーザ端末５０とそうでないユーザのユーザ端末５０とを分離する点（１９６０）として特定する。これにより、予測対象データのデータ量は、ヘビーユーザのユーザ端末５０のログデータに絞り込まれ、ネットワーク監視装置３０が出力するログデータに比して削減されるので、予測対象データの転送や処理に要する負荷を低減できる。
【０１３３】
また、前記ログデータ分析部（１０）は、前記ソート済み集計情報（１８２１）で最初のユーザ端末（１８１７ａ）からｎ番目のユーザ端末（１８１７）までのユーザ端末（５０）の数が全ユーザ端末（５０）の数に占める第１の累積比率（Ｘ）を算出し、最初のユーザ端末（１８１７ａ）からｎ番目のユーザ端末（１８１７）までの合計トラヒック量が全ユーザ端末（５０）の合計トラヒック量に占める第２の累積比率（Ｙ）を算出し、前記ソート済み集計情報（１８２１）の前後のユーザ端末（１８１７）で前記第２の累積比率（Ｙ）の差分（Ｚ）を算出し、前記第２の累積比率（Ｙ）の差分（Ｚ）が最大のユーザ端末（５０）を特定し、当該特定されたユーザ端末（５０）よりもトラヒック量が大きいユーザ端末（５０）を選択し、前記選択されたユーザ端末のログデータを予測対象データとして抽出する。
【０１３４】
上記構成により、ログデータ分析装置１０は、第２の累積比率（Ｙ）の差分（Ｚ）が最大のユーザ端末５０を、ヘビーユーザのユーザ端末５０とそうでないユーザのユーザ端末５０とを分離する点（１９６０）として特定する。これにより、予測対象データのデータ量は、ヘビーユーザのユーザ端末５０のログデータに絞り込まれ、ネットワーク監視装置３０が出力するログデータに比して削減されるので、予測対象データの転送や処理に要する負荷を低減できる。
【０１３５】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
【０１３６】
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１３７】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１３８】
１０  ログデータ分析装置
１１  パケット送受信ポート
１２  ストレージ
１３  メモリ
１４  ＣＰＵ
１５  ソフトウェア処理部
１６  パケット送受信プログラム
１７  ログデータ取得プログラム
１８  ログデータ分析プログラム
１９  ユーザインタフェースプログラム
２０  ネットワーク予測装置
２１  ログデータ蓄積領域
２２  分析結果蓄積領域
２３  分析結果取得プログラム
２４  トラヒック量需要予測プログラム
２５  モデル式蓄積領域
２６  予測結果蓄積領域
２７  表示装置
２８  キーボード
２９  マウス
３０  ネットワーク監視装置
４０  ネットワーク装置
５０  ユーザ端末
６０  インターネット
７０  地域
８０  ケーブル
９０  データセンタ
【図１】
2020102776.tif 000003
【図２】
2020102776.tif 000004
【図３】
2020102776.tif 000005
【図４】
2020102776.tif 000006
【図５】
2020102776.tif 000007
【図６】
2020102776.tif 000008
【図７】
2020102776.tif 000009
【図８】
2020102776.tif 000010
【図９】
2020102776.tif 000011
【図１０】
2020102776.tif 000012
【図１１】
2020102776.tif 000013
【図１２】
2020102776.tif 000014
【図１３】
2020102776.tif 000015
【図１４】
2020102776.tif 000016
【図１５】
2020102776.tif 000017
【図１６】
2020102776.tif 000018