首先需要說(shuō)明的是,在網(wǎng)絡(luò )環(huán)境中,到處都有可能產(chǎn)生QoS問(wèn)題。從ITSP到LAN和終端。從實(shí)際生產(chǎn)環(huán)境測試中,可能有很多原因會(huì )影響QoS。以下圖例概括了影響QoS的原因。

一般情況下,用戶(hù)根據以下幾個(gè)方面的數據可以判定什么是“最好的語(yǔ)音質(zhì)量”:
- 根據ITU的建議,端對端的單向的Delay應該在150ms之內。
- Jitter(抖動(dòng)) 應該在30ms之內。
- 使用Ping -l 命令測試真正的時(shí)延和抖動(dòng)。
下面,我們針對幾個(gè)影響QoS的重要參數進(jìn)行討論。
1、Delay對QoS的影響。在正常的網(wǎng)絡(luò )內網(wǎng)環(huán)境中,一般不會(huì )存在Delay的問(wèn)題。大部分情況下是介入了多個(gè)路由器,路由器會(huì )產(chǎn)生Delay的問(wèn)題,這樣就會(huì )對VOIP造成影響。現實(shí)環(huán)境中,大部分的廠(chǎng)家的都建議Delay時(shí)長(cháng)在200ms 業(yè)內。根據上面所述,ITU建議的標準應該在150ms之內。在200ms的范圍內,所花費的時(shí)間處理過(guò)程包括幾個(gè)環(huán)節:
80ms delay用來(lái)支持IP端連接IPPBX。
40ms delay用于PSTN網(wǎng)絡(luò )的接續。當然,如果PSTN增加了回聲抑制的處理的話(huà),可能時(shí)間會(huì )更產(chǎn)一些。
其余80ms用來(lái)支持客戶(hù)端網(wǎng)絡(luò )的連接delay。
因為我們今天所討論的技術(shù)基本上涉及了太多網(wǎng)絡(luò )節點(diǎn)的處理,所以Delay產(chǎn)生的原因也很多。基本上產(chǎn)生Delay的原因大致包括:
因為不同的網(wǎng)絡(luò )環(huán)境和地理位置所產(chǎn)生的Delay,例如,衛星傳輸,光線(xiàn)傳輸,更加和國家之間的傳輸,每個(gè)洲之間的傳輸。這些都會(huì )產(chǎn)生Delay。
網(wǎng)絡(luò )設備處理數據時(shí)所產(chǎn)生的Delay,例如,路由器發(fā)送數據的隊列等待時(shí)間,發(fā)送數據所花費的時(shí)間,硬件本身性能導致的時(shí)間。
終端設備處理所需要的時(shí)間,例如回聲處理時(shí)間,編碼壓縮時(shí)間等都會(huì )導致Delay。如果Delay太長(cháng)的話(huà),就可能導致QoS問(wèn)題。以下是一個(gè)PSTN到終端之間的Delay處理過(guò)程。

隨著(zhù)網(wǎng)絡(luò )越來(lái)越普及,網(wǎng)絡(luò )辦公的需求也非常普及。網(wǎng)絡(luò )設備會(huì )根據實(shí)際的數據要求做相應的調整。在一般的辦公環(huán)境中,很多公司的員工不一定在上班時(shí)間完全做和工作相關(guān)的事情,有時(shí)也可能開(kāi)一個(gè)小差。工作需要的郵件,電話(huà)等工具所占據的網(wǎng)絡(luò )帶寬可能不是最大的。為了保證電話(huà)語(yǔ)音質(zhì)量,路由設備應該設置支持VOIP優(yōu)先等服務(wù)(VLAN),以便保證辦公電話(huà)的正常工作。以下圖例說(shuō)明了公司網(wǎng)絡(luò )帶寬中一些和工作不完全相關(guān)的通信工具也同時(shí)占用公司的網(wǎng)絡(luò )帶寬,這些應用也會(huì )影響著(zhù)QoS。

