(57)【要約】【課題】コンピュータの処理負担増加を抑制しつつ、ユーザの体感使用率と実際の料金との乖離を小さくできるカウントフリーサービスを実現する。【解決手段】本発明の通信制御装置１０は、順序付シグネチャ集合に基づき解析対象のパケットが課金対象か否かを判断し、課金対象のパケットの通信量を通信量管理装置３０に通知する。順序付シグネチャ集合は、通信を課金対象としないカウントフリーアプリケーション毎に定義され、論理和で互いに繋がれた複数のシグネチャにより各カウントフリーアプリケーションが送受信するパケットのデータ部分に現れる特徴を示す。複数のシグネシャ各々は、複数のテンプレート文字列を論理演算子で繋いだ論理演算式で、各カウントフリーアプリケーションが送受信するパケットのデータ部分に現れる文字列のパターンを表すことができる。そして、複数のシグネチャのパターンマッチングの評価順が定められている。【選択図】図３
2020188373.tif 000002
【特許請求の範囲】
【請求項１】
通信量管理装置と、ポリシー管理装置と、通信制御装置とを有し、
前記通信量管理装置は、
前記通信制御装置からの通知に基づきユーザ毎に所定期間内のパケット通信積算量を管理する通信量管理部と、
前記パケット通信積算量とユーザ毎に定められた閾値との比較結果を前記ポリシー管理装置に通知する比較結果通知部と、
を有し、
前記ポリシー管理装置は、
ユーザの通信ポリシー情報を管理するポリシー管理部と、
前記比較結果と前記通信ポリシー情報とに基づき、ユーザ毎に適用する通信ポリシーを決定するポリシー決定部と、
決定された前記通信ポリシーを前記通信制御装置に通知するポリシー通知部と、
を有し、
前記通信制御装置は、
解析対象のパケットを取得する取得部と、
前記ポリシー管理装置から通知された前記通信ポリシーと順序付シグネチャ集合とに基づき前記解析対象のパケットが課金対象か否かを判断し、課金対象のパケットの通信量を前記通信量管理装置に通知する通信制御部と、
を有し、
前記順序付シグネチャ集合は、
通信を課金対象としないカウントフリーアプリケーション毎に定義され、
カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示す複数のデータ条件評価式を論理和で連結した論理演算式により、カウントフリーアプリケーション各々が送受信するパケットに現れる特徴を示し、かつ、
複数の前記データ条件評価式の評価の順序を定めており、
前記通信制御部は、
前記順序付シグネチャ集合に基づく評価により、前記解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断し、
カウントフリーアプリケーションであると判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知せず、
カウントフリーアプリケーションでないと判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知する通信制御システム。
【請求項２】
請求項１に記載の通信制御システムにおいて、
前記データ条件評価式は、カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるバイト配列及び／又は文字列を対象とした種々の演算子の結果を論理積で連結した論理演算式で示される通知制御システム。
【請求項３】
請求項１又は２に記載の通信制御システムにおいて、
前記順序付シグネチャ集合で定められている複数の前記データ条件評価式の評価の順序は、前記解析対象のパケットに含まれる確率が高い順である通信制御システム。
【請求項４】
請求項１から３のいずれか１項に記載の通信制御システムにおいて、
前記通信ポリシーでは、カウントフリーアプリケーション毎に定義された複数の前記順序付シグネチャ集合の評価の順序が定められており、
当該評価の順序は、前記解析対象のパケットを送受信するアプリケーションである可能性が高い順である通信制御システム。
【請求項５】
通信量管理装置と、ポリシー管理装置と、通信制御装置とを有する通信制御システムの前記通信量管理装置が、
前記通信制御装置からの通知に基づきユーザ毎に所定期間内のパケット通信積算量を管理し、
前記パケット通信積算量とユーザ毎に定められた閾値との比較結果を前記ポリシー管理装置に通知し、
前記ポリシー管理装置が、
ユーザの通信ポリシー情報を管理し、
前記比較結果と前記通信ポリシー情報とに基づき、ユーザ毎に適用する通信ポリシーを決定し、
決定された前記通信ポリシーを前記通信制御装置に通知し、
前記通信制御装置が、
解析対象のパケットを取得し、
前記ポリシー管理装置から通知された前記通信ポリシーと順序付シグネチャ集合とに基づき前記解析対象のパケットが課金対象か否かを判断し、課金対象のパケットの通信量を前記通信量管理装置に通知し、
前記順序付シグネチャ集合は、
通信を課金対象としないカウントフリーアプリケーション毎に定義され、
カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示す複数のデータ条件評価式を論理和で連結した論理演算式により、カウントフリーアプリケーション各々が送受信するパケットに現れる特徴を示し、かつ、
複数の前記データ条件評価式の評価の順序を定めており、
前記通信制御装置は、
前記順序付シグネチャ集合に基づく評価により、前記解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断し、
カウントフリーアプリケーションであると判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知せず、
カウントフリーアプリケーションでないと判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知する通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御システム及び通信制御方法に関する。
【背景技術】
【０００２】
昨今のアプリケーション（例えば、ゲームアプリケーション）の開発・運用では、クラウドインフラストラクチャーを活用するアプローチが普及しており、様々な外部サービスと連携しながら実装されている。例えば、あるゲームアプリケーションが、プレイヤー同士の対戦のマッチングシステムに第１のクラウドインフラストラクチャーを利用し、同ゲームアプリケーションが課金処理システムに第２のクラウドインフラストラクチャーを利用し、さらに、同ゲームアプリケーションが通常の１人プレイのゲームではオンプレミス環境のサーバにアクセスするといった具合である。
【０００３】
このため、ＭＶＮＯ（Mobile Virtual Network Operator）が、所定のアプリケーションの通信の通信量を課金対象としてカウントしないカウントフリーサービスを実現するのは容易でない。
【０００４】
カウントフリーサービスの実現手段としては、例えば単純なＵＲＬ（Uniform Resource Locator）フィルタリングにより、所定のドメイン／サーバとの通信を課金対象から除外する例が考えられる。しかし、上述の通り様々な外部サービスと連携しながら実装されている昨今のアプリケーションにおいては、ＵＲＬフィルタリングでカウントフリー対象のアプリケーションの通信を１００％に近い精度で特定することは難しい。このため、ドメインやＩＰ（Internet Protocol）アドレスといったＬ３情報を用いて実現されるカウントフリーサービスでは、ユーザの体感使用率と実際の料金との乖離が大きくなる問題があった。
【０００５】
本発明に関連する技術が、特許文献１及び２に開示されている。
【０００６】
特許文献１は、ＭＶＮＯ事業者等が所有するサーバ装置（ＳＧＷ（Serving Gateway）又はＰＧＷ（Packet data network Gateway））においてＤＰＩ（deep packet inspection）を適用し、所定のルールでトラフィックを転送する技術を開示している。
【０００７】
特許文献２は、シグネチャと呼ばれる解析パターンのリストを利用するＤＰＩ等の方法でパケットを解析し、所定目的のパケットを特定する技術を開示している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特許第６３８８０７３号公報
【特許文献２】特開２０１４−２２０６７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ＭＶＮＯ事業者等が所有するサーバ装置（ＳＧＷ又はＰＧＷ）においてＤＰＩを適用することで、カウントフリー対象のアプリケーションの通信を精度よく特定することが可能となる。しかし、カウントフリー対象のアプリケーションの通信を高精度に特定するためには、シグネチャと呼ばれる解析パターンのリストに登録するデータパターンの数が膨大になる。結果、コンピュータの処理負担が大きくなるという問題が発生し得る。
【００１０】
本発明は、コンピュータの処理負担増加を抑制しつつ、カウントフリー対象のアプリケーションの通信を高精度に特定することを課題とする。
【課題を解決するための手段】
【００１１】
本発明によれば、
通信量管理装置と、ポリシー管理装置と、通信制御装置とを有し、
前記通信量管理装置は、
前記通信制御装置からの通知に基づきユーザ毎に所定期間内のパケット通信積算量を管理する通信量管理部と、
前記パケット通信積算量とユーザ毎に定められた閾値との比較結果を前記ポリシー管理装置に通知する比較結果通知部と、
を有し、
前記ポリシー管理装置は、
ユーザの通信ポリシー情報を管理するポリシー管理部と、
前記比較結果と前記通信ポリシー情報とに基づき、ユーザ毎に適用する通信ポリシーを決定するポリシー決定部と、
決定された前記通信ポリシーを前記通信制御装置に通知するポリシー通知部と、
を有し、
前記通信制御装置は、
解析対象のパケットを取得する取得部と、
前記ポリシー管理装置から通知された前記通信ポリシーと順序付シグネチャ集合とに基づき前記解析対象のパケットが課金対象か否かを判断し、課金対象のパケットの通信量を前記通信量管理装置に通知する通信制御部と、
を有し、
前記順序付シグネチャ集合は、
通信を課金対象としないカウントフリーアプリケーション毎に定義され、
カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示す複数のデータ条件評価式を論理和で連結した論理演算式により、カウントフリーアプリケーション各々が送受信するパケットに現れる特徴を示し、かつ、
複数の前記データ条件評価式の評価の順序を定めており、
前記通信制御部は、
前記順序付シグネチャ集合に基づく評価により、前記解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断し、
カウントフリーアプリケーションであると判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知せず、
カウントフリーアプリケーションでないと判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知する通信制御システムが提供される。
【００１２】
また、本発明によれば、
通信量管理装置と、ポリシー管理装置と、通信制御装置とを有する通信制御システムの前記通信量管理装置が、
前記通信制御装置からの通知に基づきユーザ毎に所定期間内のパケット通信積算量を管理し、
前記パケット通信積算量とユーザ毎に定められた閾値との比較結果を前記ポリシー管理装置に通知し、
前記ポリシー管理装置が、
ユーザの通信ポリシー情報を管理し、
前記比較結果と前記通信ポリシー情報とに基づき、ユーザ毎に適用する通信ポリシーを決定し、
決定された前記通信ポリシーを前記通信制御装置に通知し、
前記通信制御装置が、
解析対象のパケットを取得し、
前記ポリシー管理装置から通知された前記通信ポリシーと順序付シグネチャ集合とに基づき前記解析対象のパケットが課金対象か否かを判断し、課金対象のパケットの通信量を前記通信量管理装置に通知し、
前記順序付シグネチャ集合は、
通信を課金対象としないカウントフリーアプリケーション毎に定義され、
カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示す複数のデータ条件評価式を論理和で連結した論理演算式により、カウントフリーアプリケーション各々が送受信するパケットに現れる特徴を示し、かつ、
複数の前記データ条件評価式の評価の順序を定めており、
前記通信制御装置は、
前記順序付シグネチャ集合に基づく評価により、前記解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断し、
カウントフリーアプリケーションであると判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知せず、
カウントフリーアプリケーションでないと判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知する通信制御方法が提供される。
【発明の効果】
【００１３】
本発明によれば、コンピュータの処理負担増加を抑制しつつ、カウントフリー対象のアプリケーションの通信を高精度に特定する技術が実現される。
【図面の簡単な説明】
【００１４】
【図１】本実施形態の通信制御システムの概要を説明するための機能ブロック図の一例である。
【図２】本実施形態の通信制御システムの機能ブロック図の一例である。
【図３】本実施形態の順序付シグネチャ集合を説明するための概念図である。
【図４】本実施形態の通信制御装置の処理の流れの一例を示すフローチャートである。
【図５】本実施形態の通信制御装置の処理の流れの一例を示すフローチャートである。
【図６】本実施形態の順序付シグネチャ集合の定義例を示す図である。
【図７】本実施形態の順序付シグネチャ集合を説明するための概念図である。
【図８】本実施形態装置のハードウエア構成の一例を示す図である。
【発明を実施するための形態】
【００１５】
まず、図１を用いて、本実施形態の通信制御システム５の概要を簡単に説明する。通信制御システム５の詳細は後述する。
【００１６】
通信制御システム５はＭＶＮＯ設備３の一部であり、通信制御装置１０と、ポリシー管理装置２０と、通信量管理装置３０とを有する。ＭＶＮＯと契約したユーザのモバイル端末１は、ＭＮＯ設備２及びＭＶＮＯ設備３を介してＩＰ網４に接続される。
【００１７】
通信制御装置１０は、ＰＧＷ及びＰＣＥＦ（policy and charging enforcement function）で構成される。ＰＧＷは、ＬＴＥ（Long Term Evolution）等の移動通信システムの通信網と外部ネットワークの接点に位置する装置であり、パケットの転送、モバイル端末１へのＩＰアドレスの付与、接続・切断の処理等を行う。ＰＣＥＦは、ポリシー管理装置２０から取得した通信ポリシーに基づく通信制御を実行する。また、ＰＣＥＦは、パケットの通信量を測定し、通信量管理装置３０に通知する。なお、ＰＣＥＦは、ＤＰＩ機能を備える。すなわち、ＰＣＥＦは、ＰＧＷを通過するパケットのヘッダ及びペイロードを対象とした「シグネチャとして識別される多段階の比較演算」により、ＰＧＷを通過するパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断する。そして、ＰＣＥＦは、カウントフリーアプリケーションと判断した場合にそのパケットの通信量を通信量管理装置３０に通知せず、カウントフリーアプリケーションでないと判断した場合にそのパケットの通信量を通信量管理装置３０に通知する。「シグネチャとして識別される多段階の比較演算」により、コンピュータの処理負担増加を抑制しつつ、カウントフリー対象のアプリケーションの通信を高精度に特定する効果が実現される。その詳細は後述する。なお、ＰＧＷとＰＣＥＦとは、物理的及び／又は論理的に一体となっていてもよいし、物理的及び／又は論理的に分かれていてもよい。
【００１８】
ポリシー管理装置２０は、ＰＣＲＦ（policy and charging rules function）である。ＰＣＲＦは、ユーザの通信ポリシーを管理しており、各ユーザに適用する通信ポリシーを決定する。例えば、ＰＣＲＦは、通信量管理装置３０にて管理されている各ユーザの所定期間内のパケット通信積算量に基づき、各ユーザに適用する通信ポリシー（高速通信／低速通信等）を決定する。そして、ポリシー管理装置２０は、決定した通信ポリシーを通信制御装置１０に通知する。
【００１９】
通信量管理装置３０は、ＯＣＳ（online charging system）である。ＯＣＳは、通信制御装置１０からのパケットの通信量の通知に基づき、ユーザ毎に所定期間内のパケット通信積算量を管理する。
【００２０】
次に、図２の機能ブロック図を用いて、通信制御システム５の機能構成を詳細に説明する。
【００２１】
まず、通信量管理装置３０の機能構成を説明する。図示するように、通信量管理装置３０は、通信量管理部３１と、記憶部３２と、比較結果通知部３３とを有する。
【００２２】
通信量管理部３１は、通信制御装置１０からのパケットの通信量の通知に基づき、ユーザ毎に所定期間内のパケット通信積算量を管理する。例えば、記憶部３２が、複数のユーザ識別情報各々に対応付けて、各ユーザの所定期間内のパケット通信積算量を記憶している。そして、通信量管理部３１は、通信制御装置１０からのパケットの通信量の通知に基づき、記憶部３２に記憶されている当該情報を更新する。
【００２３】
比較結果通知部３３は、パケット通信積算量とユーザ毎に定められた閾値との比較結果をポリシー管理装置２０に通知する。例えば、比較結果通知部３３は、あるユーザのパケット通信積算量が閾値を超えると、その旨をポリシー管理装置２０に通知する。各ユーザの閾値は、ポリシー管理装置２０が管理する通信ポリシー情報で示されてもよい。この場合、通信量管理装置３０は、ポリシー管理装置２０から各ユーザの閾値を取得する。
【００２４】
なお、通信量管理装置３０による上記機能は、あらゆる従来技術に基づき実現される。
【００２５】
次に、ポリシー管理装置２０の機能構成を説明する。図示するように、ポリシー管理装置２０は、ポリシー管理部２１と、記憶部２２と、ポリシー決定部２３と、ポリシー通知部２４とを有する。
【００２６】
ポリシー管理部２１は、ユーザの通信ポリシー情報を管理する。ポリシー管理部２１は、ユーザ毎に通信ポリシー情報を管理してもよいし、任意の所定の規則によって設定されたユーザグループ毎に通信ポリシー情報を管理してもよいし、全てのユーザに一律に適用される通信ポリシー情報を管理してもよい。例えば、記憶部２２が通信ポリシー情報を記憶している。ポリシー管理部２１は、記憶部２２に記憶されている通信ポリシー情報を更新したり、削除したり、新たに記憶部２２に記憶させたりする。
【００２７】
通信ポリシー情報は、通信速度（高速通信／低速通信）の切り替えに関係するパケット通信積算量の閾値等、従来と同様なあらゆる内容を含むことができる。また、通信ポリシー情報は、通信を課金対象としないアプリケーション（カウントフリーアプリケーション）を識別する情報を含むことができる。
【００２８】
ポリシー決定部２３は、ユーザ毎に適用する通信ポリシーを決定する。ポリシー決定部２３は、通信量管理装置３０の比較結果通知部３３より通知された比較結果と、記憶部２２に記憶されている通信ポリシー情報とに基づき、ユーザ毎に適用する通信ポリシーを決定することができる。例えば、ポリシー決定部２３は、パケット通信積算量が閾値を超えていないユーザに高速通信（通信ポリシー）を適用することを決定し、パケット通信積算量が閾値を超えたユーザに低速通信（通信ポリシー）を適用することを決定する。また、ポリシー決定部２３は、通信ポリシー情報に基づき、ユーザ毎にカウントフリーアプリケーションとするアプリケーションを決定する。
【００２９】
ポリシー通知部２４は、ポリシー決定部２３により決定された通信ポリシーを通信制御装置１０に通知する。
【００３０】
なお、ポリシー管理装置２０による上記機能は、あらゆる従来技術に基づき実現される。
【００３１】
次に、通信制御装置１０の機能構成を説明する。図示するように、通信制御装置１０は、取得部１１と、通信制御部１２と、記憶部１３とを有する。
【００３２】
取得部１１は、モバイル端末１とＩＰ網４との間で送受信されるパケットであって、自装置（ＰＧＷ）を通過するパケットを解析対象のパケットとして取得する。
【００３３】
通信制御部１２は、例えば解析対象のパケットのヘッダ部分に記載されている送信元又は送信先のＩＰアドレスをキーにして、そのパケットを送受信するモバイル端末１のユーザの通信ポリシーをポリシー管理装置２０に問い合わせる。そして、通信制御部１２は、取得した通信ポリシーに基づき通信制御を行う。
【００３４】
例えば、通信制御部１２は、そのユーザに適用する通信速度（高速通信／低速通信）を示す通信ポリシーに基づき、通信を制御する。
【００３５】
また、通信制御部１２は、カウントフリーサービスに関する処理を実行する。具体的には、通信制御部１２は、通信ポリシーに基づき、そのユーザにとってのカウントフリーアプリケーションを特定する。そして、通信制御部１２は、特定したそのユーザにとってのカウントフリーアプリケーション各々の順序付シグネチャ集合を記憶部１３から取得し、取得した順序付シグネチャ集合に基づく解析対象のパケットの評価により、そのパケットを送受信するアプリケーションがカウントフリーアプリケーションか否か、すなわちそのパケットが課金対象か否かを判断する。
【００３６】
ここで、図３を用いて、順序付シグネチャ集合について説明する。図３に示すように、順序付シグネチャ集合は、カウントフリーアプリケーション毎に定義される。図３に示す順序付シグネチャ集合ＶＳ１は、アプリケーション識別情報ＡＰ０００１で識別されるアプリケーションに対応して定義されたものである。すなわち、順序付シグネチャ集合ＶＳ１は、アプリケーション識別情報ＡＰ０００１で識別されるアプリケーションが送受信するパケットに現れる特徴を示す。
【００３７】
図３に示すように、順序付シグネチャ集合は、複数のデータ条件評価式Ｒ０乃至Ｒｍ（ｍは１以上の整数）を論理和で連結した論理演算式により、カウントフリーアプリケーション各々が送受信するパケットに現れる特徴を示す。データ条件評価式Ｒ０乃至Ｒｍ各々は、カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるバイト配列及び／又は文字列を対象とした種々の演算子の結果を論理積で連結した論理演算式[0]で、カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示す。例えば、図３に示すデータ条件評価式Ｒ０＝Ａ and Ｂ and Ｃは、Ｒ０＝Ａ、Ｒ０＝Ｂ、Ｒ０＝Ｃという３つの演算子の結果を論理積で連結したものである。なお、データ条件評価式Ｒ０乃至Ｒｍは、演算子の結果を論理和で連結することなく構成することが好ましい。また、データ条件評価式Ｒ０乃至Ｒｍは、演算子の結果を論理積のみで連結することで構成することが好ましい。
【００３８】
そして、図３に示すように、順序付シグネチャ集合は、複数のデータ条件評価式Ｒ０乃至Ｒｍの評価の順序を定めている。
【００３９】
例えば、複数のデータ条件評価式Ｒ０乃至Ｒｍの中の少なくとも１つは、カウントフリーアプリケーションの主たる機能（ゲーム等）に基づき送受信されるパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示してもよい。また、複数のデータ条件評価式Ｒ０乃至Ｒｍの中の少なくとも１つは、カウントフリーアプリケーションに付与された広告機能に基づき送受信されるパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示してもよい。
【００４０】
通信制御部１２は、上述のような順序付シグネチャ集合に基づく評価（パターンマッチング等）により、解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断する。そして、通信制御部１２は、カウントフリーアプリケーションであると判断した場合、解析対象のパケットの通信量を通信量管理装置３０に通知しない。一方、カウントフリーアプリケーションでないと判断した場合、通信制御部１２は、解析対象のパケットの通信量を通信量管理装置３０に通知する。
【００４１】
次に、図４のフローチャートを用いて、カウントフリーサービスに関連して通信制御装置１０が行う処理の流れの一例を説明する。
【００４２】
まず、取得部１１が解析対象のパケットを取得すると（Ｓ１０）、通信制御部１２は、例えば解析対象のパケットのヘッダ部分に記載されている送信元又は送信先のＩＰアドレスをキーにして、そのパケットを送受信するモバイル端末１のユーザの通信ポリシーをポリシー管理装置２０に問い合わせる。通信ポリシーは、例えばそのユーザにとってのカウントフリーアプリケーションを示す。そして、通信制御部１２は、取得した通信ポリシーに基づき解析対象のパケットを解析し、解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断する（Ｓ１１）。
【００４３】
カウントフリーアプリケーションでないと判断した場合（Ｓ１２のＮｏ）、通信制御部１２は、解析対象のパケットの通信量を通信量管理装置３０に通知する（Ｓ１３）。一方、カウントフリーアプリケーションであると判断した場合（Ｓ１２のＹｅｓ）、通信制御部１２は、Ｓ１３の通知を実行しない。その後、通信制御装置１０は上記処理を繰り返す。
【００４４】
ここで、図５のフローチャートを用いて、Ｓ１１の処理の流れの一例を説明する。
【００４５】
まず、通信制御部１２は、通信ポリシーで示されるそのユーザにとってのカウントフリーアプリケーションの中の１つを指定し、指定したカウントフリーアプリケーションの順序付シグネチャ集合を記憶部１３から取り出す（Ｓ２０）。そして、通信制御部１２は、順序付シグネチャ集合で示される評価順に、順序付シグネチャ集合で示される複数のデータ条件評価式Ｒ０乃至Ｒｍの中から１つを指定する（Ｓ２１）。ここでは、データ条件評価式Ｒ０が指定されたものとする。
【００４６】
そして、通信制御部１２は、解析対象のパケットのヘッダ及びペイロードを対象とした評価（パターンマッチング等）により、解析対象のパケットのヘッダ及びペイロードの少なくとも何れかが、指定したデータ条件評価式Ｒ０が示すデータのパターンを含むか判断する（Ｓ２２）。
【００４７】
含むと判断した場合（Ｓ２３のＹｅｓ）、通信制御部１２は、解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションであると判断する（Ｓ２６）。
【００４８】
一方、含まないと判断した場合（Ｓ２３のＮｏ）、Ｓ２４に進む。そして、Ｓ２０で指定した順序付シグネチャ集合で示される複数のデータ条件評価式Ｒ０乃至Ｒｍの中にＳ２１で指定されていないデータ条件評価式が残っている場合（Ｓ２４のＮｏ）、通信制御部１２は、Ｓ２１に戻り同様の処理を繰り返す。
【００４９】
一方、Ｓ２０で指定した順序付シグネチャ集合で示される複数のデータ条件評価式Ｒ０乃至Ｒｍの中にＳ２１で指定されていないデータ条件評価式が残っていない場合（Ｓ２４のＮｏ）、Ｓ２５に進む。そして、通信ポリシーで示されるそのユーザにとってのカウントフリーアプリケーションの中にＳ２０で指定されていないカウントフリーアプリケーションが残っている場合（Ｓ２５のＹｅｓ）、通信制御部１２は、Ｓ２０に戻り同様の処理を繰り返す。
【００５０】
一方、通信ポリシーで示されるそのユーザにとってのカウントフリーアプリケーションの中にＳ２０で指定されていないカウントフリーアプリケーションが残っていない場合（Ｓ２５のＮｏ）、通信制御部１２は、解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションでないと判断する（Ｓ２７）。
【００５１】
次に、本実施形態の通信制御システム５の実施例を説明する。まず、通信制御装置１０の記憶部１３には、複数のカウントフリーアプリケーション各々に対応した複数の順序付シグネチャ集合が記憶されている。
【００５２】
複数の順序付シグネチャ集合ＶＳ０乃至ＶＳｎの集まりであるＶＳは以下の式１に示すように定義できる。複数の順序付シグネチャ集合ＶＳ０乃至ＶＳｎ各々は、（ｎ＋１）個のカウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れる特徴を示す情報である。
【００５３】
【数１】
2020188373.tif 000003
【００５４】
複数の順序付シグネチャ集合ＶＳ０乃至ＶＳｎの中の１つであるＶＳｉは、以下の式２に示すように示される。
【００５５】
【数２】
2020188373.tif 000004
【００５６】
ｒｊは、ｊ番目のＤＰＩパケット分析ルールであり、解析対象のパケットｐを受け取り、パケットｐのヘッダ及びペイロードのいずれかにデータ条件評価式Ｒｊで示される特徴が含まれる場合には１を、含まれない場合は０を返す関数である。すなわち、順序付シグネチャ集合ＶＳｉは、上述のような関数の集合と定義できる。例えば、複数の関数ｒ０乃至ｒｍの中のいずれかが１を返したときに、当該パケットｐを送受信するアプリケーションはカウントフリーアプリケーションと判断する処理が考えられる。
【００５７】
また、この関数はＤＰＩが処理可能なパケットの情報を用いる任意の関数として実装することができ、例えば、ＦＱＤＮを対象としたパターンマッチ、正規表現、ＩＰの範囲指定、ディレクトリパスを対象とした正規表現やパス一致性の検証など、様々な実装方法がある。さらに、それらの実装方法の任意の個数の組み合わせで良く、きわめて幅広い検証が可能である。このように、複数のシグネチャ判定ロジックの束を特定のアプリケーションに紐づけることが可能になる。
【００５８】
ここで、順序付シグネチャ集合の定義例を図６に示す。図示する例では、AppA及びAppBという２つのアプリケーションに対応する２つの順序付シグネチャ集合AppA_VS及びAppB_VSを定義している。
【００５９】
AppA用の順序付シグネチャ集合であるAppA_VSは、４つの検証ルールから構成されており、いずれかにマッチする場合にAppAからの通信として識別されるようになる。例えば、このAppAというアプリケーションが、第１のクラウドインフラストラクチャーと第２のクラウドインフラストラクチャーとオンプレミス環境のハイブリッド構成で動いているとき、第１のクラウドインフラストラクチャー上のappa_cloud1.jpへのアクセス、第２のクラウドインフラストラクチャー上のappa_cloud2.jpへのアクセス、そして、オンプレミス環境であるappa_self.jpへのアクセスをAppA_VSとしてグループ化している。具体的には、「yield by order」を用いて、上記複数のアクセス各々に対応したシグネチャを評価順が先のものから順に記載している。これにより、ユーザにとっての直感的な認識である、「ゲームアプリAppAによる通信量がカウントフリーになる」というカウントフリー方式が実現できる。
【００６０】
次に、本実施形態の変形例を説明する。順序付シグネチャ集合で示される複数のデータ条件評価式Ｒ０乃至Ｒｍの評価順は、解析対象のパケットのヘッダ及びペイロードのいずれかに現れる確率が高い順になっていてもよい。例えば、複数のデータ条件評価式Ｒ０乃至Ｒｍの評価順は、過去（直近の数日間、直近の数か月間）の通信制御装置１０の評価において解析対象のパケットにその特徴が含まれていた回数が多い順であってもよい。
【００６１】
その他の変形例として、図７に示すように、複数の順序付シグネチャ集合ＶＳ０乃至ＶＳｎにおいても、評価順が定められていてもよい。そして、複数の順序付シグネチャ集合ＶＳ０乃至ＶＳｎの評価順は、解析対象のパケットを送受信するアプリケーションである可能性が高い順になっていてもよい。例えば、複数の順序付シグネチャ集合ＶＳ０乃至ＶＳｎの評価順は、過去（直近の数日間、直近の数か月間）の通信制御装置１０の評価において解析対象のパケットにその特徴が含まれていた回数が多い順であってもよい。
【００６２】
次に、通信制御装置１０、ポリシー管理装置２０及び通信量管理装置３０のハードウエア構成の一例について説明する。通信制御装置１０、ポリシー管理装置２０及び通信量管理装置３０が備える各機能部は、任意のコンピュータのＣＰＵ（Central Processing Unit）、メモリ、メモリにロードされるプログラム、そのプログラムを格納するハードディスク等の記憶ユニット（あらかじめ装置を出荷する段階から格納されているプログラムのほか、ＣＤ（Compact Disc）等の記憶媒体やインターネット上のサーバ等からダウンロードされたプログラムをも格納できる）、ネットワーク接続用インターフェイスを中心にハードウエアとソフトウエアの任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。
【００６３】
図８は、通信制御装置１０、ポリシー管理装置２０及び通信量管理装置３０のハードウエア構成を例示するブロック図である。図８に示すように、通信制御装置１０、ポリシー管理装置２０及び通信量管理装置３０各々は、プロセッサ１Ａ、メモリ２Ａ、入出力インターフェイス３Ａ、周辺回路４Ａ、バス５Ａを有する。周辺回路４Ａには、様々なモジュールが含まれる。なお、周辺回路４Ａは有さなくてもよい。通信制御装置１０、ポリシー管理装置２０及び通信量管理装置３０は、物理的及び／又は論理的に分かれた複数の装置で構成されてもよいし、物理的及び／又は論理的に一体となった１つの装置で構成されてもよい。物理的及び／又は論理的に分かれた複数の装置で構成される場合、複数の装置各々が上記ハードウエア構成を備えることができる。
【００６４】
バス５Ａは、プロセッサ１Ａ、メモリ２Ａ、周辺回路４Ａ及び入出力インターフェイス３Ａが相互にデータを送受信するためのデータ伝送路である。プロセッサ１Ａは、例えばＣＰＵ、ＧＰＵ（Graphics Processing Unit）などの演算処理装置である。メモリ２Ａは、例えばＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）などのメモリである。入出力インターフェイス３Ａは、入力装置、外部装置、外部サーバ、外部センサー、カメラ等から情報を取得するためのインターフェイスや、出力装置、外部装置、外部サーバ等に情報を出力するためのインターフェイスなどを含む。入力装置は、例えばキーボード、マウス、マイク、物理ボタン、タッチパネル等である。出力装置は、例えばディスプレイ、スピーカ、プリンター、メーラ等である。プロセッサ１Ａは、各モジュールに指令を出し、それらの演算結果をもとに演算を行うことができる。
【００６５】
次に、本実施形態の通信制御システム５の作用効果を説明する。
【００６６】
まず、本実施形態の通信制御システム５によれば、アプリケーション（ゲーム等）毎のＤＰＩルール（順序付シグネチャ集合）により、単純なドメイン名での振り分けではなく、アプリケーションに固有の、複雑なアプリケーションセマンティクスを反映した、カウントフリーを実現することができるようになる。
【００６７】
また、１つのアプリケーションが複数のクラウドインフラストラクチャーにアクセスする場合に、単純なＩＰベースのトラフィック解析でそのアプリケーションに紐付く通信をカウントフリーとすることは難しい。そこで、本実施形態では、評価順付きの複数のデータ条件評価式Ｒ０乃至Ｒｍの束を順序付シグネチャ集合として定義することにより、単一のアプリケーションが全く異種の送受信先サーバと通信をする場合でも、当該通信を単一のアプリケーションによるものとして認識できるようにする。また、データ条件評価式Ｒ０乃至Ｒｍを複数定義することにより優先度の並列性を定義し、実質的にOR条件を定義することが可能になるため、階層・分岐関係を有する極めて複雑なシグネチャを形成することができる。
【００６８】
また、ゲーム等のアプリケーションで送受信されるパケットの種類は膨大であるため、それらパケットを漏れなく含めるようにシグネチャを作成することは容易でない。しかし、本実施形態のように、送受信されるパケットを複数のグループ（複数のデータ条件評価式）に分類し、グループ毎にデータ条件評価式を作成することで、アプリケーションで送受信されるパケットを漏れなく含めたシグネチャを作成し易くなる。結果、ユーザの体感使用率と実際の料金との乖離を小さくできる。
【００６９】
また、上述のように複数のグループに分類してデータ条件評価式を作成する場合、不具合の検出、修正、更新等も、グループ毎に行うことができるので、これらのメンテナンスが楽になる。
【００７０】
また、本実施形態の順序付シグネチャ集合は、カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるバイト配列及び／又は文字列を対象とした種々の演算子の結果を論理積で連結した論理演算式で構成されたデータ条件評価式を論理和で連結して構成される。このようにシグネチャの記述方式の自由度が高いので、カウントフリーアプリケーションが送受信するパケットを高精度に特定し易くなる。すなわち、カウントフリーアプリケーションでないアプリケーションが送受信するパケットを誤ってカウントフリーアプリケーションが送受信するパケットと判断したり、カウントフリーアプリケーションが送受信するパケットを誤ってカウントフリーアプリケーションでないアプリケーションが送受信するパケットと判断したりする不都合を抑制できる。また、上述のような記述方式であるので、所望の順で式を評価できるようになる。
【００７１】
また、本実施形態では、複数のデータ条件評価式Ｒ０乃至Ｒｍを論理和で互いに繋いだ論理演算式で、各カウントフリーアプリケーションが送受信するパケットに現れる特徴を示す。このため、複数のデータ条件評価式Ｒ０乃至Ｒｍの中の少なくとも１つが示す特徴を解析対象のパケットから検出できれば、そのパケットを送受信するアプリケーションはカウントフリーアプリケーションと判断できる。そして、複数のデータ条件評価式Ｒ０乃至Ｒｍの中のいずれかが示す特徴を解析対象のパケットから検出できれば、残りのデータ条件評価式が示す特徴を解析対象のパケットから検出する処理（照合処理）を行う必要がない。このため、複数のデータ条件評価式Ｒ０乃至Ｒｍの全てを評価しなければ、そのパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断できないように構成する場合に比べて、コンピュータの処理負担増加を抑制できる。
【００７２】
さらに、本実施形態では、複数のデータ条件評価式Ｒ０乃至Ｒｍの評価順を定めることができる。例えば、評価順は、解析対象のパケットに含まれる確率が高い順や、コンピュータの処理負担が小さい順や、当該確率及び処理負担を総合的に判断して定めた順等とできる。評価順を適切に設定することで、よりコンピュータの処理負担増加を抑制できる。
【００７３】
また、通信制御装置１０にＤＰＩが適用される本実施形態によれば、通信量管理装置３０により管理されているパケット通信積算量を正確にリアルタイムに更新し、適切な通信ポリシーを適用することが可能となる。また、アプリケーション側を修正（パケットにアプリケーション識別情報を含める等）することなく、各パケットを送受信するアプリケーションを特定することができる。このため、アプリケーションの修正を要請し難い企業のアプリケーションも、カウントフリーアプリケーションとして扱うことができる。
【００７４】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限定されない。
１．  通信量管理装置と、ポリシー管理装置と、通信制御装置とを有し、
前記通信量管理装置は、
前記通信制御装置からの通知に基づきユーザ毎に所定期間内のパケット通信積算量を管理する通信量管理部と、
前記パケット通信積算量とユーザ毎に定められた閾値との比較結果を前記ポリシー管理装置に通知する比較結果通知部と、
を有し、
前記ポリシー管理装置は、
ユーザの通信ポリシー情報を管理するポリシー管理部と、
前記比較結果と前記通信ポリシー情報とに基づき、ユーザ毎に適用する通信ポリシーを決定するポリシー決定部と、
決定された前記通信ポリシーを前記通信制御装置に通知するポリシー通知部と、
を有し、
前記通信制御装置は、
解析対象のパケットを取得する取得部と、
前記ポリシー管理装置から通知された前記通信ポリシーと順序付シグネチャ集合とに基づき前記解析対象のパケットが課金対象か否かを判断し、課金対象のパケットの通信量を前記通信量管理装置に通知する通信制御部と、
を有し、
前記順序付シグネチャ集合は、
通信を課金対象としないカウントフリーアプリケーション毎に定義され、
カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示す複数のデータ条件評価式を論理和で連結した論理演算式により、カウントフリーアプリケーション各々が送受信するパケットに現れる特徴を示し、かつ、
複数の前記データ条件評価式の評価の順序を定めており、
前記通信制御部は、
前記順序付シグネチャ集合に基づく評価により、前記解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断し、
カウントフリーアプリケーションであると判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知せず、
カウントフリーアプリケーションでないと判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知する通信制御システム。
２．  １に記載の通信制御システムにおいて、
前記データ条件評価式は、カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるバイト配列及び／又は文字列を対象とした種々の演算子の結果を論理積で連結した論理演算式で示される通知制御システム。
３．  １又は２に記載の通信制御システムにおいて、
前記順序付シグネチャ集合で定められている複数の前記データ条件評価式の評価の順序は、前記解析対象のパケットに含まれる確率が高い順である通信制御システム。
４．  １から３のいずれかに記載の通信制御システムにおいて、
前記通信ポリシーでは、カウントフリーアプリケーション毎に定義された複数の前記順序付シグネチャ集合の評価の順序が定められており、
当該評価の順序は、前記解析対象のパケットを送受信するアプリケーションである可能性が高い順である通信制御システム。
５．  通信量管理装置と、ポリシー管理装置と、通信制御装置とを有する通信制御システムの前記通信量管理装置が、
前記通信制御装置からの通知に基づきユーザ毎に所定期間内のパケット通信積算量を管理し、
前記パケット通信積算量とユーザ毎に定められた閾値との比較結果を前記ポリシー管理装置に通知し、
前記ポリシー管理装置が、
ユーザの通信ポリシー情報を管理し、
前記比較結果と前記通信ポリシー情報とに基づき、ユーザ毎に適用する通信ポリシーを決定し、
決定された前記通信ポリシーを前記通信制御装置に通知し、
前記通信制御装置が、
解析対象のパケットを取得し、
前記ポリシー管理装置から通知された前記通信ポリシーと順序付シグネチャ集合とに基づき前記解析対象のパケットが課金対象か否かを判断し、課金対象のパケットの通信量を前記通信量管理装置に通知し、
前記順序付シグネチャ集合は、
通信を課金対象としないカウントフリーアプリケーション毎に定義され、
カウントフリーアプリケーション各々が送受信するパケットのヘッダ及びペイロードのいずれかに現れるデータのパターンを示す複数のデータ条件評価式を論理和で連結した論理演算式により、カウントフリーアプリケーション各々が送受信するパケットに現れる特徴を示し、かつ、
複数の前記データ条件評価式の評価の順序を定めており、
前記通信制御装置は、
前記順序付シグネチャ集合に基づく評価により、前記解析対象のパケットを送受信するアプリケーションがカウントフリーアプリケーションか否かを判断し、
カウントフリーアプリケーションであると判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知せず、
カウントフリーアプリケーションでないと判断した場合、前記解析対象のパケットの通信量を前記通信量管理装置に通知する通信制御方法。
【符号の説明】
【００７５】
１Ａ    プロセッサ
２Ａ    メモリ
３Ａ    入出力Ｉ／Ｆ
４Ａ    周辺回路
５Ａ    バス
１      モバイル端末
２      ＭＮＯ設備
３      ＭＶＮＯ設備
４      ＩＰ網
５      通信制御システム
１０    通信制御装置
１１    取得部
１２    通信制御部
１３    記憶部
２０    ポリシー管理装置
２１    ポリシー管理部
２２    記憶部
２３    ポリシー決定部
２４    ポリシー通知部
３０    通信量管理装置
３１    通信量管理部
３２    記憶部
３３    比較結果通知部
【図１】
2020188373.tif 000005
【図２】
2020188373.tif 000006
【図３】
2020188373.tif 000007
【図４】
2020188373.tif 000008
【図５】
2020188373.tif 000009
【図６】
2020188373.tif 000010
【図７】
2020188373.tif 000011
【図８】
2020188373.tif 000012