【问题现象】
OracleDRA升级后发现电话接续时延变长,部分呼叫甚至接续失败。
【原因定位】
问题描述:OracleDRA升级后发现电话接续时延变长,部分呼叫甚至接续失败。
问题原因:
对VoLTE用户18459010075拨打18459010105呼叫过程进行抓包,分析如下:
1、按照VoLTE用户呼叫流程,INVITE消息送达被叫后,被叫将发起携带媒体描述的183消息:
2、P-CSCF收到带有媒体描述的SIP消息,向PCRF发送AAR消息申请专用承载(目前测试网络下P-CSCF到PCRF01和PCRF02都是active的,默认主用送给PCRF01),该消息经DRA转发,此时DRA根据AAR消息中的Destination Host将消息路由给PCRF01(此时该用户在注册时的默认承载是通过PCRF01建立的承载,那么PCRF01就会通过RAR消息向SAEGW要求建立承载,SAEGW回复RAA消息后PCRF01向P-CSCF回复AAA消息通知承载建立成功)。
3、接着183消息送达主叫侧P-CSCF后,同样地P-CSCF会向PCRF发送AAR消息申请专用承载(主叫18459010075的默认承载是通过PCRF02建立的),但P-CSCF发送AAR消息携带Destination Host还是PCRF01,DRA依据Destination Host路由送给PCRF01,而PCRF01上并没有这个用户的信息,这个情况下PCRF01就不会发起RAR建立承载,直接回复AAA消息(AAA消息中指示原因为Experimental-Result-Code:IP-CAN_SESSION_NOT_AVAILABLE(5065))。
从抓包消息可以看出主叫侧第一次发AAR请求时间为13:50:51,过了3S之后,在13:50:54,P-CSCF又再发起AAR,其中Destination Host仍然为PCRF01,同样PCRF01不会建立专载:
4、三次向PCRF01请求建立专载都没成功之后,P-CSCF就会重新向PCRF02发起建立专载请求,PCRF02就能正常识别这个请求向SAEGW请求建立专载并返回应答消息,而后主被叫专载都建立成功后呼叫流程得以继续进行。
5、承载建立失败,AAA返回5065错误,导致重复的183转发。三次之后,承载建立成功。因为之前承载失败,一直183转发,成功之后,183正常转发下去,导致时延太长。
6、分析问题根本原因:DRA对于Rx接口未启用会话绑定IP地址寻址功能,采用Destination Host进行路由,导致P-CSCF发给PCRF的AAR请求存在转发错误PCRF情况存在,以上分析的案例的情形是被叫专载先成功建立而主叫经多次请求后才建立的情况,还有一种情形是主被叫刚好都是在PCRF02下建立的默认承载,那么就会出现主被叫各发了三次AAR请求而未成功建立专载后才会发往PCRF02,这种情况下的时延就更长,很有可能会导致终端超时上报Precondition_failure。
影响范围:通话接续时延太长,甚至导致呼叫无法接续成功。
【解决方案】
DRA修改配置开启会话绑定功能,对于P-CSCF找到PCRF通过Gx和Rx会话绑定利用IP地址进行寻址,而非采用P-CSCF发给PCRF的AAR请求中Destination Host进行路由。
本文整理自网络,文章版权归原作者所有,如有侵权,请联系我们进行删除。小编微信(gprshome201101)
长按下方二维码图片 > 识别图中二维码 > 关注“51学通信公众号”
51学通信接头方式如下: