本發明屬于智能電網數據傳輸領域,具體來說,涉及一種智能電網通信的數據傳輸時延的優化方法,有利于智能電網通信中數據傳輸的性能提升。
背景技術:
作為下一代電網技術,智能電網將有機地結合信息技術、自動控制、傳感技術以及智能電力設備等。它通過提供雙向互動、高度集成的服務和模式,使得電網更加安全、可靠、高效和智能。然而對于智能電網通信網來說,一方面負著未來數十年的電網支撐的重任,隨著未來電力設備更多的引入,電力系統更多的升級,從規模上以及運行復雜度上都將面臨眾多挑戰;另一方面,更多新能源的介入以及電力逐漸市場化的趨勢,智能電網通信網需要提供更多快捷的功能服務以及增值服務,這些都將對智能電網通信網中不同系統之間的信息共享以及信息交互提出了更高的要求。
為了提高智能電網中的數據傳輸速率,虛擬時延概念被提出來。在智能電網通信網中,其數據分為硬實時、準實時、非實時等多種類型,其對應的時延要求從8ms到5秒不等。不同于傳統的數據業務時延,智能電網通信網中的時延要求跨度極大,而且其數據時延不僅關系著信息及時的交互,更是關系著整個電網的安全以及電力系統的快速反應。尤其是對于時延敏感的數據來講,越是情況糟糕關鍵信息的實時性要求就越高、越嚴格智能電網通信網中各類數據的快速實時的傳輸是牽一發而動全身的,它對智能電網通信網的建設提出了前所未有的挑戰。不難發現,解決數據傳輸時延難題不僅是建設智能電網通信網的關鍵所在,也是保證未來智能電網通信網可靠、安全、高效、智能的核心基礎,該問題的研究及解決意義重大。
技術實現要素:
本發明要解決的技術問題是提供一種智能電網通信的數據傳輸時延的優化方法,目的在于克服現有技術不足,提供基于最早截止時間優先的改進型VL0(虛擬時延優化)-EDF調度算法,提升智能傳輸網絡的性能。
本發明采取的技術方案是:一種智能電網通信的數據傳輸時延的優化方法,包括如下步驟:
步驟01)在某一個交換節點處,首先開始計算虛擬時簽,即計算最先到達的六類數據的數據包的虛擬時簽,同時進行排序,然后從六類數據包中找出最小虛擬時簽的數據包,被選定的調度數據包的虛擬時簽假定為式中表示第i類數據中的第j個數據包的虛擬時簽;
步驟02)利用上一次的計算結果,當下一個數據包進行調度時,第一步先在調度候補中放入第i類數據中的第(j+1)個數據包,第二步用第i類數據中的第(j+1)個數據包的虛擬時簽和其他剩余的五個虛擬時簽中最小的一個值先進行比較,假如該虛擬時簽比其他剩余的五個虛擬時簽中的最小值還要小的話,則可以直接對虛擬時簽中所對應的數據包進行相應的調度,否則,就調度虛擬時簽為所對應的數據包,即調度虛擬時簽的最小值;
步驟03)在此用插入的方式,將第m類數據中的第(n+1)個數據包對應的虛擬時簽和第i類數據中的第(j+1)個數據包對應的虛擬時簽加入到新的六維數組中,與此同時實現排序;
步驟04)當調度進行到下一數據包時,通過該交換節點之后的某個數據包,它的結束時間和它在物理鏈路上傳播所消耗的時延之和,即成為下一個交換節點的到達時間。
進一步地,所述的虛擬時簽的獲得方法為:
對于每一類數據的虛擬時延,其定義如公式下所示:
對于第i類數據中的第j個數據包來講,其發送時間如下公式所示:
則對該數據包來講,其時簽為:
m:表示第m類數據,
表示第m類數據的第j個數據包,是從m=1即第一類數據包開始累加至第i-1類數據包的所有虛擬時延之和,
引入虛擬時延之后,其對應的虛擬時簽為:
上述各個概念公式的含義如下:
第i類數據的第j個數據包的到達時間,其中i=1,2,3,4,5,6;j=1,2,3,4…,
Fij:第i類數據的第j個數據包的發送時間,和數據包大小以及端口速率有關,
C:代表交換節點處端口的速率,
Pi:代表第i類數據包的大小,
Vli:引入的第i類數據的虛擬時延,
Deadlinei:表示第i類數據包的截止時間,
第i類數據中的第j個數據包的時簽,
第i類數據中第j個數據包的虛擬時簽。
本發明的工作原理是:采用VLO-EDF調度算法,對不同的數據類型引入不同的“虛擬時延”,當最后一類數據包的第一個數據包的時簽和第一類數據的第一個數據包的時簽差值小于引入的“虛擬時延”時,最后一類數據包的虛擬時簽可以由原來的最小變為最大,第一類數據包的虛擬時簽也可以從之前的最大變為最小,因而,同樣的情況,采用VLO-EDF調度算法之后,其調度順序可能會導致虛擬時簽數字越小越先被調度。
該算法有兩個輸入,第一個輸入是按照通信網業務模型產生的六類數據,包括數據包大小,到達時間,到達規律以及數據速率。第二個輸入是交換節點處的端口速率以及所經過的網絡,這里主要考慮網絡節點數目和兩個節點之間的物理鏈路距離等。當輸入確定下來之后,接下來要計算出各類數據對應的虛擬時延,并依據每類數據中最早到達的數據包進行虛擬時簽的計算,找到虛擬時簽最小的數據包,進行調度。然后進入到VLO-EDF調度算法處理中。
數據包到達時間和轉發時間都是無法改變的,但可以引入“虛擬時延”,時延越是敏感的數據,其對應的虛擬時延越小,時延越是不敏感的數據,其對應的虛擬時延越大。這樣,原來可能時延不敏感數據時簽小于時延敏感數據時簽的情況就有可能會變成現在的時延敏感數據虛擬時簽小于時延不敏感數據的虛擬時簽。在該情況下,調度的時候,越是時延敏感的數據包,就會越優先被考慮,促使其服務開始時間提前,進而提升了時延敏感數據包的排隊等待時間。一方面在網絡負載正常時,調度不存在沖突的情況,各類數據包的服務開始時間都近似于到達時間,即使引入了“虛擬時延”的概念,也不會影響其時延性能,另一方面,在網絡負載較大時,各類數據包都會出現等待,而這時引入的“虛擬時延”就可以更好的服務于時延敏感數據,即使出現了突發和偶爾的擁塞,也可以更好的被優先調度,改善了多米諾骨牌現象,通過多跳的調整和調整,極大的提升了其等待時延性能。
在負載比較小的時候,VLO-EDF調度算法時延敏感數據的時延抖在突發性的關鍵事件發生時,可以根據不同時延門限符合智能電網通信網的特點和時延要求。而時延不敏感數據的時延抖動會現對影響較小。而當負載增大并出現部分擁塞時,VLO-EDF調度算法在時延抖動上就有了很好的效果。
本發明的有益效果是:通過基于最早截止時間優先的改進型VL0(虛擬時延優化)-EDF調度算法,提升智能傳輸網絡的性能。
附圖說明
圖1為關智能電網通信網中的時延分解示意圖;
圖2為本發明的系統流程框圖;
圖3為EDF調度算法實例;
圖4為LBFS調度舉例;
圖5為仿真的負載為88%時所對應的三種調度算法平均時延圖;
圖6為負載流量為88%時所對應的三種調度算法的最大時延圖;
圖7為仿真滿足通信時延要求的最大負載流量圖;
圖8為采用VLO-EDF對穩定數據包進行調度后的時延圖;
圖9對實體交換機測試所得時延圖。
具體實施方式
下面結合附圖和具體實施方式對本發明的技術方案作進一步描述。
實施例1:如圖1-9所示,一種智能電網通信的數據傳輸時延的優化方法,其特征在于:包括如下步驟:
步驟01)在某一個交換節點處,首先開始計算虛擬時簽,即計算最先到達的六類數據的數據包的虛擬時簽,同時進行排序,然后從六類數據包中找出最小虛擬時簽的數據包,被選定的調度數據包的虛擬時簽假定為式中表示第i類數據中的第j個數據包的虛擬時簽;
步驟02)合理利用上一次的計算結果,當下一個數據包進行調度時,第一步先在調度候補中放入第i類數據中的第(j+1)個數據包,第二步用第i類數據中的第(j+1)個數據包的虛擬時簽和其他剩余的五個虛擬時簽中最小的一個值先進行比較,假如該虛擬時簽比其他剩余的五個虛擬時簽中的最小值還要小的話,則可以直接對虛擬時簽中所對應的數據包進行相應的調度,否則,就調度虛擬時簽為所對應的數據包,即調度虛擬時簽的最小值;
步驟03)在此用插入的方式,將第m類數據中的第(n+1)個數據包對應的虛擬時簽和第i類數據中的第(j+1)個數據包對應的虛擬時簽加入到新的六維數組中,與此同時實現排序;
步驟04)當調度進行到下一數據包時,通過該交換節點之后的某個數據包,它的結束時間和它在物理鏈路上傳播所消耗的時延之和,即成為下一個交換節點的到達時間。
“虛擬時簽”是建立在“虛擬時延”的基礎上所提出的一個概念,以下是對虛擬時簽的解釋及具體獲得的方法:
其中對于每一類數據的“虛擬時延”,其定義如公式下所示:
對于第i類數據中的第j個數據包來講,其發送時間如下公式所示:
則對該數據包來講,其時簽為:
引入“虛擬時延”之后,其對應的虛擬時簽為:
上述各個概念公式的含義如下:
m:表示第m類數據,
表示第m類數據的第j個數據包,是從m=1即第一類數據包開始累加至第i-1類數據包的所有虛擬時延之和,
第i類數據的第j個數據包的到達時間。其中i=1,2,3,4,5,6;j=1,2,3,4…,
Fij:第i類數據的第j個數據包的發送時間,和數據包大小以及端口速率有關,
C:代表交換節點處端口的速率,比如常見的交換機其端口可支持1Gbps的速率,
Pi:代表第i類數據包的大小,
Vli:引入的第i類數據的“虛擬時延”,
Deadlinei:表示第i類數據包的截止時間,對于一般的截止時間來講,都是一個常數向量,故把截止時間簡單定義為每類數據包的傳輸時間,
第i類數據中的第j個數據包的時簽,
第i類數據中第j個數據包的虛擬時簽。
本發明結合智能電網通信網的特點和數據業務特點,首先引入了一個“虛擬時延優化”(Virtual Latency Optimization)的概念。在智能電網通信環節中采用引入虛擬時延優化(VLO)的方法解決在運用最早截止時間優先算法(EDF)時出現的非時延敏感數據優于時延敏感數據調度的情況,即基于最早截止時間優先的改進型VL0(虛擬時延優化)-EDF調度算法。智能電網通信網中,在直接運用EDF算法進行調度時,主要決定因素取決于數據的時延敏感性和非時延敏感型。
本發明圖1中:其中,D1代表的是發送節點的處理時延;D2代表的是發送節點將發送數據放在緩沖區引起的排隊時延;D3代表的是網絡時延,嚴格意義上來講,其包括數據包的發送時延、接收時延、交換時延、轉發表查詢時延、傳播時延、排隊時延;D4為對應的接收節點的排隊時延;D5對應的是接收節點的處理時延。
圖2中:首先對最先到達的六類數據的數據包進行虛擬時簽的計算,并排序,找到其虛擬時簽最小的數據包。在下一個數據包的調度時,充分利用上次計算的結果然后用其虛擬時簽和其余五個虛擬時簽中的最小值先比較,如果比其余五個虛擬時簽的最小值小,則只需一次比較就可以對該數據包進行調度。否則,對虛擬時簽最小值所對應的數據包進行調度。然后可利用插入的方式將虛擬時簽加入到新的六維數組中,同時也完成了排序的功能。進入到下一數據包的調度中,當某個數據包經過該交換節點之后,其結束時間加上在物理鏈路上傳播所消耗的時延,就成為下一個交換節點的到達時間。然后,和上述單個交換節點的處理一樣,再次進入到相似的處理過程中。
圖3中:假設class1到class6分別代表具有不同時延要求的六類數據,其時延從敏感到不敏感,即class1數據是時延最敏感的數據,class6是時延最不敏感的數據。根據EDF調度算法,按照時簽的大小,其數據包的調度順序可能會出現如圖中數字順序所示的情況,其中數字越小表示越先被調度。
圖4中:在沒有LBFS調度情況下,時延敏感數據流和時延不敏感數據流的路由如圖中的實線箭頭所示。在某一時間段內,假設flow1是平均速率為130Mbps的從Host1到Host3的時延敏感數據流,flow2是平均速率為300Mbps的從Host2到Host3的時延不敏感數據流。而當前網絡中各個鏈路上的網絡流量負載如圖所示。
圖5、圖6、圖7為仿真圖,仿真實驗中所定義的三個參考因數的選擇是為了證明所提出的VL0-EDF算法的有效性。
圖5為仿真的負載為88%時所對應的三種調度算法平均時延。在傳輸電路平均時延仿真試驗中,引入了六個不同類別的數據,對于不同類別的數據,傳輸要求也應當不同,因此可以區別出三種不同的調度算法下的傳輸時延的估計結果。
圖6為負載流量為88%時所對應的三種調度算法的最大時延。引入了六個不同類別的數據,仿真結果表明了三種不同的調度算法下的傳輸時延,驗證了VLO-EDF算法的優越性。
圖7為仿真滿足通信時延要求的最大負載流量。在三種算法下的傳輸時延抖動,可以看出當負載增大并出現部分擁塞時,尤其是在時延敏感數據的調度時,本發明提出的VLO-EDF算法優化更為效果明顯。
本發明的具體試驗步驟為:
步驟01)對于數據源,按照圖1的數據模型,六類數據的數據包大小分別為50、76、80、200、200、1500字節,對于第二類、第三類數據,其特點是周期性的數據,對于第四類數據,其特點是連續性的,對于第五類和第六類數據隨機數據,我們采用泊松分布。對于第一類數據,我們采用隨機的突發數據。
步驟02)在仿真中,為了驗證三種調度算法對時延的影響,我們僅考慮buffer相同的情況。同時,在仿真中也結合智能電網通信網的特點,加入了跳數的控制,在仿真中我們設網絡跳數為5。為了仿真的準確性,對數據進行50次處理并求平均值。
步驟03)對于交換節點出的線卡速率,我們采用1Gbps的端口。
步驟04)在仿真實驗中,通過對網絡流量負載的控制,查看三種調度算法對六類數據時延的影響。
仿真要求:具體的實驗中,采用的處理器為Inte(lR)Core(TM)i3-2370M CPU@2.4GHz2.4GHz,其內存為6.00GB(5.6GB可用)的筆記本,該機器為64位操作系統。
單節點仿真結果和實際測量結果比較步驟為:
步驟01)采用VLO-EDF調度算法對大小為I500Bytes,且接近勻速的數據包進行調度,采用了六個速率,分別為100Mbps、200Mbps、500Mbps、750Mbps900Mbps、980Mbps。則該類數據包的時延如附圖8所示。
步驟02)我們借助IXIA儀表,在Brocade的NetIron_CES_2000_DS型號交換機上對大小為1500Bytes的數據包進行測試,其端口速率也是1Gbps。所采用的六個速率和VLO-EDF調度算法一樣。其結果如附圖9所示。
步驟03)從圖8、圖9兩個圖中可以看出,當流量不大時,交換節點處沒有擁塞,其時延非常小,一般在us量級,而當流量較大時,尤其是接近或者大于900Mbps時,其時延會出現急劇增加。當數據不是穩定的,而且有突發時,其時延會更大,這一部分將在下面小節中看到。
步驟04)兩個圖中所展示的時延規律都是接近的,而且其時延數值也相差不大,這驗證了VLO-EDF調度算法的可行性。
以上結合附圖對本發明的具體實施方式作了詳細說明,但是本發明并不限于上述實施方式,在本領域普通技術人員所具備的知識范圍內,還可以在不脫離本發明宗旨的前提下作出各種變化。