问题描述:
主被叫为HTC终端,都在LTE覆盖下,发起VoLTE语音呼叫。多次测试发现,主被叫开关机后的第一次呼叫总是成功,但是多次呼叫后,就会出现主叫呼叫马上自动挂断,被叫无任何反应的现象。出现故障后,再次尝试呼叫,问题一直存在,除非重新开关机。
问题分析:
抓包可以看到,PCSCF收到被叫发来的183消息,通过AAR触发PCRF建立专载,PCRF发送RAR给PGW,PGW给出了正确响应。但是马上发起了CCR-U消息,消息中携带Charging-Rule-Report/ Rule-Failure-Code: RESOURCES_LIMITATION (5)。
从PGW的单用户跟踪消息看,PGW收到RAR之后,并没有向SGW发送任何建立专载的消息。
进一步可以看到,问题发生前的呼叫结束后,PCSCF收到BYE消息后,向PCRF发送STR消息,但是PCRF返回了
Result-Code: DIAMETER_UNKNOWN_SESSION_ID (5002)。
问题原因:
分析发现,原因是第一次PCSCF通过LDRA发送STR消息中,携带了正确的host name:FZM01PCRF01BNK.fz.fj.node.epc.mnc000.mcc460.3gppnetwork.org ,但LADR没转发给PCRF。第二次PCSCF以小写的host name: fzm01pcrf01bnk.fz.fj.node.epc.mnc000.mcc460. 3gppnetwork.org发送,LDRA正常转发给了PCRF,但是由于host name是区分大小写的,所以PCRF以Result-Code: DIAMETER_UNKNOWN_SESSION_ID 拒绝了STR消息,导致没有正常释放语音专载。
再次呼叫时,对于该用户PCRF再次发送RAR给PGW,带有相同的charging-rule-name及QOS及TFT。此时PGW根据协议,会修改前面的专载,将TFT里的filter累加到原先的TFT里,修改后的专载可以正常用于语音通话。但是当重复拨打4次后,TFT里的filter达到最大值16后, PGW就会发送CCR-U携带RESOURCES_LIMITATION给PCRF,导致语音呼叫失败。
问题解决:
对于LDRA没有正常转发STR的问题,经查是由于一台LDAR上缺少相关配置导致的,在该LDRA上添加配置后,该问题解决。呼叫失败的问题不再出现。
本文整理自网络,文章版权归原作者所有,如有侵权,请联系我们进行删除。小编微信(gprshome201101)
长按下方二维码图片 > 识别图中二维码 > 关注“51学通信公众号”
51学通信接头方式如下: