简介
本文档介绍在未配置本地默认策略时,如何在发生PCRF(策略控制和规则功能)故障时处理思科聚合服务路由器(ASR)5500机箱中的默认本地策略。
问题
当PCRF关闭时,ASR PGW(数据包数据网关)无法处理用户的默认策略。在PCRF升级阶段,观察到PCRF上的问题。但是,ASR PGW无法处理导致许多会话被丢弃的用户的默认策略。
Wireshark跟踪显示,在事故期间,所有CCA-I(信用控制应答初始)数据包都是从PCRF发送的,其直径结果代码为“DIAMETER_UNKNOWN_SESSION_ID(5002)”。
示例数据包如下所示:
2014-10-01 06:20:00.009092 107.72.199.142 172.18.232.142 DIAMETER 286
[TCP Retransmission] cmd=Credit-ControlAnswer(272) flags=-P-- appl=3GPP
Gx(16777238) h2h=70409850 e2e=4a67829
AVP: CC-Request-Type(416) l=12 f=-M- val=INITIAL_REQUEST (1)
AVP: Result-Code(268) l=12 f=-M- val=DIAMETER_UNKNOWN_SESSION_ID (5002)
从配置中,ASR没有将本地策略回退配置为5002(或5xxx)代码,以便对此类代码执行故障处理(FH):
failure-handling-template FHtemplate
msg-type credit-control-initial failure-type diameter result-code 3000 to 3999
action continue local-fallback
msg-type credit-control-initial failure-type tx-expiry action continue local-fallback
msg-type credit-control-initial failure-type resp-timeout action continue
local-fallback
msg-type credit-control-initial failure-type diabase-error action continue
local-fallback
msg-type credit-control-update failure-type diameter result-code 3000 to 3999 action
continue local-fallback
msg-type credit-control-update failure-type tx-expiry action continue local-fallback
msg-type credit-control-update failure-type resp-timeout action continue local-fallback
msg-type credit-control-update failure-type diabase-error action continue
local-fallback
msg-type credit-control-terminate failure-type any action retry-and-terminate
msg-type credit-control-terminate failure-type diameter result-code 3001 to 3005 action
retry-and-terminate
msg-type credit-control-terminate failure-type diameter result-code any-error action
terminate
#exit
5002结果代码是永久性故障(请参阅RFC 3588)。 根据RFC 3588,第7.1.5节。永久故障,“属于永久故障类别的错误,用于通知对等体请求失败,且不应再次尝试。”
DIAMETER_UNKNOWN_SESSION_ID 5002
请求包含未知会话ID。如果永久失败的模板中没有匹配的FH配置 — 5xxx结果代码,会话将终止。因此,使用当前FH模板,ASR将处理具有直径结果代码“DIAMETER_UNKNOWN_SESSION_ID(5002)”的方案(CCA-I)PCRF。
解决方案
使用当前FH模板,ASR会按照预期处理来自PCRF的直径结果代码为“DIAMETER_UNKNOWN_SESSION_ID(5002)”的场景(CCA-I)。您可以决定希望ASR如何处理此场景(即,当它从PCRF接收带有“DIAMETER_UNKNOWN_SESSION_ID(5002)”代码的CCA-I时),并且可以根据需要更改FH模板。您可以在PCRF端进行更改以解决问题,而无需更改(从而保持当前设计)PGW侧的FH模板。
5xxx代码是永久故障代码。但是,如果要在从PCRF收到此类5xxx错误代码后对其执行FH,可以为预期的5xxx结果代码添加配置以回退,如本例所示:
failure-handling-template FH template msg-type credit-control-initial failure-type
diameter result-code 5001 to 500x action continue local-fallback.
相关信息