(57)【特許請求の範囲】
【請求項１】
ＩＰネットワーク上のフローのフロー制御を行うノード、前記ＩＰネットワーク上の前記フローを分岐する分岐装置、記憶部と制御部とを有し、前記分岐されたフローのフロー分析を行うフロー分析装置、および、記憶部と制御部とを有し、ユーザ端末に設定される制御ポリシを用いて前記フロー制御について前記ノードに指示するポリシ制御サーバが、前記ＩＰネットワークを介して通信可能に接続されているフロー制御システムであって、
前記フロー制御システムは、サービスを提供するサービス提供サーバと、前記サービスを利用する前記ユーザ端末と通信可能に接続しており、
前記ポリシ制御サーバの記憶部は、
前記制御ポリシ、前記制御ポリシを変更するための変更条件、および前記変更条件の充足により変更された変更後制御ポリシ、を対応付けるポリシ変更条件情報、を記憶しており、
前記フロー分析装置の記憶部は、
前記フロー分析の分析結果を前記ポリシ制御サーバに通知するための通知条件を含む通知条件情報、を記憶しており、
前記フロー分析装置の制御部は、
通信接続が確立した前記サービス提供サーバおよび前記ユーザ端末の間のフローに属するパケットを取得すると、前記取得したパケットが有するアプリケーションレイヤ情報を解析するアプリケーションレイヤ情報解析部と、
前記取得したパケットをカウントし、パケットの転送量を所定の単位ごとに集計する転送量集計部と、
前記アプリケーションレイヤ情報解析部の解析結果および前記転送量集計部の集計結果に基づいて、前記フロー分析の前記分析結果を出力する分析結果出力部と、
前記出力した分析結果が前記通知条件を充足するか否かを判定する通知条件充足判定部と、
前記通知条件を充足した場合には、前記出力した分析結果を前記ポリシ制御サーバに通知する分析結果通知部と、を備え、
前記ポリシ制御サーバの制御部は、
前記ユーザ端末に設定されている制御ポリシを用いて前記ポリシ変更条件情報を参照して、前記通知された前記分析結果が前記変更条件を充足するか否かを判定する変更条件充足判定部と、
前記変更条件を充足する場合には、前記変更後制御ポリシを前記ユーザ端末に設定するように、前記ノードに制御ポリシの更新を指示する制御ポリシ更新指示部と、を備え、
前記アプリケーションレイヤ情報解析部は、
前記フローにて利用されるアプリケーションを特定するアプリケーション特定部と、
前記フローがアクセスするＵＲＬを特定するＵＲＬ特定部と、
前記フローに属するパケットが有するペイロードに対してパターンマッチングを行うパターンマッチング部と、を備え、
前記アプリケーションレイヤ情報解析部の解析は、前記アプリケーション特定部が前記アプリケーションを特定すること、前記ＵＲＬ特定部が前記ＵＲＬを特定すること、前記パターンマッチング部が前記パターンマッチングを行うこと、のうち少なくとも１つである、
ことを特徴とするフロー制御システム。
【請求項２】
ＩＰネットワーク上のフローのフロー制御を行うノード、前記ＩＰネットワーク上の前記フローを分岐する分岐装置、記憶部と制御部とを有し、前記分岐されたフローのフロー分析を行うフロー分析装置、および、記憶部と制御部とを有し、ユーザ端末に設定される制御ポリシを用いて前記フロー制御について前記ノードに指示するポリシ制御サーバが、前記ＩＰネットワークを介して通信可能に接続されているフロー制御システムにおけるフロー制御方法であって、
前記フロー制御システムは、サービスを提供するサービス提供サーバと、前記サービスを利用する前記ユーザ端末と通信可能に接続しており、
前記ポリシ制御サーバの記憶部は、
前記制御ポリシ、前記制御ポリシを変更するための変更条件、および前記変更条件の充足により変更された変更後制御ポリシ、を対応付けるポリシ変更条件情報、を記憶しており、
前記フロー分析装置の記憶部は、
前記フロー分析の分析結果を前記ポリシ制御サーバに通知するための通知条件を含む通知条件情報、を記憶しており、
前記フロー分析装置の制御部は、
通信接続が確立した前記サービス提供サーバおよび前記ユーザ端末の間のフローに属するパケットを取得すると、前記取得したパケットが有するアプリケーションレイヤ情報を解析するアプリケーションレイヤ情報解析ステップと、
前記取得したパケットをカウントし、パケットの転送量を所定の単位ごとに集計する転送量集計ステップと、
前記アプリケーションレイヤ情報解析部の解析結果および前記転送量集計部の集計結果に基づいて、前記フロー分析の前記分析結果を出力する分析結果出力ステップと、
前記出力した分析結果が前記通知条件を充足するか否かを判定する通知条件充足判定ステップと、
前記通知条件を充足した場合には、前記出力した分析結果を前記ポリシ制御サーバに通知する分析結果通知ステップと、を実行し、
前記ポリシ制御サーバの制御部は、
前記ユーザ端末に設定されている制御ポリシを用いて前記ポリシ変更条件情報を参照して、前記通知された前記分析結果が前記変更条件を充足するか否かを判定する変更条件充足判定ステップと、
前記変更条件を充足する場合には、前記変更後制御ポリシを前記ユーザ端末に設定するように、前記ノードに制御ポリシの更新を指示する制御ポリシ更新指示ステップと、を実行し、
前記アプリケーションレイヤ情報解析ステップにおいて、
前記フローにて利用されるアプリケーションを特定するアプリケーション特定ステップと、
前記フローがアクセスするＵＲＬを特定するＵＲＬ特定ステップと、
前記フローに属するパケットが有するペイロードに対してパターンマッチングを行うパターンマッチングステップと、を実行し、
前記アプリケーションレイヤ情報解析ステップの解析は、前記アプリケーション特定ステップにて前記アプリケーションを特定すること、前記ＵＲＬ特定部ステップにて前記ＵＲＬを特定すること、前記パターンマッチング部にて前記パターンマッチングを行うこと、のうち少なくとも１つである、
ことを特徴とするフロー制御方法。
【請求項３】
ＩＰネットワーク上のフローのフロー制御を行うノード、前記ＩＰネットワーク上の前記フローを分岐する分岐装置、記憶部と制御部とを有し、前記分岐されたフローのフロー分析を行うフロー分析装置、および、ユーザ端末に設定される制御ポリシを用いて前記フロー制御について前記ノードに指示するポリシ制御サーバが、前記ＩＰネットワークを介して通信可能に接続されているフロー制御システムにおける前記フロー分析装置であって、
前記フロー制御システムは、サービスを提供するサービス提供サーバと、前記サービスを利用する前記ユーザ端末と通信可能に接続しており、
前記フロー分析装置の記憶部は、
前記フロー分析の分析結果を前記ポリシ制御サーバに通知するための通知条件を含む通知条件情報、を記憶しており、
前記フロー分析装置の制御部は、
通信接続が確立した前記サービス提供サーバおよび前記ユーザ端末の間のフローに属するパケットを取得すると、前記取得したパケットが有するアプリケーションレイヤ情報を解析するアプリケーションレイヤ情報解析部と、
前記取得したパケットをカウントし、パケットの転送量を所定の単位ごとに集計する転送量集計部と、
前記アプリケーションレイヤ情報解析部の解析結果および前記転送量集計部の集計結果に基づいて、前記フロー分析の前記分析結果を出力する分析結果出力部と、
前記出力した分析結果が前記通知条件を充足するか否かを判定する通知条件充足判定部と、
前記通知条件を充足した場合には、前記出力した分析結果を前記ポリシ制御サーバに通知する分析結果通知部と、を備え、
前記アプリケーションレイヤ情報解析部は、
前記フローにて利用されるアプリケーションを特定するアプリケーション特定部と、
前記フローがアクセスするＵＲＬを特定するＵＲＬ特定部と、
前記フローに属するパケットが有するペイロードに対してパターンマッチングを行うパターンマッチング部と、を備え、
前記アプリケーションレイヤ情報解析部の解析は、前記アプリケーション特定部が前記アプリケーションを特定すること、前記ＵＲＬ特定部が前記ＵＲＬを特定すること、前記パターンマッチング部が前記パターンマッチングを行うこと、のうち少なくとも１つである、
ことを特徴とするフロー分析装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（Internet Protocol）ネットワーク上のフローのフロー制御をする技術に関する。
【背景技術】
【０００２】
近年、ＩＰネットワークによる通信において、利用者の要求に応じた、アプリケーションごとの柔軟な通信制御（帯域制御または優先制御（非特許文献１参照））または課金制御（アカウンティング）の性能を向上して欲しいという要望が高まっている。
【０００３】
従来では、ＩＰネットワークを構成しており、ルート制御または帯域変更を行うノード（例：ルータ、スイッチ）にて、ＩＰアドレスなどの低レイヤ情報および所定の制御情報に基づくフロー制御を実現するネットワークシステムがある。なお、「フロー」とは、共通の属性を持つパケットをまとめたトラヒックであり、前記属性の例としては、送信元／先ＩＰアドレス、送信元／先ポート、プロトコルの組である5tupleがある。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】阿蘇  和人、“帯域制御／優先制御の概念を知る”、２００７年６月１３日、ＩＴ  ｐｒｏ、［online］、［平成２５年８月７日検索］、インターネット<URL: http://itpro.nikkeibp.co.jp/article/lecture/20070608/274153/>
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、低レイヤ情報を利用する従来のフロー制御の分解能はそれほど大きくないため、前記要望に応えることができない。例えば、ＨＴＴＰ（Hypertext Transfer Protocol）接続が確立しているユーザ端末とＷｅｂサーバとの間にある１つの5tupleで特定されるフローが複数のＵＲＬ（Uniform Resource Locator）にアクセスする場合には、各ＵＲＬに対して異なるフロー制御を行うという制御の切り替えは困難である。
【０００６】
一方、高レイヤ情報としてのアプリケーションレイヤ情報を用いて、フローの詳細な分析を行えば、前記制御の切り替えは可能となる。しかし、アプリケーションレイヤ情報を用いた詳細なフロー分析は概して高負荷となるため、従来のネットワークシステムにおいて、前記詳細なフロー分析を行うことには困難が伴う。例えば、前記詳細なフロー分析を行う機能をルータに持たせると、ルータのルート制御または帯域変更の性能が低下してしまい、ＩＰネットワーク上のパケットの転送品質の低下を招くおそれがある。なお、ルート制御または帯域変更の性能を十分とし、かつ、前記詳細なフロー分析の性能も十分とした高性能なルータを開発してもよいが、そのようなルータを備えたネットワークシステムを構築することは、経済性および実用性の観点から好ましくない。
【０００７】
このような事情に鑑みて、本発明は、アプリケーションレイヤ情報を用いた詳細なフロー分析に基づいて柔軟なフロー制御を実現することを目的とする。
【課題を解決するための手段】
【０００８】
前記した課題を解決するため、請求項１に記載の発明は、ＩＰネットワーク上のフローのフロー制御を行うノード、前記ＩＰネットワーク上の前記フローを分岐する分岐装置、記憶部と制御部とを有し、前記分岐されたフローのフロー分析を行うフロー分析装置、および、記憶部と制御部とを有し、ユーザ端末に設定される制御ポリシを用いて前記フロー制御について前記ノードに指示するポリシ制御サーバが、前記ＩＰネットワークを介して通信可能に接続されているフロー制御システムであって、前記フロー制御システムは、サービスを提供するサービス提供サーバと、前記サービスを利用する前記ユーザ端末と通信可能に接続しており、前記ポリシ制御サーバの記憶部は、前記制御ポリシ、前記制御ポリシを変更するための変更条件、および前記変更条件の充足により変更された変更後制御ポリシ、を対応付けるポリシ変更条件情報、を記憶しており、前記フロー分析装置の記憶部は、前記フロー分析の分析結果を前記ポリシ制御サーバに通知するための通知条件を含む通知条件情報、を記憶しており、前記フロー分析装置の制御部は、通信接続が確立した前記サービス提供サーバおよび前記ユーザ端末の間のフローに属するパケットを取得すると、前記取得したパケットが有するアプリケーションレイヤ情報を解析するアプリケーションレイヤ情報解析部と、前記取得したパケットをカウントし、パケットの転送量を所定の単位ごとに集計する転送量集計部と、前記アプリケーションレイヤ情報解析部の解析結果および前記転送量集計部の集計結果に基づいて、前記フロー分析の前記分析結果を出力する分析結果出力部と、前記出力した分析結果が前記通知条件を充足するか否かを判定する通知条件充足判定部と、前記通知条件を充足した場合には、前記出力した分析結果を前記ポリシ制御サーバに通知する分析結果通知部と、を備え、前記ポリシ制御サーバの制御部は、前記ユーザ端末に設定されている制御ポリシを用いて前記ポリシ変更条件情報を参照して、前記通知された前記分析結果が前記変更条件を充足するか否かを判定する変更条件充足判定部と、前記変更条件を充足する場合には、前記変更後制御ポリシを前記ユーザ端末に設定するように、前記ノードに制御ポリシの更新を指示する制御ポリシ更新指示部と、を備え、前記アプリケーションレイヤ情報解析部は、前記フローにて利用されるアプリケーションを特定するアプリケーション特定部と、前記フローがアクセスするＵＲＬを特定するＵＲＬ特定部と、前記フローに属するパケットが有するペイロードに対してパターンマッチングを行うパターンマッチング部と、を備え、前記アプリケーションレイヤ情報解析部の解析は、前記アプリケーション特定部が前記アプリケーションを特定すること、前記ＵＲＬ特定部が前記ＵＲＬを特定すること、前記パターンマッチング部が前記パターンマッチングを行うこと、のうち少なくとも１つである、ことを特徴とする。
【００１０】
また、請求項２に記載の発明は、ＩＰネットワーク上のフローのフロー制御を行うノード、前記ＩＰネットワーク上の前記フローを分岐する分岐装置、記憶部と制御部とを有し、前記分岐されたフローのフロー分析を行うフロー分析装置、および、記憶部と制御部とを有し、ユーザ端末に設定される制御ポリシを用いて前記フロー制御について前記ノードに指示するポリシ制御サーバが、前記ＩＰネットワークを介して通信可能に接続されているフロー制御システムにおけるフロー制御方法であって、前記フロー制御システムは、サービスを提供するサービス提供サーバと、前記サービスを利用する前記ユーザ端末と通信可能に接続しており、前記ポリシ制御サーバの記憶部は、前記制御ポリシ、前記制御ポリシを変更するための変更条件、および前記変更条件の充足により変更された変更後制御ポリシ、を対応付けるポリシ変更条件情報、を記憶しており、前記フロー分析装置の記憶部は、前記フロー分析の分析結果を前記ポリシ制御サーバに通知するための通知条件を含む通知条件情報、を記憶しており、前記フロー分析装置の制御部は、通信接続が確立した前記サービス提供サーバおよび前記ユーザ端末の間のフローに属するパケットを取得すると、前記取得したパケットが有するアプリケーションレイヤ情報を解析するアプリケーションレイヤ情報解析ステップと、前記取得したパケットをカウントし、パケットの転送量を所定の単位ごとに集計する転送量集計ステップと、前記アプリケーションレイヤ情報解析部の解析結果および前記転送量集計部の集計結果に基づいて、前記フロー分析の前記分析結果を出力する分析結果出力ステップと、前記出力した分析結果が前記通知条件を充足するか否かを判定する通知条件充足判定ステップと、前記通知条件を充足した場合には、前記出力した分析結果を前記ポリシ制御サーバに通知する分析結果通知ステップと、を実行し、前記ポリシ制御サーバの制御部は、前記ユーザ端末に設定されている制御ポリシを用いて前記ポリシ変更条件情報を参照して、前記通知された前記分析結果が前記変更条件を充足するか否かを判定する変更条件充足判定ステップと、前記変更条件を充足する場合には、前記変更後制御ポリシを前記ユーザ端末に設定するように、前記ノードに制御ポリシの更新を指示する制御ポリシ更新指示ステップと、を実行し、前記アプリケーションレイヤ情報解析ステップにおいて、前記フローにて利用されるアプリケーションを特定するアプリケーション特定ステップと、前記フローがアクセスするＵＲＬを特定するＵＲＬ特定ステップと、前記フローに属するパケットが有するペイロードに対してパターンマッチングを行うパターンマッチングステップと、を実行し、前記アプリケーションレイヤ情報解析ステップの解析は、前記アプリケーション特定ステップにて前記アプリケーションを特定すること、前記ＵＲＬ特定部ステップにて前記ＵＲＬを特定すること、前記パターンマッチング部にて前記パターンマッチングを行うこと、のうち少なくとも１つである、ことを特徴とする。
【００１２】
また、請求項３に記載の発明は、ＩＰネットワーク上のフローのフロー制御を行うノード、前記ＩＰネットワーク上の前記フローを分岐する分岐装置、記憶部と制御部とを有し、前記分岐されたフローのフロー分析を行うフロー分析装置、および、ユーザ端末に設定される制御ポリシを用いて前記フロー制御について前記ノードに指示するポリシ制御サーバが、前記ＩＰネットワークを介して通信可能に接続されているフロー制御システムにおける前記フロー分析装置であって、前記フロー制御システムは、サービスを提供するサービス提供サーバと、前記サービスを利用する前記ユーザ端末と通信可能に接続しており、前記フロー分析装置の記憶部は、前記フロー分析の分析結果を前記ポリシ制御サーバに通知するための通知条件を含む通知条件情報、を記憶しており、前記フロー分析装置の制御部は、通信接続が確立した前記サービス提供サーバおよび前記ユーザ端末の間のフローに属するパケットを取得すると、前記取得したパケットが有するアプリケーションレイヤ情報を解析するアプリケーションレイヤ情報解析部と、前記取得したパケットをカウントし、パケットの転送量を所定の単位ごとに集計する転送量集計部と、前記アプリケーションレイヤ情報解析部の解析結果および前記転送量集計部の集計結果に基づいて、前記フロー分析の前記分析結果を出力する分析結果出力部と、前記出力した分析結果が前記通知条件を充足するか否かを判定する通知条件充足判定部と、前記通知条件を充足した場合には、前記出力した分析結果を前記ポリシ制御サーバに通知する分析結果通知部と、を備え、前記アプリケーションレイヤ情報解析部は、前記フローにて利用されるアプリケーションを特定するアプリケーション特定部と、前記フローがアクセスするＵＲＬを特定するＵＲＬ特定部と、前記フローに属するパケットが有するペイロードに対してパターンマッチングを行うパターンマッチング部と、を備え、前記アプリケーションレイヤ情報解析部の解析は、前記アプリケーション特定部が前記アプリケーションを特定すること、前記ＵＲＬ特定部が前記ＵＲＬを特定すること、前記パターンマッチング部が前記パターンマッチングを行うこと、のうち少なくとも１つである、ことを特徴とする。
【００１４】
請求項１、２、３の発明によれば、アプリケーションレイヤ情報を解析する機能を、ルータなどのノードではなく、フロー分析装置という専用の別体の装置に持たせることを特徴とする。そして、ノードによるフロー制御は、ポリシ制御サーバという専用の別体の装置が制御ポリシに基づいて指示することによって実現する。これにより、フロー制御のための既存機能は変える必要は無く、ノードの転送性能への影響を極力抑えた低コストのノードを構成することができる。したがって、アプリケーションレイヤ情報を用いた詳細なフロー分析に基づいて柔軟なフロー制御を実現することができる。
【００１５】
また、フロー分析装置そのものは、フロー転送を行う必要が無いため、フロー分析の機能と、分析結果を通知する機能を持たせるように設計すればよく、低コストに構成することができる。
【００１６】
また、フロー制御システムは、フロー分析装置と、ポリシ制御サーバとを個別に備えるので、フロー分析およびフロー制御の処理負荷に応じて、フロー分析装置またはポリシ制御サーバを個別に増設することができ、増設に伴うコストを低減化することができる。
【００１７】
また、フロー分析装置は、分岐装置が分岐したフローに対してフロー分析を行うため、高度な処理を行うフロー分析装置が故障した場合でも、通信中のフローに影響が生じることが無く、サービスの提供および利用を継続することができる。
【００１８】
また、請求項１、２、３の発明によれば、アプリケーションレイヤ情報を解析したときの具体的な解析結果を求めることを特徴とする。これにより、フロー分析の分析結果がより具体的になるため、アプリケーションレイヤ情報を用いた詳細なフロー分析に基づいて、より柔軟なフロー制御を実現することができる。
【発明の効果】
【００１９】
本発明によれば、アプリケーションレイヤ情報を用いた詳細なフロー分析に基づいて柔軟なフロー制御を実現することができる。
【図面の簡単な説明】
【００２０】
【図１】フロー制御システムの構成を示すブロック図である。
【図２】フロー分析装置の機能構成を示すブロック図である。
【図３】詳細分析条件テーブルのデータ構造を示す図である。
【図４】アプリケーション特定テーブルのデータ構造を示す図である。
【図５】ＵＲＬリストのデータ構造を示す図である。
【図６】集計テーブルのデータ構造を示す図である。
【図７】ポリシ制御サーバの機能構成を示すブロック図である。
【図８】ユーザポリシ管理テーブルのデータ構造を示す図である。
【図９】ポリシシナリオテーブルのデータ構造を示す図である。
【図１０】制御ポリシテーブルのデータ構造を示す図である。
【図１１】分析ポリシテーブルのデータ構造を示す図である。
【図１２】制御ポリシ設定状態テーブルのデータ構造を示す図である。
【図１３】フロー制御システムによる処理を示すシーケンス図である。
【図１４】ＨＴＴＰ接続確立後のフロー分析装置の処理を示すフローチャートである。
【図１５】本実施形態の具体的な動作例１を示すシーケンス図である。
【図１６】本実施形態の具体的な動作例２を示すシーケンス図である。
【図１７】本実施形態の具体的な動作例３を示すシーケンス図である。
【発明を実施するための形態】
【００２１】
＜構成＞
図１に示すように、本実施形態のフロー制御システムは、ＥＲ（エッジルータ、ノード）２と、接続認証サーバ３と、フロー分析装置４と、ポリシ制御サーバ５と、ＣＲ（コアルータ、ノード）７と、パッシブ分岐装置８（分岐装置）と、ＧＷ（ゲートウェイ、ノード）９とを備え、これらが、ＩＰネットワークを介して通信可能に接続されているシステムである。ＩＰネットワークは、特定の事業者が管理する事業者網である。ユーザ端末１は、ＥＲ２と通信可能に接続しており、ｗｅｂサーバ６（サービス提供サーバ）は、インターネットを介してＧＷ９と通信可能に接続している。
【００２２】
ユーザ端末１、ＥＲ２と、接続認証サーバ３と、フロー分析装置４と、ポリシ制御サーバ５と、ｗｅｂサーバ６と、ＣＲ７と、パッシブ分岐装置８と、ＧＷ９と、本実施形態で後記される他のコンピュータとはそれぞれ、入力部、出力部、制御部および記憶部といったハードウェアを含むコンピュータである。制御部が、例えば、ＣＰＵ（Central Processing Unit）から構成される場合、その制御部を含むコンピュータによる情報処理は、ＣＰＵによるプログラム実行処理で実現する。また、そのコンピュータが含む記憶部は、ＣＰＵが指令し、そのコンピュータの機能を実現するためのプログラムを記憶する。これによりソフトウェアとハードウェアの協働が実現される。
【００２３】
ユーザ端末１は、ｗｅｂサーバ６が提供するサービス（以下、単に「サービス」と証する場合がある）を利用するための端末である。
ＥＲ２は、ＩＰネットワークの末端に配置されているノードであって、パケットの転送を行う。
接続認証サーバ３は、サービスを利用するユーザ端末１のユーザの認証を行う。
フロー分析装置４は、ＩＰネットワーク上にあるフローのうち、パッシブ分岐装置８から分岐されたフローのフロー分析を行う。
ポリシ制御サーバ５は、ＥＲ２のフロー制御を規定する制御ポリシを管理して、ＥＲ２のフロー制御に関する指示をするとともに、フロー分析装置４のフロー分析を規定する分析ポリシを管理して、フロー分析装置４のフロー分析に関する指示をする。
ｗｅｂサーバ６は、ユーザ端末１にサービスを提供する。
ＣＲ７は、ＩＰネットワークの内部に配置されているノードであって、パケットの転送を行う。
パッシブ分岐装置８は、ＩＰネットワーク上にあるフロー（図１の太い矢印線参照）をフロー分析装置４へ分岐する。
ＧＷ９は、ＩＰネットワークを、前記ＩＰネットワークで用いられるプロトコルとは異なるプロトコル（例：ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol））を用いるインターネットに接続するための装置である。
【００２４】
説明の便宜上、本実施形態では、ユーザ端末１とｗｅｂサーバ６との間でＨＴＴＰ接続が確立することでサービスが実現されることとする。しかし、ＨＴＴＰ接続以外の通信接続が確立する実施形態についても本発明を適用することができる。
【００２５】
（フロー分析装置４）
図２に示すように、フロー分析装置４は、通知条件テーブル４１１（通知条件情報）と、アプリケーション特定テーブル４１２と、ＵＲＬリスト４１３と、集計テーブル４１４と、フロー特定部４２１と、アプリケーションレイヤ情報解析部４２２と、転送量集計部４２３と、分析結果出力部４２５と、通知条件充足判定部４２６と、分析結果通知部４２７と、を備える。アプリケーションレイヤ情報解析部４２２は、アプリケーション特定部４２２１と、ＵＲＬ特定部４２２２と、パターンマッチング部４２２３と、を備える。通知条件テーブル４１１と、アプリケーション特定テーブル４１２と、ＵＲＬリスト４１３と、集計テーブル４１４とは、フロー分析装置４の記憶部に記憶されている。フロー特定部４２１と、アプリケーションレイヤ情報解析部４２２と、アプリケーション特定部４２２１と、ＵＲＬ特定部４２２２と、パターンマッチング部４２２３と、転送量集計部４２３と、分析結果出力部４２５と、通知条件充足判定部４２６と、分析結果通知部４２７とは、フロー分析装置４の制御部が有する。
【００２６】
通知条件テーブル４１１は、フロー分析装置４が、パケット内のアプリケーションレイヤ情報を用いた詳細なフロー分析をポリシ制御サーバ５に通知するための情報を管理するテーブルである。なお、アプリケーションレイヤ情報とは、例えば、ＯＳＩ（Open Systems Interconnection）参照モデルの第７層にある情報である。図３に示すように、通知条件テーブル４１１は、「ＩＰアドレス」と、「アプリケーション」と、「ＵＲＬリスト番号」と、「通知条件」という項目を備える。
【００２７】
「ＩＰアドレス」という項目には、ＩＰネットワーク上で転送されるパケットの、パケット送信元またはパケット送信先となるｗｅｂサーバ６およびユーザ端末１のいずれかのＩＰアドレスが格納される。
「アプリケーション」という項目には、サービスにて利用されるアプリケーションの名称が格納される。
「ＵＲＬリスト番号」という項目には、フローがアクセスするＵＲＬを識別する番号が格納されており、ＵＲＬリスト４１３のＵＲＬリスト番号と同一である。
「通知条件」という項目には、フロー分析装置４の分析結果をポリシ制御サーバ５に通知するための条件（例：同一フローの転送量が１ＧＢを超過すること）が格納される。
【００２８】
通知条件テーブル４１１のデータ構造によれば、通知条件は、パケット送信元またはパケット送信先のＩＰアドレスごとに、アプリケーションごとに、または、ＵＲＬごとに設定することができる。なお、フローごとに通知条件を設定することもできる。
【００２９】
アプリケーション特定テーブル４１２は、サービスにて利用されるアプリケーションを特定するための情報を管理するテーブルである。図４に示すように、アプリケーション特定テーブル４１２は、「アプリケーション」と、「ポート番号」と、「ペイロードに含まれる文字列」という項目を備える。
【００３０】
「アプリケーション」という項目は、通知条件テーブル４１１が備える「アプリケーション」という項目と同様である。
「ポート番号」という項目には、アプリケーションが通信で用いるポート番号が格納される。
「ペイロードに含まれる文字列」という項目には、パケットのペイロードに含まれる文字列のうちアプリケーションに関する特徴を示す文字列が格納される。
【００３１】
ＵＲＬリスト４１３は、アプリケーションが動作するときにフローがアクセスするＵＲＬを管理するテーブルである。図５に示すように、ＵＲＬリスト４１３は、「ＵＲＬリスト番号」と、「ＵＲＬ」という項目を備える。
【００３２】
「ＵＲＬリスト番号」という項目には、ＵＲＬを識別する番号が格納される。
「ＵＲＬ」には、ＵＲＬを表す文字列が格納される。
【００３３】
集計テーブル４１４は、フロー分析装置４が、フロー分析の対象となるパケットをカウントすることで集計したパケットの転送量を管理するテーブルである。図６に示すように、集計テーブル４１４は、「ＩＰアドレス」と、「アプリケーション」と、「ＵＲＬリスト番号」と、「転送量」という項目を備える。
【００３４】
「ＩＰアドレス」という項目は、通知条件テーブル４１１が備える「ＩＰアドレス」という項目と同様である。
「アプリケーション」という項目は、通知条件テーブル４１１が備える「アプリケーション」という項目と同様である。
「ＵＲＬリスト番号」という項目は、ＵＲＬリスト４１３が備える「ＵＲＬリスト番号」という項目と同様である。
「転送量」という項目には、所定期間中にＩＰネットワーク上で転送されるパケットの転送量（パケットの個数および各パケットの通信量から算出）が格納される。前記所定期間とは、例えば、ユーザ端末１とｗｅｂサーバ６との間のセッションが確立されてから、そのセッションが解除されるまでの期間である。
【００３５】
集計テーブル４１４のデータ構造によれば、転送量は、パケット送信元またはパケット送信先のＩＰアドレスごとに、アプリケーションごとに、または、ＵＲＬごとにカウントすることができる。なお、フローごとに転送量をカウントすることもできる。
【００３６】
フロー特定部４２１は、フロー分析装置４が取得したパケットが属するフローを特定する。
【００３７】
アプリケーションレイヤ情報解析部４２２は、フロー分析装置４が取得したパケットが有するアプリケーションレイヤ情報を解析する。
【００３８】
アプリケーション特定部４２２１は、アプリケーション特定テーブル４１２を参照して、フロー分析の対象となるフローにて利用されるアプリケーションを特定する。具体的には、アプリケーション特定部４２２１は、フロー内の、最初から所定数個分のパケットを解析し、アプリケーション特定テーブル４１２の「ペイロードに含まれる文字列」という項目に格納されている文字列に一致する文字列を探索して、アプリケーションを特定する。サービスの種類によって、アプリケーションを特定するために解析するパケットの個数を変更することができる。なお、アプリケーション特定部４２２１が特定したアプリケーションは、アプリケーションレイヤ情報解析部４２２の解析結果となり得る。
【００３９】
ＵＲＬ特定部４２２２は、フロー分析の対象となるフローがアクセスするＵＲＬを特定する。具体的には、ＵＲＬ特定部４２２２は、サービスに必要なリソースを取得するためのリソース取得リクエストを、フロー分析装置４が取得したパケットから読み出すことでＵＲＬを特定する。前記リソース取得リクエストは、例えば、パケットのＨＴＴＰヘッダの開始部分から２４ｂｉｔ分に含まれるＧＥＴリクエストである。なお、特定されたＵＲＬは、識別番号が付されてＵＲＬリスト４１３に登録される。また、ＵＲＬ特定部４２２２が特定したＵＲＬは、アプリケーションレイヤ情報解析部４２２の解析結果となり得る。
【００４０】
パターンマッチング部４２２３は、フロー分析の対象となるフローに属するパケットが有するペイロードに対してパターンマッチングを行う。具体的には、パターンマッチング部４２２３は、スコープ内の情報のパターンマッチングを行う。なお、パターンマッチング部４２２３によるパターンマッチングの結果は、アプリケーションレイヤ情報解析部４２２の解析結果となり得る。
【００４１】
転送量集計部４２３は、フロー分析装置４が取得したパケットをカウントし、パケットの転送量を所定の単位ごとに集計する。転送量集計部４２３の集計結果は、集計テーブル４１４に更新される。
【００４２】
分析結果出力部４２５は、アプリケーションレイヤ情報解析部４２２の解析結果および前記転送量集計部４２３の集計結果に基づいて、フロー分析の分析結果を出力する。
【００４３】
通知条件充足判定部４２６は、分析結果出力部４２５が出力した分析結果が、通知条件テーブル４１１の通知条件を充足するか否かを判定する。
【００４４】
分析結果通知部４２７は、通知条件テーブル４１１の通知条件を充足した場合に、分析結果出力部４２５が出力した分析結果をポリシ制御サーバ５に通知する。
【００４５】
（ポリシ制御サーバ５）
図７に示すように、ポリシ制御サーバ５は、ユーザポリシ管理テーブル５１１と、ポリシシナリオテーブル５１２（ポリシ変更条件情報を含む）と、制御ポリシテーブル５１３と、分析ポリシテーブル５１４と、ポリシ設定状態テーブル５１５と、変更条件充足判定部５２１と、制御ポリシ更新指示部５２２と、を備える。ユーザポリシ管理テーブル５１１と、ポリシシナリオテーブル５１２と、制御ポリシテーブル５１３と、分析ポリシテーブル５１４と、ポリシ設定状態テーブル５１５とは、ポリシ制御サーバ５の記憶部に記憶されている。変更条件充足判定部５２１と、制御ポリシ更新指示部５２２とは、ポリシ制御サーバ５の制御部が有する。
【００４６】
ユーザポリシ管理テーブル５１１は、ユーザに対して割り当てられる初期のポリシシナリオを管理するテーブルである。ポリシシナリオとは、ユーザ端末１とｗｅｂサーバ６との間で実現されるサービスに関する、ＥＲ２のフロー制御を規定する制御ポリシとフロー分析装置４のフロー分析を規定する分析ポリシとの組み合わせである。図８に示すように、ユーザポリシ管理テーブル５１１は、「ユーザＩＤ」と、「ユーザＩＰアドレス」と、「ポリシシナリオ」という項目を備える。
【００４７】
「ユーザＩＤ」という項目には、ユーザ端末１のユーザを識別するＩＤ（identification）が格納される。
「ユーザＩＰアドレス」という項目には、ユーザ端末１のＩＰアドレスが格納される。
「ポリシシナリオ」という項目には、ユーザに対して割り当てられるポリシシナリオの名称が格納される。
【００４８】
ポリシシナリオテーブル５１２は、ポリシシナリオをどのように変更するかを管理するテーブルである。図９に示すように、ポリシシナリオテーブル５１２は、「ポリシシナリオ」と、「変更条件」と、「変更後ポリシ」という項目を備える。
【００４９】
「ポリシシナリオ」の項目は、ユーザポリシ管理テーブル５１１が備える「ポリシシナリオ」という項目と同様である。
「変更条件」という項目には、ポリシシナリオを変更するための変更条件が格納される。
「変更後ポリシ」という項目には、変更条件を満たしたときに変更されるポリシシナリオの名称が格納される。
【００５０】
なお、制御ポリシのみ変更する場合には、分析ポリシが同一となるポリシシナリオの変更を行えばよい。よって、ポリシシナリオテーブル５１２は、制御ポリシのみの変更を管理することができる。同様にして、分析ポリシのみ変更する場合には、制御ポリシが同一となるポリシシナリオの変更を行えばよい。よって、ポリシシナリオテーブル５１２は、分析ポリシのみの変更を管理することができる。
【００５１】
制御ポリシテーブル５１３は、ＥＲ２のフロー制御を規定する初期の制御ポリシの内容を管理するテーブルである。図１０に示すように、制御ポリシテーブル５１３は、「制御ポリシ」と、「帯域上限」と、「フロー優先度」と、「パケット廃棄」と、「ステアリング有無」と、「ステアリング先装置番号」という項目を備える。
【００５２】
「制御ポリシ」という項目には、制御ポリシの名称が格納される。制御ポリシの名称が、ポリシシナリオの名称を含むように構成しても良い。
「帯域上限」という項目には、サービスの実現に割り当てられる帯域の上限値が登録される。
「フロー優先度」という項目には、フローの優先制御において定められる優先クラスの値（例：DiffservのＥＦ（Expedited Forwarding））が定められる。
「パケット廃棄」という項目には、フローの帯域制御において定められるパケットの廃棄条件が定められる。
「ステアリング有無」という項目には、ｗｅｂサーバ６が動画配信のサービスを提供する場合に、配信する動画の動画レートの変換の要求（ステアリング）を、動画レート変換サーバに対して行うか否かを示すフラグが格納される。
「ステアリング先装置番号」という項目には、動画レートの変換の要求先となる動画レート変換サーバのＩＤが格納される。
【００５３】
分析ポリシテーブル５１４は、フロー分析装置４のフロー分析を規定する初期の分析ポリシの内容を管理するテーブルである。図１１に示すように、分析ポリシテーブル５１４は、「分析ポリシ」と、「転送量分析」と、「アプリケーション分析」と、「ＵＲＬリスト番号」と、「通知条件」という項目を備える。
【００５４】
「分析ポリシ」という項目には、分析ポリシの名称が格納される。分析ポリシの名称が、ポリシシナリオの名称を含むように構成しても良い。
「転送量分析」という項目には、所定期間中にＩＰネットワーク上で転送されるパケットの転送量を求める分析を示す値が格納される。
「アプリケーション分析」という項目には、フロー分析の対象となるフローにて利用されるアプリケーションを特定するための分析を示す値が格納される。
「ＵＲＬリスト番号」という項目には、ＵＲＬリスト４１３のＵＲＬリスト番号が格納される。
「通知条件」という項目は、フロー分析装置４の通知条件テーブル４１１の「通知条件」と同様である。
【００５５】
ポリシ制御サーバ５からフロー分析装置４への分析ポリシの更新の指示により、分析ポリシテーブル５１４の内容のうちの所定の分析ポリシが、フロー分析装置４に適用されるように、通知条件テーブル４１１が更新される。
【００５６】
ポリシ設定状態テーブル５１５は、ユーザに対して割り当てられる、（ＨＴＴＰ接続が確立してから、またはユーザ端末１に設定される制御ポリシが更新されてから、しばらく後となる）現時点におけるポリシシナリオを管理するテーブルである。図１２に示すように、ポリシ設定状態テーブル５１５は、「ユーザＩＤ」と、「ポリシシナリオ」と、「転送量」と、「ユーザＩＰアドレス」と、「サーバＩＰアドレス」と、「ユーザポート」と、「サーバポート」と、「プロトコル」という項目を備える。
【００５７】
「ユーザＩＤ」という項目は、ユーザポリシ管理テーブル５１１の「ユーザＩＤ」と同様である。
「ポリシシナリオ」という項目は、ユーザポリシ管理テーブル５１１が備える「ポリシシナリオ」という項目と同様である。
「転送量」という項目は、ＨＴＴＰ接続が確立してから、またはユーザ端末１に設定される制御ポリシが更新されてから、現時点までの間に、ＩＰネットワーク上で転送されるパケットの転送量の総量が格納される。
「ユーザＩＰアドレス」という項目は、ユーザポリシ管理テーブル５１１の「ユーザＩＰアドレス」と同様である。
「サーバＩＰアドレス」という項目には、ｗｅｂサーバ６のＩＰアドレスが格納される。
「ユーザポート」という項目には、サービスに利用されるアプリケーションが動作するために必要となるユーザ端末１側のポート番号が格納される。
「サーバポート」という項目には、サービスに利用されるアプリケーションが動作するために必要となるｗｅｂサーバ６側のポート番号が格納される。
「プロトコル」という項目には、サービスを実現する際に用いられるプロトコルが格納される。
【００５８】
上りパケットについては、ユーザＩＰアドレス、サーバＩＰアドレス、ユーザポート、サーバポートはそれぞれ、パケット送信元のＩＰアドレス、パケット送信先のＩＰアドレス、パケット送信元のポート、パケット送信先のポートとなる。下りパケットについては、ユーザＩＰアドレス、サーバＩＰアドレス、ユーザポート、サーバポートはそれぞれ、パケット送信先のＩＰアドレス、パケット送信元のＩＰアドレス、パケット送信先のポート、パケット送信元のポートとなる。
【００５９】
変更条件充足判定部５２１は、ユーザ端末１に設定されている制御ポリシを用いてポリシシナリオテーブル５１２を参照して、分析結果通知部４２７から通知された分析結果がポリシシナリオテーブル５１２の、前記制御ポリシに対応する変更条件を充足するか否かを判定する。
【００６０】
制御ポリシ更新指示部５２２は、ポリシシナリオテーブル５１２の変更条件を充足する場合には、ポリシシナリオテーブル５１２の、ユーザ端末１に設定されている制御ポリシに対応する変更後制御ポリシをユーザ端末１に設定するように、ＥＲ２に制御ポリシの更新を指示する。
【００６１】
＜処理＞
図１３を参照して、本実施形態のフロー制御システムによる処理を説明する。この処理の主体は、フロー制御システムを構成する各装置の制御部であるが、説明の便宜上、「制御部」という言葉は省略する。図１３の処理は、ユーザ端末１のユーザがサービスを利用するための操作（例：ログイン操作）をすることで開始し、ステップＳ１０１に進む。
【００６２】
ステップＳ１０１において、ユーザ端末１は、ＥＲ２に対して接続要求を行う。接続要求には、例えば、ＰＰＰ（Point-to-Point Protocol）を用いることができる。ステップＳ１０１の後、ステップＳ１０２に進む。
【００６３】
ステップＳ１０２において、ＥＲ２は、接続認証サーバ３に対して認証要求を行う。認証要求には、例えば、Radiusプロトコルを用いることができる。ステップＳ１０２の後、ステップＳ１０３に進む。
【００６４】
ステップＳ１０３において、接続認証サーバ３は、ＥＲ２に対して認証応答を行う。認証応答には、例えば、Radiusプロトコルを用いることができる。また、認証応答には、ユーザ端末１のユーザのユーザＩＤおよびユーザＩＰアドレスが含まれている。ステップＳ１０３の後、ステップＳ１０４に進む。
【００６５】
ステップＳ１０４において、接続認証サーバ３は、パッシブ分岐装置８を介してフロー分析装置４に対して認証応答のコピーパケットを送信する。コピーパケットの送信には、例えば、Radiusプロトコルを用いることができる。ステップＳ１０４の後、ステップＳ１０５に進む。
【００６６】
ステップＳ１０５において、ＥＲ２は、ポリシ制御サーバ５に対して、ユーザＩＤおよびユーザＩＰアドレスに基づいて、ユーザに対する制御ポリシの要求を行う。制御ポリシの要求には、例えば、DiameterプロトコルのＣＣＲ（Credit Control Request）メッセージが用いられる。制御ポリシの要求には、ユーザ端末１のユーザのユーザＩＤおよびユーザＩＰアドレスが含まれている。ステップＳ１０５の後、ステップＳ１０６に進む。
【００６７】
ステップＳ１０６において、ポリシ制御サーバ５は、制御ポリシの要求に含まれているユーザＩＤを参照キーとして、ユーザポリシ管理テーブル５１１を参照して、ポリシシナリオ内の制御ポリシを決定する。ステップＳ１０６の後、ステップＳ１０７に進む。
【００６８】
ステップＳ１０７において、ポリシ制御サーバ５は、ＥＲ２に対して、決定した制御ポリシを送信することで、ユーザに対する制御ポリシの応答を行う。制御ポリシの応答には、例えば、DiameterプロトコルのＣＣＡ（Credit Control Answer）メッセージが用いられる。ステップＳ１０７の後、ステップＳ１０８に進む。
【００６９】
ステップＳ１０８において、ＥＲ２は、ユーザ端末１に対して接続要求を行う。接続要求には、例えば、ＰＰＰを用いることができる。ステップＳ１０８の後、ステップＳ１０９に進む。
【００７０】
ステップＳ１０９において、フロー分析装置４は、ポリシ制御サーバ５に対して、ユーザＩＤおよびユーザＩＰアドレスに基づいて、ユーザに対する分析ポリシの要求を行う。分析ポリシの要求には、例えば、DiameterプロトコルのＣＣＲメッセージが用いられる。ステップＳ１０９の後、ステップＳ１１０に進む。
【００７１】
ステップＳ１１０において、ポリシ制御サーバ５は、ユーザＩＤを参照キーとして、ユーザポリシ管理テーブル５１１を参照して、ポリシシナリオ内の分析ポリシを決定する。ステップＳ１１０の後、ステップＳ１１１に進む。
【００７２】
ステップＳ１１１において、ポリシ制御サーバ５は、フロー分析装置４に対して、決定した分析ポリシを送信することで、ユーザに対する分析ポリシの応答を行う。分析ポリシの応答には、例えば、DiameterプロトコルのＣＣＲメッセージが用いられる。ステップＳ１１１の後、ステップＳ１１２に進む。
【００７３】
ステップＳ１１２において、ユーザ端末１とｗｅｂサーバ６との間でＨＴＴＰ接続が確立し、通信が開始する。このとき、フロー分析装置４は、ポリシ制御サーバ５から受信した分析ポリシにしたがってフロー分析を開始する。ステップＳ１１２の後、ステップＳ１１３に進む。
【００７４】
ステップＳ１１３において、フロー分析装置４は、フロー分析の分析結果が、通知条件テーブル４１１の通知条件を充足するか否かを判定する（通知条件充足判定部４２６による通知条件充足判定ステップ）。図１３の処理では、通知条件を充足したとして説明を続ける。ステップＳ１１３の後、ステップＳ１１４に進む。
【００７５】
ステップＳ１１４において、フロー分析装置４は、ポリシ制御サーバ５に対して分析結果を通知する（分析結果通知部４２７による分析結果通知ステップ）。分析結果の通知には、例えば、DiameterプロトコルのＣＣＲメッセージが用いられるが、ポリシ制御サーバ５は、フロー分析装置４に対してＣＣＡメッセージを用いた確認応答をする。ステップＳ１１４の後、ステップＳ１１５に進む。
【００７６】
ステップＳ１１５において、ポリシ制御サーバ５は、ＨＴＴＰ接続が確立しているユーザ端末１に設定されている制御ポリシを参照キーとして、ポリシシナリオテーブル５１２を参照し、通知された分析結果が、ポリシシナリオテーブル５１２の変更条件を充足するか否かを判定する（変更条件充足判定部５２１による変更条件充足判定ステップ）。図１３の処理では、変更条件を充足したとして説明を続ける。ステップＳ１１５の後、ステップＳ１１６に進む。
【００７７】
ステップＳ１１６において、ポリシ制御サーバ５は、充足した変更条件に対応する、ポリシシナリオテーブル５１２の変更後ポリシの、ポリシシナリオに含まれる制御ポリシを、変更後制御ポリシとして決定する。ステップＳ１１６の後、ステップＳ１１７に進む。
【００７８】
ステップＳ１１７において、ポリシ制御サーバ５は、ＥＲ２に対して、決定した変更後制御ポリシをユーザ端末１に設定するように、制御ポリシの更新を指示する（制御ポリシ更新指示部５２２による制御ポリシ更新指示ステップ）。制御ポリシの更新の指示には、例えば、DiameterプロトコルのＲＡＲ（Re-Auth-Request）メッセージが用いられるが、ＥＲ２は、ポリシ制御サーバ５に対してＲＡＡ（Re-Auth-Answer）メッセージを用いた確認応答をする。
【００７９】
なお、ステップＳ１１７の後、ＥＲ２は、ユーザ端末１に対して変更後制御ポリシを適用してフロー制御を継続する。
以上の説明により、図１３の処理を終了する。
【００８０】
次に、図１４を参照して、フロー分析装置４が詳細なフロー分析を行うための処理について説明する。この処理の主体は、フロー分析装置４の制御部であるが、説明の便宜上、「制御部」という言葉は省略する。図１４の処理は、フロー分析装置４がパッシブ分岐装置８からパケットを取得したときに開始し、ステップＳ２０１に進む。なお、取得したパケットは、上りパケットとして説明をする。
【００８１】
ステップＳ２０１において、フロー分析装置４は、取得したパケットが属するフローを特定する（フロー特定部４２１によるフロー特定ステップ）。フローの特定は、例えば、パケットのＩＰヘッダを解析して、5tupleを求めることで実現される。5tupleを構成するＩＰアドレスなどの情報は、低レイヤ情報である。ステップＳ２０１の後、ステップＳ２０２に進む。
【００８２】
ステップＳ２０２において、フロー分析装置４は、取得したパケットが属するフローの前記フロー分析を実行するために、パケットが有するアプリケーションレイヤ情報を解析する（アプリケーションレイヤ情報解析部４２２によるアプリケーションレイヤ情報解析ステップ）。ステップＳ２０２においては、アプリケーションレイヤ情報の解析として、以下のステップＳ２０２１〜ステップＳ２０２３を行うことができる。
【００８３】
ステップＳ２０２１において、フロー分析装置４は、アプリケーション特定テーブル４１２を参照して、フロー分析の対象となるフローにて利用されるアプリケーションを特定する（アプリケーション特定部４２２１によるアプリケーション特定ステップ）。
【００８４】
ステップＳ２０２２において、フロー分析装置４は、フロー分析の対象となるフローがアクセスするＵＲＬを特定する（ＵＲＬ特定部４２２２によるＵＲＬ特定ステップ）。
【００８５】
ステップＳ２０２３において、フロー分析装置４は、フロー分析の対象となるフローに属するパケットが有するペイロードに対してパターンマッチングを行う（パターンマッチング部４２２３によるパターンマッチングステップ）。
【００８６】
ステップＳ２０２におけるアプリケーションレイヤ情報の解析において、5tupleを求めてフローの特定を行うこともできる。アプリケーションレイヤ情報解析部４２２は、フロー特定部４２１による処理結果を援用して、フローの特定を行うこともできる。アプリケーションレイヤ情報解析部４２２は、サービスの種類に応じて、（１）アプリケーション特定部４２２１がアプリケーションを特定すること、（２）ＵＲＬ特定部４２２２がＵＲＬを特定すること、（３）パターンマッチング部４２２３がパターンマッチングを行うこと、（４）フローを特定すること、のうち少なくとも１つを行うように解析することができる。また、上記（１）〜（４）の順番は問わない。ステップＳ２０２の後、ステップＳ２０３に進む。
【００８７】
ステップＳ２０３において、フロー分析装置４は、取得したパケットをカウントし、パケットの転送量を所定の単位ごとに集計する（転送量集計部４２３による転送量集計ステップ）。ステップＳ２０３の後、ステップＳ２０５に進む。
【００８８】
ステップＳ２０５において、フロー分析装置４は、ステップＳ２０２によるアプリケーションレイヤ情報の解析結果、および、ステップＳ２０３による転送量の集計結果に基づいて、フロー分析の分析結果を出力する（分析結果出力部４２５による分析結果出力ステップ）。ステップＳ２０５の後、ステップＳ２０６に進む。
【００８９】
ステップＳ２０６において、フロー分析装置４は、前記出力した分析結果が、通知条件テーブル４１１の通知条件を充足するか否かを判定する（通知条件充足判定部４２６による通知条件充足判定ステップ）。通知条件を充足する場合には（ステップＳ２０６でＹｅｓ）、ステップＳ２０７に進み、通知条件を充足しない場合は（ステップＳ２０６でＮｏ）、図１４の処理を終了する。
【００９０】
ステップＳ２０７において、フロー分析装置４は、前記出力した分析結果をポリシ制御サーバ５に通知する（分析結果通知部４２７による分析結果通知ステップ）。ステップＳ２０７により、図１４の処理を終了する。
【００９１】
なお、フロー分析装置４が下りパケットを取得した場合には、パケット送信先がユーザ端末１となるにことに留意して図１４の処理と同様の処理を行うことができる。
また、取得したパケットに対して、パケット送信元およびパケット送信先の両方について、図１４の処理を１度に行ってもよい。例えば、パケット送信先について図１４の処理を行った後、パケット送信元について図１４の処理を行ってもよい。
【００９２】
所定の条件を満たしたパケットについてのみ、アプリケーションレイヤ情報を解析したフロー分析を行うようにしてもよい。前記所定の条件とは、例えば、（１）パケット送信元またはパケット送信先のＩＰアドレスが、監視対象となる、サービスを提供するサーバまたはサービスを利用するユーザ端末のＩＰアドレスとすること、または（２）パケットがＧＥＴリクエストを有すること、である。
【００９３】
図１４の処理によれば、アプリケーションレイヤ情報を解析するとともに、ＩＰアドレスごと、アプリケーションごと、ＵＲＬごと、フローごとなどに転送量を集計する。このような手順により、5tupleが共通する同一のＨＴＴＰセッションの中で異なるＵＲＬへのアクセスがなされる場合についても漏れなくフロー分析を行うことができる。
【００９４】
次に、本実施形態の具体的な動作例１〜３について、図１５〜図１７を参照して説明する。この動作例１〜３は、図１３の処理の応用例となる。説明の便宜上、動作例１〜３において、図１３の処理と重複する説明は省略し、相違する点について主に説明する。
【００９５】
（動作例１）
図１５を参照して、本実施形態の具体的な動作例１を説明する。図１５の処理において、ステップＳ１０１〜ステップＳ１０６、ステップＳ１０８〜ステップＳ１１０、ステップＳ１１３、ステップＳ１１５、ステップＳ１１６は、図１３の対応するステップと同様である。
【００９６】
ステップＳ１０６の後、ステップＳ３０１に進む。ステップＳ３０１において、ポリシ制御サーバ５は、ＥＲ２に対して、決定した制御ポリシを送信することで、ユーザに対する制御ポリシの応答を行う。前記決定した制御ポリシは、転送制限が無いことを示す制御ポリシである。ステップＳ３０１の後、ステップＳ１０８に進む。
【００９７】
ステップＳ１１０の後、ステップＳ３０２に進む。ステップＳ３０２において、ポリシ制御サーバ５は、フロー分析装置４に対して、決定した分析ポリシを送信することで、ユーザに対する分析ポリシの応答を行う。前記決定した分析ポリシは、ユーザ端末１のユーザＩＰアドレスと、通知条件となる帯域上限（１ＧＢ）とを設定する分析ポリシである。ステップＳ３０２の後、ステップＳ３０３に進む。
【００９８】
ステップＳ３０３において、ユーザ端末１とｗｅｂサーバ６との間でＨＴＴＰ接続が確立し、通信が開始する。このとき、フロー分析装置４は、ポリシ制御サーバ５から受信した分析ポリシにしたがってフロー分析を開始する。このフロー分析の際、フロー分析装置４は、ステップＳ３０２にて設定されたユーザＩＰアドレスを含むパケットを抽出して転送量をカウントする。ステップＳ１１２の後、ステップＳ１１３に進む。
【００９９】
図１５の処理において、ユーザ端末１のｗｅｂアクセスが１ＧＢを超過したとする。このとき、ステップＳ１１３では、分析結果が通知条件を充足したと決定し、ステップＳ３０４に進む。
【０１００】
ステップＳ３０４において、フロー分析装置４は、ポリシ制御サーバ５に対して分析結果として、ユーザ端末１についてのユーザＩＤ、ユーザＩＰアドレス、および転送量を通知する。ステップＳ３０４の後、ステップＳ１１５に進む。
【０１０１】
ステップＳ１１６の後、ステップＳ３０５に進む。ステップＳ３０５において、ポリシ制御サーバ５は、ＥＲ２に対して、決定した変更後制御ポリシをユーザ端末１に設定するように、制御ポリシの更新を指示する。前記決定した変更後制御ポリシは、帯域を制限する（例えば、ユーザに対するスループットを１００Ｋｂｐｓで上限とする）ことを示す制御ポリシである。
【０１０２】
図１５の処理によれば、ｗｅｂアクセスが１ＧＢの通信量を超過したときにスループット転送量を制限することができる。
【０１０３】
（動作例２）
図１６を参照して、本実施形態の具体的な動作例２を説明する。図１６の処理において、ステップＳ１０１〜ステップＳ１０６、ステップＳ１０８〜ステップＳ１１０、ステップＳ１１２は、図１３の対応するステップと同様である。また、図１６の処理において、サービスポータル１０がフロー制御システムに通信可能に接続されている。
【０１０４】
ステップＳ１０６の後、ステップＳ４０１に進む。ステップＳ４０１において、ポリシ制御サーバ５は、ＥＲ２に対して、決定した制御ポリシを送信することで、ユーザに対する制御ポリシの応答を行う。前記決定した制御ポリシは、転送制限が無いことを示す制御ポリシである。ステップＳ４０１の後、ステップＳ１０８に進む。
【０１０５】
ステップＳ１１０の後、ステップＳ４０２に進む。ステップＳ４０２において、ポリシ制御サーバ５は、フロー分析装置４に対して、決定した分析ポリシを送信することで、ユーザに対する分析ポリシの応答を行う。前記決定した分析ポリシは、フロー分析を実行しないことを設定する分析ポリシである。ステップＳ４０２の後、ステップＳ１１２進む。
【０１０６】
ステップＳ１１２の後、ステップＳ４０３に進む。ステップＳ４０３において、ユーザ端末１は、サービスポータル１０に対して、帯域確保の要求を行う。例えば、ユーザは、嗜好に応じて、サービスポータル１０上のサービス契約ボタンを押すことにより、帯域確保の要求を行う。ステップＳ４０３の後、ステップＳ４０４に進む。
【０１０７】
ステップＳ４０４において、サービスポータル１０は、ポリシ制御サーバ５に対して、制御ポリシ変更の要求を行う。変更を要求する制御ポリシは、帯域確保（サービス契約）のフロー制御を行うことを指示する制御ポリシである。制御ポリシ変更の要求には、例えば、ＳＯＡＰ（Simple Object Access Protocol）を用いることができるが、ポリシ制御サーバ５はサービスポータル１０に対して、確認応答をする。ステップＳ４０４の後、ステップＳ４０５に進む。
【０１０８】
ステップＳ４０５において、ポリシ制御サーバ５は、ＥＲ２に対して、変更の要求のあった制御ポリシ（帯域確保用の変更後制御ポリシ）をユーザ端末１に設定するように、制御ポリシの更新を指示する。制御ポリシの更新の指示には、例えば、DiameterプロトコルのＲＡＲメッセージが用いられるが、ＥＲ２は、ポリシ制御サーバ５に対してＲＡＡメッセージを用いた確認応答をする。ステップＳ４０５の後、ステップＳ４０６に進む。
【０１０９】
ステップＳ４０６において、ポリシ制御サーバ５は、フロー分析装置４に対して、分析ポリシの更新を指示する。更新の指示があった分析ポリシは、ユーザ端末１のユーザＩＰアドレスについて転送量をカウントするようにフロー分析を行うための分析ポリシである。分析ポリシの更新の指示には、例えば、DiameterプロトコルのＲＡＲメッセージが用いられるが、フロー分析装置４は、ポリシ制御サーバ５に対してＲＡＡメッセージを用いた確認応答をする。ステップＳ４０６の後、ステップＳ４０７に進む。
【０１１０】
ステップＳ４０７において、ユーザ端末１とｗｅｂサーバ６との間で帯域確保通信が開始する。このとき、フロー分析装置４は、ポリシ制御サーバ５から指示のあった分析ポリシにしたがってフロー分析を開始する。このフロー分析の際、フロー分析装置４は、ユーザ端末１のユーザＩＰアドレスを含むパケットを抽出してトラヒック量をカウントする。ステップＳ４０７の後、図１６の処理を終了する。
【０１１１】
図１６の処理によれば、ユーザの要求に基づいて帯域確保を行い、トラヒック量に応じて課金することができる。
【０１１２】
（動作例３）
図１７を参照して、本実施形態の具体的な動作例３を説明する。図１７の処理において、ステップＳ１０１〜ステップＳ１０６、ステップＳ１０８〜ステップＳ１１０、ステップＳ１１５、ステップＳ１１６は、図１３の対応するステップと同様である。また、図１７の処理において、ｗｅｂサーバ６は、動画配信可能なサーバである。また、動画レート変換サーバ１１がフロー制御システムに通信可能に接続されている。
【０１１３】
ステップＳ１０６の後、ステップＳ５０１に進む。ステップＳ５０１において、ポリシ制御サーバ５は、ＥＲ２に対して、決定した制御ポリシを送信することで、ユーザに対する制御ポリシの応答を行う。前記決定した制御ポリシは、転送制限が無いことを示す制御ポリシである。ステップＳ５０１の後、ステップＳ１０８に進む。
【０１１４】
ステップＳ１１０の後、ステップＳ５０２に進む。ステップＳ５０２において、ポリシ制御サーバ５は、フロー分析装置４に対して、決定した分析ポリシを送信することで、ユーザに対する分析ポリシの応答を行う。前記決定した分析ポリシは、フロー分析装置４が動画を検出すること（分析結果）、および動画を検出したことをポリシ制御サーバ５に通知すること（通知条件）を設定する分析ポリシである。ステップＳ５０２の後、ステップＳ５０３進む。
【０１１５】
ステップＳ５０３において、ユーザ端末１は、ｗｅｂサーバ６に対して、動画配信の要求を行う。ステップＳ５０３の後、ステップＳ５０４に進む。
【０１１６】
ステップＳ５０４において、ｗｅｂサーバ６は、ユーザ端末１に対して、動画配信を行う。フロー分析装置４は、配信された動画を検出することができる。ステップＳ５０４の後、ステップＳ５０５に進む。
【０１１７】
ステップＳ５０５において、フロー分析装置４は、ポリシ制御サーバ５に対して、動画を検出したこと、および動画配信に対応するフローを識別する5tupleを、分析結果として送信する。ステップＳ５０５の後、ステップＳ１１５に進む。
【０１１８】
ステップＳ１１６の後、ステップＳ５０６に進む。ステップＳ５０６において、ポリシ制御サーバ５は、ＥＲ２に対して、変更の要求のあった制御ポリシ（動画レート変換サーバ１１へのステアリングを行うことを要求するための変更後制御ポリシ）をユーザ端末１に設定するように、制御ポリシの更新を指示する。制御ポリシの更新の指示には、例えば、DiameterプロトコルのＲＡＲメッセージが用いられるが、ＥＲ２は、ポリシ制御サーバ５に対してＲＡＡメッセージを用いた確認応答をする。ステップＳ５０６の後、ステップＳ５０７に進む。
【０１１９】
ステップＳ５０７において、ユーザ端末１は、ＥＲ２に対して、動画配信の要求を行う。ステップＳ５０７の後、ステップＳ５０８に進む。
【０１２０】
ステップＳ５０８において、ＥＲ２は、動画レート変換サーバ１１に対して、動画配信の要求を行う。ステップＳ５０８の後、ステップＳ５０９に進む。
【０１２１】
ステップＳ５０９において、動画レート変換サーバ１１は、ｗｅｂサーバ６に対して、動画配信の要求を行う。ステップＳ５０９の後、ステップＳ５１０に進む。
【０１２２】
ステップＳ５１０において、ｗｅｂサーバ６は、動画レート変換サーバ１１に対して、動画配信を行う。ステップＳ５１０の後、ステップＳ５１１に進む。
【０１２３】
ステップＳ５１１において、動画レート変換サーバ１１は、ユーザ端末１に対して、動画配信を行う。ステップＳ５１１の後、図１７の処理を終了する。
【０１２４】
図１７の処理によれば、ユーザ端末１への制御ポリシに対応する動画配信の動画レートの変換を行うことができる。
【０１２５】
以上の説明から、本実施形態によれば、アプリケーションレイヤ情報を解析する機能を、ＥＲ２などのノードではなく、フロー分析装置４という専用の別体の装置に持たせることを特徴とする。そして、ＥＲ２によるフロー制御は、ポリシ制御サーバ５という専用の別体の装置が制御ポリシに基づいて指示することによって実現する。これにより、フロー制御のための既存機能は変える必要は無く、ＥＲ２の転送性能への影響を極力抑えた低コストのＥＲ２を構成することができる。したがって、アプリケーションレイヤ情報を用いた詳細なフロー分析に基づいて柔軟なフロー制御を実現することができる。
【０１２６】
また、フロー分析装置４そのものは、フロー転送を行う必要が無いため、フロー分析の機能と、分析結果を通知する機能を持たせるように設計すればよく、低コストに構成することができる。
【０１２７】
また、フロー制御システムは、フロー分析を行うフロー分析装置４と、制御ポリシおよび分析ポリシを管理するポリシ制御サーバ５とを個別に備えるので、フロー分析およびフロー制御の処理負荷に応じて、フロー分析装置４またはポリシ制御サーバ５を個別に増設することができ、増設に伴うコストを低減化することができる。
【０１２８】
また、フロー分析装置４は、パッシブ分岐装置８が分岐したフローに対してフロー分析を行うため、高度な処理を行うフロー分析装置４が故障した場合でも、通信中のフローに影響が生じることが無く、サービスの提供および利用を継続することができる。
【０１２９】
また、アプリケーションレイヤ情報解析部４２２の解析は、アプリケーション特定部４２２１がアプリケーションを特定すること、ＵＲＬ特定部４２２２がＵＲＬを特定すること、パターンマッチング部４２２３がパターンマッチングを行うこと、のうち少なくとも１つとすることができる。これにより、フロー分析の分析結果がより具体的になるため、アプリケーションレイヤ情報を用いた詳細なフロー分析に基づいて、より柔軟なフロー制御を実現することができる。
【０１３０】
＜その他＞
本実施形態は、本発明を好適に実施するための一例あって、本発明を限定するためのものではない。よって、本発明の要旨を変更しない範囲内において、本実施形態を種々変形することが可能である。
【０１３１】
また、本実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。
また、本実施形態で説明したソフトウェアをハードウェアとして実現することもでき、ハードウェアをソフトウェアとして実現することもできる。
その他、ハードウェア、ソフトウェア、フローチャートなどについて、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【０１３２】
１      ユーザ端末
２      ＥＲ（エッジルータ、ノード）
３      接続認証サーバ
４      フロー分析装置
５      ポリシ制御サーバ
６      ｗｅｂサーバ
７      ＣＲ（コアルータ、ノード）
８      パッシブ分岐装置
９      ＧＷ（ゲートウェイ）
１０    サービスポータル
１１    動画レート変換サーバ
４１１  通知条件テーブル（通知条件情報）
４１２  アプリケーション特定テーブル
４１３  ＵＲＬリスト
４１４  集計テーブル
４２１  フロー特定部
４２２  アプリケーションレイヤ情報解析部
４２２１  アプリケーション特定部
４２２２  ＵＲＬ特定部
４２２３  パターンマッチング部
４２３  転送量集計部
４２５  分析結果出力部
４２６  通知条件充足判定部
４２７  分析結果通知部
５１１  ユーザポリシ管理テーブル
５１２  ポリシシナリオテーブル（ポリシ変更条件情報を含む）
５１３  制御ポリシテーブル
５１４  分析ポリシテーブル
５１５  ポリシ設定状態テーブル
５２１  変更条件充足判定部
５２２  制御ポリシ更新指示部
【図１】
0005973973.tif 000002
【図２】
0005973973.tif 000003
【図３】
0005973973.tif 000004
【図４】
0005973973.tif 000005
【図５】
0005973973.tif 000006
【図６】
0005973973.tif 000007
【図７】
0005973973.tif 000008
【図８】
0005973973.tif 000009
【図９】
0005973973.tif 000010
【図１０】
0005973973.tif 000011
【図１１】
0005973973.tif 000012
【図１２】
0005973973.tif 000013
【図１３】
0005973973.tif 000014
【図１４】
0005973973.tif 000015
【図１５】
0005973973.tif 000016
【図１６】
0005973973.tif 000017
【図１７】
0005973973.tif 000018