(57)【特許請求の範囲】
【請求項１】
ネットワークデバイスによって実行される、サポートされる特徴をオーバーライドするための方法であって、
ネットワークデバイスで、メッセージを受信するステップ（５１０、６１０）と、
メッセージの受信に応答して、サポートされる特徴のセットがパートナデバイスに送信されるべきであると判定するステップ（５２０、５４０、６２０）と、
パートナデバイスに基づいて、特徴のデフォルトセットがオーバーライドされるべきかどうかを判定するステップ（５５０、６４０）と、
サポートされる特徴のデフォルトセットがオーバーライドされるべきである場合に、パートナデバイスに特徴の代替セットを送信するステップ（５７０、６６０）と、
サポートされる特徴のデフォルトセットがオーバーライドされるべきではない場合に、パートナデバイスに特徴のデフォルトセットに基づいて特徴の標準セットを送信するステップ（５６０、６５０）と
を含み、
ネットワークデバイスおよびパートナデバイスが、両方とも、ポリシおよび課金ルールノード（ＰＣＲＮ）（２３６ｈ、２３６ｖ）である、方法。
【請求項２】
メッセージの受信に応答して、サポートされる特徴のセットがパートナデバイスに送信されるべきであると判定するステップが、Ｓ９セッションがパートナデバイスと確立されるべきであると判定するステップ（５４０、６２０）を含む、請求項１に記載の方法。
【請求項３】
パートナデバイスに特徴の代替セットを送信するステップが、サポートされる特徴ＡＶＰを含まないＳ９メッセージをパートナデバイスに送信するステップを含む、請求項１または２に記載の方法。
【請求項４】
メッセージが、パートナデバイスから受信され、アドバタイズされる特徴のセットを含み、
パートナデバイスに特徴の代替セットを送信するステップが、
パートナデバイスに関連するオーバーライド特徴のセットに基づいて、許容される特徴のセットを識別するステップと、
アドバタイズされる特徴のセットおよび許容される特徴のセットに基づいて、一致する特徴のセットを判定するステップと、
パートナデバイスに一致する特徴のセットを送信するステップと
を含む、請求項１に記載の方法。
【請求項５】
メッセージが、別のネットワークデバイスから受信され、
パートナデバイスに特徴の代替セットを送信するステップが、
パートナデバイスに関連するオーバーライド特徴のセットに基づいて、許容される特徴のセットを識別するステップと、
パートナデバイスに許容される特徴のセットを送信するステップと
を含む、請求項１または２に記載の方法。
【請求項６】
パートナデバイスに基づいて、サポートされる特徴のデフォルトセットがオーバーライドされるべきかどうかを判定するステップが、ネットワークデバイスがパートナデバイスに関連してオーバーライド特徴のセットを記憶するかどうかを判定するステップを含む、請求項１から５のいずれかに記載の方法。
【請求項７】
ネットワークデバイスおよびパートナデバイスのうちの少なくとも１つが、メッセージに関連するユーザのホーム公衆陸上移動網（ＨＰＬＭＮ）（２３０ｈ）に属する、請求項１から６のいずれかに記載の方法。
【請求項８】
サポートされる特徴をオーバーライドするためのネットワークデバイス（３００）であって、
メッセージを受信するインターフェース（３０５、３３０）と、
インターフェースがメッセージを受信するのに応答して、サポートされる特徴のセットがパートナデバイスに送信されるべきであると判定するように構成された、ローミング通信モジュール（３２５）と、
特徴のデフォルトセットがオーバーライドされるべきかどうかをパートナデバイスに基づいて判定するように構成された、デフォルトオーバーライドモジュール（３４０）と、
サポートされる特徴のデフォルトセットがオーバーライドされるべきである場合に、特徴の代替セットを含む特徴リストを生成する、および、
サポートされる特徴のデフォルトセットがオーバーライドされるべきではない場合に、特徴のデフォルトセットに基づく特徴の標準セットを含む特徴リストを生成する
ように構成された、特徴リストコンストラクタ（３５０）と、
パートナデバイスに特徴リストを送信するように構成された、ネゴシエーションモジュール（３３５）と
を備え、
ネットワークデバイスおよびパートナデバイスが、ポリシおよび課金ルールノード（ＰＣＲＮ）（２３６ｈ、２３６ｖ）である、ネットワークデバイス。
【請求項９】
サポートされる特徴のセットがパートナデバイスに送信されるべきであると判定する際に、ローミング通信モジュール（３２５）が、Ｓ９セッションがパートナデバイスと確立されるべきであると判定するように構成された、請求項８に記載のネットワークデバイス。
【請求項１０】
パートナデバイスに特徴リストを送信する際に、ネゴシエーションモジュール（３３５）がパートナデバイスにＳ９メッセージを送信するように構成され、Ｓ９メッセージがサポートされる特徴ＡＶＰを含まない、請求項８または９に記載のネットワークデバイス。
【請求項１１】
メッセージが、パートナデバイスから受信され、アドバタイズされる特徴のセットを含み、
デフォルトオーバーライドモジュール（３４０）が、パートナデバイスに関連するオーバーライド特徴のセットに基づいて許容される特徴のセットを識別するようにさらに構成され、
特徴の代替セットを含む特徴リストを生成する際に、特徴リストコンストラクタ（３５０）が、
アドバタイズされる特徴のセットおよび許容される特徴のセットに基づいて、一致する特徴のセットを判定する、および、
一致する特徴のセットを含む特徴リストを生成する
ように構成された、請求項８に記載のネットワークデバイス。
【請求項１２】
メッセージが、別のネットワークデバイスから受信され、
デフォルトオーバーライドモジュール（３４０）がさらに、パートナデバイスに関連するオーバーライド特徴のセットに基づいて、許容される特徴のセットを識別するように構成され、
特徴のデフォルトセットを含む特徴リストを生成する際に、特徴リストコンストラクタ（３５０）が、許容される特徴のセットを含む特徴リストを生成するように構成された、
請求項８または９に記載のネットワークデバイス。
【請求項１３】
特徴のデフォルトセットがオーバーライドされるべきかどうかを判定する際に、デフォルトオーバーライドモジュール（３４０）が、ネットワークデバイスがパートナデバイスに関連してオーバーライド特徴のセットを記憶するかどうかを判定するように構成された、請求項８から１２のいずれかに記載のネットワークデバイス。
【請求項１４】
ネットワークデバイスが、メッセージに関連するユーザのホーム公衆陸上移動網（ＨＰＬＭＮ）（２３０ｈ）および訪問先公衆陸上移動網（ＶＰＬＭＮ）（２３０ｖ）のうちの少なくとも１つに属する、請求項８から１３のいずれかに記載のネットワークデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で開示される様々な例示的実施形態は、概して、電気通信ネットワークに関する。
【背景技術】
【０００２】
移動体通信ネットワーク内の様々なタイプのアプリケーションの需要が増えるにつれて、サービスプロバイダは、この広範な機能を確実に提供するために、自らのシステムを絶えずアップグレードしなければならない。かつて単に音声通信のために設計されたシステムであったものが、テキストメッセージング、マルチメディアストリーミング、および一般的インターネットアクセスを含む無数のアプリケーションにアクセスを提供し、汎用ネットワークアクセスポイントに成長した。そのようなアプリケーションをサポートするために、プロバイダは、自らの既存の音声ネットワークに加えて新しいネットワークを構築し、決して洗練されていない解決法をもたらした。第２世代および第３世代のネットワークで見られるように、音声サービスは、専用音声チャネルを介して運ばれ、回路交換式のコアに導かれる必要があり、一方、他のサービス通信は、インターネットプロトコル（ＩＰ）に従って送信され、異なるパケット交換式のコアに導かれる。これは、アプリケーション提供と、計量および課金と、体感品質（ｑｕａｌｉｔｙ  ｏｆ  ｅｘｐｅｒｉｅｎｃｅ、ＱｏＥ）保証とに関する独特な問題を引き起こした。
【０００３】
第２世代および第３世代のデュアルコア手法を簡略化することを目的として、３ＧＰＰ（３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ、第３世代パートナシッププロジェクト）は、ロングタームエボリューション（ＬＴＥ）と称する新しいネットワーク体系を推奨した。ＬＴＥネットワークでは、すべての通信が、ユーザ機器（ＵＥ）からＥＰＣ（Ｅｖｏｌｖｅｄ  Ｐａｃｋｅｔ  Ｃｏｒｅ、進化型パケットコア）と称されるオールＩＰコアにＩＰチャネルを介して運ばれる。ＥＰＣは、次いで、受け入れ可能なＱｏＥを確保し、加入者に自らの特定のネットワーク活動について課金しながら、他のネットワークにゲートウェイアクセスを提供する。
【０００４】
３ＧＰＰは、一般に、いくつかの技術的仕様においてＥＰＣの構成要素とそれらの互いの対話とを説明する。具体的には、３ＧＰＰ  ＴＳ２９．２１２、３ＧＰＰ  ＴＳ２９．２１３、および、３ＧＰＰ  ＴＳ２９．２１４は、ＥＰＣのポリシおよび課金ルール機能（Ｐｏｌｉｃｙ  ａｎｄ  Ｃｈａｒｇｉｎｇ  Ｒｕｌｅｓ  Ｆｕｎｃｔｉｏｎ、ＰＣＲＦ）と、ポリシおよび課金実施機能（Ｐｏｌｉｃｙ  ａｎｄ  Ｃｈａｒｇｉｎｇ  Ｅｎｆｏｒｃｅｍｅｎｔ  Ｆｕｎｃｔｉｏｎ、ＰＣＥＦ）と、ベアラバインディングおよびイベント報告機能（Ｂｅａｒｅｒ  Ｂｉｎｄｉｎｇ  ａｎｄ  Ｅｖｅｎｔ  Ｒｅｐｏｒｔｉｎｇ  Ｆｕｎｃｔｉｏｎ、ＢＢＥＲＦ）とを説明する。これらの仕様はさらに、高信頼のデータサービスを提供し、そこでの使用について加入者に課金するためにこれらの要素がどのように対話するかに関するいくらかの手引きを提供する。
【０００５】
３ＧＰＰはまた、様々なユーザにローミングアクセスを提供するための様々な手続きを推奨している。３ＧＰＰ  ＴＳ２９．２１５は、訪問先ＰＣＲＦが、接続されたユーザのホームＰＣＲＦとＳ９セッションを介して通信し得ることを実現する。このＳ９セッションを介して、訪問先ＰＣＲＦは、ユーザによって要求されるデータフローの提供において有用な情報を検索することができる。
【発明の概要】
【課題を解決するための手段】
【０００６】
様々な例示的実施形態の簡単な概要が以下に提示される。様々な例示的実施形態のいくつかの態様を明らかにし、紹介することを意図して、但し本発明の範囲を限定することは意図せず、いくらかの単純化および省略が以下の概要で行われることがある。当業者が本発明の概念を行い、使用することを可能にするのに適した好ましい例示的実施形態の詳細な説明が後節に続く。
【０００７】
様々な例示的実施形態は、ネットワークデバイスによって実行される、サポートされる特徴をオーバーライドするための方法に関し、本方法は、以下のうちの１つまたは複数を含む：ネットワークデバイスでメッセージを受信するステップと、メッセージの受信に応答して、サポートされる特徴のセットがパートナデバイスに送信されるべきであると判定するステップと、パートナデバイスに基づいて、特徴のデフォルトセットがオーバーライドされるべきかどうかを判定するステップと、サポートされる特徴のデフォルトセットがオーバーライドされるべきである場合に、パートナデバイスに特徴の代替セットを送信するステップと、サポートされる特徴のデフォルトセットがオーバーライドされるべきではない場合に、特徴のデフォルトセットに基づいてパートナデバイスに特徴の標準セットを送信するステップ。
【０００８】
様々な例示的実施形態が、サポートされる特徴をオーバーライドするためのネットワークデバイスに関し、ネットワークデバイスは、以下のうちの１つまたは複数を含む：メッセージを受信するインターフェースと、インターフェースがメッセージを受信するのに応答して、サポートされる特徴のセットがパートナデバイスに送信されるべきであると判定するように構成されたローミング通信モジュールと、パートナデバイスに基づいて、特徴のデフォルトセットがオーバーライドされるべきかどうかを判定するように構成されたデフォルトオーバーライドモジュールと、サポートされる特徴のデフォルトセットがオーバーライドされるべきである場合に特徴の代替セットを含む特徴リストを生成し、サポートされる特徴のデフォルトセットがオーバーライドされるべきである場合に特徴のデフォルトセットに基づく特徴の標準セットを含む特徴リストを生成するように構成された、特徴リストコンストラクタと、パートナデバイスに特徴リストを送信するように構成されたネゴシエーションモジュール。
【０００９】
様々な例示的実施形態が、サポートされる特徴をオーバーライドするためのネットワークデバイスによる実行のための命令で符号化された有形的および非一時的機械可読ストレージ媒体に関し、有形的および非一時的機械可読ストレージ媒体は、以下のうちの１つまたは複数を含む：ネットワークデバイスでメッセージを受信するための命令と、メッセージの受信に応答して、サポートされる特徴のセットがパートナデバイスに送信されるべきであると判定するための命令と、パートナデバイスに基づいて、特徴のデフォルトセットがオーバーライドされるべきかどうかを判定するための命令と、サポートされる特徴のデフォルトセットがオーバーライドされるべきである場合に、パートナデバイスに特徴の代替セットを送信するための命令と、サポートされる特徴のデフォルトセットがオーバーライドされるべきではない場合に、特徴のデフォルトセットに基づいてパートナデバイスに特徴の標準セットを送信するための命令。
【００１０】
メッセージの受信に応答してサポートされる特徴のセットがパートナデバイスに送信されるべきであると判定するステップが、Ｓ９セッションがパートナデバイスと確立されるべきであると判定するステップを含む、様々な実施形態が記載される。
【００１１】
パートナデバイスに特徴の代替セットを送信するステップが、サポートされる特徴ＡＶＰを含まないＳ９メッセージをパートナデバイスに送信するステップを含む、様々な実施形態が記載される。
【００１２】
以下のような様々な実施形態が記載される：メッセージがパートナデバイスから受信され、アドバタイズされる特徴のセットを含み、パートナデバイスに特徴の代替セットを送信するステップが以下を含む：パートナデバイスに関連するオーバーライド特徴のセットに基づいて許容される特徴のセットを識別するステップと、アドバタイズされる特徴のセットおよび許容される特徴のセットに基づいて一致する特徴のセットを判定するステップと、パートナデバイスに一致する特徴のセットを送信するステップ。
【００１３】
以下のような様々な実施形態が記載される：メッセージが、別のネットワークデバイスから受信され、パートナデバイスに特徴の代替セットを送信するステップが以下を含む：パートナデバイスに関連するオーバーライド特徴のセットに基づいて許容される特徴のセットを識別するステップ、パートナデバイスに許容される特徴のセットを送信するステップ。
【００１４】
パートナデバイスに基づいてサポートされる特徴のデフォルトセットがオーバーライドされるべきかどうかを判定するステップが、ネットワークデバイスがパートナデバイスに関してオーバーライド特徴のセットを記憶するかどうかを判定するステップを含む、様々な実施形態が記載される。
【００１５】
以下のような様々な実施形態が記載される：ネットワークデバイスおよびパートナデバイスがともにポリシおよび課金ルールノード（ｐｏｌｉｃｙ  ａｎｄ  ｃｈａｒｇｉｎｇ  ｒｕｌｅｓ  ｎｏｄｅ、ＰＣＲＮ）であり、ネットワークデバイスおよびパートナデバイスのうちの少なくとも１つは、メッセージに関連するユーザのホーム公衆陸上移動網（ｈｏｍｅ  ｐｕｂｌｉｃ  ｌａｎｄ  ｍｏｂｉｌｅ  ｎｅｔｗｏｒｋ、ＨＰＬＭＮ）に属する。
【００１６】
様々な例示的実施形態をよりよく理解するために、以下のような添付の図面が参照される。
【図面の簡単な説明】
【００１７】
【図１】様々なデータサービスを提供するための例示的加入者ネットワークを示す図である。
【図２】様々なデータサービスにローミングアクセスを提供するための例示的加入者ネットワークを示す図である。
【図３】例示的ポリシおよび課金ルールノード（ＰＣＲＮ）を示す図である。
【図４】オーバーライド特徴を記憶するための例示的データ配列を示す図である。
【図５】アドバタイズされた特徴をパートナデバイスに送信するための例示的方法を示す図である。
【図６】一致する特徴をパートナデバイスに送信するための例示的方法を示す図である。
【発明を実施するための形態】
【００１８】
理解を容易にするために、同一参照番号は、ほぼ同じもしくは同様の構造および／またはほぼ同じもしくは同様の機能を有する要素を指定するために使用される。
【００１９】
３ＧＰＰ規格は、進化する規格であり、拡張される機能を含むために継続的に更新される。しかし、これは、異なるリリースに従って実装されるノードが通信を試みるときに、互換性の問題を生み出すことがある。たとえば、最近のバージョンの仕様に従って実装されたノードがより古いノードにメッセージを送信することがある。このより古いノードは、メッセージはより古いバージョンの仕様の下では無効であったおよび／または定義されていなかったため、メッセージを処理することができないことがある。
【００２０】
新しいＳ９セッションを確立するときに下位互換性を提供するために、２つのポリシおよび課金ルールノード（ＰＣＲＮ）が、セッションでサポートされることになる特徴のセットを最初にネゴシエーションすることができる。たとえば、第１のＰＣＲＮは３ＧＰＰ  ＴＳ２９．２１５のリリース１０に従って実装されるが、第２のＰＣＲＮはリリース９に従って実装される場合、それらの２つのＰＣＲＮは、それらの通信をリリース９によってサポートされる通信に限定することができる。
【００２１】
３ＧＰＰ仕様は、２つのＰＣＲＮが、両方によってサポートされる特徴のセット全体に従ってＳ９セッションで通信すべきであると明記する。しかし、いくつかの環境では、２つのＰＣＲＮが両方によってサポートされるいくつかの特徴を除いて互いに通信することが望ましいことがある。たとえば、２つのＰＣＲＮが両方ともある特徴をサポートし得るが、一方、ネットワーク内の他のデバイスは特徴をまだサポートしないことがある。もう１つの例として、２つのＰＣＲＮが両方ともある特徴を実装し得るが、一方、異なる実装形態はなお互換性がないことがある。
【００２２】
前述を考慮すると、いくつかのパートナＰＣＲＮのための新しいＳ９セッションをネゴシエーションする際にＰＣＲＮのデフォルトビヘイビアをオーバーライドすることが望ましいことになろう。具体的には、両方のデバイスによってサポートされるいくつかの特徴を除外する２つのＰＣＲＮの間の特徴のセットをネゴシエーションする方法を提供することが望ましいことになろう。
【００２３】
ここで、同様の番号が同様の構成要素またはステップを指す図面を参照すると、様々な例示的実施形態の開示される広範な態様がある。
【００２４】
図１は、様々なデータサービスを提供するための例示的加入者ネットワーク１００を示す。例示的加入者ネットワーク１００は、様々なサービスへのアクセスを提供するための電気通信ネットワークまたは他のネットワークでもよい。様々な実施形態で、加入者ネットワーク１００は、公衆陸上移動網（ｐｕｂｌｉｃ  ｌａｎｄ  ｍｏｂｉｌｅ  ｎｅｔｗｏｒｋ、ＰＬＭＮ）でもよい。例示的加入者ネットワーク１００は、ユーザ機器１１０、基地局１２０、進化型パケットコア（ＥＰＣ）１３０、パケットデータネットワーク１４０、およびアプリケーション機能（ＡＦ）１５０を含み得る。
【００２５】
ユーザ機器１１０は、データサービスをエンドユーザに提供するためのパケットデータネットワーク１４０と通信するデバイスでもよい。そのようなデータサービスは、たとえば、音声通信、テキストメッセージング、マルチメディアストリーミング、およびインターネットアクセスを含み得る。より具体的には、様々な例示的実施形態で、ユーザ機器１１０は、パーソナルもしくはラップトップコンピュータ、ワイヤレス電子メールデバイス、携帯電話、タブレット、テレビジョンセットトップボックス、または、ＥＰＣ１３０を介して他のデバイスと通信することができる任意の他のデバイスである。
【００２６】
基地局１２０は、ユーザ機器１１０とＥＰＣ１３０の間の通信を可能にするデバイスでもよい。たとえば、基地局１２０は、３ＧＰＰ規格によって定義されるような進化型ノードＢ（ｅＮｏｄｅ  Ｂ）などの基地局装置でもよい。したがって、基地局１２０は、電波などの第１の媒体を介してユーザ機器１１０と通信し、イーサネット（登録商標）ケーブルなどの第２の媒体を介してＥＰＣ１３０と通信するデバイスでもよい。基地局１２０は、ＥＰＣ１３０と直接通信してもよく、またはいくつかの中間ノード（図示せず）を介して通信し得る。様々な実施形態で、複数の基地局（図示せず）が、ユーザ機器１１０に移動性を提供するために存在し得る。様々な代替実施形態で、ユーザ機器１１０は、ＥＰＣ１３０と直接通信し得ることに留意されたい。そのような実施形態で、基地局１２０は、存在しなくてもよい。
【００２７】
進化型パケットコア（ＥＰＣ）１３０は、パケットデータネットワーク１４０へのゲートウェイアクセスをユーザ機器１１０に提供するデバイスまたはデバイスのネットワークでもよい。ＥＰＣ１３０はさらに、提供されるデータサービスの使用について加入者に課金し、特定の体感品質（ＱｏＥ）標準が満たされることを確保することができる。したがって、ＥＰＣ１３０は、少なくとも部分的に、３ＧＰＰ  ＴＳ２９．２１２、２９．２１３、および２９．２１４規格に従って実装され得る。それにより、ＥＰＣ１３０は、サービングゲートウェイ（ｓｅｒｖｉｎｇ  ｇａｔｅｗａｙ、ＳＧＷ）１３２、パケットデータネットワークゲートウェイ（ＰＧＷ）１３４、ポリシおよび課金ルールノード（ＰＣＲＮ）１３６、およびサブスクリプションプロファイルレポジトリ（ｓｕｂｓｃｒｉｐｔｉｏｎ  ｐｒｏｆｉｌｅ  ｒｅｐｏｓｉｔｏｒｙ、ＳＰＲ）を含み得る。
【００２８】
サービングゲートウェイ（ＳＧＷ）１３２は、ＥＰＣ１３０にゲートウェイアクセスを提供するデバイスでもよい。ＳＧＷ１３２は、ユーザ機器１１０によって送信されるパケットを受信するＥＰＣ１３０内の第１のデバイスのうちの１つでもよい。様々な実施形態はまた、ＳＧＷ１３２に先立ってパケットを受信することができる移動管理エンティティ（ｍｏｂｉｌｉｔｙ    ｍａｎａｇｅｍｅｎｔ  ｅｎｔｉｔｙ、ＭＭＥ）（図示せず）を含み得る。ＳＧＷ１３２は、そのようなパケットをＰＧＷ１３４に向けて転送することができる。ＳＧＷ１３２は、たとえば、複数の基地局（図示せず）の間のユーザ機器１１０の移動性の管理、および、供される各流れの特定のサービス品質（ＱｏＳ）特性の実施など、いくつかの機能を実行することができる。プロキシモバイルＩＰ規格を実装するものなどの様々な実装形態で、ＳＧＷ１３２は、ベアラバインディングおよびイベント報告機能（ＢＢＥＲＦ）を含み得る。様々な例示的実施形態で、ＥＰＣ１３０は、複数のＳＧＷ（図示せず）を含むことができ、各ＳＧＷは複数の基地局（図示せず）と通信することができる。
【００２９】
パケットデータネットワークゲートウェイ（ＰＧＷ）１３４は、パケットデータネットワーク１４０にゲートウェイアクセスを提供するデバイスでもよい。ＰＧＷ１３４は、ＳＧＷ１３２を介してパケットデータネットワーク１４０に向けてユーザ機器１１０によって送信されるパケットを受信するＥＰＣ１３０内の最後のデバイスでもよい。ＰＧＷ１３４は、各サービスデータフロー（ｓｅｒｖｉｃｅ  ｄａｔａ  ｆｌｏｗ、ＳＤＦ）のためのポリシおよび課金制御（ｐｏｌｉｃｙ  ａｎｄ  ｃｈａｒｇｉｎｇ  ｃｏｎｔｒｏｌ、ＰＣＣ）ルールを実施するポリシおよび課金実施機能（ＰＣＥＦ）を含み得る。したがって、ＰＧＷ１３４は、ポリシおよび課金実施ノード（ｐｏｌｉｃｙ  ａｎｄ  ｃｈａｒｇｉｎｇ  ｅｎｆｏｒｃｅｍｅｎｔ  ｎｏｄｅ、ＰＣＥＮ）でもよい。ＰＧＷ１３４は、たとえば、パケットフィルタリング、深パケット検査、および加入者課金サポートなどのいくつかの追加の特徴を含み得る。ＰＧＷ１３４はまた、知られていないアプリケーションサービスのためのリソース割当てを要求する責任を負うことができる。
【００３０】
ポリシおよび課金ルールノード（ＰＣＲＮ）１３６は、アプリケーションサービスの要求を受信し、ＰＣＣルールを生成し、ＰＣＣルールをＰＧＷ１３４および／または他のＰＣＥＮ（図示せず）に提供するデバイスまたはデバイスのグループでもよい。ＰＣＲＮ１３６は、Ｒｘインターフェースを介してＡＦ１５０と通信してもよい。ＡＦ１５０に関して以下にさらに詳しく説明するように、ＰＣＲＮ１３６は、認証および権限付与要求（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ａｕｔｈｏｒｉｚａｔｉｏｎ  Ｒｅｑｕｅｓｔ、ＡＡＲ）１６０の形でアプリケーション要求をＡＦ１５０から受信することができる。ＡＡＲ１６０を受信したとき、ＰＣＲＮ１３６は、アプリケーション要求１６０を満たすための少なくとも１つの新しいＰＣＣルールを生成することができる。
【００３１】
ＰＣＲＮ１３６はまた、それぞれ、ＧｘｘおよびＧｘインターフェースを介してＳＧＷ１３２およびＰＧＷ１３４と通信してもよい。ＰＣＲＮ１３６は、ＳＧＷ１３２またはＰＧＷ１３４からクレジット制御要求（ｃｒｅｄｉｔ  ｃｏｎｔｒｏｌ  ｒｅｑｕｅｓｔ、ＣＣＲ）（図示せず）の形でアプリケーション要求を受信することができる。ＡＡＲ１６０でのように、ＣＣＲを受信したとき、ＰＣＲＮは、アプリケーション要求１７０を満たすための少なくとも１つの新しいＰＣＣルールを生成することができる。様々な実施形態で、ＡＡＲ１６０およびＣＣＲは、別個に処理されることになる２つの独立したアプリケーション要求を表すことができ、一方、他の実施形態で、ＡＡＲ１６０およびＣＣＲは単一のアプリケーション要求に関する情報を伝えることができ、ＰＣＲＮ１３６は、ＡＡＲ１６０およびＣＣＲの組合せに基づいて少なくとも１つのＰＣＣルールを作成することができる。様々な実施形態で、ＰＣＲＮ１３６は、単一のメッセージおよび対のメッセージアプリケーション要求の両方を処理する能力を有し得る。
【００３２】
新しいＰＣＣルールを作成したとき、またはＰＧＷ１３４による要求に応じて、ＰＣＲＮ１３６は、Ｇｘインターフェースを介してＰＧＷ１３４にＰＣＣルールを提供することができる。たとえば、ＰＭＩＰ規格を実装するものなどの様々な実施形態で、ＰＣＲＮ１３６はまた、ＱｏＳルールを生成することができる。新しいＱｏＳルールを作成したとき、またはＳＧＷ１３２による要求に応じて、ＰＣＲＮ１３６は、Ｇｘｘインターフェースを介してＳＧＷ１３２にＱｏＳルールを提供することができる。
【００３３】
サブスクリプションプロファイルレポジトリ（ＳＰＲ）１３８は、加入者ネットワーク１００への加入者に関連する情報を記憶するデバイスでもよい。したがって、ＳＰＲ１３８は、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスクストレージ媒体、光ストレージ媒体、フラッシュメモリデバイス、および／または同様のストレージ媒体などの機械可読ストレージ媒体を含み得る。ＳＰＲ１３８は、ＰＣＲＮ１３６の構成要素でもよく、または、ＥＰＣ１３０内の独立したノードを構成し得る。ＳＰＲ１３８によって記憶されるデータは、各加入者の識別子と、帯域幅限界、課金パラメータ、および加入者優先順位などの各加入者の加入情報の指示とを含み得る。
【００３４】
パケットデータネットワーク１４０は、ユーザ機器１１０とＡＦ１５０などのパケットデータネットワーク１４０に接続された他のデバイスとの間でデータ通信を提供するための任意のネットワークでもよい。パケットデータネットワーク１４０はさらに、たとえば、パケットデータネットワーク１４０と通信する様々なユーザデバイスに電話および／またはインターネットサービスを提供することができる。
【００３５】
アプリケーション機能（ＡＦ）１５０は、知られているアプリケーションサービスをユーザ機器１１０に提供するデバイスでもよい。したがって、ＡＦ１５０は、たとえば、ビデオストリーミングまたは音声通信サービスをユーザ機器１１０に提供するサーバまたは他のデバイスでもよい。ＡＦ１５０はさらに、Ｒｘインターフェースを介してＥＰＣ１３０のＰＣＲＮ１３６と通信してもよい。ＡＦ１５０が、知られているアプリケーションサービスをユーザ機器１１０に提供し始めようとするとき、ＡＦ１５０は、ダイアメータープロトコルによる認証および権限付与要求（ＡＡＲ）１６０などのアプリケーション要求メッセージを生成して、リソースがアプリケーションサービスのために割り当てられるべきであることをＰＣＲＮ１３６に通知することができる。このアプリケーション要求メッセージは、アプリケーションサービスを使用する加入者の識別、加入者および／または関連するＩＰ−ＣＡＮセッションのＡＰＮのＩＰアドレス、および／または、要求されるサービスを提供するために確立される必要がある特定のサービスデータフローの識別などの情報を含み得る。ＡＦ１５０は、Ｒｘインターフェースを介してＰＣＲＮ１３６にそのようなアプリケーション要求を通信することができる。
【００３６】
図２は、様々なデータサービスにローミングアクセスを提供するための例示的加入者ネットワーク２００を示す。例示的加入者ネットワーク２００は、例示的ネットワーク１００に対応し得る。ＥＰＣ２３０ｖは、ＵＥ２１０などのローミングＵＥのためのパケットデータネットワーク２４０に訪問先アクセスを提供することができ、それによって、ＵＥ２１０に関連するトラフィックはＳＧＷ２３２ｖおよびＰＧＷ２３４ｖを介して流れる。様々な実施形態で、ＥＰＣ２３０ｖおよびＥＰＣ２３０ｈは、同パケットデータネットワーク２４０に接続することができ（図のように）、または、２つの独立したネットワークに接続することができる。別法としてまたは追加で、ＥＰＣ２３０ｖは、ＵＥ２１０などのローミングＵＥのためのパケットデータネットワーク２４０にホームルートのアクセスを提供することができ、それによって、ＵＥ２１０に関連するトラフィックは、ＳＧＷ２３２ｖおよびＰＧＷ２３４ｈを介して流れる。それにより、ＳＧＷ２３２ｖは、ＰＧＷ２３４ｈと通信し得る。同様に、ＥＰＣ２３０ｈが、基地局２２０ｈに接続された他のローミングＵＥ（図示せず）に同様のアクセスを提供することができるように、ＳＧＷ２３２ｈはＰＧＷ２３４ｖと通信し得る。
【００３７】
ＵＥ２１０は、基地局２２０ｖと通信し得るが、基地局２２０ｈの範囲の外側にあり得る。しかし、基地局２２０ｖは、ＵＥ２１０のホーム公衆陸上移動網（ＨＰＬＭＮ）に接続することができない。その代わりに、基地局２２０ｖは、ＵＥ２１０に関する訪問先公衆陸上移動網（ｖｉｓｉｔｅｄ  ｐｕｂｌｉｃ  ｌａｎｄ  ｍｏｂｉｌｅ  ｎｅｔｗｏｒｋ、ＶＰＬＭＮ）に属することができ、そのようなものとして、ＵＥ２１０に関連する様々なデータ、それに関連する加入者、および／または、ＵＥ２１０への接続性を提供する際に有用なもしくは必要な他のデータへのアクセスを有し得ない。たとえば、ＳＰＲ２３８ｖは、ＵＥ２１０に関連する情報を含むことができず、その代わりに、そのような情報はＳＰＲ２３８ｈ内に記憶することができる。ＳＰＲ２３８ｈに記憶された加入者情報に基づくサービスの提供を可能にするために、ＰＣＲＮ２３６ｖは、Ｓ９セッションを介してＰＣＲＮ２３６ｈと通信することができる。
【００３８】
様々な実施形態で、ＰＣＲＮ２３６ｖは、Ｓ９セッションを介してＰＣＲＮ２３６ｈにＵＥ２１０に関連する要求を転送することができる。ＰＣＲＮ２３６ｈは、たとえば、ＰＣＣおよび／またはＱｏＳルールを生成するために、これらのメッセージを処理することができる。ＰＣＲＮ２３６ｈは、次いで、これらのルールをＰＧＷ２３４ｖおよび／またはＳＧＷ２３２ｖでのインストールのためにＰＣＲＮ２３６ｖに転送することができる。ホームルートのアクセスの場合、ＰＣＲＮ２３６ｈはまた、ＰＧＷ２３４ｈに直接にＰＣＣルールをインストールすることができる。ＰＣＲＮ２３６ｈ、２３６ｖの協調的性質を考慮して、これらのデバイスは、互いに関する「パートナデバイス」と呼ぶことができる。
【００３９】
様々な実施形態で、各パートナデバイスは、ホームデバイスおよび訪問先デバイスとして動作する能力を有し得る。たとえば、別のローミングＵＥ（図示せず）が基地局２２０ｈに接続された場合、ＰＣＲＮ２３６ｈは、追加で、ＰＣＲＮ２３６ｖに要求を転送する能力を有することができ、ＰＣＲＮ２３６ｖは、インストールのためにＰＣＲＮ２３６ｈに適切なルールを返す能力を有し得る。
【００４０】
Ｓ９セッションを確立する際に、ＰＣＲＮ２３６ｈ、２３６ｖは、セッションでサポートされることになる特徴のセットをネゴシエーションするように構成することができる。様々な実施形態で、ＰＣＲＮ２３６ｈ、２３６ｖは、たとえば、デバイスによってサポートされるすべての特徴のセットなどの特徴のデフォルトセットに関してこのネゴシエーションを実行するように各々構成することができる。そのような実施形態で、サポートされる特徴のネゴシエーションされたセットは、単純に、両方のデバイスによってサポートされるすべての特徴のセットでもよい。
【００４１】
様々な実施形態で、ＰＣＲＮ２３６ｈ、２３６ｖのうちの少なくとも１つは、他方のＰＣＲＮ２３６ｈ、２３６ｖに関するこのデフォルトビヘイビアをオーバーライドし、その代わりに、特徴の代替セットに基づいてネゴシエーションするように構成され得る。たとえば、ＰＣＲＮ２３６ｈに特徴のセットをアドバタイズするとき、ＰＣＲＮ２３６ｖは、この特徴がＰＣＲＮ２３６ｖで実装され得るとしても、３ＧＰＰ  ＴＳ２９．２１５のリリース１０のサポートをアドバタイズしないように構成され得る。もう１つの例として、ＰＣＲＮ２３６ｖからの特徴のアドバタイズされたセットの受信に応答して特徴のセットに同意するときに、ＰＣＲＮ２３６ｈは、たとえこの特徴がＰＣＲＮ２３６ｖによってアドバタイズされ、ＰＣＲＮ２３６ｈによってサポートされるとしても、ＩＰフローモビリティをサポートすることに同意しないように構成することができる。
【００４２】
図３は、例示的ポリシおよび課金ルールノード（ＰＣＲＮ）３００を示す。ＰＣＲＮ３００は、ＰＣＲＮ１３６、２３６ｈ、２３６ｖのうちの１つまたは複数に相当し得る。ＰＣＲＮ３００は、ネットワークインターフェース３０５、ローミングユーザ識別モジュール３１０、加入者ストレージ３１５、メッセージプロセッサ３２０、ローミング通信モジュール３２５、Ｓ９インターフェース３３０、ネゴシエーションモジュール３３５、デフォルトオーバーライドモジュール３４０、オーバーライド特徴ストレージ３４５、および／または特徴リストコンストラクタ３５０を含み得る。
【００４３】
ネットワークインターフェース３０５は、ハードウェア、および／または、たとえば、ＰＧＷおよび／またはＡＦなどの少なくとも１つの他のデバイスと通信するように構成された機械可読ストレージ媒体上で符号化された実行可能命令を備える、インターフェースでもよい。したがって、ネットワークインターフェース３０５は、Ｇｘ、Ｇｘｘ、および／またはＲｘインターフェースを含み得る。様々な実施形態で、ネットワークインターフェース３０５は、イーサネットインターフェースでもよい。動作中、ネットワークインターフェース３０５は、別のデバイスから要求メッセージを受信し、メッセージをローミングユーザ識別モジュールに転送することができる。
【００４４】
ローミングユーザ識別モジュール３１０は、ハードウェア、および／または、ネットワークインターフェース３０５を介して受信されたメッセージがローミングユーザに関連するかどうかを判定するように構成された機械可読ストレージ媒体上の実行可能命令を含み得る。そのようなものとして、ローミングユーザ識別モジュール３１０は、メッセージによって運ばれるデータを使用して、加入者ストレージ３１５がメッセージに関連する加入者に関する情報を記憶するかどうかを判定することができる。たとえば、ローミングユーザ識別モジュール３１０は、要求から１つまたは複数の加入識別子を抽出し、加入者ストレージが相関性のある記録を記憶するかどうかを判定することができる。別法として、加入者識別子がメッセージ内で入手可能ではない場合、ローミングユーザ識別モジュール３１０は、ＩＰ−ＣＡＮセッションを識別するのに十分な情報を抽出することができる。ローミングユーザ識別モジュール３１０は、次いで、ＩＰ−ＣＡＮセッション記録（図示せず）を使用して、セッションに関連する１つまたは複数の加入識別子を判定することができる。様々な実施形態で、ローミングユーザ識別モジュールは、メッセージがローミングメッセージであるまたはローカルに処理されるべきかどうかを判定するときに、追加の要因を考慮することができる。たとえば、ローミングユーザ識別モジュール３１０は、メッセージからアクセスポイント名（ａｃｃｅｓｓ  ｐｏｉｎｔ  ｎａｍｅ、ＡＰＮ）を抽出し、ＡＰＮが緊急サービスのプロバイダに対応するかどうかを判定することができる。そうである場合、メッセージは、たとえユーザが実際にローミングしていても、非ローミングメッセージとして扱われ得る。様々な追加の変更形態が、当業者には明らかとなろう。ローミングユーザ識別モジュール３１０が、メッセージがローミングユーザに関連しないまたは他の方法でローカルに処理されるべきであると判定した場合、ローミングユーザ識別モジュール３１０は、メッセージをローカル処理のためにメッセージプロセッサ３２０に転送することができる。そうではない場合、ローミングユーザ識別モジュール３１０は、メッセージをローミング処理のためにローミング通信モジュール３２５に転送することができる。
【００４５】
加入者ストレージ３１５は、様々な加入者に関連する情報を記憶することができる任意の機械可読媒体でもよい。したがって、加入者ストレージ３１５は、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスクストレージ媒体、光ストレージ媒体、フラッシュメモリデバイス、および／または同様のストレージ媒体などの機械可読ストレージ媒体を含み得る。加入者ストレージ３１５は、ＰＣＲＮ３００に知られている各加入者の記録を記憶することができる。様々な実施形態で、加入者ストレージ３１５は、ＰＣＲＮ３００の外部にあるデバイスでもよい。たとえば、加入者ストレージ３１５は、サブスクリプションプロファイルレポジトリ（ＳＰＲ）でもよい。
【００４６】
メッセージプロセッサ３２０は、ハードウェア、および／または、３ＧＰＰ規格に従って様々なメッセージをローカルに処理するように構成された機械可読ストレージ媒体上の実行可能命令を含み得る。たとえば、メッセージプロセッサ３２０は、ＩＰ−ＣＡＮセッションおよび／またはサービスデータフローの確立の要求を受信し、ＰＣＣおよび／またはＱｏＳルールを生成し、ＰＧＷおよび／またはＳＧＷでそれらのルールをインストールすることができる。３ＧＰＰ規格を実装するのに必要なまたは有用な様々な追加の機能が、当業者には明らかとなろう。
【００４７】
ローミング通信モジュール３２５は、ハードウェア、および／または、Ｓ９インターフェース３３０を介して１つまたは複数のパートナデバイスと通信するように構成された機械可読ストレージ媒体上の実行可能命令を含み得る。たとえば、ＶＰＬＭＮの部分として動作するとき、ローミング通信モジュール３２５は、確立されたＳ９セッションを使用して、適切なＨＰＬＭＮ内のパートナデバイスにローミングユーザ識別モジュール３１０から受信された要求を転送することができる。ローミング通信モジュール３２５は、次いで、インストールのための１つまたは複数のＰＣＣおよび／またはＱｏＳルールを含むパートナデバイスからの応答を受信することができる。
【００４８】
ローミング通信モジュール３２５はまた、ＨＰＬＭＮの一部として動作する能力も有し得る。この能力で、ローミング通信モジュールは、転送された要求メッセージを含むＳ９インターフェースを介するパートナデバイスからのメッセージを受信することができる。ローミング通信モジュールは、次いで、要求が満たされ得るまたは拒否され得るように、メッセージプロセッサ３２０に要求メッセージを転送することができる。メッセージプロセッサ３２０は、ローミング通信モジュール３２５がパートナデバイスに返すことができる１つまたは複数のＰＣＣおよび／またはＱｏＳルールを作成することができる。様々な実施形態で、メッセージプロセッサ３２０はまた、ＨＰＬＭＮ内のＰＧＷで１つまたは複数のＰＣＣルールをインストールすることができる。
【００４９】
ローミング通信モジュール３２５が、ローミングユーザ識別モジュール３１０またはＳ９インターフェース３３０を介してパートナデバイスからメッセージを受信するとき、ローミング通信モジュール３２５は、パートナデバイスとの通信が既に確立されたＳ９セッションを介して進行し得るかどうかを判定することができる。そうである場合、ローミング通信モジュール３２５は、前述のように進行することができる。しかし、確立されたＳ９セッションがパートナデバイスとのこの通信に適用されない場合、ローミング通信モジュールは、新しいＳ９セッションがパートナデバイスと確立されるべきであることをネゴシエーションモジュール３３５に指示することができる。
【００５０】
Ｓ９インターフェース３３０は、ハードウェア、および／または、３ＧＰＰ  ＴＳ２９．２１５に記載されるようなＳ９プロトコルに従って別のＰＣＲＮなどの少なくとも１つのパートナデバイスと通信するように構成された機械可読ストレージ媒体上で符号化された実行可能命令を備える、インターフェースでもよい。様々な実施形態で、Ｓ９インターフェース３３０は、イーサネットインターフェースでもよい。Ｓ９インターフェース３３０は、ネットワークインターフェース３０５と同じハードウェアを使用することができる。
【００５１】
ネゴシエーションモジュール３３５は、ハードウェア、および／または、パートナデバイスと通信して新しいＳ９セッションを確立するように構成された機械可読ストレージ媒体上の実行可能命令を含み得る。そのような通信は、３ＧＰＰ  ＴＳ２９．２１５に従って実装され得る。新しいセッションを確立する部分として、ネゴシエーションモジュールは、サポートされる特徴のセットを含む特徴リストをパートナデバイスに送信することができる。ネゴシエーションモジュール３３５が、特徴リストが送信されるべきであると判定したとき、ネゴシエーションモジュール３３５は、そのような特徴リストが生成されるべきであるとデフォルトオーバーライドモジュール３４０に指示することができる。それを行う際、ネゴシエーションモジュール３３５は、デフォルトオーバーライドモジュール３４０および／または特徴リストコンストラクタ３５０にパートナデバイスの識別情報を転送することができる。ＰＣＲＮ３００がホームＰＣＲＮとして動作する場合、ネゴシエーションモジュール３３５はまた、パートナデバイスから受信されるアドバタイズされる特徴のセットを転送することができる。
【００５２】
デフォルトオーバーライドモジュール３４０は、ハードウェア、および／または、新しいＳ９セッションを確立するときにサポートされる特徴のデフォルトセットがオーバーライドされるべきかどうかを判定するように構成された機械可読ストレージ媒体上の実行可能命令を含み得る。この判定を行うために、デフォルトオーバーライドモジュール３４０は、１つまたは複数のパートナデバイス識別子を使用して、オーバーライド特徴ストレージ３４５に記憶された関連記録がオーバーライド特徴のセットを含むかどうかを判定する。たとえば、デフォルトオーバーライドモジュールは、モバイルカントリコード（ＭＣＣ）およびモバイルネットワークコード（ＭＮＣ）を使用して、オーバーライド特徴ストレージ内で記録を見つけようと試みることができる。そのような記録が存在する場合、デフォルトオーバーライドモジュール３４０は、特徴のデフォルトセットがオーバーライドされるべきであると判定することができる。様々な代替実施形態で、オーバーライド特徴ストレージ３４５内の記録は、特徴のデフォルトセットがオーバーライドされるべきかどうかを指示するフラグを含むことができ、そのような実施形態で、記録の存在自体は、デフォルトセットがオーバーライドされるべきかどうかを示すことはできない。
【００５３】
特徴のデフォルトセットがオーバーライドされるべきであると判定した後、デフォルトオーバーライドモジュール３４０は、オーバーライド特徴のセットを識別して特徴リストコンストラクタ３５０に転送することができる。様々な実施形態で、オーバーライド特徴のこのセットは、パートナデバイスに対応する記録の部分として記憶され得る。別法として、デフォルトオーバーライドモジュール３４０は、すべてのパートナデバイスのオーバーライド特徴の単一のセットのみを使用するように構成することができる。たとえば、特徴のデフォルトセットがオーバーライドされるべきである任意のパートナデバイスについて、デフォルトオーバーライドモジュール３４０は、基本的機能のみが新しいＳ９セッションでサポートされ得るように、空の特徴セットを特徴リストコンストラクタ３５０に転送するようになされ得る。様々な変更形態が、当業者には明らかとなろう。
【００５４】
デフォルトセットをオーバーライドするかの決定および／またはオーバーライド特徴のセットは、パートナデバイスと直接相関性がなくてもよいことにもまた留意されたい。たとえば、様々な実施形態で、いくつかのローミングパートナが、ローミング協定に関連し得る。このローミング協定は、ローミング協定に関連するすべてのローミングパートナのために使用されることになるオーバーライド特徴のセットを指定することができる。さらに別の例として、デフォルト特徴セットをオーバーライドする決定はパートナごとに行われ得るが、それらの場合に使用されることになるオーバーライド特徴のセットは、ローミング協定内で定義され得る。様々な代替実施形態が、当業者には明らかとなろう。
【００５５】
オーバーライド特徴ストレージ３４５は、デフォルト特徴セットがオーバーライドされるべきかどうかの指示および／または特定のパートナデバイスのために使用されることになるオーバーライド特徴のセットを記憶することができる機械可読媒体でもよい。したがって、オーバーライド特徴ストレージ３４５は、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスクストレージ媒体、光ストレージ媒体、フラッシュメモリデバイス、および／または同様のストレージ媒体などの機械可読ストレージ媒体を含み得る。オーバーライド特徴ストレージ３４５の例示的内容は、図４に関して、以下にさらに詳しく説明されることになる。様々な実施形態で、オーバーライド特徴ストレージ３４５は、加入者ストレージ３１５と同じ物理デバイスによって実装され得る。
【００５６】
特徴リストコンストラクタ３５０は、ハードウェア、および／または、ネゴシエーションモジュール３３５によってパートナデバイスに送信するための特徴リストを構築するように構成された機械可読ストレージ媒体上の実行可能命令を含み得る。たとえば、ＰＣＲＮ３００が訪問先ＰＣＲＮの立場で動作するとき、特徴リストコンストラクタ３５０は、アドバタイズされる特徴のセットを含むリストを生成することができる。このアドバタイズされる特徴のセットは、以下の説明のように判定される、許容される特徴のセットと同じでもよい。
【００５７】
さらに、ＰＣＲＮ３００がホームＰＣＲＮの立場で動作するとき、特徴リストコンストラクタ３５０は、パートナデバイスからアドバタイズされる特徴のセットを受信し、一致する特徴のセットを含むリストを生成することができる。一致する特徴のセットは、アドバタイズされる特徴のどれが許容される特徴のセット内にもあり、したがってセッションについてサポートされることになるかを指定することができる。いずれにしても、特徴リストコンストラクタ３５０は、許容される特徴のセットを使用して、アドバタイズされるまたは一致する特徴のセットを判定することができる。
【００５８】
デフォルトオーバーライドモジュール３４０がオーバーライド特徴のセットを指示しない限り、特徴リストコンストラクタ３５０は、特徴の許容されるセットとして特徴のデフォルトセットを使用することができる。様々な実施形態で、特徴のデフォルトセットは、ＰＣＲＮ３００によって実装されるすべての特徴のセットを単純に含み得る。他の実施形態で、特徴のデフォルトセットは、すべての実装された特徴を含まないことがあり、その代わりに、いくつかの特徴のみが、パートナデバイスのために具体的に構成され、それによってデフォルトオーバーライドモジュール３４０によって特徴リストコンストラクタ３５０に渡される場合に、サポートされ得る。他方では、特徴リストコンストラクタ３５０がデフォルトオーバーライドモジュール３４０からオーバーライド特徴のセットを受信する場合、次いで、特徴リストコンストラクタ３５０は、代わりに許容される特徴のセットとしてオーバーライド特徴を使用することができる。
【００５９】
特徴リストを生成した後、特徴リストコンストラクタ３５０は、特徴リストがパートナデバイスに転送され得るように、特徴リストをネゴシエーションモジュール３３５に返すことができる。前述によれば、特徴リストは、オーバーライド特徴のセットに基づくアドバタイズされるまたは一致する特徴のセットを含み得る。オーバーライド特徴のセットに基づいて生成されるそのような特徴リストは、「特徴の代替セット」などと称され得る。場合によっては、たとえば、アドバタイズされる特徴のセットの場合などに、特徴の代替セットは、オーバーライド特徴のセットと同じでもよい。他の場合には、たとえば、一致する特徴のセットの場合などに、特徴の代替セットは、特徴のオーバーライドセットとは異なり得るが、やはりそれに基づき得る。
【００６０】
さらに、特徴のデフォルトセットに基づいて生成される特徴リストは、「特徴の標準セット」などと称され得る。場合によっては、たとえば、アドバタイズされる特徴のセットの場合などに、特徴の標準セットは特徴のデフォルトセットと同じでもよい。たとえば、一致する特徴のセットの場合など、他の場合には、特徴の標準セットは、特徴のデフォルトセットと異なり得るが、やはりそれに基づき得る。
【００６１】
様々な実施形態で、特徴の代替セットは、基本的機能のみが新しいＳ９セッションについてサポートされるべきであることを指示し、空のセットでもよい。そのような実施形態で、パートナデバイスに送信されるメッセージは、サポートされる特徴ＡＶＰを省略することができる。そのようなものとして、メッセージは、基本的機能を超える特徴がサポートされるべきではないことを指示すると解釈することができる。
【００６２】
図４は、オーバーライド特徴を記憶するための例示的データ配列４００を示す。データ配列４００は、たとえば、ＰＣＲＮ３００のオーバーライド特徴ストレージ３４５に記憶されたデータベース内の一群の表でもよい。別法として、データ配列４００は、一連のリンクされたリスト、アレイ、または同様のデータ構造でもよい。したがって、データ配列４００は、基礎を成すデータの抽象であり、このデータのストレージに適した任意のデータ構造が使用され得ることが、明らかとなろう。
【００６３】
データ配列４００は、たとえば、ＭＣＣフィールド４１０、ＭＮＣフィールド４２０、およびオーバーライド特徴フィールド４３０などの複数のデータフィールドを含み得る。ＭＣＣフィールド４１０は、パートナデバイスに関連するモバイルカントリコード（ＭＣＣ）を記憶することができる。ＭＮＣフィールド４２０は、パートナデバイスに関連するモバイルネットワークコード（ＭＮＣ）を記憶することができる。ともに、ＭＣＣフィールド４１０およびＭＮＣフィールド４２０は、ローミングパートナデバイスを一意に識別することができる。オーバーライド特徴４３０は、関連するローミングパートナのために使用されることになるオーバーライド特徴のセットの指示を記憶することができる。例示的データ配列４００に示すように、この指示は、３ＧＰＰ  ＴＳ２９．２１５によって規定されるようなビットマスクでもよい。各ビットは特定の特徴に対応することができ、１の値は特徴がサポートされることを示し、一方、０の値は特徴がサポートされないことを示す。
【００６４】
一例として、記録４４０は、ＭＣＣ３１０およびＭＮＣ１２０を有するローミングパートナについて、特徴のデフォルトセットがオーバーライドされるべきであり、ビットマスク００１１が、許容される特徴のセットとして代わりに使用されるべきであることを指示し得る。もう１つの例として、記録４５０は、ＭＣＣ３１０およびＭＮＣ０９０を有するローミングパートナについて、特徴のデフォルトセットがオーバーライドされるべきであり、ビットマスク０１０１が、許容される特徴のセットとして代わりに使用されるべきであることを指示し得る。データ配列４００は、多数の追加の記録を含むことができる。
【００６５】
図５は、アドバタイズされた特徴をパートナデバイスに送信するための例示的方法５００を示す。例示的方法５００は、たとえばＰＣＲＮ３００などのＰＣＲＮの構成要素によって実行され得る。様々な実施形態で、ＰＣＲＮが訪問先ＰＣＲＮの立場で動作する、方法５００が実行され得る。
【００６６】
方法５００は、ステップ５０５で開始し、ステップ５１０に進み、そこでＰＣＲＮは別のデバイスからメッセージを受信することができる。ステップ５２０で、ＰＣＲＮは、メッセージがローミング加入者と関連するかどうかを判定することができる。たとえば、ＰＣＲＮは、メッセージが、ＰＣＲＮまたは任意の緊急ＡＰＮに知られている任意の加入識別子に関連するかどうかを判定することができる。そうである場合、ＰＣＲＮは、メッセージがローミング加入者に関連しないと判定することができ、方法５００はステップ５３０に進むことができる。ステップ５３０で、ＰＣＲＮは、受信されたメッセージをローカルに処理することができ、方法５００はステップ５９５に進んで終了することができる。
【００６７】
他方では、ＰＣＲＮが、メッセージがローミング加入者に関連すると判定した場合、方法５００は、ステップ５２０からステップ５４０に進むことができる。ステップ５４０で、ＰＣＲＮは、新しいＳ９セッションが確立されるべきかどうかを判定することができる。たとえば、ＰＣＲＮは、ホームＰＣＲＮを識別してメッセージを処理し、適切なＳ９セッションがパートナデバイスと既に確立されているかどうかを判定することができる。そうである場合、方法５００は、ステップ５９０に進むことができる。そうではない場合、新しいセッションが確立されるべきであり、方法５００はステップ５５０に進むことができる。
【００６８】
ステップ５５０で、ＰＣＲＮは、それが新しいセッションを確立するときに特徴のデフォルトセットをオーバーライドすべきかどうかを判定することができる。様々な実施形態で、ＰＣＲＮは、パートナデバイスに関連する記録が、オーバーライド特徴のセットがデフォルトセットの代わりに使用されるべきであることを指示するかどうかを判定することができる。ＰＣＲＮが、そのような指示を見つけない場合、ＰＣＲＮは、続けて、ステップ５６０で、アドバタイズされる特徴のセットとして特徴のデフォルトセットを使用し、Ｓ９要求を構築することができる。しかし、特徴のデフォルトセットがオーバーライドされるべきである場合、ＰＣＲＮは、代わりに、ステップ５７０で、アドバタイズされる特徴のセットとしてオーバーライド特徴のセットを使用し、Ｓ９要求を構築することができる。ステップ５６０または５７０で生成されるＳ９要求は、Ｓ９セッション確立要求でもよい。
【００６９】
次に、ステップ５８０で、ＰＣＲＮは、たとえば、パートナデバイスにステップ５６０またはステップ５７０で構築されたＳ９要求を送信することによって、新しいＳ９セッションを確立することができる。次いで、ステップ５９０で、ＰＣＲＮは、新しく確立されたＳ９セッションを使用し、メッセージを処理することができる。たとえば、ＰＣＲＮは、パートナデバイスにメッセージを転送し、その後に、それに応答してパートナデバイスから受信される１つまたは複数のＱｏＳおよび／またはＰＣＣルールをインストールすることができる。方法５００は、次いで、ステップ５９５に進んで終了し得る。
【００７０】
様々な実施形態で、ステップ５８０、５９０は重複し得ることに留意されたい。たとえば、ステップ５８０でセッションを確立するとき、Ｓ９要求は、メッセージがアドバタイズされる特徴のセットとともにパートナデバイスに転送されるように、追加でメッセージを含むことができる。追加の変更形態が、当業者には明らかとなろう。
【００７１】
図６は、一致する特徴をパートナデバイスに送信するための例示的方法６００を示す。例示的方法６００は、たとえばＰＣＲＮ３００など、ＰＣＲＮの構成要素によって実行され得る。様々な実施形態で、ＰＣＲＮがホームＰＣＲＮの立場で動作する、方法６００が実行され得る。
【００７２】
方法６００は、ステップ６０５で開始し、ステップ６１０に進むことができ、そこで、ＰＣＲＮはパートナデバイスからＳ９メッセージを受信することができる。ステップ６２０で、ＰＣＲＮは、新しいＳ９セッションが作成されるべきかどうかを判定することができる。たとえば、ＰＣＲＮは、受信されたメッセージを調べて、それが新しいセッションの確立を要求するかどうかを判定することができる。メッセージが既に確立されたＳ９セッションに関連する場合、方法６００は、ステップ６７０に進むことができる。そうではない場合、方法６００は、ステップ６３０に進むことができる。
【００７３】
ステップ６３０で、ＰＣＲＮは、受信されたメッセージからアドバタイズされる特徴のセットを抽出することができる。次いで、ステップ６４０で、ＰＣＲＮは、Ｓ９要求に応答してそれが特徴のデフォルトセットをオーバーライドすべきかどうかを判定することができる。様々な実施形態で、ＰＣＲＮは、パートナデバイスに関連する記録が、オーバーライド特徴のセットがデフォルトセットの代わりに許容される特徴のセットとして使用されるべきであることを指示するかどうかを判定することができる。ＰＣＲＮがそのような指示を見つけない場合、ＰＣＲＮは、続けて、ステップ６５０で許容される特徴のセットとして特徴のデフォルトセットを使用し、Ｓ９要求を構築することができる。しかし、特徴のデフォルトセットがオーバーライドされるべきである場合、ＰＣＲＮは、代わりに、ステップ６６０で、許容される特徴のセットとしてオーバーライド特徴のセットを使用し、Ｓ９要求を構築することができる。ステップ６５０または６６０のいずれかで、ＰＣＲＮは、どの特徴をアドバタイズされる特徴のセットおよび許容される特徴のセットが共通して有するかを判定することによって、一致する特徴のセットを判定することができる。たとえば、両方のセットがビットマスクである場合、ＰＣＲＮは、アドバタイズされる特徴のセットおよび許容される特徴のセットの論理積を使用して、一致する特徴のセットを作り出すことができる。最後に、ステップ６７０で、ＰＣＲＮは、受信されたメッセージの残りを継続して処理することができる。たとえば、ＰＣＲＮは、１つまたは複数のＱｏＳ／ＰＣＣルールを生成する、ＰＧＷでルールをインストールする、そのようなルールをパートナデバイスに転送する、および／または、一致する特徴のセットをパートナデバイスに送信してＳ９セッションの確立を完了することができる。方法６００は、次いで、ステップ６８０に進んで終了することができる。
【００７４】
前述によれば、様々な実施形態が、ＰＣＲＮがＳ９セッションのサポートされる特徴をネゴシエーションする際にデフォルトビヘイビアをオーバーライドすることを可能にする。具体的には、特定のパートナデバイスのオーバーライド特徴のセットを提供することによって、ＰＣＲＮは、ＰＣＲＮおよびパートナデバイスの両方によってサポートされる様々な特徴を除くサポートされる特徴のセットをネゴシエーションすることができる。
【００７５】
前述から本発明の様々な例示的実施形態はハードウェアおよび／またはファームウェアで実装され得ることが明らかであろう。さらに、様々な例示的実施形態が、少なくとも１つのプロセッサに読み取られ、実行されて本明細書に詳細に記載された動作を実行することができる機械可読ストレージ媒体に記憶された命令として実装され得る。機械可読ストレージ媒体は、パーソナルもしくはラップトップコンピュータ、サーバ、または他のコンピューティングデバイスなどの機械によって可読の形で情報を記憶するための任意の機構を含み得る。したがって、有形的および非一時的機械可読ストレージ媒体は、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスクストレージ媒体、光ストレージ媒体、フラッシュメモリデバイス、および同様のストレージ媒体を含み得る。
【００７６】
本明細書の任意のブロック図は、本発明の原理を実施する例示的回路の概念的視点を表すことが、当業者には理解されよう。同様に、いずれのフローチャート、流れ図、状態遷移図、疑似コード、および同様のものも、機械可読媒体内に実質的に表され、そうしてコンピュータまたはプロセッサによって、そのようなコンピュータまたはプロセッサが明示的に示されていてもいなくても、実行され得る、様々なプロセスを表すことが理解されよう。
【００７７】
それらの様々な例示的実施形態は、そこでのある一定の例示的態様を具体的に参照して詳細に説明されるが、本発明は他の実施形態が可能であり、その詳細は様々な明らかな点で変更が可能であることを理解されたい。当業者には容易に明らかなように、変形形態および変更形態が、本発明の趣旨および範囲内に留まりつつ実施され得る。したがって、前述の開示、説明および図は、単に例示を目的とし、本特許請求の範囲によってのみ定義される本発明を決して限定しない。
【図１】
0005855261.tif 000002
【図２】
0005855261.tif 000003
【図３】
0005855261.tif 000004
【図４】
0005855261.tif 000005
【図５】
0005855261.tif 000006
【図６】
0005855261.tif 000007