(57)【特許請求の範囲】
【請求項１】
ネットワークポリシーノード（１３６）によって実行される方法であって、
適用可能性条件および１つまたは複数のアクションルールを含むポリシーを複数のルールオブジェクトに変換するステップ（５２０）と、
１つまたは複数のポリシーの適用可能性条件に基づいてルールオブジェクトを含む選択ルールテーブル（４００）を生成するステップと、
ルールエンジンを使用して適用可能性条件とコンテキスト情報とを比較して選択ルールテーブルを評価することによって１組の適用可能なポリシーを決定するステップ（５３０）と、
適用可能なポリシーの組の１つまたは複数のアクションルールからルールオブジェクトを含むアクションルールテーブルを生成するステップであって、アクションルールがアクションルール条件およびネットワークポリシーノードによって実行されるアクションを定義するアクションパスを含む、生成するステップと、
ルールエンジンを使用してアクションルール条件とコンテキスト情報とを比較してアクションルールテーブルを評価することによってアクションパスを選択するステップ（５５５）とを含む、方法。
【請求項２】
１つまたは複数のアクションルールが、１つまたは複数の閾値ルール（３４０）を含み、アクションパスを選択するステップが、
１つまたは複数の閾値ルールに基づいて閾値ルールテーブルを生成するステップと、
ルールエンジンを使用して閾値条件と加入者ネットワークの測定値であるシステムパラメータを含むコンテキスト情報とを比較して閾値ルールテーブルを評価することによってアクションパスを選択するステップとを含む、請求項１に記載の方法。
【請求項３】
１つまたは複数のアクションルールが、１つまたは複数のレーティングルール（３３０）を含み、方法が、
１つまたは複数のレーティングルールに基づいてレーティング選択テーブルを生成するステップと、
ルールエンジンを使用してレーティング選択テーブルを評価することによってレーティングファクタを選択するステップ（５４５）と、
加入者ネットワークの測定値である入力値にレーティングファクタを乗じてコンテキスト情報に含まれるシステムパラメータを得るステップとをさらに含む、請求項１または２に記載の方法。
【請求項４】
ポリシーが、使用量管理ポリシーであり、方法が、
ネットワークの加入者の使用量を含む使用量レポートを受信するステップであって、加入者の使用量が入力値である、受信するステップと、
入力値に基づいてシステムパラメータを決定するステップと、
適用可能なポリシー（３００）の１つまたは複数の閾値ルール（３４０）に基づいて閾値ルールテーブルを生成するステップと、
ルールエンジンを使用して閾値条件とシステムパラメータとを比較して閾値ルールテーブルを評価することによってアクションパスを選択するステップ（５５５）とをさらに含む、請求項３に記載の方法。
【請求項５】
適用可能なポリシーの優先度（３１３）にしたがって、適用可能なポリシーの中からポリシーを選択するステップをさらに含む、請求項１から４のいずれかに記載の方法。
【請求項６】
加入者に少なくとも１つのポリシーを割当てるステップをさらに含み、１組の適用可能なポリシーを決定するステップが、ポリシーが既に加入者に割り当てられたかどうかを判定するステップを含む、請求項１から５のいずれかに記載の方法。
【請求項７】
１つまたは複数のポリシーが、１つまたは複数の使用量管理ポリシーであり、１つまたは複数のアクションパスが、セッションアクションおよびフローアクションを含む、請求項１から６のいずれかに記載の方法。
【請求項８】
ポリシーが適用可能性条件および１つまたは複数のアクションルールを含む、１つまたは複数のポリシーに基づいてルールオブジェクトを生成し、
１つまたは複数のポリシーの適用可能性条件に基づいて１つまたは複数のルールオブジェクトを含む選択ルールテーブルと、適用可能なポリシーの組の１つまたは複数のアクションルールから１つまたは複数のルールオブジェクトを含むアクションルールテーブルを生成するように構成されたスキャナ（２４０）と、
コンテキスト情報を記憶するように構成されたコンテキスト情報ストレージ（２２５）と、
コンテキスト情報に基づいて選択ルールテーブルを評価し、１組の適用可能なポリシーを返し、
コンテキスト情報に基づいてアクションルールテーブルを評価し、ネットワークポリシーノードによって実行されるアクションを定義するアクションパスを返すように構成されたルールエンジン（２５０）とを含む、ネットワークポリシーノード。
【請求項９】
１つまたは複数のポリシーが、優先度（３１３）を含み、ネットワークポリシーノードが、優先度に基づいて、適用可能なポリシーの中からポリシーを選択するように構成されたポリシーセレクタ（２５５）をさらに含む、請求項８に記載のネットワークポリシーノード。
【請求項１０】
有効な１組のルールオブジェクトを保有するように構成されたルールオブジェクトメモリ（２４５）をさらに含む、請求項８または９に記載のネットワークポリシーノード。
【請求項１１】
ネットワークのコンテキスト情報を受信するように構成された第１のインターフェース（２１０）と、
加入者のコンテキスト情報を送信および受信するように構成された第２のインターフェース（２１５）とをさらに含む、請求項８から１０のいずれかに記載のネットワークポリシーノード。
【請求項１２】
ポリシーが、適用可能性条件に対応する適用可能性ルール（３２０）、加入者の使用量の割り当て（３１５）、アクションルールに対応するレーティング選択ルール（３３０）および閾値ルール（３４０）を含む、使用量管理ポリシーである、請求項８から１１のいずれかに記載のネットワークポリシーノード。
【請求項１３】
スキャナが、レーティング選択ルールからレーティング選択テーブルを生成するようにさらに構成され、ルールエンジンが、レーティング選択テーブルを評価して、加入者ネットワークの測定値である入力値に乗じてコンテキスト情報に含まれるシステムパラメータを得るための、レーティングファクタを選択するようにさらに構成される、請求項１２に記載のネットワークポリシーノード。
【請求項１４】
別のネットワークノードに使用量報告要件を備えさせ、
ネットワーク管理アクションを実行するように構成されたアクションマネージャ（２６０）をさらに含む、請求項１２または１３に記載のネットワークポリシーノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書において開示されるさまざまな例示的な実施形態は、一般に、通信ネットワークに関し、詳細には、通信ネットワークのポリシー管理に関する。
【背景技術】
【０００２】
通信ネットワークは、多数の加入者にネットワークサービスを提供する。ネットワークにアクセスする加入者の数は、容易に数百万に達する可能性がある。ネットワークサービスプロバイダは、各加入者とのサービス契約を守り、セキュリティを維持し、ネットワークリソースを管理し、各加入者に正しく課金するようにネットワークを管理しなければならない。加入者の数が増えるとき、異なる加入者および異なるコンテキスト（ｃｏｎｔｅｘｔ）の間の柔軟性を認めながらネットワークサービスを効率的に管理するネットワーク管理ソリューションの需要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
以上に鑑みて、加入者ネットワークを効率的に管理するためのネットワークポリシーノードを提供することが望ましい。特に、変化するコンテキストを考慮に入れながら個々の加入者またはネットワークの構成要素に関するポリシーの決定を迅速に行うことができるノードを提供することが望ましい。
【課題を解決するための手段】
【０００４】
加入者ネットワークを効率的に管理するためのネットワークポリシーノードに対する現在のニーズを踏まえて、さまざまな例示的な実施形態の簡潔な概要が提示される。以下の概要においていくつかの簡略化および省略が行われる可能性があり、そのことは、さまざまな例示的な実施形態のいくつかの態様を強調し、紹介するように意図されているが、本発明の範囲を限定するように意図されていない。当業者が本発明の概念を実施し、使用することを可能にするのに適した好ましい例示的な実施形態の詳細な説明が、その後の節で後に続く。
【０００５】
さまざまな例示的な実施形態が、ネットワークポリシーノードによって実行される方法に関する。方法は、適用可能性条件および１つまたは複数のアクションルール（ａｃｔｉｏｎ  ｒｕｌｅ）を含むポリシーを複数のルールオブジェクトに変換するステップと、１つまたは複数のポリシーの適用可能性条件に基づいて選択ルールテーブルを生成するステップと、適用可能なポリシーの１つまたは複数のアクションルールからアクションルールテーブルを生成するステップであって、アクションルールがアクション条件（ａｃｔｉｏｎ  ｃｏｎｄｉｔｉｏｎ）およびアクションパス（ａｃｔｉｏｎ  ｐａｔｈ）を含む、生成するステップと、ルールエンジンを使用して適用可能性条件とコンテキスト情報とを比較して選択ルールテーブルを評価することによって１組の適用可能なポリシーを決定するステップと、ルールエンジンを使用してアクション条件とコンテキスト情報とを比較してアクションルールテーブルを評価することによってアクションパスを選択するステップとを含み得る。
【０００６】
さまざまな代替的な実施形態において、１つまたは複数のアクションルールは、１つまたは複数の閾値ルールを含んでもよく、アクションパスを選択するステップは、１つまたは複数の閾値ルールに基づいて閾値ルールテーブルを生成するステップと、ルールエンジンを使用して閾値条件とシステムパラメータとを比較して閾値ルールテーブルを評価することによってアクションパスを選択するステップとを含んでもよい。
【０００７】
さまざまな代替的な実施形態において、１つまたは複数のアクションルールは、１つまたは複数のレーティング（ｒａｔｉｎｇ）ルールを含んでもよく、方法は、１つまたは複数のレーティングルールに基づいてレーティング選択テーブルを生成するステップと、ルールエンジンを使用してレーティング選択テーブルを評価することによってレーティングファクタを選択するステップと、入力にレーティングファクタを乗じるステップとをさらに含んでもよい。
【０００８】
さまざまな代替的な実施形態において、ポリシーは、使用量管理ポリシーであり、方法は、ネットワークの加入者の使用を含む使用レポートを受信するステップであって、加入者の使用が入力値である、受信するステップと、入力値に基づいてシステムパラメータを決定するステップと、適用可能なポリシーの１つまたは複数の閾値ルールに基づいて閾値ルールテーブルを生成するステップと、ルールエンジンを使用して閾値条件とシステムパラメータとを比較して閾値ルールテーブルを評価することによってアクションパスを選択するステップとをさらに含む。
【０００９】
さまざまな代替的な実施形態において、方法は、適用可能なポリシーの優先度にしたがって、適用可能なポリシーの中からポリシーを選択するステップをさらに含む。
【００１０】
さまざまな代替的な実施形態において、方法は、加入者に少なくとも１つのポリシーを割当てるステップをさらに含んでもよく、１組の適用可能なポリシーを決定するステップは、ポリシーが既に加入者に割り当てられたかどうかを判定するステップを含んでもよい。
【００１１】
さまざまな代替的な実施形態において、１つまたは複数のポリシーは、１つまたは複数の使用量管理ポリシーでもよく、１つまたは複数のアクションパスは、セッションアクション（ｓｅｓｓｉｏｎ  ａｃｔｉｏｎ）およびフローアクション（ｆｌｏｗ  ａｃｔｉｏｎ）を含んでもよい。
【００１２】
さまざまな例示的な実施形態は、通信ネットワークのネットワーク要素による実行のための命令によって符号化された有形の一時的でない機械可読ストレージ媒体に関する。命令は、上述の方法を実行するようにネットワーク要素の動作を設定することができる。
【００１３】
さまざまな例示的な実施形態が、１つまたは複数のポリシーに基づいてルールオブジェクトを生成し、１つまたは複数のルールオブジェクトを含むルールテーブルを生成するように構成されたスキャナと、コンテキスト情報を記憶するように構成されたコンテキスト情報ストレージと、コンテキスト情報に基づいて選択ルールテーブルを評価し、１組の適用可能なポリシーを返し、コンテキスト情報に基づいてアクションルールテーブルを評価し、アクションパスを返すように構成されたルールエンジンとを含むネットワークポリシーノードに関する。
【００１４】
さまざまな代替的な実施形態において、１つまたは複数のポリシーは、優先度を含み、ネットワークポリシーノードは、優先度に基づいて適用可能なポリシーの中からポリシーを選択するように構成されたポリシーセレクタをさらに含む。
【００１５】
さまざまな代替的な実施形態において、ネットワークポリシーは、有効な１組のルールオブジェクトを保有するように構成されたルールオブジェクトメモリをさらに含む。
【００１６】
さまざまな代替的な実施形態において、ネットワークポリシーノードは、ネットワークのコンテキスト情報を受信するように構成された第１のインターフェースと、加入者のコンテキスト情報を送信および受信するように構成された第２のインターフェースとをさらに含む。
【００１７】
さまざまな代替的な実施形態において、ポリシーは、適用可能性ルール、割り当て、レーティング選択ルール、および閾値ルールを含む使用量管理ポリシーである。スキャナは、レーティング選択テーブルを生成するようにさらに構成されんでもよく、ルールエンジンは、レーティング選択テーブルを評価してレーティングファクタを選択するようにさらに構成されてもよい。ネットワークポリシーノードは、別のネットワークノードに使用量報告要件（ｕｓａｇｅ  ｒｅｐｏｒｔｉｎｇ  ｒｅｑｕｉｒｅｍｅｎｔ）を備えさせ、ネットワーク管理アクションを実行するように構成されたアクションマネージャをさらに含んでもよい。
【００１８】
このようにして、さまざまな例示的な実施形態が、加入者ネットワークを効率的に管理するためのネットワークポリシーノードおよび方法を実現可能にすることは明らかである。特に、ノードは、ルールエンジンを使用して適用可能なポリシーを選択し、アクションテーブルを評価することによって、変化するコンテキストを考慮に入れながら個々の加入者またはネットワークの構成要素に関するポリシーの決定を迅速に行うことができる。
【００１９】
さまざまな例示的な実施形態をより深く理解するために、添付の図面が参照される。
【図面の簡単な説明】
【００２０】
【図１】さまざまなデータサービスを提供するための例示的な加入者ネットワークを示す図である。
【図２】例示的なネットワークポリシーノードを示す図である。
【図３】例示的な使用量管理ポリシーを示す図である。
【図４】例示的なルールテーブルを示す図である。
【図５】ネットワークポリシーノードによって実行される例示的な方法を示すフローチャートである。
【発明を実施するための形態】
【００２１】
加入者ネットワークの使用パターンの現在の傾向は、先進的なポリシー管理を必要とする。概して、加入者およびプロバイダは、急速に変化するコンテキストに合うように変化する動的なポリシーを認めるネットワーク管理を望む。加入者は、複数のデバイスを使用してサービスプロバイダのネットワークにアクセスする可能性があり、各デバイスについて別々のアカウントを保有したくない可能性がある。複数の技術が、同じデバイスからの異なる経路を通じたネットワークアクセスを可能とする最新のユーザデバイス内に集中しており、これは、使用量を監視し、制御するための別々のポリシーを必要とする可能性がある。ユーザおよび加入者は、ユーザが任意のデバイスを用いて任意の経路を介してネットワークにアクセスすることを可能にし、ネットワーク上でのそのような使用量のコストを正確に反映するサービスプランを欲する可能性がある。
【００２２】
ルールに基づく手法は、単一のルールエンジンを使用して適切なポリシーの選択およびポリシーの実装を可能にする。ポリシーおよびルールオブジェクトは、同様のコンテキストの複数の加入者のために再利用される可能性がある。ルールに基づく手法は、特に、加入者の使用量の測定、ネットワークリソース管理、ネットワークセキュリティ、およびネットワークトラフィック管理に適用可能である。
【００２３】
ここで、同様の番号が同様の構成要素またはステップを指す図面を参照して、さまざまな例示的な実施形態の幅広い態様が開示される。
【００２４】
図１は、さまざまなデータサービスを提供するための例示的な加入者ネットワーク１００を示す。例示的な加入者ネットワーク１００は、さまざまなサービスへのアクセスを提供するためのＬＴＥまたは４Ｇモバイル通信ネットワークなどの通信ネットワークでもよい。加入者ネットワーク１００は、ユーザ機器１１０、基地局１２０、進化型パケットコア（ＥＰＣ）１３０、およびパケットデータネットワーク１４０を含み得る。
【００２５】
ユーザ機器１１０は、エンドユーザにデータサービスを提供するためにパケットデータネットワーク１４０と通信するデバイスでもよい。そのようなデータサービスは、例えば、音声通信、テキストメッセージング、マルチメディアストリーミング、およびインターネットアクセスを含み得る。より具体的には、さまざまな例示的な実施形態において、ユーザ機器１１０は、パーソナルもしくはラップトップコンピュータ、無線電子メールデバイス、セル電話、テレビセットトップボックス、またはＥＰＣ１３０を介してその他のデバイスと通信することができる任意のその他のデバイスである。
【００２６】
基地局１２０は、ユーザ機器１１０とＥＰＣ１３０との間の通信を可能にするデバイスでもよい。例えば、基地局１２０は、３ＧＰＰ規格によって定義された進化型ｎｏｄｅＢ（ｅＮｏｄｅＢ）などの基地局である可能性がある。したがって、基地局１２０は、電波などの第１の媒体を介してユーザ機器１１０と通信し、イーサネット（登録商標）ケーブルなどの第２の媒体を介してＥＰＣ１３０と通信するデバイスでもよい。基地局１２０は、ＥＰＣ１３０と直接通信している可能性があるか、またはいくつかの中間ノード（図示せず）を介して通信する可能性がある。さまざまな実施形態において、ユーザ機器１１０に移動性を提供するために複数の基地局（図示せず）が存在する可能性がある。さまざまな代替的な実施形態においては、ユーザ機器１１０は、ＥＰＣ１３０と直接通信する可能性があることに留意されたい。そのような実施形態においては、基地局１２０は存在しない可能性がある。
【００２７】
進化型パケットコア（ＥＰＣ）１３０は、ユーザ機器１１０にパケットデータネットワーク１４０へのゲートウェイアクセスを提供するデバイスまたはデバイスの結合でもよい。さらに、ＥＰＣ１３０は、提供されるデータサービスの使用について加入者に課金し、特定のユーザ体感品質（ＱｏＥ）の基準が満たされることを保証することができる。このように、ＥＰＣ１３０は、少なくとも部分的に、３ＧＰＰ  ＴＳ２９．２１２、２９．２１３、および２９．２１４規格に従って実装され得る。したがって、ＥＰＣ１３０は、サービングゲートウェイ（ＳＧＷ）１３２と、パケットデータネットワークゲートウェイ（ＰＧＷ）１３４と、ネットワークポリシーノード１３６と、加入プロファイルリポジトリ（ＳＰＲ）１３８とを含み得る。
【００２８】
サービングゲートウェイ（ＳＧＷ）１３２は、ＥＰＣ１３０へのゲートウェイアクセスをネットワーク１００のエンドユーザに提供するデバイスでもよい。ＳＧＷ１３２は、ユーザ機器１１０によって送信されたパケットを受信するＥＰＣ１３０内の第１のデバイスでもよい。ＳＧＷ１３２は、そのようなパケットをＰＧＷ１３４に転送することができる。ＳＧＷ１３２は、例えば、複数の基地局（図示せず）間のユーザ機器１１０の移動性の管理、および提供されている各フローに関する特定のサービス品質（ＱｏＳ）の特性の実行などのいくつかの機能を実行することができる。プロキシモバイルＩＰ（ＰＭＩＰ：Ｐｒｏｘｙ  Ｍｏｂｉｌｅ  ＩＰ）規格を実装する実装などのさまざまな実装において、ＳＧＷ１３２は、ベアラバインディングおよびイベント報告機能（ＢＢＥＲＦ：ｂｅａｒｅｒ  ｂｉｎｄｉｎｇ  ａｎｄ  ｅｖｅｎｔ  ｒｅｐｏｒｔｉｎｇ  ｆｕｎｃｔｉｏｎ）を含み得る。さまざまな例示的な実施形態において、ＥＰＣ１３０は、複数のＳＧＷ（図示せず）を含む可能性があり、各ＳＧＷが、複数の基地局（図示せず）と通信する可能性がある。
【００２９】
パケットデータネットワークゲートウェイ（ＰＧＷ）１３４は、パケットデータネットワーク１４０へのゲートウェイアクセスをネットワーク１００のエンドユーザに提供するデバイスでもよい。ＰＧＷ１３４は、ユーザ機器１１０によってＳＧＷ１３２を介してパケットデータネットワーク１４０に送信されたパケットを受信するＥＰＣ１３０内の最後のデバイスでもよい。ＰＧＷ１３４は、各サービスデータフロー（ＳＤＦ）に関するポリシーおよび課金制御（ＰＣＣ）ルールを実行するポリシーおよび課金実行機能（ＰＣＥＦ：ｐｏｌｉｃｙ  ａｎｄ  ｃｈａｒｇｉｎｇ  ｅｎｆｏｒｃｅｍｅｎｔ  ｆｕｎｃｔｉｏｎ）を含み得る。したがって、ＰＧＷ１３４は、ポリシーおよび課金実行ノード（ＰＣＥＮ：ｐｏｌｉｃｙ  ａｎｄ  ｃｈａｒｇｉｎｇ  ｅｎｆｏｒｃｅｍｅｎｔ  ｎｏｄｅ）であってもよい。ＰＧＷ１３４は、例えば、パケットフィルタリング、ディープパケットインスペクション、および加入者課金のサポートなどのいくつかの追加的な特徴を含み得る。例えば、ＰＧＷ１３４は、ネットワークポリシーノード１３６によって決定された装備された測定ルール（ａｒｍｅｄ  ｍｅｔｅｒｉｎｇ  ｒｕｌｅ）にしたがって加入者の使用量情報をネットワークポリシーノード１３６に提供してもよい。例示的なネットワーク１００はロングタームエボリューション（ＬＴＥ）の１つの特定の実装に対応してもよいが、多くの変形形態が存在する可能性があることに留意されたい。例えば、ＳＧＷ１３２が存在しない可能性があり、ＰＧＷ１３４が存在しない可能性があり、および／またはＳＧＷ１３２およびＰＧＷ１３４の機能が、単一のデバイスに統合されるか、もしくは複数の追加のデバイスに拡散される可能性がある。
【００３０】
ネットワークポリシーノード１３６は、ネットワークの情報に基づいてポリシーの決定を行うことができる。さまざまな例示的な実施形態において、ネットワークポリシーノード１３６は、ポリシーおよび課金ルールノード（ＰＣＲＮ：ｐｏｌｉｃｙ  ａｎｄ  ｃｈａｒｇｉｎｇ  ｒｕｌｅｓ  ｎｏｄｅ）でもよい。例えば、ネットワークポリシーノード１３６は、加入者のポリシー、加入者の情報、およびネットワークの使用量情報に基づいて加入者の測定ポリシーの決定を行ってもよい。ネットワークポリシーノード１３６は、それぞれＧｘｘおよびＧｘインターフェースによってＳＧＷ１３２およびＰＧＷ１３４と通信することができる。ネットワークポリシーノード１３６は、ＳＧＷ１３２および／またはＰＧＷ１３４に所望の加入者の使用量情報に関する使用量報告ルールを備えさせてもよい。ネットワークポリシーノード１３６は、ＳＧＷ１３２およびＰＧＷ１３４が加入者のトラフィックをどのように扱うかを制御するためのＰＣＣルールを生成および／または修正することができる。
【００３１】
ポリシーの決定を行うプロセスにおいて、ネットワークポリシーノード１３６は、１つまたは複数のルールオブジェクトを利用して適用可能なポリシーおよびアクションを選択することができ、その詳細は、図２−５を参照して以下で説明される。ネットワークポリシーノード１３６は、ルールテーブルを評価して結果の組を生成することができる。ネットワークポリシーノード１３６は、ネットワークの運用者によって構成されたポリシーからルールテーブルを含むルールオブジェクトを生成することができる。加入者のセッションが確立されるか、またはセッションが更新されると、ネットワークポリシーノード１３６は、ポリシー選択テーブルを評価して、適用可能なポリシーを含む結果の組を決定することができる。ネットワークポリシーノード１３６は、さらに、セッションに適用すべき適用可能なポリシーのうちの１つを選択することができる。選択されたポリシーは、静的属性および追加の動的ルールテーブルを含んでもよい。ネットワークポリシーノード１３６は、動的ルールテーブルを評価して、選択されたポリシーに従って加入者のセッションを管理するための適切なアクションを決定することができる。
【００３２】
加入プロファイルリポジトリ（ＳＰＲ）１３８は、加入者ネットワーク１００への加入者に関連する情報を記憶するデバイスでもよい。したがって、ＳＰＲ１３８は、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスクストレージ媒体、光学式ストレージ媒体、フラッシュメモリデバイス、および／または同様のストレージ媒体などの機械可読ストレージ媒体を含み得る。ＳＰＲ１３８は、ネットワークポリシーノード１３６の構成要素でもよく、またはＥＰＣ１３０内の独立したノードを構成してもよい。ＳＰＲ１３８によって記憶されるデータは、各加入者の識別子と、例えば、加入者のカテゴリ、加入者のポリシーまたはプラン、残高、帯域幅の限度、課金パラメータ、および加入者の優先度などの各加入者に関する加入情報の指示とを含み得る。ＳＰＲ１３８は、例えば、各ポリシーに関するデータ量（アップリンク、ダウンリンク、もしくは合計）、時間、またはクレジット（ｃｒｅｄｉｔ）などの１つまたは複数のカウンタ（ｃｏｕｎｔｅｒ）に従った現在の加入者の使用量の記録も保有する可能性がある。
【００３３】
パケットデータネットワーク１４０は、ユーザ機器１１０と、パケットデータネットワーク１４０に接続されたその他のデバイスとの間のデータ通信を提供するためのネットワーク（例えば、インターネットまたは通信デバイスの別のネットワーク）でもよい。パケットデータネットワーク１４０は、パケットデータネットワーク１４０と通信するさまざまなユーザデバイスに、例えば、電話および／またはインターネットサービスをさらに提供してもよい。
【００３４】
図２は、例示的なネットワークポリシーノード１３６を示す。ネットワークポリシーノード１３６は、Ｇｘｘインターフェース２０５、Ｇｘインターフェース２１０、Ｓｐインターフェース２１５、メッセージハンドラ２２０、コンテキスト情報モジュール２２５、ユーザインターフェース２３０、ポリシーストレージ２３５、スキャナ２４０、ルールオブジェクトストレージ２４５、ルールエンジン２５０、ポリシーセレクタ２５５、およびアクションマネージャ２６０を含み得る。
【００３５】
Ｇｘｘインターフェース２０５は、ＳＧＷ１３２などのＳＧＷと通信するように構成された、ハードウェア、および／または機械可読ストレージ媒体上に符号化された実行可能命令を含むインターフェースでもよい。そのような通信は、３ＧＰＰ  ＴＳ２９．２１２に従って実装され得る。したがって、Ｇｘｘインターフェース２０５は、ＱｏＳルールの要求を受信し、インストールするためのＱｏＳルールを送信することができる。Ｇｘｘインターフェース２０５は、さらに、ＵＥから発信されたアプリケーション要求、セッション要求、およびイベント通知をクレジット制御要求（ＣＣＲ）の形態で受信してもよい。
【００３６】
Ｇｘインターフェース２１０は、ＰＧＷ１３４などのＰＧＷと通信するように構成された、ハードウェア、および／または機械可読ストレージ媒体上に符号化された実行可能命令を含むインターフェースでもよい。そのような通信は、３ＧＰＰ  ＴＳ２９．２１２に従って実装され得る。したがって、Ｇｘインターフェース２１０は、ＰＣＣルールの要求を受信し、インストールするためのＰＣＣルールを送信することができる。Ｇｘインターフェース２１０は、さらに、ＵＥから発信されたアプリケーション要求、セッション要求、およびイベント通知をＣＣＲの形態で受信してもよい。
【００３７】
Ｓｐインターフェース２１５は、ＳＰＲ１３８と通信するように構成された、ハードウェア、および／または機械可読ストレージ媒体上に符号化された実行可能命令を含むインターフェースでもよい。例えば、Ｓｐインターフェース２１５は、加入者の情報を加入者プロファイルの形態で受信しうる。Ｓｐインターフェース２１５は、加入者の情報または更新された加入者プロファイルをＳＰＲ１３８に送信しうる。Ｓｐインターフェース２１５は、ＳＰＲ１３８がネットワークポリシーノード１３６の統合された構成要素である場合には含まれなくてもよい。
【００３８】
メッセージハンドラ２２０は、Ｇｘｘインターフェース２０５、Ｇｘインターフェース２１０、および／またはＳｐインターフェース２１５を介して送信および／または受信された使用量監視メッセージを処理するように構成されたハードウェア、および／または機械可読ストレージ媒体上の実行可能命令を含んでもよい。例えば、メッセージハンドラ２２０は、ＰＧＷ１３４から使用量アカウントメッセージ（ｕｓａｇｅ  ａｃｃｏｕｎｔｉｎｇ  ｍｅｓｓａｇｅ）を受信してもよい。ネットワークポリシーノード１３６がポリシーを決定した後、メッセージハンドラ２２０は、ポリシーの決定の結果についてその他のノードに知らせるためにメッセージを構築し、そのメッセージをＧｘｘインターフェース２０５、Ｇｘインターフェース２１０、および／またはＳｐインターフェース２１５を介して送信することができる。例えば、ノード１３６が適用可能なポリシーにしたがって新しいＰＣＣルールを生成する場合、メッセージハンドラ２２０は、新しいＰＣＣルールを適切なＰＧＷにプッシュするために再認可要求（ＲＡＲ：ｒｅａｕｔｈｏｒｉｚａｔｉｏｎ  ｒｅｑｕｅｓｔ）メッセージを構築することができる。メッセージハンドラ２２０は、メッセージのコンテキスト情報をルールエンジン２５０に直接かまたはコンテキスト情報モジュール２２５を介してかのどちらかで提供することができる。メッセージハンドラ２２０によって受信されたメッセージは、新しいポリシーを選択するか、またはアクションが行われるべきかどうかを判定するかのどちらかのためにルールテーブルの呼び出しを引き起こしてもよい。
【００３９】
コンテキスト情報モジュール２２５は、さまざまなコンテキスト情報をルールエンジン２５０に提供するように構成されたハードウェア、および／または機械可読ストレージ媒体上の実行可能命令を含んでもよい。コンテキスト情報は、さまざまなシステムパラメータを含み得る。例えば、コンテキスト情報モジュール２２５は、受信されたメッセージによって運ばれた情報を記憶してもよい。コンテキスト情報モジュール２２５は、加入者、セッション、および／またはサービスデータフローに関連する、前に受信および／または送信されたメッセージをさらに記憶してもよい。さらに、コンテキスト情報モジュール２２５は、例えば、ＳＰＲ１３８などのＳＰＲに記憶された加入者情報などのその他の場所に記憶された情報にアクセスしてもよい。
【００４０】
ユーザインターフェース２３０は、ネットワークの運用者がネットワークポリシーノード１３６にアクセスできるようにするように構成されたハードウェア、および／または機械可読ストレージ媒体上の実行可能命令を含んでもよい。ユーザインターフェース２３０は、ネットワークの運用者から入力を受信することができ、例えば、キーボードおよび／またはマウスなどのハードウェアを含んでもよい。ユーザインターフェース２３０は、ネットワークの運用者に対して情報を出力として表示することもでき、例えば、モニタを含んでもよい。ネットワークの運用者は、ユーザインターフェース２３０を介してポリシーストレージ２３５にアクセスすることができる。ユーザインターフェース２３０は、ネットワークの運用者に、ポリシーを生成し、ポリシーをユーザに割当てるためのさまざまなオプションを提供することができる。
【００４１】
ポリシーストレージ２３５は、運用者が生成したポリシーを含み得る。ポリシーは、静的属性、適用可能性条件、およびアクションルールを含み得る。加入者の使用量測定ポリシーノードの例においては、ポリシーは、静的な使用量管理ポリシー属性、適用可能性ルール、レーティングルール、および閾値ルールを含んでもよい。例示的な使用量監視ポリシーが、図３を参照して以下でより詳細に説明される。
【００４２】
スキャナ２４０は、ポリシーからルールオブジェクトを生成するように構成されたハードウェア、および／または機械可読ストレージ媒体上の実行可能命令を含んでもよい。スキャナ２４０は、システムの起動時、またはルールのバージョン変更中にルールオブジェクトを生成することができる。スキャナ２４０は、各ポリシーの適用可能性条件に基づいてポリシー選択テーブルを生成することができる。スキャナ２４０は、ポリシーに含まれるアクションルールに基づいてアクションルールテーブルを生成することができる。アクションルールテーブルは、特に、ポリシーを実装するためのものであり、単一のポリシーで定義されたルールのみを含む。代替的に、スキャナ２４０は、包括的な管理アクションルールテーブルにポリシーのルールを追加する可能性がある。例えば、スキャナ２４０は、使用量管理ポリシーの閾値ルールをセッション確立アクションルールテーブルに追加してもよい。
【００４３】
ルールオブジェクトストレージ２４５は、ルールエンジン２５０による使用のためにルールオブジェクトを記憶することができる任意の機械可読媒体でもよい。したがって、ルールオブジェクトストレージ２４５は、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスクストレージ媒体、光学式ストレージ媒体、フラッシュメモリデバイス、および／または同様のストレージ媒体などの機械可読ストレージ媒体を含み得る。図４に関して以下でさらに詳細に説明されるように、ルールストレージ２４５は、多数のルールオブジェクトの定義を記憶することができる。ルールオブジェクトストレージ２４５は、頻繁に使用されるルールオブジェクトを記憶するためのキャッシュを含んでもよい。
【００４４】
ルールエンジン２５０は、ルールテーブルを評価し、結果の組を返すように構成されたハードウェア、および／または機械可読ストレージ媒体上の実行可能命令を含んでもよい。図４に関して以下でさらに詳細に説明されるように、ルールテーブルは、１つまたは複数のルールを含んでもよい。各ルールは、条件およびアクションを含んでもよい。ルールエンジン２５０は、各ルールに関する条件を評価し、ルールのすべての条件が真である場合、結果の組にアクションを追加することができる。条件は、コンテキスト情報モジュール２２０によって与えられるコンテキスト情報、および／またはシステムパラメータに基づいてもよい。アクションは、別のルールテーブルまたはポリシーノードのアクションに追加され得るルールオブジェクトを含んでもよい。ルールエンジン２５０がルールテーブルの各ルールを評価し終わると、結果の組が、ポリシーセレクタ２５５および／またはアクションマネージャ２６０のどちらかに渡され得る。ルールエンジン２５０は、ネットワークポリシーノード１３６内のその他のタスクを実行するために使用されてもよく、各タスクは、ルールエンジン２５０の実際のまたは仮想的なインスタンスを割り当てられ得る。
【００４５】
ポリシーセレクタ２５５は、１組の適用可能なポリシーから適切なポリシーを選択することができる。ポリシーセレクタ２５５は、適用可能なポリシーの優先度および／またはポリシーの消費に基づいて選択を行う可能性がある。例えば、ポリシーセレクタ２５５は、最も優先度の高いポリシーに基づいて適用可能な使用量管理ポリシーの中から選択を行ってもよい。プリペイドデータに関する使用量管理ポリシーが初めに使用されるように、プリペイドデータに関する使用量管理ポリシーが、超過（ｏｖｅｒａｇｅ）データに関する使用量管理ポリシーよりも高い優先度を有する可能性がある。さまざまな例示的な実施形態において、ポリシーセレクタ２５５は、より高い優先度のポリシーの属性が既に消費された場合、より低い優先度のポリシーを選択してもよい。例えば、ポリシーセレクタ２５５は、すべての適用可能なプリペイドのポリシーの割り当てが既に使用された場合、超過のポリシーを選択する可能性がある。ポリシーセレクタ２５５は、選択されたポリシーに対応するルールオブジェクトをルールオブジェクトストレージ２４５に追加し、そのようなルールオブジェクトが現在有効であることを示すことができる。ルールエンジン２５０は、選択されたルールオブジェクトを直ちに評価することができる。
【００４６】
アクションマネージャ２６０は、結果の組に含まれるポリシーノードのアクションを実行することができる。使用量管理ポリシーに関するポリシーノードのアクションは、セッションアクションおよび／またはフローアクションを含んでもよい。セッションアクションは、アクセスポイント名（ＡＰＮ）ビットレートの設定、プライマリベアラプロパティ（ｐｒｉｍａｒｙ  ｂｅａｒｅｒ  ｐｒｏｐｅｒｔｙ）の設定、課金および／またはＱｏＳルールの生成もしくは修正、電子メール、ＳＭＳ、またはその他のシステムを介した通知の送信、セッションコマンドの送信、ＱｏＳクラスの設定、割り当て維持優先度（ＡＲＰ：Ａｌｌｏｃａｔｉｏｎ  Ｒｅｔｅｎｔｉｏｎ  Ｐｒｉｏｒｉｔｙ）の変更、ならびにセッションレベル管理のためのその他のアクションを含み得る。フローアクションは、電子メール、ＳＭＳ、またはその他のシステムを介した通知の送信、ベアラに関するレーティングファクタの設定、測定方法の設定、ＰＣＣルールの帯域幅のオーバーライド、ＡＲＰの設定、サービス識別子の設定、またはフローレベル管理のための任意のその他のアクションを含み得る。アクションマネージャ２６０は、ポリシーにしたがって加入者に正しいサービスを提供するためにＱｏＳおよび／またはＰＣＣルールを生成または更新することができる。アクションマネージャ２６０は、コンテキスト情報ストレージ２２５、ＳＰＲ１３８、またはその他の記憶されたデータも更新してもよい。アクションマネージャ２６０は、メッセージハンドラ２２０を使用して、更新されたルールをＳＧＷ１３２およびＰＧＷ１３４などのネットワークの構成要素に転送することができる。
【００４７】
図３は、例示的な使用量管理ポリシー３００を示す。さまざまな例示的な実施形態において、使用量管理ポリシー３００は、測定ポリシーまたは測定限度でもよい。使用量管理ポリシーが示されるが、ポリシーは、例えば、ネットワークリソース管理、ネットワークセキュリティ、およびネットワークトラフィック管理などのさまざまなネットワーク管理のケースについて生成され得る。
【００４８】
使用量管理ポリシー３００は、属性３１０、適用可能性ルール３２０、レーティングルール３３０、および閾値ルール３４０を含んでもよい。ポリシー３００は、ユーザインターフェース２３０を使用してネットワークの運用者によって生成または修正されてもよい。
【００４９】
属性３１０は、ポリシーが生成されるときにポリシーの組の静的プロパティを含んでもよい。例として、ポリシー３００は、使用量管理ポリシーでもよく、属性３１０は、名称３１１、ポリシータイプ３１２、優先度３１３、割り当てタイプ３１４、割り当て３１５、繰り返し（ｒｅｃｕｒｒｅｎｃｅ）３１６、有効期間３１７、およびＳｙ管理３１８を含み得る。名称３１１は、ポリシーを参照するために使用される一意の名称であってもよい。使用量管理ポリシーの名称は、プラン名またはサービスオプションに対応してもよい。ポリシータイプ３１２は、ポリシーの種類を示してもよい。ポリシータイプは、例えば、管理された使用量管理ポリシー（ｍａｎａｇｅｄ  ｕｓａｇｅ  ｍａｎａｇｅｍｅｎｔ  ｐｏｌｉｃｙ）、仮想的な使用量管理ポリシー（ｖｉｒｔｕａｌ  ｕｓａｇｅ  ｍａｎａｇｅｍｅｎｔ  ｐｏｌｉｃｙ）、無制限の使用量管理ポリシー、および制御された超過使用量管理ポリシー（ｃｏｎｔｒｏｌｌｅｄ  ｏｖｅｒａｇｅ  ｕｓａｇｅ  ｍａｎａｇｅｍｅｎｔ  ｐｏｌｉｃｙ）を含んでもよい。優先度３１３は、その他のポリシーと比較したポリシーの優先度のレーティングでもよい。優先度３１３は、複数の適用可能なポリシーが存在するときにポリシーを選択するためにポリシーセレクタ２５５によって使用され得る。各ポリシーは、衝突を防ぐために一意の優先度３１３を割り当てられてもよい。割り当てタイプ３１４は、使用量管理ポリシーに関して測定されるカウンタを示してもよい。割り当てタイプは、アップリンクの量、ダウンリンクの量、合計の量、金銭的価値、時間、またはネットワーク使用のその他の測定値を含み得る。割り当て３１５は、加入者に割り当てられる割り当てタイプ３１４に対応する加入者のカウンタに関する使用量の値を示してもよい。加入者の使用量のカウンタの値が割り当て３１５を超える場合、ポリシー３００は使い果たされる可能性があり、ネットワークポリシーノード１３６がポリシーを変更するか、またはその他のネットワーク管理アクションを行ってもよい。繰り返し３１６は、ポリシーが再設定される頻度を示してもよい。繰り返し３１６の例示的な期間は、毎日、毎週、毎月などを含む。繰り返し３１６が繰り返しを示さなくてもよく、その場合、ポリシーがいつ期限切れになるか示すために有効期間３１７が含まれてもよい。Ｓｙ管理３１８は、ポリシーがポリシーノード１３６によって管理されるのか、またはＳｙインターフェースを介して通信する別のネットワークノードによって管理されるのかを示してもよい。
【００５０】
適用可能性ルール３２０は、ポリシー３００がコンテキストで適用されるかどうかを判定するための１つまたは複数のルールを含んでもよい。適用可能性ルールは、適用可能性条件３２２および適用可能性アクション３２４を含んでもよい。適用可能性条件は、ポリシーが適用可能かどうかを判定するために論理的に評価され得るコンテキスト情報に基づく任意の条件を含んでもよい。適用可能性条件は、選択されるポリシーの種類に応じて変わる可能性がある。使用量管理ポリシーの例として、ルールの適用可能性条件３２６は、アクセスタイプが４Ｇのときにルールが適用可能であることを示してもよい。その他の加入者およびユーザ機器の特徴が、適用可能性条件を生成するために有用であってもよい。別の例として、ネットワーク管理ポリシーの適用可能性条件は、加入者もしくはネットワークノードの特徴、または時間帯を使用してもよい。適用可能性アクション３２４は、例えば、ポリシーの名称３１１を適用可能なポリシーの結果リストに追加するか、または有効なポリシーをポリシーの名称３１１に設定することによってポリシーを適用可能なポリシーとして指定することを含んでもよい。
【００５１】
レーティングルール３３０は、ポリシー３００に関して使用量を測定するために使用されるレーティングファクタを決定するための動的属性でもよい。レーティングルール３３０は、１つまたは複数のレーティングルールを含んでもよく、各ルールが条件３３２およびアクション３３４を含む。例として、レーティングファクタは、ユーザデバイスのネットワークロケーションに基づいてもよい。例示的なレーティングルール３３６、３３７、および３３８は、そのようなレーティングポリシーを示してもよい。レーティングルール３３６は、ユーザデバイス１１０がローカルネットワークに接続されるときに、データトラフィックがレーティング１００を有することを示してもよい。レーティングルール３３７は、ユーザデバイス１１０がローミングしているときに、データトラフィックがレーティング２００を有することを示してもよい。レーティングルール３３８は、ユーザデバイス１１０が国際ローミングしているときに、データトラフィックがレーティング３００を有することを示してもよい。ポリシーノード１３６またはＰＧＷ１３４は、割り当て３１５と比較するために使用量をカウンタに加算する前に、生の使用量にレーティングファクタを乗じてもよい。例示的なルールは単純化されていたが、ポリシー３００は、例えば、時間帯、送信先の位置、保証された帯域幅、加入者のプロパティ、またはネットワークサービスに影響を与えるその他の要因などの追加の条件による複数のレーティングルールを含み得ることは理解される。アクション３３６は、レーティングファクタを設定するためのアクションを含んでもよいが、例えば、レーティングファクタを示すメッセージをユーザデバイスに送信することなどの追加のアクションを含んでもよい。ポリシーに関していかなるレーティングルール３３０も構成されていない場合、デフォルトのレーティングファクタ１が使用されてもよい。
【００５２】
閾値ルール３４０は、システムパラメータを割り当て３１５と比較することによってアクションを決定するための動的属性であってもよい。閾値ルール３４０は、１つまたは複数の閾値ルールを含んでもよく、各ルールが条件３４２およびアクション３４４を含む。条件３４２は、割り当ての割合に基づく暗黙的な条件を含み得る。例えば、使用量管理ポリシーに関する閾値ルールは、加入者の割り当ての使用量のシステムパラメータに基づいてもよい。その他の種類のポリシーは、例えば、ネットワークの輻輳、利用可能な帯域幅、セッションの数、または加入者ネットワーク１００のその他の測定値などのシステムパラメータに基づく閾値ルールを含み得る。条件３４２は、例えば、加入者のプリファレンスに基づく明示的な条件も含んでもよい。閾値ルール３４０は、暗黙的な条件の閾値の割合の順に生成され、評価されてもよい。アクション３４４、セッションアクションおよびフローアクションを幅広く含んでもよい。アクション３４４は、通知、修正、または終了として幅広くクラス分けされてもよい。例示的な閾値ルール３４６、３４７、３４８、および３４９は、あり得る１組の閾値ルールを示し得る。閾値ルール３４６は、加入者の使用量が割り当ての１００％に達したときにネットワークポリシーノード１３６がサービスを終了すべきであることを示してもよい。閾値ルール３４７は、加入者が割り当ての９０％に達したときに、ネットワークポリシーノード１３６が、例えば、帯域幅を制限することによって加入者のサービスの品質を下げるべきであることを示してもよい。閾値ルール３４８は、加入者が割り当ての５０％に達したときにネットワークポリシーノード１３６が加入者に通知すべきであることを示してもよい。閾値ルール３４９は、加入者が割り当ての０％にあるとき、つまり、ポリシーが新しいか、または再設定されたときにネットワークポリシーノード１３６が加入者に通知すべきであることを示してもよい。閾値ルール３４０が、加入者およびプロバイダの需要を満たすために追加のまたはより複雑なルールによって構成されうることがあることは明らかであるに違いない。
【００５３】
図４は、例示的なルールテーブル４００を示す。示された例において、例示的なルールテーブル４００は、適用可能なポリシーを決定するために使用されるポリシー選択ルールテーブルでもよい。その他の種類のルールテーブルが、同様の特徴を含んでもよい。ルールテーブル４００は、ルールオブジェクトストレージ２４５に記憶されたルールオブジェクトでもよい。ルールテーブル４００は、１つまたは複数のルール４４０ａ−ｎを含んでもよく、各ルールがルール条件４２０およびルールアクション４３０を含む。
【００５４】
ルール４４０ａ−ｎは、ポリシー選択ルールテーブルのあり得るルールの例として与えられる。ルール４４０は、１組のポリシーから適用可能性条件を抽出し、ポリシーが加入者に割り当てられるという条件などの追加の条件を追加することによって生成され得る。各ルール４４０は、異なる条件４２０を含み得るが、条件は重なってもよい。各ルール４４０に関するルールアクション４３０は、ポリシーの名称を有効なポリシーとして設定すること、またはポリシーの名称を結果の組に含めることであってもよい。ルール４４０ａは、加入者が４Ｇ接続を確立するときに適用可能であってもよい。ルール４４０ｂは、加入者がｉＰｈｏｎｅを使用して接続するときに適用可能であってもよい。ルール４４０ｃは、加入者がＡｎｄｒｏｉｄデバイスを使用して接続するときに適用可能であってもよい。ルール４４０ｄは、加入者がＤＳＬモデムを通じて接続を確立するときに適用可能であってもよい。ルール４４０ｅは、加入者がＷＡＰデバイスによって接続するときに適用可能であってもよい。ルール４４０ｆは、加入者が任意のデバイスによって接続するときに適用可能であってもよい。ルール４４０ｇは、加入者が任意のデバイスによって接続するときにやはり適用可能であってもよい。ルール４４０ｈは、追加のルールがルールテーブル４００に含まれ得ることを示してもよい。
【００５５】
ルールテーブル４００で与えられるルールは、１組の適用可能なポリシーを選択するために使用され得る。例として、上述の例示的なルールによれば、ユーザがｉＰｈｏｎｅを使用して４Ｇ接続を確立する場合、ルール４４０ａ、４４０ｂ、４４０ｆ、および４４０ｇは、すべて適用可能であってもよい。上述のように、ポリシーセレクタ２５５は、単一のルールを選択し得る。代替的に、ルールテーブルが単一のポリシーのみを生成するように、優先度および／または消費がルールの追加の条件として含まれうる。
【００５６】
図５は、ネットワークポリシーノード１３６によって実行される例示的な方法を示すフローチャートを示す。方法５００は、メッセージハンドラ２２０、スキャナ２４０、ルールエンジン２５０、ポリシーセレクタ２５５、およびアクションマネージャ２６０などのネットワークポリシーノード１３６のさまざまな構成要素によって実行され得る。方法５００は、ステップ５０５で始まり、ステップ５１０に進み得る。
【００５７】
ステップ５１０において、システムの運用者が、１つまたは複数のポリシーを供給し得る。システムの運用者は、ユーザインターフェース２３０を使用してポリシーの静的属性と動的属性との両方を選択し得る。システムの運用者は、特定の加入者への特定の参照なしに、抽象的にポリシーを供給してもよい。各ポリシーが供給されるとき、ポリシーの属性がポリシーストレージ２３５に記憶され得る。次に、方法はステップ５１５に進むことができる。
【００５８】
ステップ５１５において、システムの運用者が、１つまたは複数のポリシーを各加入者に割当て得る。ポリシーは、運用者によって手動で選択され、加入者に割り当てられてもよい。代替的に、ポリシーの割り当ては、加入者がさまざまなサービスオプションを選択するときにポリシーが自動的に割り当てられるように加入者プロファイルに基づいてもよい。例えば、使用量管理ポリシーが、各サービスプランまたはオプションに関して生成されてもよく、加入者がプランに加入するか、またはオプションを追加するときに割り当てられてもよい。次に、方法はステップ５２０に進むことができる。
【００５９】
ステップ５２０において、スキャナ２４０が、記憶されたポリシーをルールオブジェクトに変換してもよい。スキャナ２４０は、１組のポリシーまたはルールの組に関する選択テーブルを生成してもよい。スキャナ２４０は、各ポリシーに関する適用可能性条件を抽出し、適用可能性条件をルールの条件としてルールを生成してもよい。スキャナ２４０は、例えば、ポリシーが加入者に既に割り当てられたという条件などの追加の条件を選択テーブルのルールに追加してもよい。ポリシー選択テーブルは、ルールオブジェクトストレージ２４５にルールオブジェクトとして記憶され得る。スキャナ２４０は、ポリシーの動的属性に基づいて各ポリシーに関する１つまたは複数のアクションルールテーブルも生成してもよい。例えば、スキャナ２４０は、各使用量管理ポリシー内のレーティングルール２３０および閾値ルール２４０の各組に関するアクションルールテーブルを生成してもよい。各アクションルールテーブルは、ルールオブジェクトストレージ２４５に記憶され得る。次に、方法はステップ５２５に進むことができる。
【００６０】
ステップ５２５において、ネットワークポリシーノード１３６が、１組のポリシー、例えば、１組の使用量管理ポリシーなどのルールの組を呼び出してもよい。ルールの組は、ポリシーの決定が必要なときに毎回呼び出されてもよい。例えば、使用量管理ポリシーのルールの組は、加入者が新しいセッションを確立するか、または既存のセッションを更新するときに毎回呼び出されてもよい。ルールの組の呼び出しは、別のポリシーの決定の結果として生じるアクションでもよい。次に、方法はステップ５３０に進むことができる。
【００６１】
ステップ５３０において、ルールエンジン２５０が、ポリシー選択テーブルを評価して、どのポリシーが適用可能かを判定してもよい。ルールエンジン２５０は、各ルールの条件を評価し、条件が真と評価される場合、ルールのアクションを結果の組に追加してもよい。ルールエンジン２５０は、各ルールの条件を評価するためにコンテキスト情報ストレージ２２５にアクセスしてもよい。代替的に、ルールエンジン２５０は、各ルールの条件を評価するためにメッセージハンドラ２２０を使用して別のノードに問い合わせを行ってもよい。ポリシー選択テーブルに関するアクションは、ポリシーの名称を含み、したがって、ポリシー選択テーブルの評価は、１組の適用可能なポリシーをもたらしてもよい。次に、方法はステップ５３５に進むことができる。
【００６２】
ステップ５３５において、ポリシーセレクタ２５５が、どの適用可能なポリシーを実行すべきかを判定してもよい。ポリシーセレクタ２５５は、単純に、最も優先度の高いポリシーを選択してもよい。代替的に、ポリシーセレクタ２５５は、コンテキスト情報ストレージ２２５に基づいて追加の論理テストを実行してもよい。ポリシーセレクタ２５５がポリシーを選択すると、方法はステップ５４０に進むことができる。
【００６３】
ステップ５４０において、ネットワークポリシーノード１３６が、別のノードにレーティング情報を備えさせるべきかどうかを判定してもよい。ポリシー選択テーブルの評価がポリシーの変更を生じたか、またはレーティングに影響を与える可能性がある別のイベントに基づいていた場合、方法５００はステップ５４５に進むことができる。それ以外の場合、方法５００はステップ５５５に進むことができる。
【００６４】
ステップ５４５において、ルールエンジン２５０が、選択されたポリシーに関連するレーティング選択ルールテーブルを評価する可能性がある。ルールエンジン２５０は、ルールオブジェクトストレージ２４５からレーティング選択ルールテーブルのオブジェクトを取り出し、レーティング選択ルールテーブルの条件を評価するためにコンテキスト情報ストレージ２２５にアクセスしてもよい。ルールエンジン２５０が、条件が真であると評価するとき、アクションマネージャ２６０にレーティングファクタを渡してもよい。ステップ５５０において、アクションマネージャ２６０が、メッセージハンドラ２２０を使用して、別のノード、例えば、ＰＧＷ１３４にレーティング情報を備えさせてもよい。メッセージハンドラ２２０は、別のノードに、使用量を監視し、ネットワークポリシーノード１３６に使用量を報告する前にその使用量にレーティングファクタを乗じるように要求するメッセージを生成してもよい。代替的に、ネットワークポリシーノード１３６が、レーティングファクタを記憶し、使用量レポートを受信するときに、報告された使用量にレーティングファクタを乗じてもよい。次に、方法５００はステップ５５５に進むことができる。
【００６５】
ステップ５５５において、ルールエンジン２５０が、選択されたポリシーに関連する閾値ルールテーブルなどのアクションルールテーブルを評価してもよい。ルールエンジン２５０は、ルールオブジェクトストレージ２４５から閾値ルールテーブルのオブジェクトを取り出し、閾値ルールテーブルの条件を評価するためにコンテキスト情報ストレージ２２５にアクセスしてもよい。ルールエンジン２５０は、ルールエンジン２５０が条件が真であると評価するとき、アクションマネージャ２６０にアクションパスを渡してもよい。ステップ５６０において、アクションマネージャ２６０が、アクションパスを実行してもよい。次に、方法はステップ５６５に進むことができき、ステップ５６５において、方法は終了する。
【００６６】
以上により、さまざまな例示的な実施形態が、効率的なネットワークポリシーの決定を行うことができるネットワークポリシーノードを提供する。特に、ポリシーをルールオブジェクトに変換することによって、ルールエンジンが、適用可能なポリシーを効率的に選択し、加入者ネットワークを管理するためのポリシーのルールを評価することができる。
【００６７】
本発明のさまざまな例示的な実施形態がハードウェアおよび／またはファームウェアで実装され得ることは、上述の説明から明らかであるに違いない。さらに、さまざまな例示的な実施形態は、本明細書において詳細に説明された動作を実行するために少なくとも１つのプロセッサによって読まれ、実行され得る、機械可読ストレージ媒体に記憶された命令として実装される可能性がある。機械可読ストレージ媒体は、パーソナルもしくはラップトップコンピュータ、サーバ、またはその他のコンピューティングデバイスなどの機械によって読まれ得る形態で情報を記憶するための任意のメカニズムを含む可能性がある。したがって、機械可読ストレージ媒体は、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスクストレージ媒体、光学式ストレージ媒体、フラッシュメモリデバイス、および同様のストレージ媒体を含む可能性がある。
【００６８】
本明細書の任意のブロック図が本発明の主要な点を具現化する例示的な回路の概念図を表すことは、当業者に理解されるに違いない。同様に、任意のフローチャート、流れ図、状態遷移図、擬似コードなどは、機械可読媒体内に実質的に表現され、したがって、コンピュータまたはプロセッサによって、そのようなコンピュータまたはプロセッサが明示的に図示されているか否かに関わらず実行され得るさまざまなプロセスを表すことが理解されるであろう。
【００６９】
さまざまな例示的な実施形態がそれらの実施形態の特定の例示的な態様を特に参照して詳細に説明されたが、本発明は、その他の実施形態が可能であり、本発明の詳細はさまざまな明らかな観点で修正可能であることを理解されたい。当業者には容易に分かるように、本発明の精神および範囲内にとどまったまま、変更および修正がなされる可能性がある。したがって、上述の開示、説明、および図は、例示のみを目的とするものであり、本発明をまったく限定せず、本発明は、特許請求の範囲によってのみ定義される。
【図１】
0005837988.tif 000002
【図２】
0005837988.tif 000003
【図３】
0005837988.tif 000004
【図４】
0005837988.tif 000005
【図５】
0005837988.tif 000006