
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)和數(shù)據(jù)通信技術(shù)領(lǐng)域,具體涉及一種智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試云平臺(tái)及其測(cè)試方法。屬于智能電網(wǎng)的一種電力系統(tǒng)仿真測(cè)試方法。
背景技術(shù):自21世紀(jì)以來(lái),世界各國(guó)紛紛提出了各自對(duì)未來(lái)智能電網(wǎng)的設(shè)想和框架,而國(guó)際電工委員會(huì)、國(guó)際大電網(wǎng)會(huì)議組織等國(guó)際組織也給予智能電網(wǎng)高度支持。智能電網(wǎng)環(huán)境下?tīng)顟B(tài)數(shù)據(jù)量將巨增,遠(yuǎn)遠(yuǎn)超出傳統(tǒng)電網(wǎng)狀態(tài)監(jiān)測(cè)的范疇,不僅包括實(shí)時(shí)在線狀態(tài)數(shù)據(jù),還應(yīng)包括設(shè)備基本信息、試驗(yàn)數(shù)據(jù)、運(yùn)行數(shù)據(jù)、缺陷數(shù)據(jù)、巡檢記錄、帶電測(cè)試數(shù)據(jù)等離線信息,數(shù)據(jù)量極大、可靠性和實(shí)時(shí)性要求高,面對(duì)這些海量的、分布式的、異構(gòu)的、復(fù)雜的狀態(tài)數(shù)據(jù),給常規(guī)的數(shù)據(jù)存儲(chǔ)與管理方法帶來(lái)了極大的挑戰(zhàn)。因此,傳統(tǒng)的普通測(cè)試架構(gòu)已不能滿足海量測(cè)試數(shù)據(jù)的需求。要測(cè)試海量電網(wǎng)數(shù)據(jù),需要對(duì)測(cè)試系統(tǒng)做全面的升級(jí)改造,但如何保證測(cè)試系統(tǒng)能承受著如此大規(guī)模的數(shù)據(jù),是擺在設(shè)計(jì)工程師面前的一大難題?,F(xiàn)有技術(shù)中,為了測(cè)試智能電網(wǎng)的海量實(shí)時(shí)數(shù)據(jù),以檢測(cè)智能電網(wǎng)系統(tǒng)的負(fù)載能力,可以有二個(gè)途徑實(shí)現(xiàn):一是從硬件設(shè)施著手,需要花大量的資金去搭建和拆除測(cè)試環(huán)境,如服務(wù)器與仿真測(cè)試工具的部署與采購(gòu),測(cè)試平臺(tái)的安裝與調(diào)試等,成本很高。二是采用虛擬儀器的方式,即在通用計(jì)算機(jī)上加上一組軟件或硬件,同樣需要大量的人力物力去配置硬件環(huán)境和設(shè)置虛擬儀器,同時(shí)測(cè)試結(jié)果也難以收集和處理。因此,現(xiàn)有技術(shù)的測(cè)試系統(tǒng)存在硬件結(jié)構(gòu)復(fù)雜、需投入的成本較高、測(cè)試范圍小的缺陷,需要設(shè)計(jì)新的測(cè)試平臺(tái)以克服現(xiàn)有技術(shù)的上述問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的之一,是為了克服現(xiàn)有方法需要采用大量硬件設(shè)備,且測(cè)試結(jié)果難以收集和處理等不足,提供一種智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試云平臺(tái),該系統(tǒng)能夠模擬生成大規(guī)模測(cè)試數(shù)據(jù),收集測(cè)試數(shù)據(jù)和生成測(cè)試報(bào)告,避免采購(gòu)硬件設(shè)備,開(kāi)發(fā)測(cè)試程序和維護(hù)測(cè)試平臺(tái)的負(fù)擔(dān)。本發(fā)明的目的之二,是為了提供一種智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試云平臺(tái)的測(cè)試方法,該方法能夠快速、低成本、高效的構(gòu)造大規(guī)模測(cè)試環(huán)境,仿真測(cè)量裝置向外發(fā)出的數(shù)據(jù)。本發(fā)明的目的之一可以通過(guò)以下技術(shù)方案實(shí)現(xiàn):智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試云平臺(tái),包括硬件設(shè)備,其特征在于:1)在硬件設(shè)備中設(shè)有云計(jì)算的虛擬化單元、中央控制器模塊和代理模塊,通過(guò)云計(jì)算的虛擬化單元虛擬化出若干虛擬機(jī);2)中央控制器模塊設(shè)置在獨(dú)立設(shè)置在一臺(tái)虛擬機(jī)中、構(gòu)成中央控制器,所述中央控制器具有人機(jī)交互操作控制回路、以實(shí)現(xiàn)全部人機(jī)交互操作控制;3)所述代理模塊以虛擬機(jī)鏡像文件的形式存放在中央控制器中,由中央控制器申請(qǐng)啟動(dòng)虛擬機(jī)后將其激活,并運(yùn)行在申請(qǐng)啟動(dòng)的虛擬機(jī)上;4)通過(guò)所述云計(jì)算的虛擬化單元,將硬件源設(shè)備的底層資源池統(tǒng)一管理和使用,屏蔽底層硬件異構(gòu)性;中央控制器根據(jù)測(cè)試計(jì)劃進(jìn)行動(dòng)態(tài)分配測(cè)試虛擬機(jī),根據(jù)測(cè)試規(guī)模的不同,啟動(dòng)不同規(guī)模的虛擬機(jī);以云平臺(tái)的形式實(shí)現(xiàn)智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試。進(jìn)一步地:中央控制器模塊包括測(cè)試計(jì)劃管理模塊、容量預(yù)測(cè)模塊、虛擬機(jī)管理接口模塊、虛擬機(jī)鏡像文件管理模塊、測(cè)試報(bào)告生成模塊和消息通信模塊;被激活的代理模塊構(gòu)成代理服務(wù)器,包括子測(cè)試計(jì)劃管理模塊、測(cè)試數(shù)據(jù)生成模塊、虛擬裝置模塊、測(cè)試數(shù)據(jù)統(tǒng)計(jì)模塊和代理通信模塊,代理服務(wù)器模擬測(cè)量裝置向服務(wù)器發(fā)送監(jiān)測(cè)數(shù)據(jù),通過(guò)待測(cè)系統(tǒng)進(jìn)行測(cè)試,然后向中央控制器回傳測(cè)試數(shù)據(jù),最后中央控制器銷毀這些虛擬機(jī),釋放測(cè)試資源,并將測(cè)試報(bào)告展示給用戶。進(jìn)一步地:還設(shè)有多協(xié)議適配模塊,所述多協(xié)議適配模塊設(shè)置在測(cè)試數(shù)據(jù)生成模塊和虛擬裝置模塊之間,通過(guò)多協(xié)議適配模塊轉(zhuǎn)化為符合規(guī)范的消息格式發(fā)送到虛擬裝置模塊,實(shí)現(xiàn)不同監(jiān)測(cè)裝置的仿真測(cè)試。進(jìn)一步地:1)所述測(cè)試計(jì)劃管理模塊為控制測(cè)試開(kāi)展的核心模塊,具有與用戶交互、用戶錄入測(cè)試信息、輸入測(cè)試計(jì)劃和調(diào)度整個(gè)測(cè)試方案的單元結(jié)構(gòu);以及分解測(cè)試計(jì)劃,并發(fā)送個(gè)各個(gè)代理服務(wù)器;2)所述容量預(yù)測(cè)模塊通過(guò)分層排隊(duì)網(wǎng)分析和Kalman濾波反饋,得到虛擬機(jī)數(shù)量;3)所述虛擬機(jī)管理接口模塊,向虛擬機(jī)管理軟件申請(qǐng)和回收虛擬機(jī)和查詢虛擬機(jī)部署信息;4)所述虛擬機(jī)鏡像文件管理模塊,利用虛擬機(jī)管理結(jié)構(gòu)將鏡像文件部署到虛擬機(jī)之上,虛擬機(jī)啟動(dòng)之后自動(dòng)啟動(dòng)代理模塊;5)所述測(cè)試報(bào)告生成模塊,負(fù)責(zé)收集代理傳送回來(lái)的測(cè)試數(shù)據(jù),該模塊采用B/S的模式展現(xiàn)結(jié)果,通過(guò)圖像化的方式,以圖表形式將上述結(jié)果展現(xiàn)給用戶,用戶可以查看單個(gè)代理的測(cè)試結(jié)果,也可以總的匯總結(jié)果;6)所述消息通信模塊,負(fù)責(zé)和代理模塊進(jìn)行通信、接受組播消息,每個(gè)代理模塊啟動(dòng)之后發(fā)送組播信息給中央控制器模塊、以通知有新的代理服務(wù)器啟動(dòng);消息通信模塊在收到組播后會(huì)將其地址返回給代理模塊,然后與代理模塊建立TCP連接,實(shí)現(xiàn)中央控制器模塊和代理模塊的通信。進(jìn)一步地:1)所述子測(cè)試計(jì)劃管理模塊,負(fù)責(zé)管理代理服務(wù)器的測(cè)試過(guò)程,中央控制器的測(cè)試計(jì)劃管理模塊,將計(jì)劃分解后發(fā)送個(gè)各個(gè)代理服務(wù)器;子測(cè)試計(jì)劃管理模塊根據(jù)測(cè)試計(jì)劃信息,調(diào)用測(cè)試數(shù)據(jù)生成模塊生成負(fù)載數(shù)據(jù),并調(diào)用多協(xié)議適配模塊轉(zhuǎn)換數(shù)據(jù)格式,發(fā)送消息;2)所述測(cè)試數(shù)據(jù)生成模塊,負(fù)責(zé)生產(chǎn)模擬的監(jiān)測(cè)數(shù)據(jù),數(shù)據(jù)產(chǎn)生的方式分為三類:隨機(jī)、函數(shù)分布和歷史數(shù)據(jù),隨機(jī)生成的數(shù)據(jù),不關(guān)心數(shù)據(jù)合理性;函數(shù)分布指按照給定的分布形式,生成符合分布的數(shù)據(jù);歷史數(shù)據(jù)是讀取歷史數(shù)據(jù),再次生成數(shù)據(jù),此時(shí)需要中央控制器將數(shù)據(jù)傳送到代理節(jié)點(diǎn);測(cè)量裝置可能會(huì)采集多個(gè)屬性,每個(gè)屬性都會(huì)對(duì)應(yīng)一種數(shù)據(jù)生成的方式,最后以集合的形式傳遞給多協(xié)議適配器模塊,由多協(xié)議適配器模塊完成消息封裝的任務(wù);3)所述虛擬裝置模塊,該模塊是面向待測(cè)系統(tǒng)的接口模塊,負(fù)責(zé)從子測(cè)試計(jì)劃模塊獲得待測(cè)系統(tǒng)的地址,然后與其建立通信;一個(gè)代理服務(wù)器上會(huì)部署多個(gè)虛擬裝置模塊,虛擬裝置模塊的數(shù)據(jù)來(lái)源是多協(xié)議適配模塊,虛擬裝置模塊自身不負(fù)責(zé)生成數(shù)據(jù),而只是保持與待測(cè)系統(tǒng)的數(shù)據(jù)通信;4)所述測(cè)試數(shù)據(jù)統(tǒng)計(jì)模塊,該模塊負(fù)責(zé)在測(cè)試過(guò)程中監(jiān)測(cè)代理服務(wù)器的性能,監(jiān)測(cè)數(shù)據(jù)一部分來(lái)自對(duì)虛擬機(jī)資源利用率的監(jiān)測(cè),另一部分來(lái)自對(duì)虛擬裝置的監(jiān)測(cè)。本發(fā)明的目的之二通過(guò)以下技術(shù)方案實(shí)現(xiàn):智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試云平臺(tái)的負(fù)載仿真測(cè)試方法,其特征在于:以虛擬化云平臺(tái)為基礎(chǔ),通過(guò)中央控制器和代理服務(wù)器實(shí)現(xiàn)不同模擬測(cè)量向服務(wù)器發(fā)送監(jiān)測(cè)數(shù)據(jù),所述測(cè)試具體步驟如下:1)中央控制器通過(guò)測(cè)試計(jì)劃管理模塊輸入用戶端的測(cè)試計(jì)劃,中央控制器采用資源動(dòng)態(tài)分配的方式,通過(guò)容量預(yù)測(cè)模塊分析本測(cè)試所需的最佳虛擬機(jī)數(shù)量,根據(jù)預(yù)測(cè)結(jié)果通過(guò)虛擬機(jī)管理接口模塊向云平臺(tái)申請(qǐng)相應(yīng)數(shù)量的虛擬機(jī),通過(guò)虛擬機(jī)鏡像文件管理模塊將裝有代理模塊的虛擬機(jī)鏡像文件部署在這些虛擬機(jī)上,構(gòu)成代理服務(wù)器,并啟動(dòng)這些虛擬機(jī);2)啟動(dòng)之后,通過(guò)消息通信模塊建立代理服務(wù)器與中央控制器之間的通信連接,中央控制器通過(guò)子測(cè)試計(jì)劃管理模塊將測(cè)試計(jì)劃分解為若干份,每個(gè)代理服務(wù)器分派一份子任務(wù),由子測(cè)試計(jì)劃管理模塊接收子任務(wù);3)代理服務(wù)器接受到任務(wù)之后,通過(guò)代理服務(wù)器模擬監(jiān)測(cè)裝置向服務(wù)器發(fā)送大量監(jiān)測(cè)數(shù)據(jù),測(cè)試服務(wù)器的性能;開(kāi)始測(cè)試時(shí),代理服務(wù)器通過(guò)測(cè)試數(shù)據(jù)生成模塊按指定的數(shù)據(jù)來(lái)源方式生產(chǎn)測(cè)試數(shù)據(jù),生成的數(shù)據(jù)通過(guò)多協(xié)議適配模塊進(jìn)行封裝,轉(zhuǎn)化為符合規(guī)范的消息格式發(fā)送到虛擬裝置模塊,通過(guò)虛擬裝置模塊傳遞到待測(cè)系統(tǒng)進(jìn)行測(cè)試,通過(guò)測(cè)試數(shù)據(jù)統(tǒng)計(jì)模塊監(jiān)測(cè)代理服務(wù)器的性能;4)測(cè)試結(jié)束時(shí),代理服務(wù)器通過(guò)測(cè)試計(jì)劃管理模塊回傳測(cè)試數(shù)據(jù)到中央控制器,中央控制器在接收完回傳數(shù)據(jù)之后會(huì)銷毀這些虛擬機(jī),釋放測(cè)試資源,上傳測(cè)試數(shù)據(jù),通過(guò)測(cè)試報(bào)告生成模塊用戶可以通過(guò)中央控制器瀏覽測(cè)試結(jié)果。進(jìn)一步地:所述測(cè)試計(jì)劃包括測(cè)量裝置類型、通信協(xié)議、測(cè)量裝置規(guī)模、測(cè)試負(fù)載數(shù)據(jù)來(lái)源、測(cè)試起止時(shí)間;所述測(cè)試數(shù)據(jù)包括消息發(fā)送平均速率、響應(yīng)時(shí)間、待測(cè)系統(tǒng)吞吐率、消息發(fā)送成功率、錯(cuò)誤報(bào)告,以及代理的CPU利用率和網(wǎng)絡(luò)帶寬利用率。進(jìn)一步地:所述容量預(yù)測(cè)模塊采用分層排隊(duì)網(wǎng)方法,首先,根據(jù)靜態(tài)參數(shù),構(gòu)造LQN模型,如果之前沒(méi)有計(jì)算過(guò)此類測(cè)量裝置的動(dòng)態(tài)參數(shù),則申請(qǐng)一臺(tái)虛擬機(jī),讓代理在其上運(yùn)行,采用Kalman濾波迭代計(jì)算,獲得運(yùn)行參數(shù),并保存下來(lái),供日后同類測(cè)試使用;然后,采用倍增和折半相結(jié)合的方法,找到合適的虛擬機(jī)規(guī)模,從5臺(tái)虛擬機(jī)開(kāi)始,利用LQN模型評(píng)價(jià)資源利用率是否在75%-85%之間,超過(guò)則將虛擬機(jī)數(shù)量翻倍,如果利用率低于75%,則將上一步增加虛擬機(jī)數(shù)量減半,直到將虛擬機(jī)利用率控制在75%-85%之間;采用查重的檢查方法,一旦某個(gè)數(shù)量重復(fù)出現(xiàn),則終止結(jié)算。進(jìn)一步地:所述Kalman濾波迭代計(jì)算表達(dá)式如下:Xk=Xk-1+Wk-1第k時(shí)刻LQN的計(jì)算結(jié)果Zk定義為:Zk=h(Xk)+VkZk=[C,N](1.b)其中,Wk-1為測(cè)量誤差,其協(xié)方差矩陣為Qk-1,h是Xk到Zk的轉(zhuǎn)換矩陣,Vk是測(cè)量誤差,其協(xié)方差矩陣為Rk,Xk表示k時(shí)刻各代理的CPU時(shí)間和網(wǎng)絡(luò)占用時(shí)間,Zk為總CPU利用率和網(wǎng)絡(luò)利用率,H是h的估算值,定義其中采用近似計(jì)算形式,即Δj是一個(gè)擾動(dòng),將上述計(jì)算理解為衡量各個(gè)參數(shù)擾動(dòng)對(duì)最后結(jié)果的影響程度;Kalman濾波迭代過(guò)程如下:使用Wk-1=0更新X的狀態(tài):更新協(xié)方差矩陣計(jì)算Kalman濾波增益:修正X的狀態(tài):修正協(xié)方差矩陣Pk:初始值和P0對(duì)Kalman濾波計(jì)算影響很小,可以設(shè)置為任何有意義的值,Qk設(shè)置為X的對(duì)角矩陣,Rk=0,迭代計(jì)算過(guò)程直到所得參數(shù)基本穩(wěn)定,取最近10次迭代變化系數(shù)作為衡量穩(wěn)定的標(biāo)準(zhǔn),當(dāng)變化系數(shù)小于給定閾值,則認(rèn)為穩(wěn)定。進(jìn)一步地:所述測(cè)量裝置類型有智能電表、RTU、PMU或錄波器;所述通信協(xié)議指測(cè)量裝置與待測(cè)系統(tǒng)之間信息交換的格式:所述測(cè)量裝置規(guī)模指此次測(cè)試預(yù)計(jì)部署多少臺(tái)測(cè)量裝置;所述測(cè)試負(fù)載的數(shù)據(jù)來(lái)源指數(shù)據(jù)產(chǎn)生的方式,此時(shí)需要指定測(cè)量裝置會(huì)產(chǎn)生哪些屬性的數(shù)據(jù),每種數(shù)據(jù)是采用何種方式生產(chǎn);所述數(shù)據(jù)生成方式是隨機(jī)的、符合某種概率分布的或者是從歷史數(shù)據(jù)中讀取的,生成方式是歷史數(shù)據(jù)時(shí),用戶還需要指定數(shù)據(jù)的存放位置和數(shù)據(jù)格式;所述測(cè)試起止時(shí)間測(cè)試指開(kāi)始產(chǎn)生負(fù)載和結(jié)束產(chǎn)生負(fù)載的時(shí)間。本發(fā)明具有如下突出的有益效果:1、本發(fā)明涉及的仿真測(cè)試云平臺(tái)通過(guò)利用虛擬技術(shù)獲得若干虛擬機(jī),將其中一臺(tái)虛擬機(jī)作為中央控制器,其余作為代理服務(wù)器,依托云計(jì)算強(qiáng)大的計(jì)算資源構(gòu)成,通過(guò)中央控制器根據(jù)不同測(cè)試計(jì)劃向云平臺(tái)申請(qǐng)足夠的虛擬機(jī)實(shí)現(xiàn)智能電網(wǎng)的海量數(shù)據(jù)測(cè)試。具有結(jié)構(gòu)簡(jiǎn)單、投入成本低、使用方便、測(cè)試范圍大和測(cè)試效果好的有益效果。2、本發(fā)明通過(guò)中央控制器的測(cè)試計(jì)劃管理模塊、容量預(yù)測(cè)模塊、虛擬機(jī)管理接口模塊、虛擬機(jī)鏡像文件管理模塊、測(cè)試報(bào)告模塊、消息通信模塊和代理服務(wù)器的子測(cè)試計(jì)劃管理模塊、測(cè)試數(shù)據(jù)生成模塊、多協(xié)議適配模塊、測(cè)試數(shù)據(jù)統(tǒng)計(jì)模塊和代理通信模塊構(gòu)建仿真測(cè)試云平臺(tái),將性能測(cè)試平臺(tái)轉(zhuǎn)移到云計(jì)算平臺(tái)中,避免了采購(gòu)硬件設(shè)備,開(kāi)發(fā)測(cè)試程序,維護(hù)測(cè)試平臺(tái)的負(fù)擔(dān),測(cè)試資源按需使用。系統(tǒng)的自動(dòng)化程度高,測(cè)試人員只需要輸入測(cè)試方案,測(cè)試過(guò)程完全由軟件控制。3、本發(fā)明通過(guò)中央控制器根據(jù)不同測(cè)試計(jì)劃向云平臺(tái)申請(qǐng)足夠的虛擬機(jī),通過(guò)代理服務(wù)器模擬測(cè)量裝置生產(chǎn)測(cè)試數(shù)據(jù),傳遞到待測(cè)系統(tǒng)進(jìn)行性能測(cè)試,測(cè)試結(jié)束之后,中央控制器回收全部測(cè)試資源,釋放測(cè)試資源。該方法能夠快速、低成本、高效的構(gòu)造大規(guī)模測(cè)試環(huán)境,仿真測(cè)量裝置向外發(fā)出數(shù)據(jù)。通過(guò)采用多協(xié)議適配模塊,支持多種監(jiān)測(cè)裝置仿真測(cè)試,無(wú)須為每種裝置單獨(dú)構(gòu)造測(cè)試工具。本發(fā)明的測(cè)試過(guò)程可重現(xiàn),為待測(cè)系統(tǒng)持續(xù)改進(jìn)提供測(cè)試基準(zhǔn)。4、本發(fā)明通過(guò)容量預(yù)測(cè)模塊的LQN模型和采用Kalman濾波計(jì)算方法預(yù)測(cè)出最佳的虛擬機(jī)配置數(shù)量。附圖說(shuō)明圖1是本發(fā)明的結(jié)構(gòu)示意圖。圖2是本發(fā)明中央控制模塊和代理模塊的框架示意圖。圖3是本發(fā)明最佳虛擬機(jī)數(shù)量預(yù)測(cè)方法的流程圖。具體實(shí)施方式下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步的說(shuō)明。如圖1、圖2和圖3所示的智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試云平臺(tái),包括硬件設(shè)備4,1)在硬件設(shè)備4中設(shè)有云計(jì)算的虛擬化單元、中央控制器模塊和代理模塊,通過(guò)云計(jì)算的虛擬化單元虛擬化出若干虛擬機(jī);2)中央控制器模塊設(shè)置在獨(dú)立設(shè)置在一臺(tái)虛擬機(jī)中、構(gòu)成中央控制器1,所述中央控制器1具有人機(jī)交互操作控制回路、以實(shí)現(xiàn)全部人機(jī)交互操作控制;3)所述代理模塊以虛擬機(jī)鏡像文件的形式存放在中央控制器1中,由中央控制器1申請(qǐng)啟動(dòng)虛擬機(jī)后將其激活,并運(yùn)行在申請(qǐng)啟動(dòng)的虛擬機(jī)上;4)通過(guò)所述云計(jì)算的虛擬化單元,將硬件源設(shè)備的底層資源池統(tǒng)一管理和使用,屏蔽底層硬件異構(gòu)性;中央控制器1根據(jù)測(cè)試計(jì)劃進(jìn)行動(dòng)態(tài)分配測(cè)試虛擬機(jī),根據(jù)測(cè)試規(guī)模的不同,啟動(dòng)不同規(guī)模的虛擬機(jī);以云平臺(tái)的形式實(shí)現(xiàn)智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試。中央控制器1的功能是依據(jù)用戶輸入的測(cè)試計(jì)劃,調(diào)度整個(gè)測(cè)試的開(kāi)展,中央控制器模塊包括測(cè)試計(jì)劃管理模塊1-1、容量預(yù)測(cè)模塊1-2、虛擬機(jī)管理接口模塊1-3、虛擬機(jī)鏡像文件管理模塊1-4、測(cè)試報(bào)告生成模塊1-5和消息通信模塊1-6;被激活的代理模塊構(gòu)成代理服務(wù)器2,包括子測(cè)試計(jì)劃管理模塊2-1、測(cè)試數(shù)據(jù)生成模塊2-2、多協(xié)議適配模塊2-3、虛擬裝置模塊2-4、測(cè)試數(shù)據(jù)統(tǒng)計(jì)模塊2-6和代理通信模塊2-5,代理服務(wù)器2模擬測(cè)量裝置向服務(wù)器發(fā)送監(jiān)測(cè)數(shù)據(jù),通過(guò)待測(cè)系統(tǒng)進(jìn)行測(cè)試,然后向中央控制器1回傳測(cè)試數(shù)據(jù),最后中央控制器1銷毀這些虛擬機(jī),釋放測(cè)試資源,并將測(cè)試報(bào)告展示給用戶。所述測(cè)試計(jì)劃管理模塊1-1為控制測(cè)試開(kāi)展的核心模塊,具有與用戶交互、用戶錄入測(cè)試信息、輸入測(cè)試計(jì)劃和調(diào)度整個(gè)測(cè)試方案的單元結(jié)構(gòu);以及分解測(cè)試計(jì)劃,并發(fā)送個(gè)各個(gè)代理服務(wù)器2。所述容量預(yù)測(cè)模塊1-2根據(jù)測(cè)試規(guī)模的不同,所需的代理服務(wù)器數(shù)量也將不同,為了合理的申請(qǐng)?zhí)摂M機(jī)數(shù)量,本發(fā)明采用了容量預(yù)測(cè)的方式,提前通過(guò)分層排隊(duì)網(wǎng)(LQN)分析和Kalman濾波反饋,得到合適數(shù)量的虛擬機(jī)數(shù)量。所述容量預(yù)測(cè)模塊1-2采用分層排隊(duì)網(wǎng)方法,分層排隊(duì)網(wǎng)是一種具有良好工具支持的排隊(duì)論模型,可以通過(guò)圖形化方式建模,也可以按其提供的語(yǔ)法規(guī)則進(jìn)行建模。該模型中,主要考慮了物理CPU,虛擬CPU,物理網(wǎng)絡(luò)和虛擬網(wǎng)絡(luò)這幾種的計(jì)算資源,其中物理CPU是實(shí)際的物理設(shè)備的CPU,虛擬CPU是虛擬機(jī)上的CPU,可能一個(gè)或者多個(gè)虛擬CPU共享一個(gè)CPU,物理網(wǎng)絡(luò)和虛擬網(wǎng)絡(luò)的概念與之類似。物理資源對(duì)應(yīng)于LQN的物理資源,虛擬資源則有LQN的軟件資源刻畫,其上才是代理的軟件。如圖3和表1所示的,給出了LQN模型的模板,其中物理CPU、物理網(wǎng)絡(luò)、虛擬CPU、虛擬網(wǎng)絡(luò)和代理服務(wù)器可以根據(jù)具體情況而變化,該模型可以計(jì)算出在給定資源量下,測(cè)試系統(tǒng)的性能。我們的目標(biāo)是測(cè)試系統(tǒng)不能因?yàn)樽陨淼难舆t,影響對(duì)目標(biāo)系統(tǒng)的測(cè)試,因此,必須保證每個(gè)設(shè)備都運(yùn)行于中等壓力之下。在本發(fā)明中,我們將物理資源和虛擬資源的閥值設(shè)定為75%-85%之間,如果當(dāng)前資源量不滿足,則增加資源數(shù)量。表1:LQN模型的模板LQN模型計(jì)算需要兩類參數(shù),一類是靜態(tài)結(jié)構(gòu)參數(shù),即虛擬機(jī)與物理機(jī)的部署關(guān)系,這部分可以從虛擬機(jī)管理接口模塊1-3獲得,即填充模板;另一類是運(yùn)行時(shí)參數(shù),即CPU和網(wǎng)絡(luò)的消耗量,這部分無(wú)法事前獲得,因此我們采用了一種基于Kalman濾波的方法,通過(guò)迭代反饋,計(jì)算出參數(shù)值。具體步驟如下:首先,根據(jù)靜態(tài)參數(shù),構(gòu)造LQN模型,如果之前沒(méi)有計(jì)算過(guò)此類測(cè)量裝置的動(dòng)態(tài)參數(shù),則申請(qǐng)一臺(tái)虛擬機(jī),讓代理在其上運(yùn)行,采用Kalman濾波迭代計(jì)算,獲得運(yùn)行參數(shù),并保存下來(lái),供日后同類測(cè)試使用;然后,采用倍增和折半相結(jié)合的方法,找到合適的虛擬機(jī)規(guī)模,從5臺(tái)虛擬機(jī)開(kāi)始,利用LQN模型評(píng)價(jià)資源利用率是否在75%-85%之間,超過(guò)則將虛擬機(jī)數(shù)量翻倍,如果利用率低于75%,則將上一步增加虛擬機(jī)數(shù)量減半,直到將虛擬機(jī)利用率控制在75%-85%之間;采用查重的檢查方法,一旦某個(gè)數(shù)量重復(fù)出現(xiàn),則終止結(jié)算。最后,將這個(gè)數(shù)字返回給測(cè)試計(jì)劃管理模塊。如果虛擬機(jī)的配置不同,需要對(duì)每一類虛擬機(jī)學(xué)習(xí)其參數(shù),學(xué)習(xí)的過(guò)程與上述過(guò)程相同。所述Kalman濾波迭代計(jì)算表達(dá)式如下:Xk=Xk-1+Wk-1第k時(shí)刻LQN的計(jì)算結(jié)果Zk定義為:Zk=h(Xk)+VkZk=[C,N](1.b)其中,Wk-1為測(cè)量誤差,其協(xié)方差矩陣為Qk-1,h是Xk到Zk的轉(zhuǎn)換矩陣,Vk是測(cè)量誤差,其協(xié)方差矩陣為Rk,Xk表示k時(shí)刻各代理的CPU時(shí)間和網(wǎng)絡(luò)占用時(shí)間,Zk為總CPU利用率和網(wǎng)絡(luò)利用率,H是h的估算值,定義其中采用近似計(jì)算形式,即Δj是一個(gè)擾動(dòng),將上述計(jì)算理解為衡量各個(gè)參數(shù)擾動(dòng)對(duì)最后結(jié)果的影響程度;Kalman濾波迭代過(guò)程如下:使用Wk-1=0更新X的狀態(tài):更新協(xié)方差矩計(jì)算Kalman濾波增益:修正X的狀態(tài):修正協(xié)方差矩陣Pk:初始值和P0對(duì)Kalman濾波計(jì)算影響很小,可以設(shè)置為任何有意義的值,Qk設(shè)置為X的對(duì)角矩陣,Rk=0,迭代計(jì)算過(guò)程直到所得參數(shù)基本穩(wěn)定,取最近10次迭代變化系數(shù)作為衡量穩(wěn)定的標(biāo)準(zhǔn),當(dāng)變化系數(shù)小于給定閾值,則認(rèn)為穩(wěn)定。所述虛擬機(jī)管理接口模塊1-3,向虛擬機(jī)管理軟件申請(qǐng)和回收虛擬機(jī)和查詢虛擬機(jī)部署信息;本發(fā)明在主流虛擬機(jī)VMWare和Xen等管理軟件的基礎(chǔ)上,設(shè)計(jì)了一個(gè)用戶聯(lián)系虛擬機(jī)平臺(tái)和中央控制器的管理接口模塊,以便獲取虛擬機(jī)信息,并發(fā)出控制指令。所述虛擬機(jī)鏡像文件管理模塊1-4,虛擬機(jī)將操作系統(tǒng)和其上的應(yīng)用程序以虛擬機(jī)鏡像的方式保存,為了便于管理虛擬機(jī)和代理程序,本發(fā)明將其作為鏡像文件保存在中央控制器1上。當(dāng)測(cè)試開(kāi)始時(shí),利用虛擬機(jī)管理接口模塊1-3將鏡像文件部署到虛擬機(jī)之上,虛擬機(jī)啟動(dòng)之后自動(dòng)啟動(dòng)代理模塊。所述測(cè)試報(bào)告生成模塊1-5,負(fù)責(zé)收集代理傳送回來(lái)的測(cè)試數(shù)據(jù),該模塊采用B/S的模式展現(xiàn)結(jié)果,通過(guò)圖像化的方式,以圖表形式將上述結(jié)果展現(xiàn)給用戶,用戶可以查看單個(gè)代理的測(cè)試結(jié)果,也可以是總的匯總結(jié)果;該模塊負(fù)責(zé)收集代理傳送回來(lái)的測(cè)試數(shù)據(jù)。所述消息通信模塊1-6,負(fù)責(zé)和代理模塊進(jìn)行通信、接受組播消息,每個(gè)代理模塊啟動(dòng)之后發(fā)送組播信息給中央控制器模塊、以通知有新的代理服務(wù)器啟動(dòng);消息通信模塊在收到組播后會(huì)將其地址返回給代理模塊,然后與代理模塊建立TCP連接,實(shí)現(xiàn)中央控制器模塊和代理模塊的通信。所述子測(cè)試計(jì)劃管理模塊2-1,負(fù)責(zé)管理代理服務(wù)器的測(cè)試過(guò)程。測(cè)試計(jì)劃管理模塊1-1將計(jì)劃分解后發(fā)送給各個(gè)子測(cè)試計(jì)劃管理模塊2-1,子測(cè)試計(jì)劃管理模塊2-1根據(jù)測(cè)試計(jì)劃信息,調(diào)用測(cè)試數(shù)據(jù)生成模塊2-2生成負(fù)載數(shù)據(jù),并調(diào)用多協(xié)議適配模塊2-3轉(zhuǎn)換數(shù)據(jù)格式,發(fā)送消息;代理接受到的計(jì)劃,包括在該代理上要運(yùn)行的測(cè)量裝置類型、通信協(xié)議、測(cè)量裝置規(guī)模、測(cè)試負(fù)載數(shù)據(jù)來(lái)源、測(cè)試起止時(shí)間。所述測(cè)試數(shù)據(jù)生成模塊2-2,負(fù)責(zé)生產(chǎn)模擬的監(jiān)測(cè)數(shù)據(jù),數(shù)據(jù)產(chǎn)生的方式分為三類:隨機(jī)、函數(shù)分布和歷史數(shù)據(jù),隨機(jī)生成的數(shù)據(jù),不關(guān)心數(shù)據(jù)合理性;函數(shù)分布指按照給定的分布形式,生成符合分布的數(shù)據(jù);歷史數(shù)據(jù)是讀取歷史數(shù)據(jù),再次生成數(shù)據(jù),此時(shí)需要中央控制器1將數(shù)據(jù)傳送到代理節(jié)點(diǎn);測(cè)量裝置可能會(huì)采集多個(gè)屬性,每個(gè)屬性都會(huì)對(duì)應(yīng)一種數(shù)據(jù)生成的方式,最后以集合的形式傳遞給多協(xié)議適配模塊2-3,由多協(xié)議適配模塊2-3完成消息封裝的任務(wù)。所述多協(xié)議適配模塊2-3,多協(xié)議適配模塊2-3由多協(xié)議適配器構(gòu)成,設(shè)置在測(cè)試數(shù)據(jù)生成模塊2-2和虛擬裝置模塊2-4之間,與待測(cè)系統(tǒng)3交換消息,包括狀態(tài)信息的交換和測(cè)量數(shù)據(jù)的傳輸。該模塊的數(shù)據(jù)來(lái)源是測(cè)試數(shù)據(jù)生成模塊2-2,該模塊會(huì)按協(xié)議指定的數(shù)據(jù)編碼規(guī)范,將生成的數(shù)據(jù)進(jìn)行封裝,變成符合規(guī)范的消息格式,然后傳遞給虛擬裝置模塊2-4,實(shí)現(xiàn)不同監(jiān)測(cè)裝置的仿真測(cè)試。所述虛擬裝置模塊2-4,該模塊是面向待測(cè)系統(tǒng)的接口模塊,負(fù)責(zé)從子測(cè)試計(jì)劃管理模塊2-1獲得待測(cè)系統(tǒng)的地址,然后與其建立通信;一個(gè)代理服務(wù)器上會(huì)部署多個(gè)虛擬裝置模塊2-4,從待測(cè)系統(tǒng)的角度來(lái)看,一個(gè)虛擬裝置模塊2-4的行為與一個(gè)實(shí)際的測(cè)量裝置相同,可以接受待測(cè)系統(tǒng)的詢問(wèn),并返回測(cè)量到的數(shù)據(jù)。所不同的是,虛擬裝置模塊2-4的數(shù)據(jù)來(lái)源是多協(xié)議適配模塊2-3,虛擬裝置模塊2-4自身不負(fù)責(zé)生成數(shù)據(jù),而只是保持與待測(cè)系統(tǒng)3的數(shù)據(jù)通信;此外,虛擬裝置模塊2-4中保存了局部狀態(tài),即測(cè)試過(guò)程中與當(dāng)前裝置相關(guān)的狀態(tài),測(cè)試數(shù)據(jù)生成模塊2-2,會(huì)將當(dāng)前計(jì)算的狀態(tài)保存在其中,以便下一步計(jì)算的進(jìn)行;多協(xié)議適配模塊2-3也會(huì)將與待測(cè)系統(tǒng)3進(jìn)行消息交換的狀態(tài)機(jī)存在虛擬裝置模塊2-4中,以維持與待測(cè)系統(tǒng)3進(jìn)行信息交換的狀態(tài)。所述測(cè)試數(shù)據(jù)統(tǒng)計(jì)模塊2-6:該模塊負(fù)責(zé)在測(cè)試過(guò)程中監(jiān)測(cè)代理服務(wù)器的性能,監(jiān)測(cè)數(shù)據(jù)一部分來(lái)自對(duì)虛擬機(jī)資源利用率的監(jiān)測(cè),另一部分來(lái)自對(duì)虛擬裝置模塊2-4的監(jiān)測(cè)。智能電網(wǎng)海量實(shí)時(shí)數(shù)據(jù)負(fù)載仿真測(cè)試云平臺(tái)的負(fù)載仿真測(cè)試方法,以虛擬化云平臺(tái)為基礎(chǔ),通過(guò)中央控制器和代理服務(wù)器實(shí)現(xiàn)不同模擬測(cè)量向服務(wù)器發(fā)送監(jiān)測(cè)數(shù)據(jù),所述測(cè)試具體步驟如下:1)中央控制器1通過(guò)測(cè)試計(jì)劃管理模塊1-1輸入用戶端的測(cè)試計(jì)劃,中央控制器1采用資源動(dòng)態(tài)分配的方式,通過(guò)容量預(yù)測(cè)模塊1-2分析本測(cè)試所需的最佳虛擬機(jī)數(shù)量,根據(jù)預(yù)測(cè)結(jié)果通過(guò)虛擬機(jī)管理接口模塊1-3向云平臺(tái)申請(qǐng)相應(yīng)數(shù)量的虛擬機(jī),通過(guò)虛擬機(jī)鏡像文件管理模塊1-4將裝有代理模塊的虛擬機(jī)鏡像文件部署在這些虛擬機(jī)上,構(gòu)成代理服務(wù)器2,并啟動(dòng)這些虛擬機(jī);2)啟動(dòng)之后,通過(guò)消息通信模塊1-6建立代理服務(wù)器2與中央控制器1之間的通信連接,中央控制器1通過(guò)子測(cè)試計(jì)劃管理模塊2-1將測(cè)試計(jì)劃分解為若干份,每個(gè)代理服務(wù)器2分派一份子任務(wù),由子測(cè)試計(jì)劃管理模塊2-1接收子任務(wù);3)代理服務(wù)器2接受到任務(wù)之后,通過(guò)代理服務(wù)器2模擬監(jiān)測(cè)裝置向服務(wù)器發(fā)送大量監(jiān)測(cè)數(shù)據(jù),測(cè)試服務(wù)器的性能,開(kāi)始測(cè)試時(shí),代理服務(wù)器2通過(guò)測(cè)試數(shù)據(jù)生成模塊2-2按指定的數(shù)據(jù)來(lái)源方式生產(chǎn)測(cè)試數(shù)據(jù),生成的數(shù)據(jù)通過(guò)多協(xié)議適配模塊2-3進(jìn)行封裝,轉(zhuǎn)化為符合規(guī)范的消息格式發(fā)送到虛擬裝置模塊2-4,通過(guò)虛擬裝置2-4模塊傳遞到待測(cè)系統(tǒng)3進(jìn)行測(cè)試,通過(guò)測(cè)試數(shù)據(jù)統(tǒng)計(jì)模塊2-6監(jiān)測(cè)代理服務(wù)器的性能;4)測(cè)試結(jié)束時(shí),代理服務(wù)器2通過(guò)測(cè)試計(jì)劃管理模塊2-5回傳測(cè)試數(shù)據(jù)到中央控制器1,中央控制器1在接收完回傳數(shù)據(jù)之后會(huì)銷毀這些虛擬機(jī),釋放測(cè)試資源,上傳測(cè)試數(shù)據(jù),通過(guò)測(cè)試報(bào)告生成模塊1-5用戶可以通過(guò)中央控制器1瀏覽測(cè)試結(jié)果。所述測(cè)試計(jì)劃包括測(cè)量裝置類型、通信協(xié)議、測(cè)量裝置規(guī)模、測(cè)試負(fù)載數(shù)據(jù)來(lái)源、測(cè)試起止時(shí)間等。所述監(jiān)測(cè)裝置按其數(shù)據(jù)產(chǎn)生頻率的快慢,大致可以分為低、中、高三類,低速設(shè)備的代表是智能電表,最多十多分鐘傳輸一次數(shù)據(jù);中速設(shè)備的代表是RTU裝置,最快能達(dá)到秒級(jí)的數(shù)據(jù);高速設(shè)備的代表是PMU,通常是每秒幾十條消息。根據(jù)待測(cè)系統(tǒng)管理的地域范圍不同,所接入的設(shè)備數(shù)量也不同,而且在相同的地域范圍內(nèi),不同類型的監(jiān)測(cè)設(shè)備其部署數(shù)量也存在明顯的差異。比如智能電表將部署到千家萬(wàn)戶,其數(shù)量將遠(yuǎn)大于PMU設(shè)備。因此,該仿真系統(tǒng)需要既具備模擬不同監(jiān)測(cè)裝置產(chǎn)生監(jiān)測(cè)數(shù)據(jù)的能力,還需要具備根據(jù)實(shí)際需要?jiǎng)討B(tài)分配測(cè)試資源的能力,還需要指明測(cè)量裝置的消息發(fā)送頻率。通信協(xié)議用于指定測(cè)量裝置與待測(cè)系統(tǒng)之間信息交換的格式,即說(shuō)明消息編碼的格式和消息交互的方式(主動(dòng)或者被動(dòng),或者消息交互的狀態(tài)轉(zhuǎn)換過(guò)程)。測(cè)量裝置規(guī)模用于指定此次測(cè)試預(yù)計(jì)部署多少臺(tái)測(cè)量裝置,可以是一種單一的測(cè)量裝置,也可以是不同測(cè)量裝置的組合。測(cè)試負(fù)載的數(shù)據(jù)來(lái)源用于指定數(shù)據(jù)產(chǎn)生的方式,此時(shí)需要指定測(cè)量裝置會(huì)產(chǎn)生哪些屬性的數(shù)據(jù),每種數(shù)據(jù)是采用何種方式生產(chǎn)。數(shù)據(jù)生成方式可以是隨機(jī)的、或者是符合某種概率分布的、或者是從歷史數(shù)據(jù)中讀取的,如果是歷史數(shù)據(jù),用戶還需要指定數(shù)據(jù)的存放位置和數(shù)據(jù)格式。測(cè)試起止時(shí)間測(cè)試指開(kāi)始產(chǎn)生負(fù)載和結(jié)束產(chǎn)生負(fù)載的時(shí)間,也即測(cè)試的開(kāi)始和中止時(shí)間。所述測(cè)試數(shù)據(jù)包括消息發(fā)送平均速率、響應(yīng)時(shí)間、待測(cè)系統(tǒng)吞吐率、消息發(fā)送成功率、錯(cuò)誤報(bào)告,以及代理的CPU利用率和網(wǎng)絡(luò)帶寬利用率等信息。