在前面的講座中,我們介紹了switch,VALN和路由器層面的設置優化QoS。今天,我們繼續介紹關於QoS其他方面的設置,例如,DSCP和AF, 網絡檢測和策略管理,AS-SIP和 MLPP等相關解釋說明。
1、DSCP/Assured Forwarding 設置影響QoS。DSCP和AF是一個非常複雜的技術領域,我們今天僅對關於DSCP=46時的一些參數針對性地進行討論和介紹。DSCP在Assured Forarding中,通過6個bits數值來設置優先級和層級關係。DSCP在維基百科有這樣的定義:
In practice, however, most networks use the following commonly defined Per-Hop Behaviors:Default PHB—which is typically best-effort trafficExpedited Forwarding (E一種對IP數據包的轉發機制,但是同時也對網絡傳輸時的狀態進行管理,例如,在網絡繁忙或者擁塞時,AF可能會調整傳輸的優先級或者丟棄一些級別比較低的數據包。數據類型都是通過AF和DSCP來定義。通過對數據類型和服務定義了多個級別,在每個層級中又定義了多個子類型,路由器會通過這些優先級的劃分來進行處理。以下討論介紹了幾個不同的Class Selector,注意前3個bit是用來定義Class Selector的。通過以上的優先級,路由器就會自動根據類別和級別高低丟棄或者優先路由。例如,圖例中的AF41中1的級別比AF42中的2 級別要高,所以AF42會首先丟棄。AF41則比AF31的要更為重要。
大家也可以參考以下圖例來進一步了解相關的細節。
不同的類別定義了不同的應用類型,路由器可以通過Class selector 進行隊列分組(例如,我們正在討論的SIP協議)。
在我們的VOIP網絡中,我們會涉及到信令,視頻和語音等多種應用的DSCP。以下圖例定義了這些應用的DSCP值。
另外,在網絡環境中,語音對網絡的要求比較苛刻,語音服務要求低時延,低抖動等要求。所以在RFC2475定義中專門對此服務做了規定(DSCP=46,EF)。
EF是一種擴展的Forwarding,特別針對網絡中,低時延,低抖動設計的標準。EF有專門的RFC3246做了定義,定義內容為:
The intent of the EF PHB is to provide a building block for low loss,low delay, and low jitter services。根據以上討論中,我們看到,如果需要保證企業通信系統有良好的語音質量,系統管理員可以進一步在路由器層面對DSCP和AF做一些調整來優化QoS。我們在前面講座中已經說明,DSCP和AF是一個非常複雜的技術話題,我們現在所解釋的內容不足以完全覆蓋現實環境中的所有問題,僅提供讀者一個一些排查問題的思路。
2、網絡檢測和網絡管理對QoS的影響。因為公司內部各種業務的影響,如何設置一個穩定的網絡環境是一個比較有挑戰性的工作。
首先,在一般辦公環境中,上班時間總是有一些和工作相關的其他業務需要通過一些通訊根據來解決,例如,QQ,微信,或者視頻網站,這些工具有時佔用很多的帶寬,也影響網絡的速度。
管理員通過工具檢測可以發現員工可能經常訪問某些熱門網站,而這些都是和工作沒有直接關係的。這樣也可能導致網絡不穩定,並且影響QoS。
管理員通過工具檢測某些主機是否長時間佔用大量的帶寬。
通過檢測工具檢測埠使用狀態,也可能有某些員工正在做和工作無關的事情,例如訪問RTMP埠,玩網路遊戲,或者使用BT下載(你懂的)。
另外,對某些設備來說,語音和數據的使用頻率或特性可能有所不同。例如,可能在某個時間段,數據傳輸非常大,可能語音使用則非常少。例如,外呼平臺在早晨上班時間集中呼出。有的辦公環境中,可能數據傳輸和語音傳輸都停留在一個穩定的場面,不會對路由器或其他網絡設備造成衝擊,例如,公司內部的電話系統或者呼入型的呼叫中心。以下圖例說明了同一平臺下,數據和語音數據的活動狀態和使用情況。
通過以上簡單分析,管理員就可以獲悉帶寬佔用的原因。從以上檢測工具中我們可以看到,事實上,無論網絡內網網絡環境如何好,帶寬資源如何豐富,如果沒有好的網絡管理,同樣也可以導致很多網絡問題,當然也包括了QoS的問題。所以,系統管理員需要通過網絡的架構管理策略來優化公司的網絡。這裡,在優化網絡之前,管理員首先需要問自己幾個問題:
公司帶寬是否足夠支持VoIP業務?是否需要重新規劃網絡協議或下載?是否需要限定一些通訊工具的使用和一些工具的使用時間段?是否設置了一些路由規則來支持優先級高的應用服務?如果管理員不清楚具體VoIP帶寬使用量的話,可以使用網絡上很多的計算工具來計算所需帶寬。用戶僅輸入所支持的編碼,呼叫數量則可以計算出大概的帶寬佔用。
3、QoS和Assured SIP Service(簡稱AS-SIP)的相互影響。準確地說,Assured SIP Service 提供了一種對SIP服務的保障,為了提供一個標準的服務而制定的一個網絡架構。這個架構可以使用在某些特定的場景,例如軍事部門,調度指揮,保密單位等類似環境。
AS-SIP是一種開放的標準,早期由美國國防部門發起。AS-SIP不僅包括標準的SIP協議,同時添加了額外的數據包對數據優先級進行了定義,同時對數據進行了加密處理。因為在Assured SIP 服務中涉及了關於路由優先級,狀態優先級等等處理的策略,所以我們把這個話題劃歸到了QoS來一起討論。
AS服務一般都是通過一個服務提供商來提供這種SIP服務,網絡之間自己的互相連通過加密的方式來進行,Access Router(AR)專門提供對數據的處理的服務。具體的架構圖例如下:
在以上圖例中,UA1 和UA2 首先按照正常的呼叫請求進行籤權認證流程,Proxy 1和Proxy 2 之間進行協議控制流程,AR 1 和AR2 則進行授權語音的傳輸。在AS-SIP中,Proxy的作用是:
執行Authentication。維護狀態消息。解析其他服務消息,例如終端的支持能力和proxy的支持能力。更新UA的重新請求,例如優先處理請求。配合RA工作,通知RA權限信息。決定具體何時發送優先級信息到第三方。維持所有相關信息,例如時長,話單信息等。在AS-SIP中,AR的作用是:
決定哪些數據可以傳輸。如果一個數據包沒有被允許發送出去的話,AR必須丟棄此數據。AR可以決定何時停止傳輸或允許數據通過。如果讀者結合上面的圖例和以下圖例就可以清楚說明AS-SIP網絡的基本原理。UA通過Proxy呼叫UA2,按照認證流程確認以後,AR 1和AR2才能允許語音傳輸。這裡需要注意到是兩個Proxy之間,AR之間都是加密的。
在AS-SIP中,消息頭中的Resource-Priority用來決定呼叫優先級處理的欄位,它和普通的SIP有所不同。在INVITE中,Require頭欄位是這樣定義的:
Resource-priority 定義了name space是dsn。這裡讀者還要注意,DSN和DRSN的優先級有所不同,DSN支持了5個優先級層級,而DRSN則支持了6個優先級層級。關於DSN,DRSN,q.735 for ISDN(MLPP)的技術細節,用戶可以參考RFC4412。定義這些優先級的目的就是為了控制呼叫的優先級。如果呼叫中優先級高的則會優先處理。現在讓我們看看如果呼叫中使用了DSN resource header 以後的消息,UA 2 呼叫 UA 1:如果呼叫失敗,被叫方收到的消息是:
以上信息可以看到,被叫方不能接受q735的DSN,需要呼叫方重新發送或者取消呼叫。我們剛才一直提到優先級的問題,事實上,如果在實際場景中,可能具有高級版的用戶發起了呼叫,他可以強行接通正在進行的呼叫,讓另外一方掛機。在AS-SIP中支持了pre-emption 的事件來回復被掛斷方。RFC4411 定義了4個不同的回覆事件。以下是一個簡單的測試場景。在這個場景中,有三個UA。如果UA1 呼叫UA 2 並且已經開始了正常通話。這時,如果UA3 呼叫 UA2時,UA 1 不得不掛機。因為這裡UA 3具有最高的權限級別。然後,UA 1 終端收到BYE 消息(帶了 UA Preemption)。
以上流程可以理解為我們一般生活的場景或者一些重要機構的電話系統,某些級別的領導人具有最高權限,隨時隨地可以呼叫任何下一級別的員工,並且絕對保證呼叫聲可以接通的。如果讀者對上面的說明比較迷惑的話,可以參考以下呼叫流程。
除了AS-SIP以外,我們需要再花一點時間了解一下MLPP(全稱:Multilevel Precedence and Preemption)。
MLPP服務可以允許優先級高的用戶首先執行呼叫,或如果有必要,可以結束正在進行的呼叫,而接聽優先級高用戶的呼叫。使用的name space是q735 支持商業的ISDN服務。
在MLPP服務中,如果有一些重要系統用戶或者優先級比較高的用戶,可以直接通過proxy進行呼叫或者通過AR呼叫,但是MLPP則需要對其用戶的支持能力進行判斷,呼叫雙方加密處理,優先保證連接正常,優先保證帶寬,優先提供視頻音頻支持,優先提供出局中繼等服務支持。所以,如果商業場景中使用MLPP服務的話,需要額外的網絡資源來支持。
當然,如果部署了MLPP服務的話,如果優先級比較低的客戶則可能會出現呼叫掉線的現象或者資源不足的問題。如果用戶對MLPP感興趣的話,可以查閱思科關於融合通信MLPP的技術文檔。
在本講座中,我們討論了DSCP對QoS的影響,並且分析了辦公環境中員工使用網絡和佔用帶寬的統計數據,並且提供了一些參考建議來優化網絡保證QoS。我們還討論了AS-SIP服務中對QoS優化需要考慮到幾個優先級處理策略,並且重點針對優先級處理和優先級事件響應做了解釋,最後,我們討論了Pre-emption,MLPP中需要考慮到幾個因素。筆者相信,讀者可以通過筆者的三個系列講座,比較充分地了解了從SIP終端,Proxy, Switch, 路由器和AS-SIP服務架構的層面討論了影響QoS的技術細節。
關注微信號:asterisk-cn 獲得更多有價值的行業分享,訪問技術論壇,獲得更多關於開源融合通信的技術幫助:www.issabel.cn/forum。