李小焱
(國網(wǎng)山東省電力公司 濟(jì)寧供電公司, 山東 濟(jì)寧 272000)
智能電網(wǎng)(SG)系統(tǒng)中智能設(shè)備生成具有多個異構(gòu)屬性的高維數(shù)據(jù),并且其值隨時(shí)間而變化[1]。數(shù)據(jù)的高維會影響大多數(shù)設(shè)計(jì)方案的性能,在對大數(shù)據(jù)進(jìn)行有效存儲之后,主要任務(wù)是通過底層SG網(wǎng)絡(luò)高效地傳輸降維后的數(shù)據(jù)[2]。文獻(xiàn)[3]重點(diǎn)介紹了智能電表生成數(shù)據(jù)類型和處理數(shù)據(jù)所需的技術(shù)。由于從各種智能設(shè)備定期生成的數(shù)據(jù)導(dǎo)致網(wǎng)絡(luò)通信流量擁堵,因此,網(wǎng)絡(luò)級的數(shù)據(jù)處理已成為SG系統(tǒng)面臨的主要挑戰(zhàn)[4]。文獻(xiàn)[5]提出了在智能電表和電網(wǎng)之間,利用高級電表架構(gòu)(AMI)蜂窩網(wǎng)絡(luò)進(jìn)行實(shí)時(shí)數(shù)據(jù)傳輸。因此,軟件定義網(wǎng)絡(luò)(SDN)作為高效的數(shù)據(jù)流量平臺在SG系統(tǒng)中,可以在現(xiàn)有的網(wǎng)絡(luò)基礎(chǔ)設(shè)施上進(jìn)行高效的數(shù)據(jù)流處理。文獻(xiàn)[6]提出了一種基于SDN的微電網(wǎng)通信體系結(jié)構(gòu),以便為終端用戶提供靈活可靠的服務(wù)。文獻(xiàn)[7]利用SDN為SG系統(tǒng)設(shè)計(jì)了自主管理的變電站網(wǎng)絡(luò)。SDN可減少延遲和提高吞吐量的形式提高傳輸性能,從而有利于大數(shù)據(jù)應(yīng)用[8]。
針對SG系統(tǒng)中不同智能設(shè)備獲取數(shù)據(jù)后的降維數(shù)據(jù),本文設(shè)計(jì)了一種基于SDN的智能電網(wǎng)降維數(shù)據(jù)傳輸方案,設(shè)計(jì)了一種基于經(jīng)驗(yàn)概率的控制算法(EPCS),用于計(jì)算在SG網(wǎng)絡(luò)上轉(zhuǎn)發(fā)降維數(shù)據(jù)的最佳路徑。
為了更好地說明本文所利用的SDN模型優(yōu)勢,將SDN模型與蜂窩網(wǎng)絡(luò)模型進(jìn)行對比示例,如圖1所示。
如果通過傳統(tǒng)網(wǎng)絡(luò)信道傳輸20 Mbits的數(shù)據(jù)幀,則以20 Mbps的數(shù)據(jù)速率到達(dá)目標(biāo)節(jié)點(diǎn)需要1秒,如圖1(a)所示。如果數(shù)據(jù)量被降維到16 Mbits,可以省略所有無用和不需要的值,則以相同的數(shù)據(jù)速率到達(dá)目標(biāo)節(jié)點(diǎn)僅需0.8秒,如圖1(b)所示。因此,數(shù)據(jù)量對傳輸時(shí)間有很大的影響。由于在SG系統(tǒng)中有大量的數(shù)據(jù)是無縫傳輸,因此,如果這些數(shù)據(jù)被減少,則有利于網(wǎng)絡(luò)傳輸?shù)恼w性能。
(b) 路由方案得到的吞吐量圖4 方案的評價(jià)結(jié)果
(a) 降維率與誤差率之間的統(tǒng)計(jì)權(quán)衡
(b) 通過蜂窩網(wǎng)絡(luò)傳輸?shù)慕稻S數(shù)據(jù)用時(shí)
(a) 通過蜂窩網(wǎng)絡(luò)傳輸?shù)脑紨?shù)據(jù)用時(shí)
當(dāng)網(wǎng)絡(luò)遵循動態(tài)網(wǎng)絡(luò)管理方案時(shí),可以幫助實(shí)現(xiàn)更好的網(wǎng)絡(luò)資源利用率,從而實(shí)現(xiàn)更高的吞吐量。例如,如果在蜂窩網(wǎng)絡(luò)上傳輸降維的數(shù)據(jù)幀,則可以使用傳統(tǒng)網(wǎng)絡(luò)協(xié)議選擇最短路徑。在這種情況下,實(shí)現(xiàn)50 Mbps的數(shù)據(jù)速率以及25%的鏈路利用率和12.5 Mbps的吞吐量,如圖1(c)所示。如果部署了諸如SDN之類的動態(tài)網(wǎng)絡(luò),則實(shí)現(xiàn)55 Mbps的數(shù)據(jù)速率以及25.2%的較好鏈路利用率和13.7 Mbps的增強(qiáng)吞吐量,如圖1(d)所示。因此,通過在SG系統(tǒng)中部署SDN的網(wǎng)絡(luò)基礎(chǔ)設(shè)施用于數(shù)據(jù)管理,可以實(shí)現(xiàn)更好的吞吐量、數(shù)據(jù)速率和鏈路利用率。鏈路的更好利用還有助于減少網(wǎng)絡(luò)基礎(chǔ)架構(gòu)的能耗。
(c) 通過傳統(tǒng)網(wǎng)絡(luò)傳輸?shù)慕稻S數(shù)據(jù)
(d) 通過SDN網(wǎng)絡(luò)傳輸?shù)慕稻S數(shù)據(jù)
本文提出一種以SDN作為SG降維數(shù)據(jù)傳輸?shù)闹悄芊桨福源藢G系統(tǒng)進(jìn)行動態(tài)網(wǎng)絡(luò)管理。SDN作為開放且可編程的平臺,通過其良好的解耦平面可以實(shí)現(xiàn)智能且動態(tài)的網(wǎng)絡(luò)控制。SDN從網(wǎng)絡(luò)應(yīng)用程序中抽象出底層基礎(chǔ)設(shè)施,使得網(wǎng)絡(luò)配置中的動態(tài)變化管理和重新配置變得容易[9]。利用SDN的可擴(kuò)展性和高效性,可以有效地處理SG系統(tǒng)中不斷生成的大數(shù)據(jù)流量。因此,將大數(shù)據(jù)降維技術(shù)與SDN相結(jié)合,可以為終端用戶提供可擴(kuò)展、高效的服務(wù)。本文使用3個平面設(shè)計(jì)了SDN網(wǎng)絡(luò)模型:(1)數(shù)據(jù)平面;(2)控制平面;(3)應(yīng)用平面,如圖2所示。
圖2 SDN網(wǎng)絡(luò)模型三個平面設(shè)計(jì)
在該模型中,數(shù)據(jù)平面主要由交換機(jī)、轉(zhuǎn)發(fā)設(shè)備和路由器等網(wǎng)絡(luò)設(shè)備組成,數(shù)據(jù)從SG系統(tǒng)中的各種設(shè)備獲取,如工業(yè)用電、家庭用電和商業(yè)用電。該平面使用OpenFlow協(xié)議(OFP)作為通信標(biāo)準(zhǔn),將收集到的數(shù)據(jù)轉(zhuǎn)發(fā)到上層平面[10]。在位于控制平面的服務(wù)器上,將采集到的數(shù)據(jù)降維處理,并結(jié)合控制算法對核心數(shù)據(jù)進(jìn)行高效傳輸。因此,本文設(shè)計(jì)了一種基于經(jīng)驗(yàn)概率的控制算法(EPCS)來估計(jì)SG網(wǎng)絡(luò)上數(shù)據(jù)傳輸?shù)淖顑?yōu)路徑。最后,應(yīng)用平面為不同的用戶和SG提供各種服務(wù)。
數(shù)據(jù)平面由轉(zhuǎn)發(fā)節(jié)點(diǎn)(FN)組成,如OpenFlow交換機(jī)、路由器和網(wǎng)關(guān)。在控制平面上,SDN控制器負(fù)責(zé)為FN做出轉(zhuǎn)發(fā)決策。通過南向接口將這些決策配置為FN,結(jié)合位于FN的通道相互連接流量表和分組表。
由控制器提供的指令集遵循的流量表由不同的字段組成,例如,接口ID、指令、優(yōu)先級、操作、端口號等。SDN模型的流量匹配過程如圖3所示。
圖3 SDN模型中的流量匹配過程
控制器交換通信的主要步驟如下。
步驟1:解析系統(tǒng)分析輸入的數(shù)據(jù)包,以此確定如何對其進(jìn)行處理,主要分為3個步驟:(1)標(biāo)頭識別,(2)字段提取,(3)字段緩沖。在分析數(shù)據(jù)包之后,輸出數(shù)據(jù)將傳輸?shù)讲檎覙?biāo)頭。
步驟2:接收到輸出數(shù)據(jù)后,查找功能從入口端口啟動,并在出口端口結(jié)束。通常,使用兩種查找方法:(1)精確匹配,(2)通配符匹配。精確匹配使用hash函數(shù)設(shè)置特定項(xiàng)的精確位置。通配符匹配是用于多表查找的復(fù)雜部分字符串匹配,旨在匹配條目的標(biāo)頭字段。
步驟3:當(dāng)OpenFlow交換機(jī)接收到數(shù)據(jù)包后,匹配系統(tǒng)就會啟動路由決策任務(wù)。如果在表中找到合適的匹配項(xiàng),則執(zhí)行相應(yīng)的操作。在這種情況下,數(shù)據(jù)包將轉(zhuǎn)發(fā)到相關(guān)端口,并且OpenFlow交換機(jī)更新其第一計(jì)數(shù)器,即匹配計(jì)數(shù)器。相反,如果匹配失敗,則將數(shù)據(jù)包發(fā)送回控制器。在這種情況下,OpenFlow交換機(jī)更新其第二計(jì)數(shù)器,即不匹配計(jì)數(shù)器,控制器重構(gòu)一個新的流量規(guī)則并將其插入到OpenFlow交換機(jī)。流量驅(qū)動規(guī)則緩存算法(FDRCA)[11]用于替換流量表中的條目,F(xiàn)DRCA是基于策略的算法,可通過特殊的替換策略來處理有限的緩存限制和不可預(yù)測的流量。
步驟4:使用流量表通道連接所有表(表1到表n),還可以使用分組表。
步驟5:使用計(jì)數(shù)器記錄發(fā)送到控制器的數(shù)據(jù)包數(shù)量。
步驟6:成功匹配數(shù)據(jù)包標(biāo)頭字段后,在操作集將輸出數(shù)據(jù)包定向到出口交換機(jī)端口。
每個OpenFlow交換機(jī)上維護(hù)的流量表?xiàng)l目,如表1所示。
表1 OpenFlow交換機(jī)的流量表?xiàng)l目
流量表?xiàng)l目(例如源ip、目標(biāo)ip、優(yōu)先級、端口號入口端口和操作)對于在不同實(shí)體之間進(jìn)行數(shù)據(jù)傳輸?shù)臎Q策非常重要。但是,這可能會根據(jù)輸入流的情況和要求動態(tài)變化。表1中各種流量表?xiàng)l目的具體說明如下。
(1) 表號:流量表的編號,即它在流量表管道中的相對位置。
(2) 條目ID:為OpenFlow交換機(jī)的流量表中的每個條目分配一個唯一的ID(主key)。
(3) 優(yōu)先級:流量表中每個條目的重要性。
(4) 入口端口:傳入數(shù)據(jù)包到達(dá)的物理端口及虛擬端口。
(5) VLAN id:包含13位虛擬LAN id和3位VLAN類型。
(6) IPv4地址(IPv4 dst):由32位IPv4地址組成。
(7) TCP地址(TCP dst):包含16位TCP源端口和目標(biāo)端口地址。
(8) 操作:數(shù)據(jù)包與相關(guān)規(guī)則匹配后要遵循的說明。
(9) 計(jì)數(shù)器:分配給各種屬性,如字節(jié)計(jì)數(shù)器、數(shù)據(jù)包計(jì)數(shù)器、標(biāo)志、流量持續(xù)時(shí)間和丟棄的數(shù)據(jù)包數(shù)量。
在該算法中,所有的FN都可以表示為SDN-FN和非SDN-FN。通過至少一個SDN-FN的數(shù)據(jù)屬于可控流,而不通過任何SDN-FN的數(shù)據(jù)視為不可控流[14]。對于網(wǎng)絡(luò)Z(N,L),有N個節(jié)點(diǎn)和L個鏈路,c(l)表示信道容量;f(l)表示鏈路L上的流量。本文將流量表?xiàng)l目更新為新的流量表?xiàng)l目(Nr),將舊的流量表?xiàng)l目作為觀測集,并將其反饋給SDN控制器的估計(jì)器,以此進(jìn)一步預(yù)測或估計(jì)最優(yōu)路徑(Np)。
(1)
其中,np表示轉(zhuǎn)發(fā)給控制器的新數(shù)據(jù)包;op表示流量表中的舊觀測值。
(2)
(3)
基于經(jīng)驗(yàn)概率的控制算法(EPCS),如下所示。
THRcrlb的值是使用CramrRao下限(CRLB)方法計(jì)算得出[15]。文獻(xiàn)[15]指出,任何無偏估計(jì)量的方差至少與Fisher信息的逆(I(θ))一樣。如果估計(jì)器達(dá)到CRLB,則其有效。使用CRLB進(jìn)行MSE的條件如式(4)。
(4)
其中,I(θ)表示如式(5)。
(5)
本文利用單個家庭用電量的數(shù)據(jù)集,對所提出的基于EPCS的SG設(shè)備降維數(shù)據(jù)傳輸SDN模型進(jìn)行評估。該數(shù)據(jù)集以每分鐘的采樣率收集了大約4年(2015年12月至2019年11月),共2 075 259個測量值,數(shù)據(jù)集包含一些缺失值以及各種次級計(jì)量值和電量值。利用R編程和MATLAB將仿真結(jié)果進(jìn)行比較,為了評估SDN在傳輸SG降維數(shù)據(jù)方面的性能,在Mininet網(wǎng)絡(luò)仿真器中設(shè)計(jì)了一個網(wǎng)絡(luò)拓?fù)洹?/p>
本文利用以下評價(jià)參數(shù)對所提出的方案進(jìn)行了評估。
(6)
(2) 統(tǒng)計(jì)權(quán)衡:降維前后數(shù)據(jù)誤差率(ρ)和降維率(λ)之間的權(quán)衡,并且彼此成反比,如式(7)。
(7)
(3) 傳輸延遲(d):特定路由器上的延遲,包括處理延遲(dpr)、排隊(duì)延遲(dq)、傳輸延遲(dt)和傳播延遲(dpg),如式(8)。
d=dpr+dq+dt+dpg
(8)
(4) 吞吐量:指通過通信信道成功傳遞消息的速率,也可以稱為數(shù)據(jù)處理的最大速率。
將采集到的SG數(shù)據(jù)進(jìn)行降維處理,利用本文所提出的SDN模型對降維后的數(shù)據(jù)進(jìn)行傳輸,實(shí)驗(yàn)結(jié)果如圖4所示。
圖4(a)表明,降維后的數(shù)據(jù)誤差率較低,保留較高的核心數(shù)據(jù)信息,因此,可以達(dá)到最小化誤差率的總體目標(biāo),并且滿足后期SDN傳輸?shù)囊?。?dāng)從各種SG設(shè)備獲取的數(shù)據(jù)保留為核心數(shù)據(jù)時(shí),則使用SDN基礎(chǔ)設(shè)施在SG網(wǎng)絡(luò)上進(jìn)行處理和傳輸。為此,本文設(shè)計(jì)EPSC算法來估計(jì)簡化數(shù)據(jù)的最優(yōu)路徑。在對所提出的方案進(jìn)行評估后,所有性能指標(biāo)都顯示出適當(dāng)?shù)脑鲩L。圖4(b)表明,采用EPCS算法可以得到更高的吞吐量?;贓PCS路由估計(jì)器的評價(jià)結(jié)果如圖5所示。
圖5(a)給出了使用所提出基于EPCS路由估計(jì)器和SDN在SG網(wǎng)絡(luò)上傳輸簡化數(shù)據(jù)時(shí)所產(chǎn)生的延遲,與標(biāo)準(zhǔn)的SDN路由方案(不利用EPCS的OpenFlow算法)相比,將數(shù)據(jù)傳輸?shù)侥繕?biāo)節(jié)點(diǎn)所引起的延遲更小。圖5(b)給出了得到的估計(jì)精度,結(jié)果表明,最優(yōu)路徑估計(jì)精度明顯優(yōu)于標(biāo)準(zhǔn)的OpenFlow算法。在增加丟包率的情況下,其準(zhǔn)確度下降較小。圖5(c)給出了使用所提出基于EPCS路由估計(jì)器的帶寬使用情況??刂品桨冈赟G網(wǎng)絡(luò)上傳輸降維數(shù)據(jù)時(shí),可用帶寬得到了最佳利用。利用EPSC估計(jì)路線的RMSE值,如表2所示。
(a) 傳輸延遲
(b) 估計(jì)精度
(c) 帶寬使用情況圖5 基于EPCS路由估計(jì)器的評價(jià)結(jié)果
表2 EPCS的RMSE值
上述討論的評估結(jié)果描述了該方案在各種性能指標(biāo)下的有效性和效率。
針對SG設(shè)備產(chǎn)生的海量數(shù)據(jù),本文利用SDN模型為基礎(chǔ),提出了基于EPCS的SDN控制方案用于計(jì)算數(shù)據(jù)降維后的轉(zhuǎn)發(fā)路徑。結(jié)果表明,所估計(jì)的路徑具有較低的傳輸延遲和較高吞吐量的特點(diǎn),并且保持了較高的路由估計(jì)精度。最后,帶寬利用率保持穩(wěn)定,避免了任何擁塞或帶寬利用率不足。