(57)【要約】【課題】学習用のトラヒックをフルキャプチャし、フルトラヒックに対して複数回サンプリングを適用することによって、安定したプロトコルの推定を行なう。【解決手段】サンプリングされたトラヒックフローのプロトコルを推定するプロトコル推定方法であって、コアネットワークから監視対象とするトラヒックをフルキャプチャする第１ステップと、前記フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行なう第２ステップと、前記ランダムパケットサンプリングされたフローの特徴量を計算する第３ステップと、前記第２ステップおよび前記第３ステップを複数回繰り返した後、得られた全フローと、前記フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成する第４ステップと、を含む。【選択図】図２
2012205105.tif 000002
【特許請求の範囲】
【請求項１】
サンプリングされたトラヒックフローのプロトコルを推定するプロトコル推定方法であって、
コアネットワークから監視対象とするトラヒックをフルキャプチャする第１ステップと、
前記フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行なう第２ステップと、
前記ランダムパケットサンプリングされたフローの特徴量を計算する第３ステップと、
前記第２ステップおよび前記第３ステップを複数回繰り返した後、得られた全フローと、前記フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成する第４ステップと、を含むことを特徴とするプロトコル推定方法。
【請求項２】
前記監視対象とするトラヒックに対して、ランダムパケットサンプリングを行なう第５ステップと、
前記第５ステップの結果得られたフローに対して、前記分類器を用いて前記フローのプロトコルを推定する第６ステップと、を更に含むことを特徴とする請求項１記載のプロトコル推定方法。
【請求項３】
サンプリングされたトラヒックフローのプロトコルを推定するプロトコル推定プログラムであって、
コアネットワークから監視対象とするトラヒックをフルキャプチャする第１処理と、
前記フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行なう第２処理と、
前記ランダムパケットサンプリングされたフローの特徴量を計算する第３処理と、
前記第２処理および前記第３処理を複数回繰り返した後、得られた全フローと、前記フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成する第４処理と、の一連の処理を、コンピュータに実行させることを特徴とするプロトコル推定プログラム。
【請求項４】
前記監視対象とするトラヒックに対して、ランダムパケットサンプリングを行なう第５処理と、
前記第５処理の結果得られたフローに対して、前記分類器を用いて前記フローのプロトコルを推定する第６処理と、を更に含むことを特徴とする請求項３記載のプロトコル推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トラヒック分類技術に関し、特に、プロトコル推定方法およびプロトコル推定プログラムに関する。
【背景技術】
【０００２】
従来から、トラヒックのプロトコルを、いわゆる“教師あり学習”を用いて推定する手法が検討されている。この手法は、まず、学習用のトラヒックから得られるフロー特徴量とそのフロー毎の正解プロトコルを用いて、教師あり学習を機械的に行なって分類器を生成する。このフロー特徴量とは、パケットのヘッダ情報のみから算出可能なパケット到着間隔やパケットサイズ等を指す。次に、生成された分類器と、推定対象のトラヒックから得られるフロー特徴量とを使い、フロー毎のプロトコルを推定する。この手法は、学習に使用したフローのプロトコルが、推定対象のフローのプロトコルを包含している場合に、精度の高い推定が可能である。また、学習（分類器生成）時に必要な演算量は高いが、推定時に必要な演算量は低いため、分類器生成はオフラインで、推定はオンラインで行われることが多い。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】T. Nguyen et al., “A Survey of Techinques for Internet Traffic Classification using Machine Learning,” IEEE Communications Surveys and Tutorials, vol. 10 no. 4 pp. 56-76, 2008.
【非特許文献２】V. Carela-Espanol et al., “Traffic Classification with Sampled NetFlow,”Dept. Arquitectura de Computadors, Universitat Politecnica de Catalunya, Tech. Rep., February 2009.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、非特許文献１に記載の技術では、サンプリングされたトラヒックを対象とした検討は殆ど行われていないため、サンプリングされたトラヒックフローのプロトコルを推定することは困難である。また、非特許文献２に記載の技術では、学習用トラヒックをサンプリングし、サンプリング後のトラヒックから得られるフロー特徴量とそのフロー毎の正解プロトコルとを使い、分類器を生成する。しかし、ランダムサンプリングの影響により、サンプリングで得られるフローにはばらつきが生じ、推定結果が不安定になるという問題点がある。この問題は、サンプリングレートが小さくなるに従い、深刻化する。
【０００５】
本発明は、このような事情に鑑みてなされたものであり、学習用のトラヒックをフルキャプチャし、フルトラヒックに対して複数回サンプリングを適用することによって、安定したプロトコルの推定を行なうことができるプロトコル推定方法およびプロトコル推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
（１）上記の目的を達成するために、本発明は、以下のような手段を講じた。すなわち、本発明のプロトコル推定方法は、サンプリングされたトラヒックフローのプロトコルを推定するプロトコル推定方法であって、コアネットワークから監視対象とするトラヒックをフルキャプチャする第１ステップと、前記フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行なう第２ステップと、前記ランダムパケットサンプリングされたフローの特徴量を計算する第３ステップと、前記第２ステップおよび前記第３ステップを複数回繰り返した後、得られた全フローと、前記フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成する第４ステップと、を含むことを特徴とする。
【０００７】
このように、フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行ない、ランダムパケットサンプリングされたフローの特徴量を計算し、これらを複数回繰り返した後、得られた全フローと、フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成するので、ランダムパケットサンプリングの影響を軽減し、安定した分類器を作成することが可能となる。その結果、プロトコルの推定精度を向上させることが可能となる。
【０００８】
（２）また、本発明のプロトコル推定方法は、前記監視対象とするトラヒックに対して、ランダムパケットサンプリングを行なう第５ステップと、前記第５ステップの結果得られたフローに対して、前記分類器を用いて前記フローのプロトコルを推定する第６ステップと、を更に含むことを特徴とする。
【０００９】
このように、監視対象とするトラヒックに対して、ランダムパケットサンプリングを行ない、その結果得られたフローに対して、上記作成した分類器を用いてフローのプロトコルを推定するので、プロトコルの推定精度を向上させることが可能となる。
【００１０】
（３）また、本発明のプロトコル推定プログラムは、サンプリングされたトラヒックフローのプロトコルを推定するプロトコル推定プログラムであって、コアネットワークから監視対象とするトラヒックをフルキャプチャする第１処理と、前記フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行なう第２処理と、前記ランダムパケットサンプリングされたフローの特徴量を計算する第３処理と、前記第２処理および前記第３処理を複数回繰り返した後、得られた全フローと、前記フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成する第４処理と、の一連の処理を、コンピュータに実行させることを特徴とする。
【００１１】
このように、フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行ない、ランダムパケットサンプリングされたフローの特徴量を計算し、これらを複数回繰り返した後、得られた全フローと、フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成するので、ランダムパケットサンプリングの影響を軽減し、安定した分類器を作成することが可能となる。その結果、プロトコルの推定精度を向上させることが可能となる。
【００１２】
（４）また、本発明のプロトコル推定プログラムは、前記監視対象とするトラヒックに対して、ランダムパケットサンプリングを行なう第５処理と、前記第５処理の結果得られたフローに対して、前記分類器を用いて前記フローのプロトコルを推定する第６処理と、を更に含むことを特徴とする。
【００１３】
このように、監視対象とするトラヒックに対して、ランダムパケットサンプリングを行ない、その結果得られたフローに対して、上記作成した分類器を用いてフローのプロトコルを推定するので、プロトコルの推定精度を向上させることが可能となる。
【発明の効果】
【００１４】
本発明によれば、フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行ない、ランダムパケットサンプリングされたフローの特徴量を計算し、これらを複数回繰り返した後、得られた全フローと、フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成するので、ランダムパケットサンプリングの影響を軽減し、安定した分類器を作成することが可能となる。その結果、プロトコルの推定精度を向上させることが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本実施形態に係る分類器を作成する概念を示す図である。
【図２】、分類器を生成する動作を示すフローチャートである。
【図３】本実施形態に係る分類器を用いるトラヒック監視装置を、コア網に配置した様子を示す図である。
【図４】トラヒック監視装置３０ａ〜３０ｄがプロトコルを推定する様子を示す図である。
【発明を実施するための形態】
【００１６】
図１は、本実施形態に係る分類器を作成する概念を示す図である。本実施形態に係る分類器１０は、次の手順で作成される。複数のルータ１１ａ、１１ｂを有するコア網１００において、ルータ１１ａ、１１ｂの間のトラヒックを監視対象とする。ルータ１１ａ、１１ｂ間のトラヒックは、タップ１２でコピーされ、フルキャプチャ装置１３に入力される。フルキャプチャされたトラヒックフローは、ＤＰＩ装置１４または人手（１５）によって、フロー毎のトラヒックが識別される。そして、パケットレベルでのトラヒックデータについて、全フローとそのフロー毎のプロトコルを統合し、分類器１０を生成する。
【００１７】
図２は、分類器を生成する動作を示すフローチャートである。図１で示したフルキャプチャ装置１３において、学習用フルトラヒックデータを取得する（ステップＳ１）。すなわち、ステップＳ１は、学習に使用するトラヒックをフルキャプチャする処理である。次に、ランダムパケットサンプリングを行なう（ステップＳ２）。ステップＳ２では、フルキャプチャしたトラヒックに対してランダムパケットサンプリングを適用する。次に、フロー特徴量の計算を行なう（ステップＳ３）。ステップＳ２におけるランダムパケットサンプリングの結果得られるフローの特徴量、例えば、パケット到着間隔やパケットサイズ等を計算する。
【００１８】
次に、上記のランダムパケットサンプリングの回数が、所定の閾値を超えたかどうかを判断し（ステップＳ４）、超えていない場合は、ステップＳ２に遷移する。一方、ステップＳ４において、上記のランダムパケットサンプリングの回数が、所定の閾値を超えた場合は、ステップＳ６に遷移する。
【００１９】
一方、ステップＳ１の後、フロー毎のプロトコルの識別を行なう（ステップＳ５）。ステップＳ５では、専用のＤＰＩ装置または人手により、フルキャプチャしたトラヒックのフロー毎のプロトコルを識別する。
【００２０】
次に、フローの統合を行なう（ステップＳ６）。ステップＳ６では、複数回のランダムパケットサンプリングにより得られた全フローと、ステップＳ５で得られたプロトコルを統合する。なお、得られたフロー群の中には同一フローが複数存在する可能性があるが、ランダムサンプリングによる劣化具合が各フローで異なる（可能性が高い）ため、別フローとして扱う。最後に、分類器を作成する（ステップＳ７）。ステップＳ７では、フロー特徴量（説明変数）とフロー毎のプロトコル（被説明変数）、機械学習により、分類器を作成する。
【００２１】
ここで、ステップＳ４におけるランダムパケットサンプリングとフロー特徴量計算を繰り返す回数（閾値）は、演算量と生成される分類器の精度の観点から決められるべきである。閾値の目安として、サンプリングレートの逆数回とすることができる。この回数ランダムパケットサンプリングを繰り返すことによって、安定して高性能な分類器が得られる。また、ステップＳ７における分類器生成では、機械学習として、決定木や確率モデル、ＳＶＭ（Support Vector Machine）等が考えられるが、本発明はこれに限定されるわけではなく、任意のアルゴリズムを使用することが可能である。
【００２２】
図３は、本実施形態に係る分類器を用いるトラヒック監視装置を、コア網に配置した様子を示す図である。コア網１００には、ルータ１１ａ、１１ｂ、１１ｃ、１１ｄが設けられている。ルータ１１ａと１１ｂとの間のトラヒックは、タップ１２ａを介してトラヒック監視装置３０ａに入力される。また、ルータ１１ｂと１１ｃとの間のトラヒックは、タップ１２ｂを介してトラヒック監視装置３０ｂに入力される。また、ルータ１１ｃと１１ｄとの間のトラヒックは、タップ１２ｃを介してトラヒック監視装置３０ｃに入力される。また、ルータ１１ｄと１１ａとの間のトラヒックは、タップ１２ｄを介してトラヒック監視装置３０ｄに入力される。
【００２３】
トラヒック監視装置３０ａ〜３０ｄは、予め生成された分類器１０を備えている。そして、トラヒック監視装置３０ａ〜３０ｄは、取得したトラヒックに対してランダムパケットサンプリングを行なう。これにより、解析対象のパケット数を減らし、負荷を抑制できる。その結果、トラヒック監視装置として、安価な低スペックの汎用ＰＣで構成することが可能である。そして、トラヒック監視装置３０ａ〜３０ｄは、分類器１０を用いて、フロー毎のプロトコルを推定し、図３に示すように、グラフィカルは出力を行なう。
【００２４】
図４は、トラヒック監視装置３０ａ〜３０ｄがプロトコルを推定する様子を示す図である。図３において、トラヒック監視装置３０ａ〜３０ｄが行なうランダムパケットサンプリングとは、タップ１２ａ〜１２ｄから入力されるトラヒックに対してランダムパケットサンプリングを適用する処理である。また、フロー特徴量計算とは、ランダムパケットサンプリングの結果得られるフローの特徴量、例えば、パケット到着間隔やパケットサイズ等を計算する処理である。また、フロー毎のプロトコル推定とは、サンプリングされたフローの特徴量および学習により生成した分類器を用いて、サンプリングされたフローのプロトコルを識別する処理である。
【００２５】
図４に示すように、フロー１は、パケットサイズが５００であり、到着間隔が２０ｍｓであり、持続時間が１００ｍｓであるため、“ｗｅｂ”であると推定することができる。また、フロー２は、パケットサイズが１４００であり、到着間隔が５０ｍｓであり、持続時間が１０００ｍｓであるため、“ＶｏＩＰ”であると推定することができる。
【００２６】
以上説明したように、本実施形態によれば、フルキャプチャしたトラヒックに対して、ランダムパケットサンプリングを行ない、ランダムパケットサンプリングされたフローの特徴量を計算し、これらを複数回繰り返した後、得られた全フローと、フルキャプチャしたトラヒックに対してフロー毎に識別されたプロトコルとを対応付けて分類器を生成するので、ランダムパケットサンプリングの影響を軽減し、安定した分類器を作成することが可能となる。その結果、プロトコルの推定精度を向上させることが可能となる。
【符号の説明】
【００２７】
１０  分類器
１１ａ〜１１ｄ  ルータ
１２、１２ａ〜１２ｄ  タップ
１３  フルキャプチャ装置
１４  ＤＰＩ装置
３０ａ〜３０ｄ  トラヒック監視装置
１００  コア網
【図１】
2012205105.tif 000003
【図２】
2012205105.tif 000004
【図３】
2012205105.tif 000005
【図４】
2012205105.tif 000006