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