支持QoS的兩種新型帶寬分配算法
文獻[1]中提出的間插輪詢算法采用了可變的授權周期,因此不適合對延時和延時抖動敏感的實時業(yè)務。為了解決此類問題,文獻[2]中提到了一種固定時隙分配 (Fixed Slot Allocation, FSA)算法,然而固定時隙分配帶來的弊端是:輕負載時大部分光網(wǎng)絡單元(Optical Network Unit, ONU)的帶寬浪費明顯,上行信道利用率很低。而在重負載時ONU之間又不能形成帶寬共享,給高優(yōu)先級業(yè)務的時延和各業(yè)務優(yōu)先級的隊列帶來消極影響。鑒于此,本文在對間插輪循算法做出相應改進的基礎上,提出了兩種全新的支持多業(yè)務服務質量(Quality of Service, QoS)的EPON上行信道動態(tài)帶寬分配算法:單級授權混合發(fā)送算法(Single-level Grant Merged Transmission Allocation, SGMTA) 和多級授權分離發(fā)送算法(Multiple-level Grant Separated Transmission Allocation, MGSTA)。
1.1 幀結構
考慮到EPON對IEEE802.3所定義的以太幀結構的兼容性,所設計的兩種算法共涉及到三種類型的幀:數(shù)據(jù)幀(DATA),授權幀(GRANT)和請求幀(REQUEST)。其中數(shù)據(jù)幀仍然沿用IEEE802.3中的幀結構,不做任何改變。而對于授權幀和請求幀,為了節(jié)約下行鏈路的帶寬,決定采用64 B的最小以太幀,具體格式分別如圖1和圖2所示,從圖中看出,Preamble為前導碼,SFD為定界符,DA為目的地址,SA為原地址,Type表示以太網(wǎng)類型域。從Subtype開始,請求幀各字段定義如下:Subtype 用于區(qū)分數(shù)據(jù)幀,授權幀和請求幀;Timestamp 用于光線路終端(Optical Line Termination, OLT)和各ONU之間往返時間值的測定;Req_EF和Req_BE分別用于各ONU向OLT請求高優(yōu)先級業(yè)務EF和低優(yōu)先級業(yè)務BE的授權;Reserved/Data字段保留作為以后多優(yōu)先級業(yè)務的擴展或附帶傳送數(shù)據(jù);FCS為校驗字段。授權幀的Sendtime_BE字段為授權ONU的低優(yōu)先級業(yè)務BE發(fā)送時間,Grant_EF和Grant_BE 分別為OLT向授權ONU分配的高優(yōu)先級業(yè)務EF和低優(yōu)先級業(yè)務BE的傳送窗口。
圖2 授權幀格式
1.2 SGMTA帶寬動態(tài)分配算法
SGMTA算法是一種主要基于ONU端設計的多優(yōu)先級動態(tài)帶寬分配方案。其步驟如下:
1) OLT依據(jù)授權表向各ONU發(fā)送帶寬授權。授權主要包括兩部分信息:所授權ONU的標識和授權窗口的大小。此處的授權窗口是指ONU請求的各優(yōu)先級窗口大小之和。
2) ONU在用戶數(shù)據(jù)到來時按照ONU端的優(yōu)先級處理策略先將數(shù)據(jù)按其優(yōu)先級緩存在相應的隊列中,并為高優(yōu)先級隊列中的數(shù)據(jù)進一步設置子優(yōu)先級:sub_priority=(t_wait+t_service)/t_service, 其中t_wait為該數(shù)據(jù)包在隊列中已等待的時間,t_service為該數(shù)據(jù)包所要求的傳送時延。所有數(shù)據(jù)等到授權到來時再統(tǒng)一發(fā)送。
3) OLT的授權幀到達ONU后,ONU讀取授權窗口,并根據(jù)窗口大小立即發(fā)送數(shù)據(jù)。發(fā)送策略為:先發(fā)送高優(yōu)先級的EF數(shù)據(jù),發(fā)送時按照其子優(yōu)先級的大小依次發(fā)送。當高優(yōu)先級隊列為空或是已發(fā)數(shù)據(jù)等于上輪申請的窗口時,停止發(fā)送。接著ONU利用授權中的剩余帶寬繼續(xù)發(fā)送低優(yōu)先級業(yè)務,直到授權窗口用完為止。發(fā)完數(shù)據(jù)后,ONU附帶發(fā)送請求幀,其內(nèi)容包括當前各優(yōu)先級的隊列情況以及相應的Timestamp值。
4) OLT在向ONU發(fā)送授權的同時接受ONU的數(shù)據(jù)和請求。數(shù)據(jù)交上層處理,請求則根據(jù)其內(nèi)容更新授權表。為進一步增加位于上輪請求和本輪授權之間到達的高優(yōu)先級業(yè)務的發(fā)送機會,可在當前高優(yōu)先級業(yè)務的授權窗口上附加一個補充窗口(supply_window),作為下輪高優(yōu)先級業(yè)務的帶寬預分配。同時為保證公平性,OLT為各ONU設置相應的最大授權窗口Wmax。
5) 完成本輪輪詢和收到各ONU請求的基礎上,OLT根據(jù)更新后的授權表開始新一輪輪詢。通過分析,發(fā)現(xiàn)了SGMTA算法在繼承了光線路終端(Optical Line Termination, OLT)算法充分利用上行信道和避免同步與測距技術等優(yōu)點的同時,對高優(yōu)先級的EF業(yè)務采取了“一有授權,優(yōu)先發(fā)送”,“預先分配附加窗口”和“細分子優(yōu)先級”等策略,使得高優(yōu)先級業(yè)務在SGMTA算法中享有較好的時延特性,同時對于低優(yōu)先級BE業(yè)務,也會保證其申請的傳輸帶寬,避免其發(fā)送機會被EF業(yè)務強行占用,進而導致其緩沖隊列的不穩(wěn)定增長。
1.3 MGSTA帶寬動態(tài)分配算法
MGSTA算法是一種主要基于OLT端設計的多優(yōu)先級動態(tài)帶寬分配方案。在闡明這一算法之前,先來分析一下SGMTA算法中存在的兩點不足:1) 在SGMTA中各ONU的高優(yōu)先級業(yè)務(EF)是間隔在不同ONU低優(yōu)先級業(yè)務(BE)之間進行傳送的。這樣當各ONU的BE業(yè)務比較繁忙時,SGMTA的整個輪詢周期就會加大,各ONU的EF業(yè)務的發(fā)送間隔也會相應的增長。2) 由于請求幀是在低優(yōu)先級業(yè)務發(fā)送完畢時附帶發(fā)送的,因此當OLT開始下一次輪詢時,距離上輪第一個被輪詢到的ONU所報告帶寬請求時刻已經(jīng)相隔了較長的一段時間。而在這段時間內(nèi)達到的EF業(yè)務數(shù)據(jù)在本輪授權中并沒有被申請,其發(fā)送機會僅依賴于OLT端根據(jù)預測分配的附加窗口,其準確程度有限。
為了解決以上問題,在SGMTA算法改進的基礎上提出了MGSTA動態(tài)帶寬分配方案,其主要改動部分如下:
1) 整個輪詢周期根據(jù)業(yè)務的優(yōu)先級劃分為多個輪詢子周期。各輪詢子周期的安排順序遵照其對應的業(yè)務優(yōu)先級高低,高優(yōu)先級業(yè)務先輪詢,低優(yōu)先級業(yè)務后輪詢。
2) 對OLT的授權機制進一步細分,由SGMTA算法中的整體授權改為針對不同優(yōu)先級的分級授權。
3) 考慮到節(jié)約下行鏈路帶寬,OLT對ONU的多優(yōu)先級業(yè)務授權仍封裝在一個授權幀中。各ONU接收到授權后,立即發(fā)送高優(yōu)先級業(yè)務,同時獲取下一個低優(yōu)先級業(yè)務的發(fā)送時間。
4) 在低優(yōu)先級的發(fā)送窗口內(nèi)增加“帶內(nèi)開窗”機制,為高優(yōu)先級業(yè)務在同一輪詢周期內(nèi)提供多次發(fā)送機會。同時, 請求幀仍然附加在最后一個優(yōu)先級業(yè)務發(fā)送完成之后進行。
2 仿真結果和性能分析
為了驗證SGMTA算法和MGSTA算法的可行性,進行了仿真實驗。實驗中所用到仿真參數(shù)設置如下(FSA, SGMTA和MGSTA算法的仿真參數(shù)相同):ONU的個數(shù):16;優(yōu)先級的設置:高優(yōu)先級:EF,低優(yōu)先級:BE;OLT到ONU的距離:10~20 km;上下行鏈路速率:1 Gbps;業(yè)務源:Paerto和Poisson;幀長:64~1518 B;保護時間:1 μs;ONU最大分配窗口:15 000 B。
為了更好地模擬實際EPON中的數(shù)據(jù)源,在仿真中采用了具有自相似性(self-similarity)和長相關性的突發(fā)數(shù)據(jù)源和具有泊松(Poisson)分布的數(shù)據(jù)源疊加而成。其中高優(yōu)先級業(yè)務占整個網(wǎng)路負載的20%,低優(yōu)先級業(yè)務占80%。整個仿真模型考慮了數(shù)據(jù)的排隊延時Tq,發(fā)送延時Ts和鏈路傳播延時Tp。
圖3為測定了高優(yōu)先級業(yè)務EF在FSA,SGMTA和MGSTA三種算法下端到端時延d隨網(wǎng)絡負載l改變的情況。所不同的是:圖3a為在高優(yōu)先級業(yè)務源負載恒定的情況下測出的,圖3b中的EF業(yè)務源則隨著網(wǎng)絡負載增加而增加,但與低優(yōu)先級業(yè)務比例始終維持一定。通過比較,發(fā)現(xiàn)在兩種測試條件下,MGSTA和SGMTA分配算法均比FSA算法體現(xiàn)出更小的時延以及更平穩(wěn)的時延變化。在滿負載或超負載時,F(xiàn)SA的EF時延約為MGSTA的2.5~3倍, SGMTA的1.2~1.5倍。 這是由于MGSTA和SGMTA算法在設計的思想中分別采用了“多級授權,分離發(fā)送”,“預分帶寬,帶內(nèi)開窗”和“細分子優(yōu)先級”等機制為高優(yōu)先級業(yè)務盡可能多的提供了發(fā)送機會。
圖4為FSA,SGMTA和MGSTA算法下ONU處的隊列尺度b改變的情況,圖4a給出了兩種算法相對于FSA算法的高優(yōu)先級業(yè)務的隊列尺度b,可以看到其變化趨勢與各自算法的時延特性基本一致。MGSTA算法中高優(yōu)先級業(yè)務的及時傳遞,必將導致相同負載下其較小的隊列長度和較穩(wěn)定的增長變化。圖4b則表明了ONU處所需的緩沖區(qū)大小,發(fā)現(xiàn)即使在MGSTA算法允許高優(yōu)先級業(yè)務搶占低優(yōu)先級業(yè)務發(fā)送帶寬的情況下,其總共所需的緩沖空間仍小于SGMTA算法。原因為:1) MGSTA算法中為各ONU預先分配了一個附加窗口,使高優(yōu)先級業(yè)務不會耗盡低優(yōu)先級業(yè)務的發(fā)送帶寬。2) 在允許高優(yōu)先級搶占低優(yōu)先級帶寬的同時,也允許低優(yōu)先級在沒有高優(yōu)先級業(yè)務時利用附加窗口發(fā)送,使得帶寬分配更為靈活。
(a) 高優(yōu)先級業(yè)務EF的平均隊列尺度 (b) ONU的緩沖區(qū)大小
圖4 FSA, SGMTA和MGSTA算法下ONU處的隊列情況
評論