王剛 張麗妍 王斯日古楞
【摘要】 簡要介紹了QPPB技術的基本原理和應用,重點介紹了QPPB在基于Diff- Serv模型的IP城域網中的應用。
【關鍵詞】 QoS SLA BGP Community Diff- Serv
一、前言
在當今IP城域網運營中,IP城域網內承載的業務越來越多樣化,IP城域網目前所承載的業務也不再是之前簡單得Internet業務,電子商務、多媒體等新業務迅速發展,一些實時性強的業務如涉及語音和視頻的IP電話、視頻聊天、在線電影、多媒體游戲等要求IP網絡有足夠的帶寬和低的轉發時延。網絡的普及,業務的多樣化,使互聯網流量激增,產生網絡擁塞,轉發時延增加,嚴重時還會產生丟包,導致業務質量下降或不可用。為了解決以上問題,網絡運營商已經在IP城域網中部署了基于Diff-Serv的QoS,為有高要求的業務和用戶提供了高優先級的網絡服務。
在傳統的QoS部署方式中,我們只在用戶業務接入的二層端口或三層端口上通過復雜流分類為用戶的業務報文打上一個特定的優先級標簽,后續的一系列工作(如:擁塞避免、擁塞管理、流量管理等)也都是基于標簽完成的,通過這里我們可以看出流分類和標簽就是實施QoS的基礎。而通常我們只給用戶的上行業務報文進行流分類和打標簽,用戶的下行報文帶不帶優先級標簽要取決于通信的對方是否購買了高優先級服務。也就是說當網絡發生擁塞時SLA用戶的上行業務報文得到了較高優先級的轉發,用戶的下行業務報文有可能得不到高優先級的服務而被丟棄。對于有較高服務要求的用戶來說,當網絡發生擁塞時,希望保證的是雙向流量,如果下行業務報文不能被及時轉發或丟棄,對用戶的上網感知一樣會造成不好的影響。
如何保證高優先級用戶的下行業務報文能得到優先轉發,也就成為了解決上述問題的關鍵。用戶下行報文的優先級標簽是在通信對方接入設備上標記的,而對端設備并不知道該給哪些目的IP地址的報文打高優先級標簽,所以需要在對端設備上執行大量的復雜流分類來滿足需求,而在經常變化的網絡中,配置修改的工作量非常大甚至難以實施。所以必須要通過一種技術和方法來自動完成這種工作,QPPB技術就可以來滿足這種需求。
二、QPPB原理
QPPB(QoS Policy Propagation Through the Border Gateway Protocol) 技術是由BGP(Border Gateway Protocol)路由發送者通過設置BGP屬性預先對路由進行分類,BGP路由接收者通過BGP路由的相關屬性來設置QoS參數、制定QoS流量策略、實現QoS保障,這樣在網絡發生變化時就可以簡化路由接收者的策略修改。
QPPB技術是一項通過BGP 路由策略部署QoS的技術,通過基于BGP路由的團體列表、AS-Paths list 和ACL、Prefix list 等屬性進行路由分類,對不同的分類應用不同的QoS 策略。
BGP路由發送者在發送路由時,先匹配路由策略,為發送的不同路由信息設置不同的BGP路由屬性,這些路由屬性作為路由分類的標識。
路由接收者在接收到BGP路由后,基于BGP路由屬性來過濾和匹配路由策略,為接收到的BGP路由設置QoS相關參數和策略,將BGP路由信息及相關聯的QoS 參數一起下發到轉發表。在數據轉發過程中,對發送到目的網段的數據包可以依據從轉發表中獲取的QoS參數使用QoS策略,從而實現QoS保證。
QPPB是一種動態的流分類技術,通過上述的原理,我們可以認為QPPB就是通過BGP的相關屬性在控制層面傳遞業務分類信息,路由接收者通過路由策略設置QoS參數之后將路由信息和QoS參數一同下發到轉發表中,這樣QoS參數在轉發層面生效,在數據轉發過程中將會按照轉發表中的QoS策略為數據報文打上相應的優先級標簽,數據報文在轉發過程中通過高優先級標簽來得到QoS保證。
三、QPPB在IP城域網中的應用
3.1城域網內用戶互訪
如圖一所示:城域網內SR下掛一個VIP用戶,BRAS下掛普通用戶。VIP用戶與運營商簽訂了SLA(服務水平協議),運營商為其通過QoS提供高優先級服務。
3.2城域網間用戶互訪
如圖二所示:城域網A內有VIP用戶,城域網B內有普通用戶。VIP用戶與運營商簽訂了SLA(服務水平協議),運營商為其通過QoS提供高優先級服務。
VIP用戶訪問城域網B普通用戶時,VIP用戶的上行業務報文在SR設備進行復雜流分類并打上高優先級標簽,打上標簽之后數據報文在網絡中轉發依據標簽等級進行擁塞避免、隊列調度和流量整形等QoS處理,VIP用戶發送到普通用戶的數據報文是可以得到QoS保證的。但普通用戶返回給VIP用戶的數據報文在默認情況下沒有打上高優先級標簽,所以VIP用戶的回程報文沒有QoS保證。當網絡中發生擁塞時,VIP用戶的回程報文可能因為沒有QoS保證而被丟棄,造成 VIP用戶部分業務不可用。
我們可以通過在兩個城域網中部署QPPB策略來解決這個問題,城域網A的CR路由器通過BGP發布VIP網段路由,并且給該BGP路由打上特定的Community屬性(例如:100:3),通過骨干網將該路由通告給城域網B,城域網B的CR路由器將學習到的BGP路由通告給業務控制層設備。同時業務控制層設備上已經提前完成了QPPB策略配置,業務控制層設備在接收到路由之后,通過路由策略匹配Community團體屬性100:3,為匹配的BGP 路由設置相應QoS參數并下發到轉發表中。
當業務控制層設備收到目地地址是VIP網段的數據包后,通過匹配數據包的目的地址從轉發表中獲取QoS 參數,為該數據包打上相應的ip-precedence或DSCP的標簽,之后該數據包在網絡中轉發依據高優先級標簽來得到相應的QoS保證。
四、問題和注意事項
1)QPPB 技術實際只是在路由發送方通過路由分類設置路由屬性,在接受方根據目的網段的路由屬性設置QoS 策略,不是在BGP 路由信息中發送QoS 策略。因此QPPB技術可以應用于基于目的地址而不是源地址進行流分類的場合,但需要整網統一協調路由屬性、QPPB策略及QoS策略,并且不同的城域網和節點之間能夠相互信任。
2)IP城域網在進行IP地址規劃時,需要為有相同SLA等級的VIP用戶分配連續的地址空間,以便在IP城域網出口對同等級VIP用戶路由進行聚合發布,不同等級VIP用戶路由標示不同的Community團體屬性以做區分。但考慮到部分城域網VIP用戶或業務較少,無法滿足按照SLA劃分地址段,針對于這種情況,VIP用戶路由只能標示一個Community團體屬性,為了滿足高等級SLA用戶的服務質量,建議Community團體屬性按照高等級SLA進行標示。
3)我們應用QPPB技術主要是為了保障SLA用戶的回程流量有高的服務質量,所以建議在對端網絡和設備上部署基于目的的QPPB策略,但這種應用方式會影響到高等級SLA用戶訪問低等級SLA用戶的服務質量。在沒有部署QPPB時高等級SLA用戶向外訪問的數據報文都會打上高等級的QoS標簽,無論是訪問普通用戶還是低等級SLA用戶都會攜帶高等級標簽;但網絡上部署過QPPB之后,高等級SLA用戶訪問低等級SLA用戶的數據報文會在應用QPPB策略的設備上將高等級QoS標簽改寫低等級SLA對應的QoS標簽。
五、總結
QPPB技術作為BGP在QoS方面的一項高級應用,在QoS部署方面給我們提供了極大的方便。路由始發者可以通過一種標示來告知遠端設備不同網段所對應的SLA級別,遠端設備可以根據這種標示動態的應用QoS策略,保證SLA用戶的服務質量。QPPB拓寬了QoS的應用,有助于高等級SLA業務的推廣。
參考文獻
[1] 1RFC2918,BGP-4的路由刷新功能