田婧
摘 要:在移動互聯(lián)網(wǎng)下提高VoIP通話質(zhì)量是一項具有挑戰(zhàn)性的任務(wù)。全球超過50%的手機用戶使用較老的GSM制式,這是目前技術(shù)研究的一大挑戰(zhàn)。文章提出了一種改進移動VoIP電話的方法,通過與競爭對手的解決方案相比,可以大幅度降低帶寬消耗,同時保持可接受的通話質(zhì)量。
關(guān)鍵詞:VoIP;帶寬;網(wǎng)絡(luò);MOS
全球超過50%的手機用戶使用較老的GSM制式,但是這部分用戶對VoIP也有很大的需求,傳統(tǒng)的VoIP產(chǎn)品在GSM網(wǎng)絡(luò)下難以使用。對此,我們研究了一種智能數(shù)據(jù)包VoIP解決方案(SPVS)。該方案包括Android和iOS移動應(yīng)用程序,以及負(fù)責(zé)代理信號的一系列節(jié)點服務(wù)器。為了維持實時通信的可靠穩(wěn)定,提高帶寬效率,還采用了一系列的網(wǎng)絡(luò)和編碼解碼優(yōu)化。本文通過平均意見評分(Mean Opinion Scoring,MOS)和帶寬消耗來比較SPVS[1]及其他解決方案。
1 相關(guān)研究
應(yīng)用程序之間的性能和通話質(zhì)量比較,在移動VoIP相關(guān)文獻中很常見[2-4]。Kim等[5]測試了一系列包括iLBC,Skype和Speex在內(nèi)的許多編解碼器,他們使用言語質(zhì)量的知覺評價(Perceptual Evaluation of Speech Quality,PESQ)對不良網(wǎng)絡(luò)狀況,如抖動、數(shù)據(jù)包丟失等語音樣本進行評估。證明語音編解碼器不能提供高質(zhì)量的性能。有人測試了兩種移動VoIP應(yīng)用的質(zhì)量差異:Skype和Line[6]。他們使用PESQ在14所大學(xué)里測量了5種不同3G移動網(wǎng)絡(luò)??梢杂脕碓u估網(wǎng)絡(luò)質(zhì)量。為了選擇合適的編解碼器,有團隊在PCM,Speex和iLBC之間作了比較[3]。結(jié)果顯示,iLBC在某些情況下優(yōu)于其他兩個。
2 智能數(shù)據(jù)包VOIP解決方案
SPVS是一個完整的移動VoIP網(wǎng)絡(luò)解決方案,包括PSTN突破能力。與競爭應(yīng)用程序相比,甚至可以提高90%的帶寬效率的優(yōu)化。
SPVS提高的關(guān)鍵是重視協(xié)議優(yōu)化的積累。
2.1 協(xié)議頭部數(shù)據(jù)消除
大多數(shù)協(xié)議都會攜帶一些含有元數(shù)據(jù)與有效載荷的頭部信息,用于接收方解析數(shù)據(jù)。為了提高帶寬效率,SPVS協(xié)議不會在每個包上都攜帶元數(shù)據(jù)。相反,我們使用了一些元數(shù)據(jù)包,允許數(shù)據(jù)包內(nèi)只攜帶實際編碼的語音數(shù)據(jù),在設(shè)備之間協(xié)調(diào)調(diào)用。
2.2 編解碼頭部數(shù)據(jù)消除
類似于協(xié)議,編解碼器還攜帶一系列必須發(fā)送的參數(shù)[7]。如果通信雙方都配置有效載荷的參數(shù),那么其所攜帶的頭部信息就成為多余的。最終可將其全部刪除,并且對傳輸?shù)拿總€參數(shù)進行標(biāo)準(zhǔn)化。SPVS只攜帶一個特定集合的編解碼器參數(shù),并且允許每個包只攜帶壓縮語音信號。
2.3 有效載荷比減少
即使有效載荷不攜帶任何頭部信息,但每單個網(wǎng)絡(luò)協(xié)議包含所有由該層產(chǎn)生的數(shù)據(jù),并且在上面添加自己的頭部信息。為減少被強加的頭部信息,我們使用了100 ms幀替代20 ms幀。這一更改更好地優(yōu)化網(wǎng)絡(luò)利用率,類似于Nagle在TCP算法中提供的優(yōu)化[8]。與20 ms幀相比,使用100 ms幀可以節(jié)省4幀頭部信息??梢杂梢韵玛P(guān)系表示:
S=(Hip+Hudp)× 4
Hip表示IP頭的大小,Hudp表示UDP頭的大小,S表示每100 ms幀發(fā)送的數(shù)據(jù)量。Hip的可能值介于20~60字節(jié)。Hudp具有固定8字節(jié)。使用這些數(shù)值,可以計算出節(jié)省的數(shù)據(jù)量在每幀112~272字節(jié)。
2.4 靜默檢測法
在正常通話中,通常只有其中一個參與者在說話,另一個在聽。如果沒有意識到這種特殊情況,應(yīng)用程序?qū)⑹冀K同時記錄和發(fā)送語音信息。使用靜默檢測算法,可以避免這一情況。SPVS有一個特殊的“靜默”包,每當(dāng)檢測到用戶靜默時便被應(yīng)用程序發(fā)送出去。這個包還可以作為一個存活報文,來保證連接的持續(xù)性而被定時發(fā)送。
2.5 編解碼器的選擇
Speex作為免費有效的開源編解碼器,可以集成到SPVS中。與其他窄帶語音編解碼器(如AMR和iLBC)相比,它更為理想[5, 9]。Speex有許多壓縮級別在0到10之間,其中0表示壓縮率最高但質(zhì)量最低,而10表示壓縮率最低但質(zhì)量最高,鑒于多次測試,我們決定使用壓縮級別為3。
3 評估
3.1 網(wǎng)絡(luò)性能測試
為驗證SPVS解決方案,我們選用了比較流行的VoIP軟件進行對比,QQ、微信、skype等。采用如圖1所示模型進行測試。
為了正確地攔截所有經(jīng)過的數(shù)據(jù),兩部手機都通過筆記本電腦提供的熱點連接到因特網(wǎng)。
所有測試都遵循以下步驟:撥通兩個手機上面的APP實現(xiàn)通話;啟動tcpdump作為后臺過程,記錄所有的網(wǎng)絡(luò)數(shù)據(jù);播放1 min音頻文件,這個文件包含正常通話及通話過程中的正常靜默等待。音頻文件播放完畢后,停止tcpdump的抓包工作。
3.2 MOS測試文件
第二個實驗是MOS測試,分為兩個步驟:錄音和聽力測試。第一步對于所有使用測試的VoIP軟件進行錄音。第二步將錄音樣本打亂后,讓測試人員對測試樣本進行打分。
所有原始樣品都包含兩個及以上短暫沉默為間隔的短語。錄音過程使用兩個手機模擬一個談話過程。第一部電話被放在一個音響室里,在手機10 cm處有揚聲器播放80 dB的音樂,音響室的環(huán)境噪聲等級為33.9 dB。用這個手機上的APP撥打另一個手機,另一個手機通過音頻輔助線連接到電腦上進行錄音。記錄過程如下:
(1)設(shè)備1呼叫設(shè)備2,設(shè)備2接聽電話。(2)語音樣本在設(shè)備1被記錄下來。(3)同時設(shè)備2會把接收到的語音通過計算機記錄下來。(4)所有應(yīng)用程序中的所有步驟,都提供男性和女性語音樣本。
在記錄之后,所有產(chǎn)生的樣本都被重命名為只有錄音者知道的隨機名字。然后在移動應(yīng)用的幫助下進行平均意見評分MOS(見表1)。
3.3 結(jié)果分析
為方便分析,我們假設(shè)數(shù)據(jù)流量價格為10分/MB,如表2所示。對比其他系統(tǒng),SPVS系統(tǒng)的語音質(zhì)量處于一個可接受的范圍,比QQ稍弱。但比QQ節(jié)省了71%的數(shù)據(jù)消耗。相比較微軟的skype軟件,SPVS節(jié)省了90%的數(shù)據(jù)消耗。
SPVS系統(tǒng)在特定的領(lǐng)域有很大的競爭優(yōu)勢,比如經(jīng)常出海的船員,他們只能通過昂貴的衛(wèi)星數(shù)據(jù)跟親朋好友聯(lián)絡(luò),SPVS的低帶寬特性可以直接節(jié)省船員的通話成本。在3G和4G網(wǎng)絡(luò)普及率低的國家,SPVS的低帶寬特性具有非常大的優(yōu)勢。經(jīng)實際測試,表2中所列出的所有VoIP程序,只有SPVS可以在2G網(wǎng)絡(luò)下?lián)芡娫挕?/p>
4 結(jié)語
移動VoIP解決方案的另一個重要方面是多網(wǎng)絡(luò)切換引發(fā)的丟包問題。許多應(yīng)用程序發(fā)送更小更頻繁的數(shù)據(jù)包適應(yīng)網(wǎng)絡(luò)切換。SPVS發(fā)送的頻率較低,丟失數(shù)據(jù)包更容易被聽眾感知,影響用戶體驗,SPVS在這方面需要做進一步的研究。
[參考文獻]
[1]COLLINS B,DZIEDZIC C.Method and devices for routing in a satellite-based communication system[P].USPTO Patent Application(20150381264),2016-06-21.
[2]DIMOLITSAS S,CORCORAN F,RAVISHANKAR C,et al.Evaluation of voice codec performance for the inmarsat mini-M system[C].Brighton:Digital Satellite Communications,Tenth International Conference,1995.
[3]ZHOU J,WU T,LENG J.Research on voice codec algorithms of sip phone based on embedded system[C].Beijing:2010 IEEE International Conference,2010:183-187.
[4]SEO W J,WOO S J,BAE K S.Study on the application of an amr speech codec to voip[C].Salt Lake:2001 IEEE International Conference,2001:1373-1376.
[5]KIM K,CHOI Y J.Performance comparison of various voip codecs in wireless environments[C].New York:Proceedings of the 5th International Conference on Ubiquitous Information Management and Communication,ACM,2011:89.
[6]WUTTIDITTACHOTTI P,DAENGSI T.Quality evaluation of mobile networks using voip applications: a case study with skype and line based-on stationary tests in bangkok[J].International Journal of Computer Network and Information Security(IJCNIS),2015(12):28.
[7]TOULOUPIS E,MELIONES A,APOSTOLACOS S.Implementation and evaluation of a voice codec for zigbee[C].Computers and Communications(ISCC),2011 IEEE Symposium,2011:341-347.
[8]NAGLE J. Congestion control in ip/tcp internetworks[J].ACM SIGCOMM Computer Communication Review,1995(1):61-65.
[9]RAMO A .Voice quality evaluation of various codecs[C].Dalla:In Acoustics Speech and Signal Processing(ICASSP),2010 IEEE International Conference,2010:14-19.