(57)【要約】      （修正有）【課題】トラフィック上を複数のアプリケーションのフローが混在したまま流れるネットワーク環境で、エンドツーエンドで一部のトラフィックが暗号化された場合でもアプリケーションの識別ができる技術を提供する。【解決手段】識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムであって、前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットの情報に基づいて統計量を算出する統計量演算手段と、前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する遷移確率を演算する演算手段とを有し、前記遷移確率に基づいて、前記注目パケットのアプリケーションを識別する。【選択図】図１
2007228489.tif 000002
【特許請求の範囲】
【請求項１】
パケットに対応するアプリケーションを識別するアプリケーション識別システムであって、
少なくとも二以上の受信パケットの各々にアプリケーション候補を対応させた場合、受信パケット間でアプリケーション候補が遷移する遷移確率を、前記受信パケット及び前記アプリケーション候補の情報に基づいて算出する確率演算手段と、
前記遷移確率に基づいて、受信パケットに対応するアプリケーションを識別するアプリケーション識別手段と
を有することを特徴とするアプリケーション識別システム。
【請求項２】
複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムであって、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいて統計量を算出する統計量演算手段と、
前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算手段と、
前記遷移確率に基づいて、前記注目パケットのアプリケーションを識別するアプリケーション識別手段と
を有することを特徴とするアプリケーション識別システム。
【請求項３】
前記アプリケーション識別手段は、前記注目パケットのアプリケーションを識別する動作を、パケット系列に対して時系列順に注目パケットを変えて実施し、前記注目パケットをアプリケーション毎のフローに振り分けることで、前記パケット系列をアプリケーションフローに振り分けるように構成されていることを特徴とする請求項２に記載のアプリケーション識別システム。
【請求項４】
前記統計量演算手段は、
受信したパケットのパケット情報に基づいて、前記統計量としてパケット長統計量を演算するパケット長統計量演算手段と、
受信したパケットのパケット情報に基づいて前記統計量としてパケット到着間隔統計量を演算するパケット到着間隔統計量演算手段と
を有することを特徴とする請求項２または請求項３に記載のアプリケーション識別システム。
【請求項５】
前記パケット情報は、パケットの到着順を示すパケット番号と、パケット長と、パケット到着時刻と、前記アプリケーション識別手段によるアプリケーション識別の結果であるアプリケーション識別結果とからなることを特徴とする請求項２から請求項４のいずれかに記載のアプリケーション識別システム。
【請求項６】
前記アプリケーション情報は、前記アプリケーション候補となるアプリケーションのパケットのみがネットワーク上を流れている状況においてパケットに対して統計量演算を行うことで得られるアプリケーションを特徴付ける情報であることを特徴とする請求項２から請求項５のいずれかに記載のアプリケーション識別システム。
【請求項７】
前記アプリケーションを特徴付ける情報は、パケット長統計量と、パケット到着間隔統計量と、アプリケーション種別との少なくとも１つ以上からなることを特徴とする請求項６に記載のアプリケーション識別システム。
【請求項８】
前記アプリケーション情報のパケット長統計量は、パケット長分布と、パケット長移動平均値分布と、パケット長移動中央値分布と、パケット長移動分散値分布と、パケット長移動標準偏差分布との少なくとも１つ以上からなることを特徴とする請求項７に記載のアプリケーション識別システム。
【請求項９】
前記アプリケーション情報のパケット到着間隔統計量は、パケット到着間隔分布と、パケット到着間隔移動平均値分布と、パケット到着間隔移動中央値分布と、パケット到着間隔移動分散値分布と、パケット到着間隔移動標準偏差分布との少なくとも１つ以上からなることを特徴とする請求項７に記載のアプリケーション識別システム。
【請求項１０】
アプリケーション候補は、識別情報によって識別されることを特徴とする請求項２から請求項９のいずれかに記載のアプリケーション識別システム。
【請求項１１】
複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムであって、
パケット系列のパケット情報を抽出するパケット情報抽出手段と、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット長統計量を演算するパケット長統計量演算手段と、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット到着間隔統計量を演算するパケット到着間隔統計量演算手段と、
前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算手段と、
前記遷移確率に基づいて最尤系列推定を実施しアプリケーション識別を行う最尤系列推定手段と、
識別結果を用いて前記アプリケーション候補の種別及び候補数を動的に制御するアプリケーション候補動的制御手段と、
時系列順に注目パケットを変化させてアプリケーション識別の繰り返し動作を管理する繰り返し動作管理手段と
を有することを特徴とするアプリケーション識別システム。
【請求項１２】
前記パケット情報抽出手段は、受信したパケット系列を構成する個々のパケットのパケット長及びパケット到着時刻を抽出することを特徴とする請求１１に記載のアプリケーション識別システム。
【請求項１３】
前記最尤系列推定手段は、前記遷移確率から最尤系列推定を実施し、前記パケット系列をアプリケーション毎のフローに振り分けることを特徴とする請求項１１または請求項１２に記載のアプリケーション識別システム。
【請求項１４】
前記アプリケーション候補動的制御手段は、前記最尤系列推定手段によりアプリケーション識別した結果を用いて前記アプリケーション候補の種別及びフロー数を動的に制御することを特徴とする請求項１１から請求項１３のいずれかに記載のアプリケーション識別システム。
【請求項１５】
前記繰り返し動作管理手段は、全てのパケットのアプリケーション識別が終了するまでアプリケーション識別動作が繰り返されるよう管理することを特徴とする請求項１１から請求項１４のいずれかに記載のアプリケーション識別システム。
【請求項１６】
パケットに対応するアプリケーションを識別するアプリケーション識別方法であって、
少なくとも二以上の受信パケットの各々にアプリケーション候補を対応させて、受信パケット間でアプリケーション候補が遷移する遷移確率を、前記受信パケット及び前記アプリケーション候補の情報に基づいて算出する確率演算ステップと、
前記遷移確率に基づいて、受信パケットに対応するアプリケーションを識別するアプリケーション識別ステップと
を有することを特徴とするアプリケーション識別方法。
【請求項１７】
複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別方法であって、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいて統計量を算出する統計量演算ステップと、
前記統計量演算ステップにより演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する遷移確率演算ステップと、
前記遷移確率に基づいて、前記注目パケットのアプリケーションを識別するアプリケーション識別ステップと
を有することを特徴とするアプリケーション識別方法。
【請求項１８】
前記アプリケーション識別ステップは、前記注目パケットのアプリケーションを識別する動作を、パケット系列に対して時系列順に注目パケットを変えて実施し、前記注目パケットをアプリケーション毎のフローに振り分けることで、前記パケット系列をアプリケーションフローに振り分けることを特徴とする請求項１７に記載のアプリケーション識別方法。
【請求項１９】
前記統計量演算ステップは、
受信したパケットのパケット情報に基づいて、前記統計量としてパケット長統計量を演算するパケット長統計量演算ステップと、
受信したパケットのパケット情報に基づいて前記統計量としてパケット到着間隔統計量を演算するパケット到着間隔統計量演算ステップと
を有することを特徴とする請求項１７または請求項１８に記載のアプリケーション識別方法。
【請求項２０】
前記パケット情報は、パケットの到着順を示すパケット番号と、パケット長と、パケット到着時刻と、前記アプリケーション識別ステップによるアプリケーション識別の結果であるアプリケーション識別結果とからなることを特徴とする請求項１７から請求項１９のいずれかに記載のアプリケーション識別方法。
【請求項２１】
前記アプリケーション情報は、前記アプリケーション候補となるアプリケーションのパケットのみがネットワーク上を流れている状況においてパケットに対して統計量演算を行うことで得られるアプリケーションを特徴付ける情報であることを特徴とする請求項１７から請求項２０のいずれかに記載のアプリケーション識別方法。
【請求項２２】
前記アプリケーションを特徴付ける情報は、パケット長統計量と、パケット到着間隔統計量と、アプリケーション種別との少なくとも１つ以上からなることを特徴とする請求項２１に記載のアプリケーション識別方法。
【請求項２３】
前記アプリケーション情報のパケット長統計量は、パケット長分布と、パケット長移動平均値分布と、パケット長移動中央値分布と、パケット長移動分散値分布と、パケット長移動標準偏差分布との少なくとも１つ以上からなることを特徴とする請求項２２に記載のアプリケーション識別方法。
【請求項２４】
前記アプリケーション情報のパケット到着間隔統計量は、パケット到着間隔分布と、パケット到着間隔移動平均値分布と、パケット到着間隔移動中央値分布と、パケット到着間隔移動分散値分布と、パケット到着間隔移動標準偏差分布との少なくとも１つ以上からなることを特徴とする請求項２２に記載のアプリケーション識別方法。
【請求項２５】
アプリケーション候補は、識別情報によって識別されることを特徴とする請求項１７から請求項２４のいずれかに記載のアプリケーション識別方法。
【請求項２６】
複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別方法であって、
パケット系列のパケット情報を抽出するパケット情報抽出ステップと、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット長統計量を演算するパケット長統計量演算ステップと、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット到着間隔統計量を演算するパケット到着間隔統計量演算ステップと、
前記統計量演算ステップにより演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算ステップと、
前記遷移確率に基づいて最尤系列推定を実施しアプリケーション識別を行う最尤系列推定ステップと、
識別結果を用いて前記アプリケーション候補の種別及び候補数を動的に制御するアプリケーション候補動的制御ステップと、
時系列順に注目パケットを変化させてアプリケーション識別の繰り返し動作を管理する繰り返し動作管理ステップと
を有することを特徴とするアプリケーション識別方法。
【請求項２７】
前記パケット情報抽出ステップは、受信したパケット系列を構成する個々のパケットのパケット長及びパケット到着時刻を抽出することを特徴とする請求２６に記載のアプリケーション識別方法。
【請求項２８】
前記最尤系列推定ステップは、前記遷移確率から最尤系列推定を実施し、前記パケット系列をアプリケーション毎のフローに振り分けることを特徴とする請求項２６または請求項２７に記載のアプリケーション識別方法。
【請求項２９】
前記アプリケーション候補動的制御ステップは、前記最尤系列推定ステップによりアプリケーション識別した結果を用いて前記アプリケーション候補の種別及びフロー数を動的に制御することを特徴とする請求項２６から請求項２８のいずれかに記載のアプリケーション識別方法。
【請求項３０】
前記繰り返し動作管理ステップは、全てのパケットのアプリケーション識別が終了するまでアプリケーション識別動作が繰り返されるよう管理することを特徴とする請求項２６から請求項２９のいずれかに記載のアプリケーション識別方法。
【請求項３１】
パケットに対応するアプリケーションを識別するアプリケーション識別システムのプログラムであって、前記プログラムは前記アプリケーション識別システムを、
少なくとも二以上の受信パケットの各々にアプリケーション候補を対応させた場合、受信パケット間でアプリケーション候補が遷移する遷移確率を、前記受信パケット及び前記アプリケーション候補の情報に基づいて算出する確率演算手段と、
前記遷移確率に基づいて、受信パケットに対応するアプリケーションを識別するアプリケーション識別手段と
して機能させことを特徴とするプログラム。
【請求項３２】
複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムのプログラムであって、前記プログラムは前記システムを、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいて統計量を算出する統計量演算手段と、
前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算手段と、
前記遷移確率に基づいて、前記注目パケットのアプリケーションを識別するアプリケーション識別手段と
して機能させることを特徴とするプログラム。
【請求項３３】
前記アプリケーション識別手段は、前記注目パケットのアプリケーションを識別する動作を、パケット系列に対して時系列順に注目パケットを変えて実施し、前記注目パケットをアプリケーション毎のフローに振り分けることで、前記パケット系列をアプリケーションフローに振り分けることを特徴とする請求項３２に記載のプログラム。
【請求項３４】
前記統計量演算手段は、
受信したパケットのパケット情報に基づいて、前記統計量としてパケット長統計量を演算するパケット長統計量演算手段と、
受信したパケットのパケット情報に基づいて前記統計量としてパケット到着間隔統計量を演算するパケット到着間隔統計量演算手段と
を有することを特徴とする請求項３２または請求項２３に記載のプログラム。
【請求項３５】
前記パケット情報は、パケットの到着順を示すパケット番号と、パケット長と、パケット到着時刻と、前記アプリケーション識別手段によるアプリケーション識別の結果であるアプリケーション識別結果からなることを特徴とする請求項３２から請求項３４のいずれかに記載のプログラム。
【請求項３６】
前記アプリケーション情報は、前記アプリケーション候補となるアプリケーションのパケットのみがネットワーク上を流れている状況においてパケットに対して統計量演算を行うことで得られるアプリケーションを特徴付ける情報であることを特徴とする請求項３２から請求項３５のいずれかに記載のプログラム。
【請求項３７】
前記アプリケーションを特徴付ける情報は、パケット長統計量と、パケット到着間隔統計量と、アプリケーション種別との少なくとも１つ以上からなることを特徴とする請求項３６に記載のプログラム。
【請求項３８】
前記アプリケーション情報のパケット長統計量は、パケット長分布と、パケット長移動平均値分布と、パケット長移動中央値分布と、パケット長移動分散値分布と、パケット長移動標準偏差分布との少なくとも１つ以上からなることを特徴とする請求項３７に記載のプログラム。
【請求項３９】
前記アプリケーション情報のパケット到着間隔統計量は、パケット到着間隔分布と、パケット到着間隔移動平均値分布と、パケット到着間隔移動中央値分布と、パケット到着間隔移動分散値分布と、パケット到着間隔移動標準偏差分布との少なくとも１つ以上からなることを特徴とする請求項３７に記載のプログラム。
【請求項４０】
アプリケーション候補は、識別情報によって識別されることを特徴とする請求項３２から請求項３９のいずれかに記載のプログラム。
【請求項４１】
複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムのプログラムであって、前記プログラムは前記アプリケーション識別システムを、
パケット系列のパケット情報を抽出するパケット情報抽出手段と、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット長統計量を演算するパケット長統計量演算手段と、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット到着間隔統計量を演算するパケット到着間隔統計量演算手段と、
前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算手段と、
前記遷移確率に基づいて最尤系列推定を実施しアプリケーション識別を行う最尤系列推定手段と、
識別結果を用いて前記アプリケーション候補の種別及び候補数を動的に制御するアプリケーション候補動的制御手段と、
時系列順に注目パケットを変化させてアプリケーション識別の繰り返し動作を管理する繰り返し動作管理手段と
して機能させることを特徴とするプログラム。
【請求項４２】
前記パケット情報抽出手段は、受信したパケット系列を構成する個々のパケットのパケット長及びパケット到着時刻を抽出することを特徴とする請求４１に記載のプログラム。
【請求項４３】
前記最尤系列推定手段は、前記遷移確率から最尤系列推定を実施し、前記パケット系列をアプリケーション毎のフローに振り分けることを特徴とする請求項４１または請求項４２に記載のプログラム。
【請求項４４】
前記アプリケーション候補動的制御手段は、前記最尤系列推定手段によりアプリケーション識別した結果を用いて前記アプリケーション候補の種別及びフロー数を動的に制御することを特徴とする請求項４１から請求項４３のいずれかに記載のプログラム。
【請求項４５】
前記繰り返し動作管理手段は、全てのパケットのアプリケーション識別が終了するまでアプリケーション識別動作が繰り返されるよう管理することを特徴とする請求項４１から請求項４４のいずれかに記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーション識別システム、アプリケーション識別方法、及びプログラムに関し、特にさまざまなアプリケーションのデータが混在したままネットワーク上を流れる場合において、流れているアプリケーションの種類を識別するアプリケーション識別システム、方法、及びプログラムに関する。
【背景技術】
【０００２】
インターネットを利用した電子商取引やストリーミング配信等の本格的な普及に伴い、インターネット上には益々多くのアプリケーションのフローが混在するようになってきている。
【０００３】
また、インターネット上には、ピア・ツー・ピア技術を用いて可能な限り多くの帯域を使用し、かつＴＣＰ／ＵＤＰポート番号を詐称して大きなデータを転送するアプリケーションも多数存在する。このようなアプリケーションを使用されたインターネットサービスプロバイダでは、提供可能な帯域の大部分を一部のユーザに使われてしまう。このため、インターネットサービスプロバイダ等では、通過するフローのうち長時間大容量のフローを発生させるものがあれば、ネットワーク管理ポリシーに従いそのフローのみを帯域制限することも珍しくない。
【０００４】
このとき、帯域を制限してはならない正規のフローに対して帯域制限をかけてしまうと具合が悪い。レスポンス低下やセッション断等のサービス影響が生じる可能性があるからである。そこで、この場合、影響を受けてしまう帯域を制限してはならない正規のフローなのか、或いは、帯域を制限すべき不正なフローなのかを識別するためにアプリケーションの識別が必要となる。
【０００５】
ここに、アプリケーションのフローとはユーザとシステム間で通信される一連のアプリケーションデータを意味し、以下単にフローと略記する場合がある。また、「トラフィック」の用語は、複数のアプリケーションフローを含むデータ全体の流れ」の意味として用いる場合がある。
【０００６】
さて、このアプリケーションの識別手法については、これまでもいくつかの技術が提案されてきている。
【０００７】
例えば、正規のアプリケーションフローの送受信ＩＰアドレスの組み合わせと、そのフローを構成するパケットの中身を正規フローのパタンとして予め保存しておき、受信したパケットが前記正規フローのパタンと一致するかでアプリケーションの識別を行う技術がある（特許文献１）。
【０００８】
又、不正なフローを構成するパケットのビットパタンを予め保存しておき、受信したパケットが前記ビットパタンに一致するかでアプリケーション識別を行う技術も提案されている（特許文献２）。
【０００９】
しかしながら、こうした方法にはいくつかの問題があった。
【００１０】
例えば、ＴＣＰ／ＵＤＰポート番号が詐称されてしまうとアプリケーションの識別ができなくなるという問題があった。
【００１１】
又、アプリケーションの識別にはビットパタンが既知である必要があった。このため、新規の不正なフローが出現する度に保守者はビットパタン指定や登録を行うなどの保守作業を行う必要があり管理者に負担がかかった。同時に、ビットパタンを登録するための記憶領域もシステム上で余分に必要となっていた。
【００１２】
そこで、これらの問題を解決するための技術として、最近提案された技術に以下のものがある。すなわち、ヘッダ情報に依存しないフローのパケット長平均値、パケット長分散値、パケットの到着間隔平均値、パケットの到着間隔分散値で表される統計的特徴で定義されるフローの特徴を予め保存しておき、受信したフローが前記保存しているフローの統計的特徴と一致するかでアプリケーション識別を行う技術である（非特許文献３）。
【特許文献１】特開２００４−３８５５７号公報
【特許文献２】特開２００４−１４０６１８号公報
【非特許文献３】電子情報通信学会２００５総合大会Ｂ−６−４３
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記提案の技術においても、大きな問題があった。
【００１４】
例えば、エンドツーエンドで一部のトラフィックが暗号化されてしまうとアプリケーションの検出ができないという問題である。
【００１５】
その理由は、特許文献１と特許文献２と特許文献３とに記載されている発明は、ネットワーク上を流れるパケットを発信側と着信側のポート番号の組み合わせに分け、アプリケーション毎のフローに分離しなければアプリケーションの検出ができないためである。例えばＩＰＳｅｃを用いてエンドツーエンドで全てのトラフィックが暗号化されてしまうと、従来技術ではアプリケーションの識別ができないという難点があった。
【００１６】
従って、本発明が解決しようとする課題は、トラフィック上をさまざまなアプリケーションのフローが混在したまま流れるネットワークにおいて、エンドツーエンドで一部のトラフィックが暗号化された場合においてもアプリケーションの識別ができる技術を提供することである。
【課題を解決するための手段】
【００１７】
上記課題を解決するための第１の発明は、パケットに対応するアプリケーションを識別するアプリケーション識別システムであって、
少なくとも二以上の受信パケットの各々にアプリケーション候補を対応させた場合、受信パケット間でアプリケーション候補が遷移する遷移確率を、前記受信パケット及び前記アプリケーション候補の情報に基づいて算出する確率演算手段と、
前記遷移確率に基づいて、受信パケットに対応するアプリケーションを識別するアプリケーション識別手段と
を有することを特徴とする。
【００１８】
上記課題を解決するための第２の発明は、複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムであって、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいて統計量を算出する統計量演算手段と、
前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算手段と、
前記遷移確率に基づいて、前記注目パケットのアプリケーションを識別するアプリケーション識別手段と
を有することを特徴とする。
【００１９】
上記課題を解決するための第３の発明は、複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムであって、
パケット系列のパケット情報を抽出するパケット情報抽出手段と、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット長統計量を演算するパケット長統計量演算手段と、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット到着間隔統計量を演算するパケット到着間隔統計量演算手段と、
前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算手段と、
前記遷移確率に基づいて最尤系列推定を実施しアプリケーション識別を行う最尤系列推定手段と、
識別結果を用いて前記アプリケーション候補の種別及び候補数を動的に制御するアプリケーション候補動的制御手段と、
時系列順に注目パケットを変化させてアプリケーション識別の繰り返し動作を管理する繰り返し動作管理手段と
を有することを特徴とする。
【００２０】
上記課題を解決するための第４の発明は、パケットに対応するアプリケーションを識別するアプリケーション識別方法であって、
少なくとも二以上の受信パケットの各々にアプリケーション候補を対応させて、受信パケット間でアプリケーション候補が遷移する遷移確率を、前記受信パケット及び前記アプリケーション候補の情報に基づいて算出する確率演算ステップと、
前記遷移確率に基づいて、受信パケットに対応するアプリケーションを識別するアプリケーション識別ステップと
を有することを特徴とする。
【００２１】
上記課題を解決するための第５の発明は、複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別方法であって、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいて統計量を算出する統計量演算ステップと、
前記統計量演算ステップにより演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する遷移確率演算ステップと、
前記遷移確率に基づいて、前記注目パケットのアプリケーションを識別するアプリケーション識別ステップと
を有することを特徴とする。
【００２２】
上記課題を解決するための第６の発明は、複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別方法であって、
パケット系列のパケット情報を抽出するパケット情報抽出ステップと、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット長統計量を演算するパケット長統計量演算ステップと、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット到着間隔統計量を演算するパケット到着間隔統計量演算ステップと、
前記統計量演算ステップにより演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算ステップと、
前記遷移確率に基づいて最尤系列推定を実施しアプリケーション識別を行う最尤系列推定ステップと、
識別結果を用いて前記アプリケーション候補の種別及び候補数を動的に制御するアプリケーション候補動的制御ステップと、
時系列順に注目パケットを変化させてアプリケーション識別の繰り返し動作を管理する繰り返し動作管理ステップと
を有することを特徴とする。
【００２３】
上記課題を解決するための第７の発明は、パケットに対応するアプリケーションを識別するアプリケーション識別システムのプログラムであって、前記プログラムは前記アプリケーション識別システムを、
少なくとも二以上の受信パケットの各々にアプリケーション候補を対応させた場合、受信パケット間でアプリケーション候補が遷移する遷移確率を、前記受信パケット及び前記アプリケーション候補の情報に基づいて算出する確率演算手段と、
前記遷移確率に基づいて、受信パケットに対応するアプリケーションを識別するアプリケーション識別手段と
して機能させことを特徴とする。
【００２４】
上記課題を解決するための第８の発明は、複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムのプログラムであって、前記プログラムは前記システムを、
前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいて統計量を算出する統計量演算手段と、
前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算手段と、
前記遷移確率に基づいて、前記注目パケットのアプリケーションを識別するアプリケーション識別手段と
して機能させることを特徴とする。
【００２５】
上記課題を解決するための第９の発明は、複数のアプリケーションのデータフローが混在するネットワーク環境において、識別対象となる注目パケットのアプリケーションを識別するアプリケーション識別システムのプログラムであって、前記プログラムは前記アプリケーション識別システムを、
パケット系列のパケット情報を抽出するパケット情報抽出手段と、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット長統計量を演算するパケット長統計量演算手段と、
前記パケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、前記注目パケットのアプリケーション候補と、前記注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット到着間隔統計量を演算するパケット到着間隔統計量演算手段と、
前記統計量演算手段により演算した統計量と前記アプリケーション候補のアプリケーション情報とを比較して、前記近隣パケットのアプリケーション候補から前記注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する確率演算手段と、
前記遷移確率に基づいて最尤系列推定を実施しアプリケーション識別を行う最尤系列推定手段と、
識別結果を用いて前記アプリケーション候補の種別及び候補数を動的に制御するアプリケーション候補動的制御手段と、
時系列順に注目パケットを変化させてアプリケーション識別の繰り返し動作を管理する繰り返し動作管理手段と
して機能させることを特徴とする。
【発明の効果】
【００２６】
上記のように構成させたことにより、複数のアプリケーションのフローが混在するトラフィックの一部が暗号化された場合であっても、本発明により受信したパケットのアプリケーションを識別することが可能になる。
【００２７】
その理由は、アプリケーションのフローが混在したパケット系列に対して、関連するパケット情報に基づいて、前記パケット系列に対し、注目パケット及び注目パケットの近隣のパケットをそれぞれあるアプリケーション候補に仮定し、その組み合わせ毎のパケット長統計量演算及びパケット到着間隔統計量演算を実施しているからである。
【００２８】
そして、前記演算の結果として得られたパケット長統計量及びパケット到着間隔統計量と、前記アプリケーションに関するアプリケーション情報とを比較して各アプリケーション候補組み合わせの遷移確率を演算することにより前記パケット系列をアプリケーション毎のフローに振り分ける動作を、時系列順に注目パケットを変えて実施することによってパケット系列のアプリケーション識別ができるからである。
【００２９】
また、ひとつのアプリケーションについて複数のアプリケーション候補を確率演算の対象とすることで、同一アプリケーションのフローが複数混在するような場合であっても、パケット系列のアプリケーション識別ができるためである。
【発明を実施するための最良の形態】
【００３０】
本発明の実施の形態について図を用いて説明する。
【００３１】
図１〜図３は本発明になるアプリケーション識別システムの第１実施形態を説明する為のもので、図１は全体のブロック図、図２はパケット情報の情報例の説明図、図３はフローチャートである。
【００３２】
図１を参照すると、Ａは受信装置であり、複数のアプリケーションのフローが混在したトラフィックのパケット系列を受信する装置である。Ｂはアプリケーション識別装置であり、受信したパケット系列を構成する個々のパケットについてアプリケーションを識別し、パケット系列のアプリケーションを識別する。Ｃは記憶装置であり、受信したパケットに関する情報及びアプリケーションに関する情報等が保存される。Ｄは表示装置であり、アプリケーション識別装置Ｂによるアプリケーションの識別結果が表示される。
【００３３】
さらに、各装置の構成について図１に加え図２、図４、図７を適宜用いて説明する。
【００３４】
受信装置Ａは受信部１を有し、受信装置に入力されるトラフィックのパケット系列が受信されると、パケット系列はアプリケーション識別装置Ｂに送信される。この時、パケット系列を構成する各パケットには受信装置Ａがパケットを受信した時の時刻であるパケット到着時刻が付加される。
【００３５】
アプリケーション識別装置Ｂは、統計量演算部２０と、パケット情報抽出部２１と、確率演算部２４と、最尤系列推定部２５と、アプリケーション候補動的制御部２６と、繰返し動作管理部２７を有する。
【００３６】
パケット情報抽出部２１は、受信装置Ａで受信したパケット系列を構成する個々のパケットのパケット長及びパケット到着時刻を抽出する。そして、抽出されたパケット情報は記憶装置Ｃに送信される。
【００３７】
統計量演算部２０は、受信したパケットのパケット情報に基づいて、パケット長の平均値や、パケット到着間隔平均値といったパケットに関する統計量を算出する。具体的には、統計量演算部２０は、パケット長統計量演算部２２と、パケット到着間隔統計量演算部２３とを有する。ここでパケット情報とは、パケットの到着順を示すパケット番号と、パケット長と、パケット到着時刻と、前記アプリケーション識別の結果を示すアプリケーション識別結果等のパケットに関する情報である。尚、パケット情報の詳細については後述する。
パケット長統計量演算部２２は、記憶装置Ｃから受信したパケット情報を用いて、注目パケットのパケット長統計量を演算する。ここで注目パケットとは、アプリケーションを識別する対象となるパケットをいう。また、パケット長統計量とは、パケット長分布、パケット長移動平均値分布、パケット長移動中央値分布、パケット長移動分散値分布、パケット長移動標準偏差分布の少なくとも１つ以上からなるものである。
【００３８】
パケット到着間隔統計量演算部２３は、記憶装置Ｃから受信したパケット情報を用いて、注目パケットのパケット到着間隔統計量を演算する。ここでパケット到着間隔統計量とは、パケット到着間隔分布と、パケット到着間隔移動平均値分布と、パケット到着間隔移動中央値分布と、パケット到着間隔移動分散値分布と、パケット到着間隔移動標準偏差分布の少なくとも１つ以上からなるものである。
【００３９】
確率演算部２４は、パケット長統計量演算部２２及び到着間隔統計量演算部２３とから受信した注目パケットのパケット長統計量とパケット到着間隔統計量と記憶装置Ｃに予め記憶された各アプリケーション候補を特徴付けるアプリケーション情報とを用いて、注目パケットのアプリケーション候補と注目パケットに近接する近隣パケットのアプリケーション候補との組毎に遷移確率を演算する。ここで、アプリケーション候補とは、識別するアプリケーションの候補をいう。また、遷移確率とは、二以上の受信パケットの各々にアプリケーション候補を対応させた場合に、受信パケット間でアプリケーション候補が変化する確率をいう。
【００４０】
最尤系列推定部２５は、図７に示すように、遷移確率の演算結果に対して最尤系列推定を実施する。ここで、最尤系列推定とは、注目パケットの近隣パケットのアプリケーション候補から注目パケットのアプケーション候補に到達する複数の経路（パス）のうち、選択する可能性の最も高いパスを推定することである。そして、この選択する可能性の最も高いパスのことをサバイバルパスという。サバイバルパスを見つける例としては、ビタビアルゴリズムがある。また、各パスを選択する確率値をパス確率という。サバイバルパスは、遷移確率に基づいてパス毎にパス確率を計算し、パス確率が最も高いパスを残しそれ以外のパスを削除することで推定される。
【００４１】
アプリケーション候補動的制御部２６は、最尤系列推定部２５の結果を用いて前記アプリケーション候補の種別及びフロー数を動的に制御する。具体的には、あるアプリケーション候補のフローが新規に発生した場合等に対処するために、既にあるアプリケーション候補Ａとは別に新たなアプリケーション候補としてアプリケーション候補Ａを増加させる制御を行う。
【００４２】
繰返し動作管理部２７は、時系列順に注目パケットを変化させて、受信したパケット系列を構成する全てのパケットについてアプリケーション識別が終了するまでアプリケーション識別動作が繰り返されるよう管理する。
【００４３】
次に、記憶装置Ｃは、パケット情報格納部３１と、アプリケーション情報格納部３２とを有する。
【００４４】
パケット情報格納部３１には、受信したパケット系列を構成する個々のパケットのパケット情報が保存される。パケット情報とは、パケットを一意に特定しその特徴を示す情報であり、図２に示すように、パケット毎に、パケット情報抽出部２１により抽出されたパケット長と、パケット到着時刻と、パケット情報抽出部２１がパケット到着時刻に基づいて付与したパケットの受信順番を表すパケット番号と、アプリケーション識別装置Ｂで識別されたアプリケーションのアプリケーション識別結果とを含む。
【００４５】
アプリケーション情報格納部３２には、アプリケーション情報が保存される。ここで、アプリケーション情報とは、アプリケーション候補となる各アプリケーションを特徴付ける情報である。そして、アプリケーション候補となるアプリケーションのフローのみがネットワーク上を流れている状況において、そのパケットに対し統計量演算を行うことで予め用意しておく。このアプリケーション情報には、パケット長統計量、パケット到着間隔統計量、アプリケーション種別等の情報が含まれる。ここで、アプリケーション種別とは、アプリケーションを特定するための情報であり、ＮｅｔｍｅｅｔｉｎｇやＷｉｎｎｙ等といった具体的なアプリケーション名である。ＴＣＰ／ＵＤＰのポート番号等のアプリケーションを特定できる情報を代わりに用いてもよい。図４を参照すると、アプリケーション情報の例としてパケット長統計量、パケット到着間隔統計量が示されている。図４の例では統計量の分布を積分すると１になるように正規化している。
【００４６】
また、表示装置Ｄの表示部４は液晶表示装置（ＬＣＤ）であり、アプリケーションの識別結果を表示するためのものである。表示手段を有するものであれば、ＬＣＤ以外の表示装置でもよい。
【００４７】
次に、上記のように構成させたアプリケーション識別システムの動作について図３のフローチャートに沿って、図２〜７を適宜用いながら説明する。
【００４８】
尚、以下の説明において、アプリケーション候補がＡ，Ｂ，Ｃの３種類存在するものとして説明する。また、パケット長統計量としてパケット長分布及びパケット長移動平均値分布を演算し、パケット到着間隔統計量としてパケット到着間隔分布及びパケット到着間隔移動平均値分布を演算する場合を例として説明する。
【００４９】
アプリケーションＡ，Ｂ，Ｃのデータフローが混在するトラフィックのパケット系列を、アプリケーション識別システムの受信装置Ａの受信部１が受信すると（ステップＳ１）、受信装置Ａがパケットを受信した時の時刻であるパケット到着時刻が各パケットに付加される。
【００５０】
そして、パケット情報抽出部２１によって各パケットのパケット長及びパケット到着時刻の情報が抽出され、記憶装置Ｃのパケット情報格納部３１に保存される。このとき、パケットの到着順を示すパケット番号の情報もパケット情報抽出部２１によって生成され、記憶装置Ｃのパケット情報格納部３１に保存される（ステップＳ２）。
【００５１】
次に、統計量演算部２０では、ステップＳ２によって記憶装置Ｃに保存されているパケット情報に基づいて、受信したパケット系列に対し、注目パケット及び注目パケットの直前のパケットにそれぞれあるアプリケーション候補を仮定する。そして、注目パケットのアプリケーション候補と、注目パケットの近隣パケットのアプリケーション候補との組毎に、受信したパケットのパケット情報に基づいてパケット長統計量とパケット到着間隔統計量を演算する。
【００５２】
具体的には、まず、パケット長統計量演算部２２は、パケット情報格納部３１に保存されている各パケットのパケット長に関する情報を用いて、注目パケット及び注目パケットの直前のパケットについて、パケット長分布とパケット長平均をパケット長統計量として演算する（ステップＳ４−１）。
【００５３】
尚、ここではパケット長統計量としてパケット長分布とパケット長移動平均値分布とを算出しているが、これらのうちいずれか１つを算出する形でもよいし、パケット長移動中央値分布、パケット長移動分散値分布、パケット長移動標準偏差分布といったパケット長統計量を算出してもよい。
【００５４】
また、パケット到着間隔統計量演算部２３は、パケット情報格納部３１に保存されているパケット到着時刻の情報を用いて、注目パケット及び注目パケットの近隣のパケットについて、パケット到着間隔統計量としてパケット到着間隔分布及びパケット到着間隔移動平均値分布を算出する（ステップＳ４−２）。
【００５５】
尚、ここではパケット到着間隔統計量としてパケット到着間隔分布とパケット到着間隔移動平均値分布とを算出しているが、これらのうちいずれか一方を算出する形でもよいし、パケット到着間隔移動平均値分布、パケット到着間隔移動中央値分布、パケット到着間隔移動分散値分布と、パケット到着間隔移動標準偏差分布を算出してもよい。
【００５６】
図２では、パケット番号がｎから（ｎ−６）の場合のパケット情報を示している。パケット番号ｎ以前のパケットのアプリケーション識別は終了しているとし、パケット番号ｎのひとつ前のパケット（ｎ−１）は複数のアプリケーション候補の可能性が残されているものとする。一番確率の高いアプリケーション候補のみを残してしまうと、誤認識した場合にリカバリーが難しくなるためである。
【００５７】
まず、注目パケットであるパケット番号ｎのパケットのひとつ前のパケットを適当なアプリケーション候補に仮定する。例えばアプリケーション候補Ｂであると仮定する。この上で注目パケットであるパケット番号ｎのパケットを適当なアプリケーション候補に仮定する。例えばアプリケーション候補Ａとする。この仮定の下で、パケット番号ｎからパスを辿っていき、以前にアプリケーション候補Ａと識別されたパケットとの関係からパケット長統計量及びパケット到着間隔を演算する。具体的には、パケット番号ｎ−４及びｎ−６がアプリケーション候補Ａと識別されているので、ｌ＿（ｎ）とｌ＿（ｎ−４）とｌ＿（ｎ−６）の平均値がパケット長移動平均値となる。また、ｔ＿（ｎ）とｔ＿（ｎ−４）との差及びｔ＿（ｎ−４）とｔ＿（ｎ−６）との差の平均値がパケット到着間隔移動平均値となる。
【００５８】
これらの統計量を過去どの程度のパケットを演算に含めるかはパラメータとする。多くのパケットを演算に含めれば統計的情報が増えるので信頼性が向上する。一方仮に誤識別してしまった場合、その情報を長い間引きずってしまう可能性もある。このパラメータは識別対象とするトラフィックの特性に合わせ調整することが望ましい。
【００５９】
これらの演算を注目パケットであるパケット番号ｎのアプリケーション候補の仮定を変えていき、全てのアプリケーション候補について実施する。さらに注目パケットであるパケット番号ｎのひとつ前のパケットの仮定も変え、遷移する可能性のある全ての組みについて演算を実施する。尚、この仮定をする順序に制約はなく、どのアプリケーション候補から仮定し、演算してもよい。
【００６０】
次に、上述した統計量演算部２０による演算結果であるパケット長統計量及びパケット到着間隔統計量は、確率演算部２４に送信される。そして、確率演算部２４は、このパケット長統計量及びパケット到着間隔統計量と、注目パケットのアプリケーション候補のアプリケーション情報とを比較することで、注目パケットの直前パケットのアプリケーション候補から注目パケットのアプリケーション候補へと遷移する確率である遷移確率を演算する（ステップＳ６）。
【００６１】
この遷移確率を演算する具体的な動作は下記の通りである。
【００６２】
まず、注目パケットに関するパケット長統計量（パケット長分布、パケット長移動平均値分布）及びパケット到着間隔統計量（到着間隔分布、到着間隔移動平均値分布）とアプリケーション情報のパケット長統計量及びパケット到着間隔統計量をそれぞれ比較し、どの程度一致しているか示す確率である適合率を計算する（ステップＳ５）。図５を参照すると、注目パケットの統計量と、アプリケーション情報を比較し適合度を求める例を示している。この例の場合パケット長が１２０バイトであれば適合度が０．３である。
【００６３】
そして、この適合度計算（ステップＳ５）を、注目パケットのアプリケーション候補と注目パケットの近隣パケットのアプリケーション候補の全ての組について行う。
【００６４】
次に、この算出した各適合度に対応する遷移確率をそれぞれ算出する。具体的には、図６に示すように、総適合度に占める適合度合計の割合を各遷移の遷移確率とする。ここで、適合度合計とは、アプリケーション候補毎の適合度の合計値であり、総適合度とは、アプリケーションＡ，Ｂ，Ｃを含めた全ての適合度の合計値である。アプリケーション情報との適合度が高い程遷移確率も高くなる。
【００６５】
ここで、上記の遷移確率を求める演算を（１）の式で示す。
【００６６】
アプリケーション候補数をＡ、統計量演算項目数をＢとし、演算対象パケットである注目パケットのインデックスをｎ、注目パケットの直前のパケットの仮定のアプリケーション候補の番号をｉ（１≦ｉ≦Ａ）、演算対象パケットの仮定のアプリケーション候補の番号をｊ（１≦ｊ≦Ａ）とする。すると、ｉからｊへの遷移確率Ｐｎ，ｊ→ｊは、
2007228489.tif 000003
となる。ここでＣｎ，ｉｋｌとは、ｎ−１番目のパケットの仮定がｉ、ｎ番目のパケットの仮定がｋ、統計量演算項目インデックスがｌである場合の適合度である。例えばｌ＝パケット長分布などがある。以上が、確率演算部２４が遷移確率を求めるための具体的な動作の説明である。
【００６７】
次に、最尤系列推定部２５は、確率演算部２４から受信した注目パケットのひとつ前のパケットとのアプリケーション候補組み合わせの遷移確率を基に、最尤系列推定を実施する（ステップＳ７）。
【００６８】
ここで、サバイバルパスを求める演算を（２）の式で示す。演算対象パケットである注目パケットのインデックスがｎ、アプリケーション候補の番号がｊ、ｉからｊへの遷移確率をＰｎ，ｉ→ｊであるとすると、サバイバルパス確率Ｑｎ，ｊは、
2007228489.tif 000004
となる。ここで、ｍａｘ｛ｆ（ｘ，ｙ）｜ｍ≦ｙ≦ｎ｝はｍ≦ｙ≦ｎの範囲内でｆ（ｘ，ｙ）の最大値を表す関数である。
【００６９】
また、図７には最尤系列推定の例を示している。図７に示したように最尤系列推定とは、パケット系列に従い各パケットをアプリケーション候補に塗り分けていくことである。最尤系列推定により、誤識別を防ぐため残していた複数のアプリケーション候補が削除され、識別結果パスは1本へ収束していく。
【００７０】
次に、アプリケーション候補動的制御部２６は、アプリケーション候補を動的に制御する（ステップＳ８）。すなわち、最尤系列推定の結果新しいフローが増加していた場合は該アプリケーション候補の候補数を増やし、逆にフローが減少していた場合該当アプリケーション候補の候補数を減らす。例えばアプリケーション候補Ａのフローが増加したと識別された場合、さらに増えることを想定してアプリケーション候補Ａの候補数を増やす。また複数あったアプリケーションＢのフローが減少したと識別された場合、アプリケーション候補Ｂの候補数を削減する。例えば一定時間パケットを受信しなかったら、そのフローは無くなったと判定する、などの制御を行う。
【００７１】
次に、繰り返し動作管理部２７は注目パケットを変更する。注目パケットを変更する際、パケット系列の識別が全て終了している場合は、パケット系列のアプリケーション識別結果が表示装置４により表示されて終了する（ステップＳ１０）。パケット系列の識別が終了していない場合は、注目パケットを変更し、ステップＳ３に移行する。また、注目パケットを変更する際、パケット情報格納部３１に最新のパケット情報を保存する（ステップＳ９）。
【００７２】
上記のように構成されたアプリケーション識別システムにより、図７に示したように、受信したパケット系列はアプリケーションフローに振り分けられる。
【００７３】
本実施例では、注目パケットのパケット長統計量及びパケット到着間隔統計量を用いて、注目パケットのひとつ前のパケットとのアプリケーション候補組み合わせの遷移確率を演算する場合を例にとったが、注目パケットと注目パケットのひとつ前のパケットと注目パケットのふたつ前のパケットの３つのパケット間のパケット長統計量及びパケット到着間隔統計量を用いて遷移確率を演算することもできる。あるいは、３つ以上複数のパケット間のパケット長統計量及びパケット到着間隔統計量を用いて遷移確率を演算することもできる。
【００７４】
また、アプリケーション情報がアプリケーション情報格納部３２に保存されていないアプリケーションを受信することを想定して、アプリケーション候補にアプリケーション情報の無いアプリケーション用のアプリケーション候補を用意することもできる。
【図面の簡単な説明】
【００７５】
【図１】本発明になるシステムのブロック図。
【図２】パケット情報の情報例を示す図。
【図３】本発明になるアプリケーション識別のフローチャート。
【図４】アプリケーション情報の情報例を示す図。
【図５】適合度の算出例を示す図。
【図６】遷移確率の算出例を示す図。
【図７】最尤系列推定の例を示す図。
【符号の説明】
【００７６】
Ａ        受信装置
Ｂ        アプリケーション識別装置
Ｃ        記憶装置
Ｄ        表示装置
１        受信部
２０      統計量演算部
２１      パケット情報抽出部
２２      パケット長統計量演算部
２３      パケット到着間隔統計量演算部
２４      確率演算部
２５      最尤系列推定部
２６      アプリケーション候補動的管理部
２７      繰返し動作管理部
３１      パケット情報格納部
３２      アプリケーション情報格納部
４        表示部
特許出願人  日本電気株式会社
代  理  人  宇      高          克      己
【図１】
2007228489.tif 000005
【図２】
2007228489.tif 000006
【図３】
2007228489.tif 000007
【図４】
2007228489.tif 000008
【図５】
2007228489.tif 000009
【図６】
2007228489.tif 000010
【図７】
2007228489.tif 000011