2、Jitter和Packet Loss對QoS的影響。Jitter是一種Delay的表現形式。簡(jiǎn)單來(lái)說(shuō)就是傳輸的數據不穩定,速度一會(huì )快,一會(huì )慢。在VOIP網(wǎng)絡(luò )中,導致Jitter的原因有很多,這些原因可能是:路由器的隊列處理不及時(shí),設備過(guò)載,或連接線(xiàn)質(zhì)量差,這些因素都可能引起抖動(dòng)的問(wèn)題。關(guān)于Jitter的介紹,我們在以前的Asterisk系列講座中有過(guò)專(zhuān)門(mén)的介紹,用戶(hù)可以查看歷史講座來(lái)了解Jitter和如何調整Jitter buffer 來(lái)改善語(yǔ)音質(zhì)量。
如果系統存在非常大的Jitter 值,這樣會(huì )導致非常嚴重的packet loss(丟包)問(wèn)題。packet loss 會(huì )導致對端收不到數據,最終導致語(yǔ)音包丟失。一般情況下丟包率在5%以下不會(huì )影響語(yǔ)音質(zhì)量。如果超過(guò)這個(gè)值,語(yǔ)音質(zhì)量會(huì )變得非常差。因為微信每篇文章只能添加一個(gè)語(yǔ)音文件,我僅上傳了一個(gè)附件(還有丟包率5%和10%兩種不能共享)。附件是一個(gè)25%丟包率的語(yǔ)音文件,大家可以試聽(tīng)一下。

雖然,我們討論了Delay,Jitter和packet loss,它們在不同網(wǎng)絡(luò )環(huán)境都存在著(zhù)很多不確定的因素。在VoIP環(huán)境中,如果這些值那個(gè)控制在一定的范圍內,語(yǔ)音質(zhì)量還是可以被用戶(hù)接受的。如果超過(guò)這個(gè)紅線(xiàn),服務(wù)商需要對環(huán)境進(jìn)行優(yōu)化或排查。以下是一個(gè)測試標準,這個(gè)標準可以應用在用戶(hù)的語(yǔ)音環(huán)境中幫助技術(shù)人員來(lái)排查問(wèn)題:
- 1類(lèi)表示語(yǔ)音質(zhì)量正常。
- 2類(lèi)表示語(yǔ)音質(zhì)量可能存在問(wèn)題。
- 3類(lèi)表示語(yǔ)音質(zhì)量存在嚴重問(wèn)題。

為了保證用戶(hù)有足夠的網(wǎng)絡(luò )環(huán)境來(lái)部署VOIP,運營(yíng)商也必須提供相應的網(wǎng)絡(luò )保證。以下是美國Verizon運營(yíng)商提供的服務(wù)數據,包括QoS和Jitter的統計數據:

以上數據僅是美國運營(yíng)商的一個(gè)舉例,運營(yíng)商在每個(gè)月都會(huì )發(fā)布網(wǎng)絡(luò )環(huán)境的數據,這些數據也大概可以反映出運營(yíng)商的網(wǎng)絡(luò )質(zhì)量。我們中國的運營(yíng)商也可能有類(lèi)似的數據報告,讀者自行查閱。
3、大部分情況下,用戶(hù)缺乏對WAN網(wǎng)絡(luò )的控制,所以如果需要優(yōu)化網(wǎng)絡(luò )環(huán)境支持好的VOIP語(yǔ)音質(zhì)量,只能通過(guò)自己公司內部網(wǎng)絡(luò )的管理來(lái)保證QoS的正常。當然,如果運營(yíng)商可以提供更多的帶寬和MPLS服務(wù)的話(huà),VOIP的穩定性會(huì )更好。

根據以上圖例,用戶(hù)可以通過(guò)設置內網(wǎng)設備來(lái)實(shí)現對QoS的保證,客戶(hù)可以通過(guò)公司內部的交換機(Layer 2 Classification)或者路由器(Layer 3 Classification)。在交換機層面,使用VLAN來(lái)實(shí)現對VOIP的管理控制是一個(gè)比較常用的手段,這樣就可以實(shí)現公司內部語(yǔ)音網(wǎng)絡(luò )的優(yōu)化。
默認環(huán)境下,如果沒(méi)有設置VLNA的話(huà)(關(guān)于VLAN的定義用戶(hù)可以自己學(xué)習),內部網(wǎng)絡(luò )各種設備都會(huì )switch發(fā)送各種消息,SIP終端,辦公電腦,筆記本電腦等設備都混合在一起,這樣保證不了VOIP的正常工作,而且對VOIP的業(yè)務(wù)造成干擾。

