ここで図面を参照すると、同様の番号が同様の構成要素またはステップを指しており、様々な例示的実施形態の広範な態様が開示されている。
図1に、様々なデータサービスを提供する例示的加入者ネットワーク100を示す。例示的加入者ネットワーク100は、通信ネットワーク、または様々なサービスへのアクセスを実現する他のネットワークでよい。例示的加入者ネットワーク100は、ユーザ機器110、基地局120、進化型パケットコア(EPC)130、パケットデータネットワーク140、およびアプリケーションノード(AN)150を含むことができる。
ユーザ機器110は、エンドユーザにデータサービスを提供するパケットデータネットワーク140と通信するデバイスでよい。そのようなデータサービスは、例えば、音声通信、テキストメッセージング、マルチメディアストリーミング、およびインターネットアクセスを含むことができる。より具体的には、様々な例示的実施形態では、ユーザ機器110は、パーソナルまたはラップトップコンピュータ、ワイヤレスEメールデバイス、携帯電話、スマートフォン、テレビジョンセットトップボックス、あるいはEPC130を介して他のデバイスと通信することのできる任意の他のデバイスである。
基地局120は、ユーザ機器110とEPC130との間の通信を可能にするデバイスでよい。例えば、基地局120は、3GPP規格で定義される進化型nodeB(eNodeB)などの基地トランシーバ局でよい。したがって、基地局120は、電波などの第1の媒体を介してユーザ機器110と通信し、イーサネット(登録商標)ケーブルなどの第2の媒体を介してEPC130と通信するデバイスでよい。基地局120は、EPC130と直接通信することができ、またはいくつかの中間ノード(図示せず)を介して通信することができる。様々な実施形態では、ユーザ機器110にモビリティを提供するために複数の基地局(図示せず)が存在することができる。様々な代替実施形態では、ユーザ機器110は進化型パケットコア130と直接通信することができる。そのような実施形態では、基地局120は存在しないことがある。
進化型パケットコア(EPC)130は、パケットデータネットワーク140へのゲートウェイアクセスをユーザ機器110に与えるデバイスまたはデバイスのネットワークでよい。EPC130はさらに、提供されるデータサービスの使用に関して加入者に課金し、特定のエクスペリエンス品質(QoE)標準が満されることを保証することができる。したがって、少なくとも部分的に、3GPP TS 29.212、29.213、29.214規格に従ってEPC130を実装することができる。したがって、EPC130は、サービングゲートウェイ(SGW)132、パケットデータネットワークゲートウェイ(PGW)134、ポリシーおよび課金規則ノード(PCRN)136、および加入プロファイルリポジトリ(SPR)138を含むことができる。
サービングゲートウェイ(SGW)132は、基地局120とPGW134との間のデータ経路を管理するデバイスでよい。データ経路は、固有のサービス品質(QoS)特性を有するベアラと呼ばれる仮想コンテナを含むことができる。ベアラは、サービスデータフロー(SDF)と呼ばれる仮想接続を含むことができる。ユーザ機器110がモバイルデバイスであり、基地局120がeNodeBである様々な実施形態では、SGW132は、モバイルデバイスがeNodeBを変更したときに新しいベアラを確立する役目を果たすことができる。SGW132は、3GPP TS 29.212、29.213、および29.214規格に従ってベアラバインディングおよびイベント報告機能(BBERF)を含むことができる。様々な実施形態では、EPC130は複数のサービングゲートウェイを含むことができる。
パケットデータネットワークゲートウェイ(PGW)134は、パケットデータネットワーク140にゲートウェイアクセスを与えるデバイスでよい。PGW134は、ユーザ機器110によってSGW132を介してパケットデータネットワーク140に向けて送信されるパケットを受信するEPC130内の最終デバイスでよい。PGW134は、各サービスデータフロー(SDF)についてポリシーおよび課金制御(PCC)規則を実施するポリシーおよび課金実施機能(PCEF)を含むことができる。したがって、PGW134はポリシーおよび課金実施ノード(PCEN)でよい。PGW134は、Gxインターフェースを介してCCRメッセージを送信することにより、PCRN136に新しいPCC規則を要求することができる。PGW134はまた、例えば、パケットフィルタリング、ディープパケットインスペクション、加入者課金サポートなどのいくつかの追加の機能をも含むことができる。
ポリシーおよび課金規則ノード(PCRN)136は、インターネットプロトコル接続性アクセスネットワーク(IP−CAN)セッション、AFセッション、およびGW制御セッションを確立および管理するデバイスでよい。PCRN136は、IP−CANセッションを確立して、IPアドレスを割り当て、UE110などのUEに関するネットワークアクセスを可能にすることができる。PCRN136はまた、IP−CANセッションに関する適切な課金のためのPCC規則を作成する。PCRN136は、例えばSGW132などのSGWとのGW制御セッションを確立して、PCRN136とSGWとの間でアクセス特有のパラメータ、BBERFイベント、およびQoS規則を転送するための通信経路を確立することができる。PCRN136は、例えばAN150などのANとのAFセッションを確立して、加入者に対するサービスに関する通信を可能にすることができる。
PCRN136はまた、アプリケーションサービスを求める要求を受信し、PCC規則を生成し、PGW134および/または他のPCEN(図示せず)にPCC規則を与えることができる。PCRN136は、Rxインターフェースを介してAN150と通信していることができる。PCRN136はまた、GxxおよびGxインターフェースを介して、それぞれSGW132およびPGW134と通信していることができる。新しいPCC規則の作成時、またはPGW134による要求時に、PCRN136は、Gxインターフェースを介してPGW134にPCC規則を与えることができる。例えばプロキシモバイルIP(PMIP)規格を実装するものなどの様々な実施形態では、PCRN136はまた、QoS規則を生成することができる。新しいQoS規則の作成時、またはSGW132による要求時に、PCRN136は、Gxxインターフェースを介してSGW132にQoS規則を与えることができる。動作中に、PCRN136は、各セッションに関連する最後の処置に関するタイムスタンプを記録することができる。
加入プロファイルリポジトリ(SPR)138は、加入者ネットワーク100への加入者に関する情報を格納するデバイスでよい。したがって、SPR138は、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、および/または類似の記憶媒体などの機械可読記憶媒体を含むことができる。SPR138はPCRN136の構成要素でよく、またはEPC130内の独立ノードを構成することができる。SPR138によって格納されるデータは、各加入者の識別子と、帯域幅制限、課金パラメータ、加入者優先順位、加入者サービスプリファレンスなどの各加入者についての加入情報の表示とを含むことができる。
パケットデータネットワーク140は、ユーザ機器110と、AN150などのパケットデータネットワーク140に接続された他のデバイスとの間のデータ通信を実現する任意のネットワークでよい。さらに、パケットデータネットワーク140は、例えば、パケットデータネットワーク140と通信している様々なユーザデバイスに対する電話および/またはインターネットサービスを提供することができる。
アプリケーションノード(AN)150は、ユーザ機器110にアプリケーションサービスを提供するデバイスでよい。したがって、AN150は、例えば、ユーザ機器110に対するストリーミングビデオサービスを提供するサーバまたは他のデバイスでよい。AN150は、アプリケーションサービスを提供し、PCRN136と通信するアプリケーション機能を実装することができる。AN150はさらに、Rxインターフェースを介してEPC130のPCRN136と通信していることができる。AN150がユーザ機器110に対するアプリケーションサービスの提供を開始しようとするとき、AN150は、Diameterプロトコルに従うAA−Request(AAR)などのアプリケーション許可要求メッセージを生成して、アプリケーションサービスに対してリソースを割り振るべきであることをPCRN136に通知することができる。そのようなアプリケーション要求メッセージは、アプリケーションサービスを使用する加入者の識別や、要求されたサービスを提供するためにIP−CANセッション内で確立しなければならない特定のサービスデータフローの識別などの情報を含むことができる。AN150は、Rxインターフェース215を介して、そのようなアプリケーション要求をPCRNに通信することができる。
加入者ネットワーク100の構成要素を説明したので、加入者ネットワーク100の動作の簡潔な概要が与られる。以下の説明は、加入者ネットワーク100の動作の概要を与えるためのものであり、したがっていくつかの点で単純化であることは明らかなはずである。加入者ネットワーク100の詳細な動作が、図2−9に関して以下でさらに詳細に説明される。
PCRN136は、セッション監査を実施して、何らかの確立されたセッションが非アクティブとなり、孤立し、または古くなったかどうかを判定することができる。PCRN136は、定期的な間隔でセッション監査を実施して、非アクティブであることが疑わしいセッションを検出することができる。最後の活動タイムスタンプ以降の経過時間が疑わしい不活動時間を超過した場合、PCRN136は、セッションが非アクティブであることが疑わしいと判定することができる。セッションが非アクティブであることが疑わしいとPCRN136が判定したとき、PCRN136は、セッションを開始したネットワーク構成要素に無害のメッセージを送信することができる。無害のメッセージは、ネットワーク構成要素でのセッションの状態を変更しない要求メッセージでよい。IP−CANセッションまたはGW制御セッションでは、無害のメッセージはRARコマンドプロビジョニングイベントトリガでよい。AFセッションでは、無害のメッセージは、特定の処置を含むRARコマンドでよい。
ネットワーク構成要素は、DIAMETER_SUCCESS(2001)またはDIAMETER_UNKNOWN_SESSION_ID(5002)のいずれかの結果コードを示すRAAコマンドで無害のメッセージに応答することができる。diameter成功コードは、セッションがネットワーク構成要素でアクティブであることを示すことができる。この場合、PCRN136は、別の処置を行うことなくセッション活動タイムスタンプを更新することができる。diameter不明セッションIDコードは、セッションが非アクティブであり、あるいはネットワーク構成要素によって終了または孤立させられたことを示すことができる。この場合、PCRN136は、例えば、セッションを終了すること、セッションを記録すること、および/または簡易ネットワーク管理プロトコル(SNMP)トラップを送って、セッションについてネットワーク管理エンティティ(NME)に通知することなど、セッションに関する管理処置を取ることができる。
図2に、セッションを管理する例示的PCRN200を示す。PCRN200は、例示的加入者ネットワーク100のPCRN136に対応することができる。PCRN200は、Gxインターフェース205、Gxxインターフェース210、Rxインターフェース215、diameterプロキシエージェント(DPA)220、PCRNブレード225a、225b、...225n、およびプロキシデータストレージ230を含むことができる。
Gxxインターフェース205は、SGW132などのサービングゲートウェイと通信するように構成された、ハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能命令を備えるインターフェースでよい。そのような通信は、3GPP TS 29.212および29.213に従って実装することができる。例えば、Gxxインターフェース205は、SGW132からGW制御セッション確立要求を受信し、SGW132にQoS規則を送信することができる。
Gxインターフェース210は、PGW134などのパケットデータネットワークゲートウェイと通信するように構成された、ハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能命令を備えるインターフェースでよい。そのような通信は、3GPP TS 29.212および29.213に従って実装することができる。例えば、Gxインターフェース210は、PGW134からIP−CANセッション確立要求およびイベントメッセージを受信し、PGW134にPCC規則を送信することができる。
Rxインターフェース215は、PGW134などのパケットデータネットワークゲートウェイと通信するように構成された、ハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能命令を備えるインターフェースでよい。そのような通信は、3GPP TS 29.213および29.214に従って実装することができる。例えば、Rxインターフェース215は、AN150からAFセッション要求を受信することができる。
diameterプロキシエージェント(DPA)220は、PCRN200でのセッションを管理するように構成されたハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能を含むことができる。DPA220は、関連セッションを互いにバインドする役目を果たすことができる。DPA220は、Gxxインターフェース205、Gxインターフェース210、および/またはRxインターフェース215を介してメッセージを受信することができる。セッションがメッセージに関して既に存在する場合、DPA220は、どのPCRNブレード225がセッションを担当するかを判定することができる。次いでDPA220は、処理のために適切なPCRNブレード225にメッセージを転送することができる。メッセージがセッション確立要求である場合、DPA220は、どのPCRNブレード225をセッションの管理に割り当てるかを決定することができる。DPA220は、新しいセッションを1つまたは複数の既存のセッションにバインドすることを決定し、バインドしたセッションを担当するPCRNブレード225にメッセージを転送することができる。DPA220は、プロキシデータストレージ230を使用して、PCRNブレードを選択する際に使用する情報を格納することができる。セッション監査中に、DPA220は、監査メッセージ内の情報を使用して、プロキシデータストレージ230を更新し、正しいセッションおよびバインディング情報を含めることができる。
PCRNブレード225a、225b、...225nは、PCRN200での通信セッションを管理するように構成されたハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能命令を含むことができる。各PCRNブレード225は、ポリシーおよび課金規則機能(PCRF)を実装することができる。DPAを使用しない様々な代替実施形態では、単一のPCRNブレード225がPCRN200として機能することができる。図3−9に関してさらに詳細に説明されるように、各PCRNブレード225は、セッション監査を実施して、各PCRNブレード225が管理しているセッションのいずれかが孤立し、または非アクティブとなったかどうかを判定することができる。
プロキシデータストレージ230は、プロキシデータを格納することのできる機械可読媒体でよい。プロキシデータをDPA220で使用して、どのPCRNブレード225にセッションが割り当てられるかを判定することができる。プロキシデータを使用して、セッションを互いにバインドすべきかどうかを判定することもできる。図4に関してさらに詳細に説明されるように、プロキシデータは、セッションID、加入ID、PCRNブレードID、バインドされるセッションIDのリスト、およびセッションを管理するのに有用な他の情報を含むことができる。
Spインターフェース235は、SPR138などのSPRと通信するように構成されたハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能命令を含むインターフェースでよい。Spインターフェース235は、記録要求を送信し、加入プロファイル記録を受信することができる。DPA220は、どのセッションが互いにバインドされるべきかを判定する際に使用するために、Spインターフェース235に加入プロファイル記録を要求することができる。
図3に、通信セッションを管理する例示的PCRNブレード300を示す。PCRNブレード300はPCRNブレード225に対応することができる。様々な代替実施形態では、PCRNブレード300はPCRN136に対応することができる。PCRNブレード300は、Gxxインターフェース305、Gxインターフェース310、Rxインターフェース315、セッションマネージャ320、セッションデータストレージ325、タイマ330、およびSpインターフェース335を含むことができる。
Gxxインターフェース305はGxxインターフェース205と同様でよい。Gxインターフェース310はGxインターフェース210と同様でよい。Rxインターフェース315はRxインターフェース215と同様でよい。Spインターフェース335はSpインターフェース235と同様でよい。Gxxインターフェース305、Gxインターフェース310、Rxインターフェース315、およびSpインターフェース340は、それぞれのネットワーク構成要素とDPA220を通じて間接的に通信することができる。様々な代替実施形態では、Gxxインターフェース305、Gxインターフェース310、Rxインターフェース315、およびSpインターフェース340は、それぞれのネットワーク構成要素と直接的に通信することができる。
セッションマネージャ320は、通信セッションを確立および管理するように構成されたハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能命令を含むことができる。セッションマネージャ320は、SGW132からPGW134およびGxインターフェース310を通じてIP−CANセッション確立要求を受信することができる。SGW132からのGW制御セッション要求は、Gxxインターフェース305を介してセッションマネージャ320に到着することができる。セッションマネージャ320は、AN150などのANからAFセッション要求を受信することができる。セッションを確立するとき、セッションマネージャ320は、アクティブなセッションに関するセッションデータをセッションデータストレージ325に格納することができる。セッションマネージャ320はまた、アクティブなセッションを監視し、内部または外部トリガに基づいてセッションを終了させることができる。セッションマネージャ320は、セッションデータストレージ325内の情報を更新し、Gxxインターフェース305、Gxインターフェース310、およびRxインターフェース315を介して適切なネットワーク要素にセッションの変化を通信することにより、セッションを管理することができる。
セッションが非アクティブであり、または孤立していることが疑わしいとタイマ330が判定したとき、セッションマネージャ320はセッション監査を実施することができる。セッションマネージャ320は、セッションデータストレージ325に格納されたセッションデータに基づいて無害のメッセージを生成することができる。セッションマネージャ320は、無害のメッセージに対する応答に基づいてセッション管理処置を取ることができる。例えば、セッションが非アクティブであることを応答が示す場合、セッションマネージャ320はセッションを終了させることができる。セッションマネージャ320が応答を受信しない場合、セッションマネージャ320は、例えば、応答の欠如はセッションが非アクティブであることを示すなどのデフォルト仮定に基づいて、セッション管理処置を取ることができる。
セッションデータストレージ325は、セッションデータを格納することのできる任意の機械可読媒体でよい。図5に関してさらに詳細に説明されるように、セッションデータは、例えば、セッションID、加入ID、セッションタイプ、PCC規則、QoS規則、活動タイムスタンプ、イベントトリガ、および/または各セッションについての特定の処置を含むことができる。
タイマ330は、セッションが非アクティブであることが疑わしいときを判定するように構成されたハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能命令を含むことができる。タイマ330は現在時刻を監視することができる。タイマ330は、監査間隔および疑わしい不活動時間と共に構成することができる。監査間隔をオペレータによって構成することができ、または例えば、転送クラス、ベアラタイプ、割り振られた合計帯域幅、および/またはアプリケーションタイプなどの要素に基づいて計算することができる。一般に、セッションによって使用されるリソースが多いほど、より短い監査間隔がより望ましくなる。監査間隔を過ぎるごとに、タイマ330は、各セッションについての活動タイムスタンプを現在時刻と比較することができる。活動タイムスタンプと現在時刻との間の差が疑わしい不活動時間を超過した場合、タイマ330は、セッションマネージャ320にセッション監査を実施するように要求することができる。
規則エンジン335は、PCCおよび/またはQoS規則を生成および/または修正するように構成されたハードウェアおよび/または機械可読記憶媒体上に符号化された実行可能命令を含むことができる。セッションマネージャ320が通信セッションを最初に確立したとき、規則エンジン335はPCC/QoS規則を生成することができる。セッションマネージャ320がセッション管理処置を取るとき、規則エンジン335は新しい規則を生成し、または既存の規則を削除することができる。例えば、規則エンジン335は、IP−CANセッションに関する既存のPCC規則を削除して、終了したAFセッションをなくすことができる。規則エンジン335がPCC/QoS規則を生成または削除するときはいつでも、規則エンジン335は、セッションデータストレージ325を更新することができる。
図4に、プロキシデータを格納する例示的データ構成400を示す。データ構成400は、例えば、プロキシデータストレージ230に格納されたデータベース内のテーブルでよい。あるいは、データ構成400は、一連のリンクリスト、配列、または類似のデータ構造でよい。したがって、データ構成400が基礎となるデータの抽出であり、このデータの格納に適した任意のデータ構造を使用できることは明らかなはずである。
データ構成400は、例えば、セッションIDフィールド405、加入IDフィールド410、PCRNブレードID415、バインドセッションIDフィールド420などのデータフィールドを含むことができる。データ構成400は、セッションを定義し、ステータスをバインドするのに必要または有用な追加のフィールド(図示せず)を含むことができる。データ構成400は、例えばエントリ425、430、および435などのセッションに関する複数のエントリを含むことができる。
セッションIDフィールド405は、個々のIP−CANセッションに割り当てられた名前を含むことができる。セッション確立中に、セッションIDフィールド405によって格納された値をDPA220によって割り当てることができる。セッションIDフィールド405を特定の通信セッションに関するDiameterメッセージ内のセッションID AVPとして使用することができる。加入IDフィールド310は、通信セッションに関連する加入記録または加入者記録を識別するのに使用される1つまたは複数の名前、数字、および/または文字列を含むことができる。加入ID410フィールドは、例えば、国際モバイル加入者識別番号(IMSI)、移動局国際加入者ディレクトリ番号(MSISDN)、セッション開始プロトコルユニフォームリソースインジケータ(SIP URI)、および/またはネットワークアクセス識別子(NAI)を含むことができる。加入ID410を使用して、SPR138からの加入者記録を求める要求に対応する記録の位置を突き止めることができる。PCRNブレードIDフィールド415は、例えば、IPアドレス、MACアドレス、またはDPA220がPCRNブレードにトラフィックをアドレス指定することを可能にする他の方法を使用して、セッションが割り当てられるPCRNブレード225を示すことができる。バインドセッションIDフィールド420は、セッションがバインドされた任意の他のセッションを示すことができる。
データ構成400内のエントリの一例として、エントリ425は、加入者「100000000000001」に関するセッション「0x284B」を示すことができる。セッションは、PCRNブレード123.45.67.89に割り当てられている。セッションは、セッション「0x72A3」および「0x32C3」にバインドされる。データ構成400内のエントリの第2の例として、エントリ430は、加入者「100000000000001」に関するセッション「0x72A3」を示すことができる。セッションは、PCRNブレード123.45.67.89に割り当てられている。セッションはセッション「0x284B」にバインドされる。エントリ435は、データ構成400が追加のセッションに関する追加のエントリを含むことができることを示すことができる。
図5に、セッションデータを格納する例示的データ構成500を示す。データ構成500は、例えば、セッションデータストレージ325に格納されたデータベース内のテーブルでよい。あるいは、データ構成500は、一連のリンクリスト、配列、または類似のデータ構造でよい。したがって、データ構成500が基礎となるデータの抽出であり、このデータの格納に適した任意のデータ構造を使用できることは明らかなはずである。
データ構成500は、例えば、セッションIDフィールド505、加入IDフィールド510、セッションタイプフィールド515、PCC規則フィールド520、QoS規則フィールド525、イベントトリガフィールド530、特定処置フィールド535、活動タイムスタンプ540などのデータフィールドを含むことができる。データ構成500は、通信セッションを定義するのに必要または有用な追加のフィールド(図示せず)を含むことができる。データ構成500は、例えば、セッション545、550、555、560などのセッションに関する複数のエントリを含むことができる。
セッションIDフィールド505はセッションIDフィールド405に対応することができる。記録を管理し、ネットワーク構成要素と通信するとき、セッションIDフィールド505を使用してセッションを識別することができる。加入IDフィールド510は加入IDフィールド410と同様でよい。加入IDフィールド510を使用して、セッションに関連する加入者を識別することができる。セッションタイプフィールド515は、通信セッションのタイプの表示を含むことができる。セッションタイプは、PCRN136によって管理されるIP−CAN、GW制御、AF、および任意の他のタイプのセッションを含むことができる。PCC規則フィールド520は、セッションに関してアクティブであるPCC規則名のリストを含むことができる。QoS規則フィールド525は、セッションに関してアクティブであるQoS規則名のリストを含むことができる。イベントトリガフィールド530は、セッションに関してプロビジョニングされるイベントトリガのリストを含むことができる。イベントトリガフィールド530は、AFセッションに関する値を含まないことができる。特定処置フィールド535は、セッションに関してプロビジョニングされる特定の処置のリストを含むことができる。IP−CANセッションおよびGW制御セッションは、特定の処置を含まないことができる。活動タイムスタンプフィールド540は、PCRN136がセッションに関して行った最後の処置の時刻の表示を含むことができる。活動タイムスタンプフィールド540は、例えば、ネットワークタイムプロトコル(NTP)またはUNIX(登録商標)時刻を使用して、最後の処置の時刻を示すことができる。単純化のために、図面および例では、見慣れた短時間パターンフォーマット(HH:mm)を使用してタイムスタンプフィールド540が示されることがある。
データ構成500内のエントリの一例として、セッション545は、加入ID「100000000000001」に関するセッションID「0x284B」を有するセッションを示すことができる。セッション545は、1つのアクティブなPCC規則「0xA903」および1つのアクティブなQoS規則「0x12B1」を有するIP−CANセッションである。セッション545は、IP−CANセッションに関してPGWにプロビジョニングされるものとしてイベントトリガ2、6、および17をリストする。セッション545に関する最後の活動は「10:32」に行われた。
データ構成500内のエントリの別の例として、セッション550は、加入ID「100000000000001」に関するセッションID「0x72A3」を有するセッションを示すことができる。セッション550は、アクティブなPCC規則がなく、1つのアクティブなQoS規則「0x12B1」を有するGW制御セッションである。セッション550は、GW制御セッションに関してSGWにプロビジョニングされるものとしてイベントトリガ「14」をリストし、イベントトリガがプロビジョニングされないことを示すことができる。セッション550に関する最後の活動は「10:36」に行われた。
データ構成500内のエントリの別の例として、セッション555は、加入ID「100000000000001」に関するセッションID「0x32C3」を有するセッションを示すことができる。セッション555は、1つのアクティブなPCC規則「0xA903」を有し、アクティブなQoS規則のないAFセッションである。セッション545は、AFセッションに関してPGWにプロビジョニングされるものとして特定の処置「8」をリストする。セッション545に関する最後の活動は「10:40」に行われた。セッション560は、データ構成500が追加のセッションに関する追加のエントリを含むことができることを示すことができる。
図6に、セッション監査を実施する例示的方法600を示す。方法600はステップ605で始まり、ステップ610に進むことができる。ステップ610では、タイマ330は、セッション監査間隔が生じるのを待機することができる。様々な例示的実施形態では、各セッションについて、またはセッションのグループについて監査間隔を構成することができる。あるいは、すべてのセッションが監査されるときを決定する単一の監査間隔でタイマ330を構成することができる。タイマ330は、現在時刻が以前の監査時刻に監査間隔を加えたものに等しいときに監査間隔が生じたことを判定することができる。次いで、方法600はステップ615に進むことができる。
ステップ615では、タイマ330は、疑わしいセッションを検出することができる。セッションデータストレージ325内の各セッションについて、タイマ330は、現在時刻と活動タイムスタンプ540との間の差を疑わしい不活動時間と比較することができる。差が疑わしい不活動時間を超過する場合、セッションを疑うことができる。タイマ330は、疑わしいセッションがあればそれに関するセッション監査を実施するようにセッションマネージャ320に要求することができる。次いで、方法600はステップ620に進むことができる。
ステップ620では、セッションマネージャ320は、セッションを開始したネットワーク構成要素に無害のメッセージを送信することができる。IP−CANセッションでは、ネットワーク構成要素はPGWでよい。GW制御セッションでは、ネットワーク構成要素はSGWでよい。AFセッションでは、ネットワーク構成要素はANでよい。無害のメッセージは、ネットワーク構成要素でのセッションの状態を変更しない要求メッセージでよい。一例を挙げると、IP−CANセッションまたはGW制御セッションに関する無害のメッセージは、RARコマンドプロビジョニングイベントトリガでよい。プロビジョニングされるイベントトリガは、イベントトリガフィールド530に格納されたイベントトリガと合致することができ、したがって要求は、SGWまたはPGWでどんなセッション変更も実施しない。別の例として、AFセッションに関する無害のメッセージは、特定の処置を含むRARコマンドでよい。セッションマネージャ320はまた、無害のメッセージへの応答の欠如を扱うデフォルト規則をDPA220に通知するために、メッセージ内にプロプライエタリAVPを含めることもできる。
ステップ625では、PCRN136は、ネットワーク構成要素からの応答を待機することができる。PCRN136は、ネットワーク構成要素が応答するのに十分な時間だけ待機することができる。例えば、ネットワーク構成要素に関する平均応答時間に基づいて待機期間を構成することができる。ステップ630では、セッションマネージャ320および/またはDPA220は、無害のメッセージに対する応答が受信されたかどうかを判定することができる。応答が受信された場合、方法はステップ635に進むことができる。応答が受信されない場合、方法はステップ645に進むことができる。
ステップ635では、セッションマネージャ320は、応答に基づいてセッションがアクティブであるかどうかを判定することができる。例えば、応答がDIAMETER_SUCCESS(2001)を含む場合、応答は、セッションがネットワーク構成要素でアクティブであることを示すことができる。この場合、方法はステップ640に進むことができる。別の例として、応答がDIAMETER_UNKNOWN_SESSION_ID(5002)を含む場合、応答は、セッションが非アクティブであり、あるいはネットワーク構成要素によって終了または孤立させられたことを示すことができる。この場合、方法はステップ650に進むことができる。
ステップ640では、セッションマネージャは、応答の時間を含めるように活動タイムスタンプフィールド540を更新することができる。次いで、方法はステップ660に進むことができ、方法は終了する。
ステップ630に戻ると、PCRN136が応答を受信しない場合、方法はステップ645に進むことができる。ステップ645では、セッションマネージャは、デフォルト仮定に基づいて処置を決定することができる。デフォルト仮定が、応答の欠如がセッションが不活動を示すことである場合、方法はステップ650に進むことができる。デフォルト仮定が、応答の欠如が不活動として扱われないことである場合、方法はステップ610に戻り、別の監査間隔を待機することができる。様々な実施形態では、デフォルト仮定は、最初のn−1個の監査中に応答の欠如が不活動として扱われないが、n回目に不活動として扱われることでよい。値nはハードコーディングすることができ、構成可能システム変数によって定義することができ、またはセッションデータストレージ325内で各セッションについて定義することができる。セッションマネージャ320は、監査間隔がどれだけ生じたかを求めるために、セッションタイムスタンプを更新することを控えることができる。
ステップ650では、セッションマネージャ320は、非アクティブセッションに関する管理処置を取ることができる。様々な例示的実施形態では、管理処置はセッションを終了させることでよい。セッションマネージャ320は、不明セッションメッセージを、ネットワーク構成要素からのセッション終了メッセージの場合と同様に扱うことができる。図7−9に関してさらに詳細に説明されるように、次いで、セッションマネージャ320は適切なメッセージを送って、すべてのネットワークノードでセッションを終了させることができる。様々な代替実施形態では、セッションマネージャ320は、セッション情報を記録し、かつ/または簡易ネットワーク管理プロトコル(SNMP)トラップメッセージを送信することによってセッションを管理することができる。次いで、方法はステップ660に進み、方法は終了する。
図7は、IP−CANセッション監査中の、図1のネットワーク内のエンティティ間のメッセージの交換を示す例示的メッセージダイアグラム700である。ステップ705では、PCRN136は、IP−CANセッションが非アクティブであることが疑わしいと判定することができる。メッセージ710は、イベントトリガを含むRARコマンドの形の、PCRN136からPGW134への無害のメッセージでよい。メッセージ715は、メッセージ710への応答でよい。PGW134は、DIAMETER_UNKNOWN_SESSION_ID(5002)またはDIAMETER_SUCCESS(2001)のいずれかの結果コードを含むRAAコマンドで応答することができる。結果コードがDIAMETER_SUCCESS(2001)である場合、セッションがまだアクティブであるので、PCRN136はセッション監査を停止することができる。結果コードがDIAMETER_UNKNOWN_SESSION_ID(5002)である場合、PCRN136は、例えば、IP−CANセッションおよびすべての関連セッションを終了させることなどの管理処置を取ることができる。
メッセージ720、725、730、および735は、IP−CANセッションに関連するAFセッションを終了させることができる。メッセージ720は、IP−CANセッションに関連するAFセッションの終了を要求する、PCRN136からAN150へのアボートセッション要求(ASR)コマンドでよい。メッセージ720の受信時に、AN150は、セッションに関するデータの送信を停止することができ、内部記録を更新してセッションを終了することができる。メッセージ725は、メッセージ720の要求を確認する、AN150からPCRN136へのアボートセッション応答(ASA)コマンドでよい。PCRN136は、メッセージ725を受信しない場合、メッセージ720を再送信することができる。メッセージ730は、AN150からPCRN136への、終了要求を有するセッション終了要求(STR)コマンドでよい。メッセージ730の受信時に、PCRN136は、セッションに関するPCC規則をアンインストールまたは削除することができる。PCRN136はまた、プロキシデータストレージ230およびセッションデータストレージ325からセッションに関するセッション情報を削除することができる。メッセージ735は、ステップ730の要求を確認する、PCRN136からAN150へのセッション終了応答(STA)コマンドでよい。AN150は、メッセージ735を受信しない場合、メッセージ730を再送信することができる。こうしたメッセージは、PCRN136とAN150の両方でAFセッションを終了させるのに十分である。IP−CANセッションを複数のAFセッションに関連付けることができ、したがってIP−CANセッションに関連する各AFセッションについて、メッセージ720、725、730、および735を反復することができる。
メッセージ740、745、750、および755は、IP−CANセッションに関連するGW制御セッションを終了させることができる。メッセージ740は、GW制御セッションの終了を要求する、PCRN136からSGW132へのRe−Auth−Request(RAR)コマンドでよい。メッセージ740の受信時に、SGW150は、セッションに関するデータの送信を停止することができ、内部記録を更新してセッションを終了することができる。メッセージ745は、メッセージ740の要求を確認する、SGW132からPCRN136へのRe−Auth−Answer(RAA)コマンドでよい。PCRN136は、メッセージ745を受信しない場合、メッセージ740を再送信することができる。メッセージ750は、GW制御セッションを終了するようにPCRN136に要求する、SGW132からPCRN136へのクレジット制御要求(CCR)コマンドでよい。メッセージ750の受信時に、PCRN136は、セッションに関するPCC規則をアンインストールまたは削除することができる。PCRN136はまた、プロキシデータストレージ230およびセッションデータストレージ325からセッションに関するセッション情報を削除することができる。メッセージ755は、メッセージ750の要求を確認する、PCRN136からSGW132へのクレジット制御応答(CCA)コマンドでよい。SGW132は、メッセージ755を受信しない場合、メッセージ750を再送信することができる。こうしたステップは、SGW132とPCRN136の両方でGW制御セッションを終了させるのに十分である。様々な実施形態では、メッセージ740、745、750、おび755は、GW制御セッションを終了させるのに使用されないことがある。PCRN136は、終了を開始するためのメッセージ740の送信を控えることができる。
図8は、AFセッション監査中の、図1のネットワーク内のエンティティ間のメッセージの交換を示す例示的メッセージダイアグラム800である。ステップ805では、PCRN136は、AFセッションが非アクティブであることが疑わしいと判定することができる。メッセージ810は、特定の処置を含むRARコマンドの形の、PCRN136からAN150への無害のメッセージでよい。メッセージ815は、DIAMETER_UNKNOWN_SESSION_ID(5002)またはDIAMETER_SUCCESS(2001)のいずれかの結果コードを含む、AN150からPCRN136へのRAAコマンドでよい。結果コードがDIAMETER_SUCCESS(2001)である場合、セッションがまだアクティブであるので、PCRN136はセッション監査を停止することができる。結果コードがDIAMETER_UNKNOWN_SESSION_ID(5002)である場合、PCRN136は、例えば、AFセッションを終了させることなどの管理処置を取ることができる。
メッセージ820および825は、AFセッションに関連するPCC規則を更新することができる。メッセージ820は、PCC規則を更新する要求を有する、PCRN136からPGW134へのRARコマンドでよい。更新は、例えば、PCC規則を追加または除去することを含むことができる。規則エンジン335は、メッセージ820内に含めるPCC規則を生成または修正することができる。メッセージ825は、PCC規則が更新されたことを示す、PGW134からPCRN136へのRAAコマンドでよい。PCRN136は、メッセージ825を受信しない場合、メッセージ820を再送信することができる。
メッセージ830および835は、AFセッションに関連するQoS規則を更新することができる。メッセージ830は、QoS規則を更新する要求を有する、PCRN136からSGW132へのRARコマンドでよい。更新は、例えば、QoS規則を追加または除去することを含むことができる。規則エンジン335は、メッセージ830内に含めるQoS規則を生成または修正することができる。メッセージ835は、QoS規則が更新されたことを示す、SGW132からPCRN136へのRAAコマンドでよい。PCRN136は、メッセージ835を受信しない場合、メッセージ830を再送信することができる。
図9は、GW制御セッション監査中の、図1のネットワーク内のエンティティ間のメッセージの交換を示す例示的メッセージダイアグラム900である。1次サービングゲートウェイ(P−SGW)132は、UE110に現在データをサービスしているSGWでよい。非1次サービングゲートウェイ(NP−SGW)133は、GW制御セッションでUE110にサービスすることのできる代替SGWでよい。ステップ905では、PCRN136は、GW制御セッションが非アクティブであることが疑わしいと判定することができる。メッセージ910は、イベントトリガを含むPCRN136からPGW132へのRARコマンドの形の無害のメッセージでよい。メッセージ915は、DIAMETER_UNKNOWN_SESSION_ID(5002)またはDIAMETER_SUCCESS(2001)のどちらかの結果コードでメッセージ910に応答する、P−SGW132からPCRN136へのRAAコマンドでよい。結果コードがDIAMETER_SUCCESS(2001)である場合、セッションがまだアクティブであるので、PCRN136はセッション監査を停止することができる。結果コードがDIAMETER_UNKNOWN_SESSION_ID(5002)である場合、PCRN136は、例えば、GW制御セッションを終了させ、ハンドオーバを実施することなどの管理処置を取ることができる。
ステップ920では、PCRN136は、非アクティブGW制御セッションと同一のIP−CANセッションに関連するGW制御セッションを有する非1次SGWがあるかどうかを判定することができる。例えば、NP−SGW133は、P−SGW132と同一のIP−CANセッションにリンクされたGW制御セッションを有する非1次SGWでよい。PCRN136は、IP−CANセッションをハンドオーバし、NP−SGW133を新しいP−SGWとして指名することができる。他のSGWがない場合、PCRN136は、GW制御セッションに関連するセッションを終了させることができる。
メッセージ925および930は、新しいP−SGWに関する情報で、GW制御セッションに関連するIP−CANセッションを更新することができる。メッセージ925は、IP−CANセッションに関するPCC規則(複数可)に対する更新を要求する、PCRN136からPGW134へのRARコマンドでよい。例えば、規則エンジン325は、NP−SGW133を新しいP−SGWにするようにPCC規則を修正した可能性がある。メッセージ930は、メッセージ925の要求を確認する、PGW134からPCRN136へのRAAコマンドでよい。PCRN136は、メッセージ930を受信しない場合、メッセージ925を再送信することができる。
メッセージ935および940は、新しいP−SGWに関する情報で、GW制御セッションに関連する任意のAFセッションを更新することができる。メッセージ935は、リソース修正を示す、PCRN136からAN150へのRARコマンドでよい。例えば、メッセージ935は、IP−CANタイプ変更をレポートするために特定のアクションAVPを含むことができる。メッセージ940は、メッセージ935の要求を確認する、AN150からPCRN136へのRAAメッセージでよい。PCRN136は、メッセージ940を受信しない場合、メッセージ935を再送信することができる。
例示的加入者ネットワーク100およびPCRN200の動作に関する例示的構成要素および方法を説明したので、次に、図1−9を参照しながら、例示的ネットワーク100およびPCRN200の動作の一例が与えられる。PCRN136は、PCRN200に対応することができる。セッションデータストレージ225の内容は、データ構成300によって表すことができる。プロキシデータストレージ230の内容は、データ構成400によって表すことができる。セッションデータストレージ325の内容は、データ構成500によって表すことができる。
プロセスが開始する前に、例えば5分などの監査間隔、例えば10分などの疑わしい不活動時間と共にシステムを構成することができる。プロセスは、監査間隔が到達したかどうかを判定することによって開始することができる。例えば、最後の監査が10:40であった場合、監査間隔は10:45で行うことができる。次いで、タイマ330は、活動タイムスタンプフィールド540内の各時刻を、現在時刻から疑わしい不活動時間を引いたものと比較して、セッションが非アクティブであることが疑わしいと判定することができる。データ構成500内のセッションのうち、タイムスタンプ10:32は、現在時刻10:45から10分以上も前であるので、セッション545は不活動である疑いがある可能性がある。
次いで、セッションマネージャ320は、セッション545のセッション監査を実施することができる。セッションマネージャ320は、セッションID「0x284B」およびイベントトリガ2、6、17をRARメッセージ内に配置することにより、無害のメッセージを構築することができる。次いで、セッションマネージャ320は、PGWを識別するのに使用されるPCC規則または別々のフィールド(図示せず)から、どのPGWがIP−CANセッションを開始したかを判定することができる。次いで、セッションマネージャ320はPGWにメッセージを送信することができ、PGWはPGW134でよい。
PGW134が結果コードDIAMETER_SUCCESS(2001)を含む成功メッセージでメッセージに応答した場合、セッションがPGW134でアクティブであるので、セッションマネージャ320は、活動タイムスタンプフィールド540を更新し、監査を終了することができる。無害のメッセージはPGW134とPCRN136のどちらでもセッションの状態を変更しなかったことに留意されたい。
PGW134が、結果コードDIAMETER_UNKNOWN_SESSION_ID(5002)を含む不明セッションIDメッセージでメッセージに応答した場合、セッションマネージャ320はネットワーク管理処置を行うことができる。様々な実施形態では、セッションマネージャ310は、不明セッションIDメッセージをセッション終了要求メッセージとして扱うことによってセッションを終了させることができる。セッションマネージャ320は、PCC規則フィールド520、QoS規則フィールド535、および/またはバインドセッションIDフィールド420から、どのセッションがIP−CANセッションに関連するかを判定することができる。セッション545とセッション550は共通のPCC規則を共有するので、セッション545をセッション550に関連付けることができる。セッション545とセッション555は共通のQoS規則を共有するので、セッション545をセッション555に関連付けることができる。データ構成400はまた、セッションID「0x284B」がセッションID「0x72A3」および「0x32C3」にバインドされることを示す。図9に示されるように、セッションマネージャ320は、メッセージ720、725、730、および735を使用して、例えばセッションID「0x32C3」を有するセッション555などのIP−CANセッションに関連する各AFセッションを終了させることができる。セッションマネージャ320は、PCC規則および/または別々のANアドレスフィールド(図示せず)に基づいて、どのANがメッセージを送信するかを決定することができる。図9にさらに示されるように、セッションマネージャ320は、メッセージ740、745、750、および755を使用して、例えばセッションID「0x72A3」を有するセッション550などのIP−CANセッションに関連する任意のGW制御セッションを終了させることができる。セッションマネージャ320は、QoS規則および/または別々のSGWアドレスフィールド(図示せず)に基づいて、どのSGWがメッセージを送信するかを決定することができる。
DPA220はまた、不明セッションIDメッセージに基づいて、データ構成400内の記録を削除および/または修正することができる。例えば、不明セッションIDメッセージが、セッションを開始したPGWでセッションが非アクティブであることを示すので、DPA220は、記録425を削除することができる。DPA220は、上述の終了メッセージに基づいて他の記録を削除することができる。
PGW134が待機期間内に無害のメッセージに応答しない場合、セッションマネージャ320は、デフォルト仮定を利用して、セッションのステータスを求めることができる。様々な実施形態では、セッションマネージャ320は無害のメッセージの時刻をセッションタイムスタンプと比較して、どれだけの監査間隔が過ぎたかを判定することができる。例えば、監査が10:45で行われ、監査間隔が5分である場合、セッションマネージャ320は、セッション545について2つの監査間隔が過ぎたと判定することができる。デフォルト仮定が1つの応答の欠如だけを許す場合、セッションマネージャ320は、応答の欠如を上述の不明セッションIDメッセージのように扱うことができる。
上記に従って、様々な例示的実施形態は、PCRNでDiameterセッション監査を実施することを実現する。具体的には、無害のメッセージを使用して非アクティブセッションを検出することにより、PCRNは、他のネットワーク構成要素の動作を妨害することなく、ネットワークリソースを解放することができる。さらに、非アクティブセッションの発見を終了要求の場合と同様に扱うことにより、PCRNは、通信誤りを効率的に訂正することができる。
上記の説明から、本発明の様々な例示的実施形態をハードウェアおよび/またはファームウェアで実装できることは明らかなはずである。さらに、少なくとも1つのプロセッサによって読み取り、実行し、本明細書で詳細に説明される動作を実施することのできる、機械可読記憶媒体上に格納された命令として様々な例示的実施形態を実装することができる。機械可読記憶媒体は、パーソナルまたはラップトップコンピュータ、サーバ、他のコンピューティングデバイスなどの機械で読取り可能な形で情報を格納する任意の機構を含むことができる。したがって、機械可読記憶媒体は、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、および類似の記憶媒体を含むことができる。
本明細書の任意のブロック図は本発明の原理を実施する例示的回路の概念図を表すことを当業者は理解されたい。同様に、コンピュータまたはプロセッサが明示的に示されているか否かに関わらず、任意のフローチャート、流れ図、状態遷移図、擬似コードなどが、実質的に機械可読媒体で表すことができ、したがってそのようなコンピュータまたはプロセッサで実行することのできる様々なプロセスを表すことを理解されよう。
様々な例示的実施形態が、そのいくつかの例示的態様を具体的に参照しながら詳細に説明されたが、本発明は他の実施形態が可能であり、その詳細は、様々な明らかな点で修正が可能であることを理解されたい。当業者には直ちに明らかであるように、本発明の趣旨および範囲内にとどまりながら、変形形態および修正形態に影響を与えることができる。したがって、上記の開示、説明、および図は例示のためのものに過ぎず、特許請求の範囲のみによって定義される本発明をいかなる形でも限定するものではない。