1)實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)
2)事實(shí)勝于雄辯
為了實(shí)現(xiàn)MOS的指標(biāo)測(cè)試,我提供了以下幾個(gè)方面的內(nèi)容,讀者可以結(jié)合這些概念和具體的測(cè)試手段,基本上可以集成一套比較專(zhuān)業(yè),相對(duì)完整的語(yǔ)音檢測(cè)整體解決方案。這里,我僅大概介紹MOS的基本概念,R-Factor,E-Model和rfc3611,以及開(kāi)源工具的安裝和功能做一個(gè)完整的介紹。
1) 為什么使用MOS和其相關(guān)的檢測(cè)工具
1.1)集成商廠家為了保證其兼容性,需要相對(duì)比較標(biāo)準(zhǔn)的衡量指標(biāo)
1.2)MOS相對(duì)比較主觀,很難客觀反映真實(shí)的具體的用戶(hù)數(shù)據(jù)。具體關(guān)于 MOS的概念用戶(hù)可以查閱我以前的文檔和其他權(quán)威文檔。
1.3)需要對(duì)軟交換中的每個(gè)SIP終端,網(wǎng)關(guān)進(jìn)行全面覆蓋監(jiān)控。因?yàn)樵趯?shí)際生產(chǎn)環(huán)境中,一個(gè)軟交換可能注冊(cè)了成百上千個(gè)終端,這些終端發(fā)布在不同的網(wǎng)絡(luò)環(huán)境,終端本身來(lái)自于不同的硬件廠家。如何對(duì)每一臺(tái)終端進(jìn)行實(shí)時(shí)數(shù)據(jù)監(jiān)控是一個(gè)非常大的挑戰(zhàn),如果沒(méi)有測(cè)試工具幾乎不可能完成。
1.4)基于云平臺(tái)的分布式部署托管平臺(tái)需要專(zhuān)業(yè)的檢測(cè)工具。分布式部署環(huán)境下的監(jiān)控工具是一個(gè)MUST。運(yùn)營(yíng)商的SIP終端通過(guò)檢測(cè)工具的支持,可以對(duì)每一臺(tái)不同環(huán)境下的SIP終端進(jìn)行實(shí)時(shí)監(jiān)控,方便了運(yùn)營(yíng)商排查問(wèn)題,也提供了及時(shí)有效的用戶(hù)支持和體驗(yàn)。通過(guò)這些方法可以有效實(shí)現(xiàn)對(duì)SIP終端的檢測(cè),幫助用戶(hù)排查問(wèn)題,同時(shí)為集成商提供對(duì)SIP終端的有效的實(shí)時(shí)報(bào)告。
1.5)MOS相對(duì)比較主觀,R-Factor是相對(duì)比較客觀的指標(biāo)。
因?yàn)榇蟛糠值腗OS測(cè)試結(jié)果是通過(guò)對(duì)用戶(hù)進(jìn)行調(diào)查獲得的結(jié)果。用戶(hù)調(diào)查本身存在很多用戶(hù)的主觀因素,特別是在我們博大精深的中華文化中,“好,很好”是一個(gè)什么概念,最終可能也得不到一個(gè)真實(shí)的數(shù)據(jù)。這些主觀因素可能導(dǎo)致MOS缺乏真實(shí)性。相當(dāng)于MOS來(lái)說(shuō),R-Factor是相對(duì)客觀的指標(biāo),它和MOS具有某種習(xí)慣性,事實(shí)上就是MOS指標(biāo)的量化。通過(guò)對(duì)R-Factor的測(cè)試,用戶(hù)可以獲得比較真實(shí)統(tǒng)計(jì)數(shù)據(jù)。具體的兩者之間的關(guān)系如下所示:

