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

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

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

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

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

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

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

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

如果網絡通過VLAN 重新劃分以后,把SIP終端,VOIP網關重新劃分,這樣的話,就可以保證語音和其他數據服務各自獨立。VLAN 1 包括了辦公電腦和其他設備,LAN 2 包括了SIP終端和VOIP網關等設備。

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

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

經過switch以后,到達內網另外終端電腦時,移除Priority ID。

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

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

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

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

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