このドキュメントでは、オンライン課金システム(OCS)で発生した問題の解決、またはポリシー/課金実施機能(PCEF)と OCS 間の接続に関する問題の解決のために Gy インターフェイスで Failure-Handling(FH)と Server-Unreachable(SU)メカニズムを設定する方法について説明します。このドキュメントの情報は、Cisco 5000 シリーズ Aggregated Services Router(ASR5K)で稼働する Home Agent(HA)、Gateway General Packet Radio Service(GPRS)Support Node(GGSN)、および Packet Data Network Gateway(PGW)機能に適用されます。
FH および SU メカニズムを使用するために、ご使用のシステムが次の要件を満たしていることを確認してください。
このドキュメントの情報は、ASR5K のすべてのバージョンに基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
PCEF は Gy インターフェイス経由で OCS に接続され、Gy インターフェイスはベース プロトコルおよび DCCA として Diameter を使用します。次に PCEF と OCS 間のメッセージ フローを示します。
このメッセージ フローを実現するため、PCEF と OCS 間で Diameter 接続が確立されます。OCS が否定的なメッセージを送信するか、PCEF と OCS 間でトランスポート接続が失敗するか、またはメッセージがタイムアウトになる可能性があります。これらの状況が原因で、サブスクライバ セッションを確立できないことがあります。これにより、サブスクライバがサービスを使用できなくなることがあります。
この問題を解決するため、次の 2 つのメカニズムを使用できます。
ここでは、FH メカニズムと SU メカニズムをサポートするために必要な設定について説明します。
このドキュメントの説明では、次のトポロジを使用します。
これは、diameter credit-control 設定で設定可能な DCCA 用アプリケーション レベル タイマーです。値は 1 ~ 300 秒です。
以下が一例です。
[local]host_name(config-dcca)# diameter pending-timeout
これは diabase タイムアウトであり、Diameter Endpoint 設定で設定できます。値は 1 ~ 300 秒です。
以下が一例です。
[context_name]host_name(config-ctx-diameter)# response-timeout
この機能は、Diameter クレジット制御セッション フェールオーバーを有効または無効にするために使用されます。このフェールオーバーにより、システムはプライマリ サーバに到達できなくなった場合にセカンダリ サーバを使用できます。これは diameter credit-control 設定で設定できます。
以下が一例です。
local]host_name(config-dcca)# diameter session failover
FH メカニズムは、Diameter セッション フェールオーバーが存在する場合にのみ動作します。FH によりシステムは、接続またはメッセージ レベルのエラーが発生した場合に、セッションを続行してオフラインに切り替えるか、またはセッションを終了するかを選択できます。
FH メカニズムの設定は diameter credit-control 設定で行うことができます。FH 設定で使用される構文を次に示します。
failure-handling { initial-request | terminate-request | update-request } { continue
[ go-offline-after-tx-expiry | retry-after-tx-expiry ] | retry-and-terminate,
[ retry-after-tx-expiry ] | terminate }
1 番目のセクションは要求タイプ(Initial(CCR-I)、Update(CCR-U)、および Terminate(CCR-T))を指定します。
2 番目のセクションは、FH メカニズムがアクティブになったときに実行するアクションを指定します。FH メカニズムで指定できる 3 種類のアクションは次のとおりです。
ここでは、設定が行われていない場合の FH のデフォルトの動作について説明します。デフォルトでは、terminate アクションが設定されている場合を除き、FH メカニズムは応答タイムアウト(RT)中にアクティブになります。
サーバから Credit-Control-Failure-Handling 属性値ペア(AVP)を受信すると、受信した設定が適用されます。
次に例を示します。
ここでは、FH メカニズムの詳しいコール フローと有効なすべてのオプションについて説明します。
Initial-Request
CCFH の設定 | CLI コマンド | Tx での動作 | RT での動作 | セカンダリが稼働している場合 | セカンダリがダウンしている場合 |
---|---|---|---|---|---|
[Continue] |
initial-request |
N/A |
[Continue] |
セカンダリ |
次の RT の後にオフラインになる。 |
initial-request |
オフライン |
N/A |
Tx でオフラインになる |
Tx でオフラインになる |
|
initial-request |
[Continue] |
N/A |
セカンダリ |
次の Tx の後にオフラインになる |
|
Retry-and-terminate |
initial-request |
N/A |
再試行 |
セカンダリ |
次の RT の後に終了する |
initial-request |
再試行 |
N/A |
セカンダリ |
次の Tx の後に終了する |
|
終了 |
initial-request |
終了 |
N/A |
Tx の後に終了する |
Tx の後に終了する |
Update-Request
CCFH の設定 | CLI コマンド | Tx での動作 | RT での動作 | セカンダリが稼働している場合 | セカンダリがダウンしている場合 |
---|---|---|---|---|---|
[Continue] |
update-request |
N/A |
[Continue] |
セカンダリ |
次の RT の後にオフラインになる |
update-request |
オフライン |
N/A |
Tx でオフラインになる |
Tx でオフラインになる |
|
update-request |
[Continue] |
N/A |
セカンダリ |
次の Tx の後にオフラインになる |
|
Retry-and-terminate |
update-request |
N/A |
再試行 |
セカンダリ |
次の RT の後に CCR-T を送信する |
update-request |
再試行 |
N/A |
セカンダリ |
次の Tx の後に CCR-T を送信する |
|
終了 |
update-request |
終了 |
N/A |
Tx の後に CCR-T を送信する |
Tx の後に CCR-T を送信する |
Terminate-Request
CCFH の設定 | CLI コマンド | Tx での動作 | RT での動作 | セカンダリが稼働している場合 | セカンダリがダウンしている場合 |
---|---|---|---|---|---|
[Continue] |
terminate-request |
N/A |
再試行 |
CCR-T が |
次の RT の後に終了する |
terminate-request |
再試行 |
N/A |
CCR-T が |
次の Tx の後に終了する |
|
terminate-request |
再試行 |
N/A |
CCR-T が |
次の Tx の後に終了する |
|
Retry-and-terminate |
terminate-request |
N/A |
再試行 |
CCR-T が |
次の RT の後に終了する |
terminate-request |
再試行 |
N/A |
CCR-T が |
次の Tx の後に終了する |
|
終了 |
terminate-request |
終了 |
N/A |
Tx の後に |
Tx の後に終了する |
SU メカニズムは FH メカニズムに似ていますが、よりきめの細かい障害コントロール手順が提供されます。メッセージ レベルおよび接続レベル(トランスポート)の障害発生後にセッションを続行できるだけでなく、OCS からの応答に時間がかかる場合にもこのメカニズムを使用できます。一定期間またはクォータを使い切るまでセッションを続行してから終了するオプション、また、セッションがオフラインになるかまたは終了するまでの設定可能な暫定クォータ(ボリュームと時間)と設定可能なサーバ試行回数を使用するオプションがあります。
SU メカニズムの設定は diameter credit-control 設定で行うことができます。SU の設定で使用する構文は、ご使用のバージョンに応じて異なります。
バージョン 12.1 以前で SU メカニズムの設定に使用される構文は次のとおりです。
servers-unreachable { initial-request { continue | terminate [ after-timer-expiry
<timeout_period> ] } | update-request { continue | terminate [ after-quota-expiry
| aftertimer-expiry <timeout_period> ] } }
バージョン 12.2 以降で SU メカニズムの設定に使用される構文は次のとおりです。
servers-unreachable { behavior-triggers { initial-request | update-request }
result-code { any-error | <result-code> [ to <end-result-code> ] }
| transport-failure [ response-timeout | tx-expiry ] | initial-request
{ continue [ { [ after-interim-time <timeout_period> ] [ after-interim-volume
<quota_value> ] } server-retries <retry_count> ] | terminate [ {
[ after-interim-time <timeout_period> ] [ after-interim-volume <quota_value> ]
} server-retries <retry_count> | after-timer-expiry <timeout_period> ] }
| update-request { continue [ { [ after-interim-time <timeout_period> ]
[ after-interim-volume <quota_value> ] } server-retries <retry_count> ]
| terminate [ { [ after-interim-time <timeout_period> ] [ after-interim-volume
<quota_value> ] } server-retries <retry_count> ] | after-quota-expiry |
after-timer-expiry <timeout_period> ] } }
サーバから CC-FH AVP が返され、一連の動作トリガーに対して SU メカニズムが設定されている場合、SU 設定が適用されます。それ以外の場合は、CC-FH AVP 値が適用されます。デフォルトでは、3002、3004、3005 などの結果コードは送信失敗に分類され、RT として扱われます。
SU メカニズムで指定できるアクションは次のとおりです。
次のオプションは、Continue アクションまたは Terminate アクションで使用できます。
いくつかの重要な情報を次に示します。
SU メカニズムは、CCR-I または CCR-U の失敗によってトリガーされます。この原因としては、エラー コード、トランスポート障害、Tx-expiry、RT などがあります。アクションは、暫定クォータ(時間/ボリューム)の割り当て、サーバ再試行カウント、セッションがオフラインまたは終了するまでのタイマー値(指定されている時間にわたってセッションがオフラインになる、終了のみ)またはクォータの期限切れ(CCR-U および終了のみ)のいずれかにできます。
暫定クォータは、Multiple Services Credit Control(MSCC)シナリオでのレーティング グループ(RG)単位ではなく、セッション単位で指定されます。
プライマリ サーバによってトランスポート障害が引き起こされ、セカンダリ サーバが Tx-expiry または応答タイムアウトをトリガーする可能性があります。このシナリオでは、最後に発生したエラーが障害のトリガーとみなされます。
どの障害トリガーにも SU メカニズムが設定されていない場合、FH メカニズムがトリガーされます。
セッションの接続解除が行われない Initial-Request
このシナリオのメッセージ フローを次に示します。
セッションの接続解除が行われる Initial-Request
このシナリオのメッセージ フローを次に示します。
セッションの接続解除が行われない Update-Request
このシナリオのメッセージ フローを次に示します。
セッションの接続解除が行われる Update-Request
このシナリオのメッセージ フローを次に示します。
Update-Request と不明なセッション
このシナリオのメッセージ フローを次に示します。
Update-Request と複数の RG(MSCC シナリオ)
このシナリオのメッセージ フローを次に示します。
Terminate-Request
このシナリオのメッセージ フローを次に示します。
CCR エラー コードの処理
このシナリオのメッセージ フローを次に示します。
ここでは、FH および SU メカニズムの設定例を示します。FH および SU メカニズムの両方が設定されている場合、同じ動作トリガーでは FH よりも SU が優先されます。
以下が一例です。
credit-control group test
diameter origin endpoint test
diameter peer-select peer test
quota volume-threshold percent 10
diameter pending-timeout 80 deciseconds msg-type any
diameter session failover
trigger type rat lac
apn-name-to-be-included virtual
quota request-trigger exclude-packet-causing-trigger
failure-handling initial-request continue retry-after-tx-expiry
servers-unreachable initial-request terminate after-interim-volume 200
after-interim-time 3600 server-retries 0
servers-unreachable behavior-triggers initial-request transport-failure
tx-expiry
servers-unreachable update-request continue after-interim-volume 200
after-interim-time 3600 server-retries 50
servers-unreachable behavior-triggers update-request transport-failure
tx-expiry
設定が正しく機能するかどうかを確認するには、show active-charging service <サービス名> コマンドを入力します。
# show active-charging service name test
Service name: test
TCP Flow Idle Timeout : 300 (secs)
UDP Flow Idle Timeout : 300 (secs)
ICMP Flow Idle Timeout : 300 (secs)
ICMP Flow Idle Timeout : 300 (secs)
ALG Media Idle Timeout : 120 (secs)
TCP Flow-Mapping Idle Timeout : 300 (secs)
UDP Flow-Mapping Idle Timeout : Not Configured
Deep Packet Inspection: Enabled
Passive Mode : Disabled
CDR Flow Control : Enabled
CDR Flow Control Unsent Queue Size: 75
Unsent Queue high watermark: 56
Unsent Queue low watermark: 18
Content Filtering: Disabled
Dynamic Content Filtering: Disabled
URL-Blacklisting: Disabled
URL-Blacklisting Match-method: Exact
Content Filtering Match-method: Generic
Interpretation of Charging-rule-base-name: active-charging-group-of-ruledefs
Selection of Charging-rule-base AVP : Last
Credit Control:
Group : test
Mode : diameter
APN-name-to-be-included: gn
Trigger-Type : N/A
Failure-Handling:
Initial-Request : continue retry-after-tx-expiry
Update-Request : retry-and-terminate
Terminate-Request: retry-and-terminate
Server Unreachable Failure-Handling:
Initial-Request : terminate
Update-Request : continue
SU および FH メカニズムに関連する統計情報を表示するには、show active-charging credit-control statistics コマンドを入力します。次に出力例を示します。
#show active-charging credit-control statistics
...
OCS Unreachable Stats:
Tx-Expiry: 2291985 Response-TimeOut: 615
Connection-Failure: 2 Action-Continue: 0
Action-Terminated: 0 Server Retries: 2023700
Assumed-Positive Sessions:
Current: 2 Cumulative: 2196851
この出力例に関する重要な注意点は次のとおりです。
セッションの SU 状態に関連する情報を表示するには、show active-charging sessions full all コマンドを入力します。次に出力例を示します。
#show active-charging sessions full all
..
..
Current Server Unreachable State: CCR-I
Interim Volume in Bytes (used / allotted): 84/ 200
Interim Time in Seconds (used / allotted): 80/ 3600
Server Retries (attempted / configured): 1/ 50
この出力例に関する重要な注意点は次のとおりです。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
02-Jun-2015 |
初版 |