如果網(wǎng)絡(luò )通過(guò)VLAN 重新劃分以后,把SIP終端,VOIP網(wǎng)關(guān)重新劃分,這樣的話(huà),就可以保證語(yǔ)音和其他數據服務(wù)各自獨立。VLAN 1 包括了辦公電腦和其他設備,LAN 2 包括了SIP終端和VOIP網(wǎng)關(guān)等設備。

簡(jiǎn)單總結,使用VLAN有以下幾個(gè)好處:
獨立分離了數據流量安全性。
數據傳輸的流量控制和廣播策略。
獨立分離了數據和語(yǔ)音的各種特性。
如果網(wǎng)絡(luò )管理員需要設置VLAN支持的話(huà),自己首先確認內網(wǎng)交換機本身支持的VLAN技術(shù)細節。
對VLAN打(查看802.1Q/P)進(jìn)行標簽處理,管理員設置比較高的優(yōu)先級來(lái)保證語(yǔ)音的優(yōu)先執行或者傳輸。我們簡(jiǎn)單描述一下標簽處理。以下是一個(gè)基本的標簽管理過(guò)程。在電腦傳輸之前,本身自己沒(méi)有對數據設置任何優(yōu)先級,switch 對發(fā)出的數據打印稿標簽,指示它的優(yōu)先級。

經(jīng)過(guò)switch以后,switch其添加一個(gè)Priority-VLAN ID(P)。其他交換機馬上知道此數據具有非常高的優(yōu)先級,優(yōu)先傳輸。

經(jīng)過(guò)switch以后,到達內網(wǎng)另外終端電腦時(shí),移除Priority ID。

以上是通過(guò)標簽802.1Q/P打標簽的管理方式來(lái)優(yōu)化傳輸。這樣,可以實(shí)現交換機對終端數據的優(yōu)先處理。
另外,網(wǎng)絡(luò )管理員也可以通過(guò)switch的layer 2 classification 通過(guò)隊列的方式來(lái)優(yōu)先處理RTP語(yǔ)音。這里的RTP優(yōu)先級設置是最高的(High),FTP則為正常水平。

Ingress和Egress 隊列策略管理是一個(gè)非常復雜的技術(shù)話(huà)題,這里不做進(jìn)一步討論。如果讀者有興趣的話(huà),大家可以參考Catalyst 2975 管理文檔來(lái)做進(jìn)一步的研究。
前面,我們討論了如何通過(guò)設置switch來(lái)保證QoS。接下來(lái),我們繼續討論一下如何通過(guò)設置路由器來(lái)保證QoS。在IP頭中,可以通過(guò)Tos和DSCP 碼對QoS進(jìn)行管理。默認的IP Datagram DSCP 是0,但是,為了保證DSCP的優(yōu)先級,很多設備廠(chǎng)家IP話(huà)機設置DSCP voice Datagram默認值是46。這樣也可以?xún)?yōu)先保證QoS的正常。

在同樣的網(wǎng)絡(luò )環(huán)境中,如果是DSCP=46的,路由器會(huì )優(yōu)先處理。

如果對終端話(huà)機抓包以后,可以看到消息中的DSCP值46(16進(jìn)制0x2e):

再次說(shuō)明,這里,我們不對DSCP做深入探討,關(guān)于DSCP的策略機制和優(yōu)缺點(diǎn)我們不做深入探討。思科在這方面有非常詳細的技術(shù)文檔,用戶(hù)可以參考。
本章節,我們介紹了Delay產(chǎn)生的原因,也介紹了Jitter對QoS的影響。另外,我們針對交換機層面對QoS的處理做了一些介紹,最后討論了Layer 3中路由器對DSCP的設置。這些要素都會(huì )影響QoS。筆者希望通過(guò)本章節的介紹,讀者對以上四個(gè)方面的技術(shù)要求有一個(gè)比較完整的認識,通過(guò)實(shí)際工作來(lái)進(jìn)一步優(yōu)化QoS。
參考資料:
http://www.voiptroubleshooter.com/indepth/jittersources.html
https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst2975
關(guān)注公眾微信號:asterisk-cn 獲得有價(jià)值的行業(yè)技術(shù)分享,訪(fǎng)問(wèn)技術(shù)論壇獲得技術(shù)支持:www.issabel.cn/forum