2)影響語(yǔ)音質(zhì)量的的主要因素和衡量指標(biāo)
影響語(yǔ)音質(zhì)量的指標(biāo)很多,目前,在VOIP的標(biāo)準(zhǔn)中,大部分的用戶(hù)還是使用經(jīng)常討論的幾個(gè)指標(biāo)來(lái)衡量其語(yǔ)音質(zhì)量。這三個(gè)指標(biāo)分別是:Jitter, PL和時(shí)延。
2.1)影響語(yǔ)音質(zhì)量的指標(biāo)和建議值:
- Jitter <20ms
- Packet Loss< 0%
- Latency <150ms
以上三個(gè)指標(biāo)取決于很多網(wǎng)絡(luò)的相關(guān)因素,這些因素包括終端的編碼,服務(wù)器轉(zhuǎn)碼,網(wǎng)絡(luò)帶寬,路由器設(shè)置和QOS和其他R-Factor所提到的參數(shù)。關(guān)于優(yōu)化這些指標(biāo),筆者在以前的文檔中也做過(guò)充分的討論,讀者可以查閱。關(guān)于完整R-Factor的解釋?zhuān)脩?hù)可以查閱 Recommendation G.107。以下圖例介紹了如何計(jì)算R-Factor的介紹和實(shí)際使用環(huán)境中,在每一個(gè)流程中可能產(chǎn)生上述原因的節(jié)點(diǎn)。

2.2) R-Factor和E-Model的關(guān)系
在實(shí)際的R-Factor的計(jì)算中,其取值是通過(guò)一個(gè)E-model 來(lái)計(jì)算的。基本的計(jì)算格式如下:

以下所描述的是在實(shí)際網(wǎng)絡(luò)環(huán)境中,影響三個(gè)參數(shù)的關(guān)鍵節(jié)點(diǎn)。當(dāng)然,因?yàn)槟壳暗幕ヂ?lián)網(wǎng)技術(shù)不斷發(fā)展,特別是云平臺(tái)和SDN的相關(guān)網(wǎng)絡(luò)的發(fā)展也可能導(dǎo)致更多的影響因子。因此,用戶(hù)必須注意這些要素的影響。

通過(guò)E-Model的計(jì)算,用戶(hù)可以得到最終的R值。

3) 通過(guò)檢測(cè)工具對(duì)語(yǔ)音質(zhì)量進(jìn)行監(jiān)控跟蹤
目前,網(wǎng)上有很多檢測(cè)工具來(lái)排查語(yǔ)音質(zhì)量,開(kāi)源的工具也很多,例如Wireshak,sngrep, ngrep等工具。但是這些終端排查工具只能針對(duì)單一終端設(shè)備進(jìn)行排查。如何對(duì)批量終端進(jìn)行監(jiān)控排查是一個(gè)非常大的問(wèn)題。

4)使用RTCP-XR來(lái)獲得RTP數(shù)據(jù)
在上面的介紹中,我們看到,其他的終端工具很難收集到大批量終端的比較完整的RTP數(shù)據(jù)。RTP Control Protocol Extended Reports (RTCP XR) 可以支持RTP數(shù)據(jù)的控制,通過(guò)RTCP-XR協(xié)議的支持,集成商可以輕松監(jiān)控網(wǎng)絡(luò)中所有支持RCTP-XR的終端。這是一個(gè)yealink SIP的截圖。用戶(hù)可以配置對(duì)RTCP-XR 服務(wù)器端的支持,推送相關(guān)的RTCP數(shù)據(jù)到相應(yīng)的第三方RTCP服務(wù)器端。關(guān)于RTCP-XR的協(xié)議,讀者可以查閱RFC3611來(lái)獲得詳細(xì)說(shuō)明。

一些廠家的SIP終端支持了RTP-RxStat,P-RTP-Stat,RTCP Extended Report和 X-RTP-Stat。筆者從網(wǎng)上簡(jiǎn)單從幾個(gè)官方網(wǎng)站搜索了一下,yealink和漢隆SIP話機(jī)聲明支持了RFC3611,其他廠家的好像沒(méi)有看到具體的解釋。以下是SIP終端開(kāi)啟了P-RTP-Stat的Publish消息:

5)開(kāi)源軟交換和媒體服務(wù)器對(duì)RTCP-XR的支持
目前,很多集成商都基于Asterisk或者FreeSWITCH開(kāi)發(fā)自己的IPPBX或者呼叫中心,并且部署方式也發(fā)生了很大的變化,從本地部署到基于云平臺(tái)部署等解決方案。但是,這些軟交換都缺乏一個(gè)對(duì)RTCP-XR的支持監(jiān)控模塊。Homer是一個(gè)非常強(qiáng)大的開(kāi)源VOIP 檢測(cè)工具。它可以幫助技術(shù)人員排查技術(shù)問(wèn)題,同時(shí)又可以實(shí)現(xiàn)對(duì)SIP終端的數(shù)據(jù)進(jìn)行監(jiān)控。


Homer 可以通過(guò)模塊的方式支持Kamailio,OpenSIPS,Asterisk和FreeSWITCH。它可以通過(guò)HEP/EEP采集器的方式獲取到軟交換的RTCP-XR消息,然后通過(guò)界面來(lái)顯示這些實(shí)時(shí)數(shù)據(jù)。在Asterisk-12 以上版本,添加了一個(gè)HEP模塊(res_hep_pjsip.so),用戶(hù)可以配置hep.conf 文件來(lái)實(shí)現(xiàn)Homer對(duì)Asterisk的支持。配置文件示例如下:
/etc/asterisk/hep.conf
;
; res_hep Module configuration for Asterisk
;
; All settings are currently set in the general section.
[general]enabled = yes ; Enable/disable forwarding of packets to a
; HEP server. Default is "yes".
capture_address = 10.0.0.1:9060 ; The address of the HEP capture server.
capture_password = foo ; If specified, the authorization passsword
; for the HEP server. If not specified, no
; authorization password will be sent.
capture_id = 1234 ; A unique integer identifier for this
; server. This ID will be embedded sent
; with each packet from this server.
在FreeSWITCH -1.6.8 以上版本,開(kāi)發(fā)人員也實(shí)現(xiàn)了對(duì)Homer的支持。用戶(hù)可以通過(guò)命令配置來(lái)實(shí)現(xiàn)Homer的支持:
在sofia.conf.xml 文件配置:
在 internal.xml 文件配置:
關(guān)于Homer 和Kamailio,OpenSIPS的對(duì)接,用戶(hù)可以查看Homer的官方文檔鏈接。
除了Homer以外,還有一個(gè)開(kāi)源的采集工具是RTCP-XR Collector,用戶(hù)可以參考,是否可以集成到自己的語(yǔ)音平臺(tái)。

在本章節(jié)中,我們討論了關(guān)于使用MOS來(lái)評(píng)價(jià)SIP話機(jī)的語(yǔ)音質(zhì)量的問(wèn)題,也介紹了和MOS相關(guān)的R-Factor,以及E-Model的計(jì)算公式,然后有介紹了RTCP-XR 協(xié)議Rfc3611,以及如何使用開(kāi)源工具Homer來(lái)采集RTCP-XR報(bào)告數(shù)據(jù)。這些數(shù)據(jù)看起來(lái)僅是報(bào)表數(shù)據(jù),實(shí)際上對(duì)運(yùn)營(yíng)商和技術(shù)人員有非常大的幫助,同時(shí)也為SIP終端或者網(wǎng)關(guān)廠家能夠真實(shí)客觀地看到在實(shí)時(shí)網(wǎng)絡(luò)環(huán)境中終端產(chǎn)品的性能表現(xiàn),在面對(duì)客戶(hù)時(shí)可以提供有效的數(shù)據(jù)來(lái)說(shuō)服客戶(hù),以體現(xiàn)出真正的專(zhuān)業(yè)銷(xiāo)售水平,讓用戶(hù)覺(jué)得現(xiàn)在的產(chǎn)品是可信賴(lài)的產(chǎn)品。
參考資料:
https://www.voicehost.co.uk/help/call-quality-r-factor-and-mos
https://www.itu.int/ITU-T/studygroups/com12/emodelv1/tut.htm
https://www.itu.int/rec/T-REC-G.107
http://sipcapture.org/#features-icons
https://github.com/mixja/rtcpxr-collector