前言:DTMF(Dual Tone Multi-Frequency),即双音多频,每一个DTMF信号有一个低频和一个高频信号构成,一个低频信号和一个高频信号可以唯一标识出一个符号,具体表示如下表,DTMF信号在传输过程中,网络通过对频率信号的编解码识别出DTMF信号。
一、 案例问题现象
某VOBB IMS固话用户拨打某银行客服热线接通后,根据播放语音提示按键,不能进入相应的菜单,二次拨号失败,此次语音呼叫流程组网图如下:
二、 问题分析过程
DTMF传输方式:带外(out-band)和带内(in-band),其中带内(in-band)因承载方式不同又分为音频信号(audio signal)和RFC2833(RTP EVENT),如图:
此次呼叫DTMF在IMS域内为SIP带内音频信号传输,通过SIP协议带内传输送给MGCF, MGCF送至关口局GMSC,DTMF传输方式没有改变,关口局送往长途局为BICC协议,此时DTMF传输方式由带内传输转为带外传输。带内(inband)是指在承载面/语音(通过MGW之间)传送DTMF信号,带外(outband)则是指通过信令/消息发送DTMF信号。简单说来,就是带内DTMF信号对我们来说,在消息层面上是不可见的
可能原因:
通过组网图分析,在这个呼叫过程中,可以分为两个部分:
1、 SIP协议部分:终端至GMSC为SIP协议;
2、 BICC协议部分:GMSC至客服平台为BICC协议;
在整个呼叫流程过程中,DTMF信号传输方式改变点在关口局GMSC:入局为SIP带内传输,出局为BICC带外传输,由此可以初步判断,DTMF信号传输失败的最大可能故障点在GMSC处理DTMF信号时由带外转带内的处理过程上。因此,为排查该问题,优先从GMSC入手,由于带内传输DTMF信号在信令层面不可见,需要在关口局GMGC上进行抓包,关口局GMGW上进行媒体录音,通过对信令消息分析和对录音文件解析,确认DTMF信号传送是否正常;
通过在关口局GMSC、关口局GMGW上跟踪信令消息和录音抓包,通过信令消息可以看到GMSC入局为SIP Invite消息,出局为BICC_TYPE_IAM消息,在被叫回BICC_TYPE_ANM呼叫接通后,用户根据语音提示进行按键,按键的DTMF信号通过带外传输,由BICC_TYPE_APM消息传送给对端平台。
利用MGW Bearer Fault Location工具转换MGW录音文件,将MGW文件解析成.cap和.wav格式文件,再利用Cool Edit工具分析MGW录音的.wav文件,通过工具对录音文件解析,观察媒体信号波形图,发现在DTMF信号由带内转为带外传送后,GMGW没有将带内DTMF信号抠除掉,带内媒体流中还存在DTMF信号,并传送给后向局长途局;
由此可判断DTMF信号传输失败原因是因为在DTMF信号在传输过程中经过关口局由SIP带内转BICC带外,关口局没有将带内DTMF信号抠除,送给对端,对端DTMF在DTMF收号时,通过带外信令和带内语音均检测到DTMF信号,导致DTMF信号检号重复,二次拨号失败;
三、 解决过程
在关口局GMGW上打开DTMF检测开关和修改相应参数,使GMGW在IP侧进行抠号处理时,避免存在信号不完全抠除的情况,导致部分DTMF信号传递给下一个端点,修改后再测试,同时在GMSC和GMGW上跟踪录音,用上述同样的解析方法分析,观察带内DTMF信号已被完全抠除,二次拨号测试正常;
四、 总结
1、当遇到DTMF问题时,一定要先确认如下信息:
1)当前的问题现象,比如误检,漏检,放号失败;
2)组网及DTMF信号传输的整个路径,从哪个设备到哪个设备,中间经过哪些设备;
3)DTMF信号在整个传输路径上都使用了哪种传输方式(不同设备间可能用不同的传输方式);
4)获取整个路径所有MSC/MGW的配置、信令跟踪和录音;
5)根据本文前面介绍的分析方法,逐段确认是哪个设备引入的问题;
2、在处理DTMF问题过程中,DTMF信号采用带内方式时,DTMF存在于媒体流中,仅根据信令消息看不出问题所在,此时需要在MGW上进行媒体录音,在日常处理DTMF问题时必备工具:
1) MGW Bearer Fault Location:
用于转换MGW的录音,将录音文件转换成.cap和.wav;
2)Cool Edit:
用于分析MGW录音的.wav文件,通过该工具可以看解析出带内DTMF信号波形;
3)Wireshark:
用于分析MGW录音的.cap文件和承载网转包文件,将.cap文件用wireshark打开,并转换成RTP协议;
参考文献:
【1】基于HT48R50A单片机智能控制的拨号监控系统工作原理简析 刘德全;杨都丽;刘少华-《宁夏师范学院学报》-2010
【2】IMS网络DTMF研究及应用 陆广海-《山东通信技术》-2019