本發(fā)明涉及一種交換機(jī)性能參數(shù)測(cè)量方法,尤其是一種針對(duì)OpenFlow交換機(jī)的性能參數(shù)測(cè)量方法。
背景技術(shù):
::從互聯(lián)網(wǎng)誕生到現(xiàn)在,已經(jīng)從一個(gè)學(xué)術(shù)網(wǎng)絡(luò)發(fā)展成為影響我們生活、生產(chǎn)、消費(fèi)、娛樂(lè)的龐大體系,已經(jīng)成為社會(huì)發(fā)展中的核心推動(dòng)力之一。然而,技術(shù)的發(fā)展使得當(dāng)前的網(wǎng)絡(luò)架構(gòu)的問(wèn)題逐漸暴露出來(lái),需要更新技術(shù)來(lái)應(yīng)對(duì)這些挑戰(zhàn)。為應(yīng)對(duì)現(xiàn)有的網(wǎng)絡(luò)結(jié)構(gòu)的缺陷,未來(lái)網(wǎng)絡(luò)應(yīng)運(yùn)而生,其中SDN(softwaredefinednetwork)是未來(lái)網(wǎng)絡(luò)的重要發(fā)展方向,SDN旨在實(shí)現(xiàn)網(wǎng)絡(luò)互聯(lián)和網(wǎng)絡(luò)行為的定義和開放式接口,從而支持各種新型網(wǎng)絡(luò)體系機(jī)構(gòu)和新型業(yè)務(wù)的創(chuàng)新。OpenFlow技術(shù)作為SDN的實(shí)現(xiàn),由軟件驅(qū)動(dòng)的中央控制節(jié)點(diǎn)來(lái)自動(dòng)化控制整個(gè)網(wǎng)絡(luò),簡(jiǎn)化網(wǎng)絡(luò)的配置模式,增加網(wǎng)絡(luò)趨勢(shì)的開放性,已經(jīng)成為GENI、FINE等各國(guó)未來(lái)網(wǎng)絡(luò)項(xiàng)目的基礎(chǔ)。Openflow作為SDN的原型提出時(shí),主要有OpenFlow交換機(jī)、控制器兩部分組成。OpenFlow交換機(jī)負(fù)責(zé)數(shù)據(jù)轉(zhuǎn)發(fā)功能,主要有流表(flowtable)、安全信道(securechannel)和OpenFlow協(xié)議(OpenFlowprotocol)。OpenFlow交換機(jī)的實(shí)現(xiàn)方式主要有基于硬件的OpenFlow交換機(jī)以及基于軟件運(yùn)行的OpenFlow交換機(jī)??刂破髦校W(wǎng)絡(luò)操作系統(tǒng)(NetworkoperatingSystem)實(shí)現(xiàn)控制邏輯功能,NOX是OpenFlow網(wǎng)絡(luò)中對(duì)網(wǎng)絡(luò)實(shí)現(xiàn)可編程控制的中央執(zhí)行單元。在基于NOX的OpenFlow網(wǎng)絡(luò)中,NOX是控制核心,OpenFlow通過(guò)維護(hù)網(wǎng)絡(luò)視圖(NetworkView)來(lái)維護(hù)整個(gè)網(wǎng)絡(luò)的基本信息,運(yùn)行在NOX上的應(yīng)用程序通過(guò)調(diào)用網(wǎng)絡(luò)視圖中的全局?jǐn)?shù)據(jù),進(jìn)而操作OpenFlow交換機(jī)來(lái)對(duì)整個(gè)網(wǎng)絡(luò)進(jìn)行管理和控制。OpenFlow交換機(jī)是研究管控分離架構(gòu)和部署中小型試驗(yàn)網(wǎng)絡(luò)的關(guān)鍵設(shè)備,交換機(jī)的性能是部署試驗(yàn)網(wǎng)絡(luò)和評(píng)價(jià)SDN網(wǎng)絡(luò)的關(guān)鍵因素之一。然而目前多數(shù)對(duì)于OpenFlow的研究主要有以下部分:(1)SDN轉(zhuǎn)發(fā)平面的設(shè)計(jì)問(wèn)題;(2)控制平面的可擴(kuò)展性問(wèn)題;(3)SDN控制邏輯的一致性問(wèn)題;(4)研究如何提高數(shù)據(jù)平面的性能;(5)建模問(wèn)題。若要實(shí)現(xiàn)對(duì)未來(lái)網(wǎng)絡(luò)的性能評(píng)估,性能模型就成為必須要研究實(shí)現(xiàn)的課題,然而當(dāng)前主流的檢測(cè)儀表并無(wú)相關(guān)功能,已經(jīng)在技術(shù)上限制了對(duì)未來(lái)網(wǎng)絡(luò)更深層次的研究。因此,需要一種能夠?qū)ξ磥?lái)網(wǎng)絡(luò)關(guān)鍵性能參數(shù)進(jìn)行測(cè)量的方法以解決上述問(wèn)題。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的在于提供一種能夠?qū)ξ磥?lái)網(wǎng)絡(luò)關(guān)鍵性能參數(shù)進(jìn)行測(cè)量的方法。本發(fā)明的技術(shù)方案:一種基于KPLS算法的OpenFlow交換機(jī)性能參數(shù)測(cè)量方法,包括如下步驟:步驟1,依次改變壓力流量、報(bào)文分組長(zhǎng)度、報(bào)文分組數(shù)量以及TCP/UDP報(bào)文格式中的一個(gè)參數(shù),而保持其余參數(shù)固定不變,從而獲取KPLS算法所需的建模樣本集,包括吞吐量集合、時(shí)延集合以及丟包率集合;步驟2,根據(jù)獲得的建模集建立OpenFlow交換機(jī)關(guān)鍵性能參數(shù)的KPLS模型;步驟3,獲取OpenFlow交換機(jī)當(dāng)前的測(cè)試數(shù)據(jù);步驟4,帶入測(cè)試數(shù)據(jù)至KPLS模型,計(jì)算當(dāng)前OpenFlow交換機(jī)的關(guān)鍵性能參數(shù),包括吞吐量、時(shí)延以及丟包率。采用實(shí)時(shí)數(shù)據(jù)建立KPLS模型對(duì)OpenFlow交換機(jī)的關(guān)鍵性能參數(shù)進(jìn)行計(jì)算,具有較高的準(zhǔn)確性和實(shí)時(shí)性,而且避免硬件檢測(cè)對(duì)網(wǎng)絡(luò)造成沖擊,獲得的參數(shù)失真的問(wèn)題;無(wú)需硬件投入,為未來(lái)網(wǎng)絡(luò)試驗(yàn)臺(tái)性能測(cè)試及模型提供了一種適應(yīng)性廣泛的技術(shù)解決方案。作為本發(fā)明的進(jìn)一步限定方案,步驟1中,獲取KPLS算法所需的建模樣本集的具體步驟為:步驟1.1,固定其余參數(shù)不變,改變發(fā)送壓力x1共N1次,獲得不同壓力流量下的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送報(bào)文分組長(zhǎng)度為x3Byte、傳輸中的分組數(shù)量為x4的TCP/UDP報(bào)文x2,持續(xù)時(shí)間為S秒,OpenFlow交換機(jī)在接收到TCP/UDP報(bào)文x2后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文x2,同時(shí)測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput1、時(shí)延Timedelay1以及丟包率Lossrate1,得到的樣本集為X1={x1,x2,x3,x4},Y1={Throughput1,Timedelay1,Lossrate1},其中:x1=(x11,x12,...,x1N1)T]]>x2=(x21,x22,...,x2N1)T]]>x3=(x31,x32,...,x3N1)T]]>x4=(x41,x42,...,x4N1)T]]>Throughput1=(Throughput11,Throughput12,...,Throughput1N1)T]]>Timedelay1=(Timedelay11,Timedelay12,...,Timedelay1N1)T]]>Lossrate1=(Lossrate11,Lossrate12,...,Lossrate1N1)T;]]>步驟1.2,固定其余參數(shù)不變,改變發(fā)送報(bào)文分組長(zhǎng)度x3共N2次,獲得不同分組長(zhǎng)度下的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送壓力x1Mbit/s、傳輸中的分組數(shù)量為x4的TCP/UDP報(bào)文x2,持續(xù)時(shí)間為S秒,OpenFlow交換機(jī)在接收到TCP/UDP報(bào)文x2后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文x2,同時(shí)測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput2、時(shí)延Timedelay2以及丟包率Lossrate2,得到樣本集為X2={x1,x2,x3},Y2={Throughput2,Timedelay2,Lossrate2},其中:x1=(x11,x12,...,x1N2)T]]>x2=(x21,x22,...,x2N2)T]]>x3=(x31,x32,...,x3N2)T]]>x4=(x41,x42,...,x4N2)T]]>Throughput2=(Throughput21,Throughput22,...,Throughput2N2)T]]>Timedelay2=(Timedelay21,Timedelay22,...,Timedelay2N2)T]]>Lossrate2=(Lossrate21,Lossrate22,...,Lossrate2N2)T;]]>步驟1.3,固定其余參數(shù)不變,改變傳輸中的報(bào)文分組數(shù)量x4共N3次,獲得不同傳輸中的報(bào)文分組數(shù)量下的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送壓力x1Mbit/s、發(fā)送報(bào)文分組長(zhǎng)度為x3Byte的TCP/UDP報(bào)文x2,持續(xù)時(shí)間為S秒,OpenFlow交換機(jī)在接收到TCP/UDP報(bào)文x2后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文x2,同時(shí)檢測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput3、時(shí)延Timedelay3以及丟包率Lossrate3,得到樣本集為X3={x1,x2,x3},Y3={Throughput3,Timedelay3,Lossrate3},其中:x1=(x11,x12,...,x1N3)T]]>x2=(x21,x22,...,x2N3)T]]>x3=(x31,x32,...,x3N3)T]]>x4=(x41,x42,...,x4N3)T]]>Throughput3=(Throughput21,Throughput22,...,Throughput2N3)T]]>Timedelay3=(Timedelay21,Timedelay22,...,Timedelay2N3)T]]>Lossrate3=(Lossrate21,Lossrate22,...,Lossrate2N3)T;]]>步驟1.4,固定其余參數(shù)不變,改變TCP/UDP報(bào)文x2共N4次,獲得發(fā)送壓力x1Mbit/s遞增情況下TCP/UDP格式不同的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送分組長(zhǎng)度為x3Byte、傳輸中的分組數(shù)量為x4的TCP/UDP報(bào)文x2,持續(xù)時(shí)間為S秒,OpenFlow交換機(jī)在接收到TCP/UDP報(bào)文x2后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文x2,同時(shí)通過(guò)檢測(cè)設(shè)備檢測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput4、時(shí)延Timedelay4以及丟包率Lossrate4,得到樣本集為X4={x1,x2,x3,x4},Y4={Throughput4,Timedelay4,Lossrate4},其中:x1=(x11,x12,...,x1N4)T]]>x2=(x21,x22,...,x2N4)T]]>x3=(x31,x32,...,x3N4)T]]>x4=(x41,x42,...,x4N4)T]]>Throughput4=(Throughput41,Throughput42,...,Throughput4N4)T]]>Timedelay4=(Timedelay41,Timedelay42,...,Timedelay4N4)T]]>Lossrate4=(Lossrate41,Lossrate42,...,Lossrate4N4)T;]]>步驟1.5,進(jìn)一步獲得建模樣本集{X,Y}={(X1,X2,X3,X4)T,(Y1,Y2,Y3,Y4)T}。作為本發(fā)明的進(jìn)一步限定方案,步驟2中,建立OpenFlow交換機(jī)關(guān)鍵性能參數(shù)的KPLS模型的具體步驟為:步驟2.1,根據(jù)建模樣本集{X,Y}建立回歸方程為:x=HPT+EY=HQ+R]]>式中,自變量X={x1,x2,…,xp}n×p,n為樣本數(shù),p為自變量個(gè)數(shù),H為得分矩陣,P為H的載荷矩陣,Q為因變量Y關(guān)于H的回歸系數(shù)向量,E和R為殘差;步驟2.2,建立Y與X的偏最小二乘回歸模型為:Y=XB+R式中,B為偏最小二乘回歸系數(shù)向量;步驟2.3,記K=XXT,K∈Rn×n,則K的中心化矩陣為:K~=(I-1n1n1nT)K(I-1n1n1nT)]]>式中,I為n維單位陣,1n為n×1的全1陣;步驟2.4,建立KPLS模型為:Y^t=K~tU(HTK~U)-1HTY]]>式中,Kt=XtXT,U和H為得分矩陣,由KPLS迭代回歸獲得,Xt為當(dāng)前的測(cè)試數(shù)據(jù)。作為本發(fā)明的進(jìn)一步限定方案,步驟3中,獲取OpenFlow交換機(jī)當(dāng)前的測(cè)試數(shù)據(jù)的具體步驟為:步驟3.1,獲取當(dāng)前未來(lái)網(wǎng)絡(luò)的壓力x1Mbit/s以及報(bào)文形式x2;步驟3.2,獲取當(dāng)前網(wǎng)絡(luò)的報(bào)文分組長(zhǎng)度x3;步驟3.3,獲取當(dāng)前網(wǎng)絡(luò)的傳輸中的報(bào)文數(shù)量x4;步驟3.4,利用步驟3.1-3.3獲得的數(shù)據(jù)組成Xt。作為本發(fā)明的進(jìn)一步限定方案,x2=0表示為TCP報(bào)文格式,x2=1表示為UDP報(bào)文格式。本發(fā)明的有益效果在于:(1)采用實(shí)時(shí)數(shù)據(jù)建立KPLS模型對(duì)OpenFlow交換機(jī)的關(guān)鍵性能參數(shù)進(jìn)行計(jì)算,具有較高的準(zhǔn)確性和實(shí)時(shí)性,而且避免硬件檢測(cè)對(duì)網(wǎng)絡(luò)造成沖擊,獲得的參數(shù)失真的問(wèn)題;(2)無(wú)需硬件投入,為未來(lái)網(wǎng)絡(luò)試驗(yàn)臺(tái)性能測(cè)試及模型提供了一種適應(yīng)性廣泛的技術(shù)解決方案。附圖說(shuō)明圖1為本發(fā)明的方法流程圖;圖2為本發(fā)明的壓力流量對(duì)OpenFlow交換機(jī)吞吐量和丟包率性能的影響曲線圖;圖3為本發(fā)明的壓力流量對(duì)OpenFlow交換機(jī)時(shí)延性能的影響曲線圖;圖4為本發(fā)明的報(bào)文分組長(zhǎng)度對(duì)OpenFlow交換機(jī)吞吐量和丟包率性能的影響曲線圖;圖5為本發(fā)明的報(bào)文分組長(zhǎng)度對(duì)OpenFlow交換機(jī)時(shí)延性能的影響曲線圖;圖6為本發(fā)明傳輸中的報(bào)文數(shù)量對(duì)OpenFlow交換機(jī)吞吐量和丟包率性能的影響曲線圖;圖7為本發(fā)明傳輸中的報(bào)文數(shù)量對(duì)OpenFlow交換機(jī)時(shí)延性能的影響曲線圖。具體實(shí)施方式下面結(jié)合附圖和具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)施例僅用于說(shuō)明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對(duì)本發(fā)明的各種等價(jià)形式的修改均落于本申請(qǐng)所附權(quán)利要求所限定的范圍。本發(fā)明待測(cè)試的OpenFlow交換機(jī)處于流量發(fā)生器與流量接收器的閉合環(huán)路并與控制器直接相連。測(cè)量時(shí)采用的是基于Linux平臺(tái)下的OpenFlow的軟件交換機(jī),交換機(jī)中存在著一個(gè)線性表和兩個(gè)Hash表。OpenFlow交換機(jī)實(shí)驗(yàn)方法及其規(guī)律:根據(jù)實(shí)驗(yàn)及理論分析,得知OpenFlow交換機(jī)性能主要與以下因素相關(guān):壓力流量、報(bào)文分組長(zhǎng)度大小、報(bào)文格式、傳輸中的包數(shù)量、CPU性能、SDN版本等。其中,當(dāng)網(wǎng)絡(luò)架設(shè)好以后,CPU、OpenFlow版本不可更改,因此CPU性能、SDN版本號(hào)為不可控因素。如圖2和3為壓力流量對(duì)OpenFlow交換機(jī)性能的影響,其求解過(guò)程為:固定其余參數(shù)不變,改變壓力流量N1次,獲得不同壓力流量下的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送分組長(zhǎng)度為x3Byte、傳輸中的分組數(shù)量為x4的TCP/UDP(x2)報(bào)文,持續(xù)時(shí)間為60s,OpenFlow交換機(jī)在接收到TCP報(bào)文后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP報(bào)文。同時(shí)通過(guò)檢測(cè)設(shè)備檢測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput1、時(shí)延Timedelay1、丟包率Lossrate1;實(shí)驗(yàn)結(jié)果如圖2所示。從圖2可知,隨著壓力流量的增長(zhǎng),吞吐量也隨之增長(zhǎng),直至臨界點(diǎn),超過(guò)臨界壓力后,吞吐量不再增加,時(shí)延、丟包率迅速增長(zhǎng)。如圖4和5為報(bào)文分組長(zhǎng)度對(duì)OpenFlow交換機(jī)性能的影響,其求解過(guò)程為:固定其余參數(shù)不變,改變報(bào)文分組長(zhǎng)度N2次,獲得不同分組長(zhǎng)度下的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送壓力x1Mbit/s,傳輸中的分組數(shù)量為x4的TCP/UDP(x2)報(bào)文,持續(xù)時(shí)間為60s,OpenFlow交換機(jī)在接收到TCP報(bào)文后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文。同時(shí)通過(guò)檢測(cè)設(shè)備檢測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput2、時(shí)延Timedelay2、丟包率Lossrate2。實(shí)驗(yàn)結(jié)果如圖3所示。從圖3可以得知,隨著報(bào)文分組長(zhǎng)度的變化,OpenFlow交換機(jī)的吞吐量逐漸增大。同時(shí),當(dāng)負(fù)載流量不變時(shí),分組越小必然導(dǎo)致分組到達(dá)率越高,分組到達(dá)率越高,就會(huì)對(duì)OpenFlow交換機(jī)CPU產(chǎn)生更大的負(fù)載,因此,其丟包率較大,在分組長(zhǎng)度到一定數(shù)值后,其丟包率降到最低,其后,丟包率又會(huì)上升,并穩(wěn)定在一定數(shù)值上。如圖6和7為傳輸中的報(bào)文數(shù)量對(duì)OpenFlow交換機(jī)性能的影響,其求解過(guò)程為:固定其余參數(shù)不變,改變傳輸中的報(bào)文分組數(shù)量N3次,獲得不同傳輸中的報(bào)文分組數(shù)量下的性能主要參數(shù),方法如下:流量發(fā)生器向OpenFlow交換機(jī)發(fā)送壓力x1Mbit/s,分組長(zhǎng)度為x3Byte的TCP/UDP(x2)報(bào)文,持續(xù)時(shí)間為60s,OpenFlow交換機(jī)在接收到TCP報(bào)文后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文。同時(shí)通過(guò)檢測(cè)設(shè)備檢測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput3、時(shí)延Timedelay3、丟包率Lossrate3;實(shí)驗(yàn)結(jié)果如圖4所示,從圖4可以得出,隨著傳輸中的報(bào)文數(shù)量的變化,吞吐量迅速下降,丟包率、時(shí)延增長(zhǎng),當(dāng)傳輸中的報(bào)文數(shù)量到達(dá)一定程度以后,時(shí)延穩(wěn)定在一定數(shù)值不再增加。如圖1所示,本發(fā)明提供了一種基于KPLS算法的OpenFlow交換機(jī)性能參數(shù)測(cè)量方法,包括如下步驟:步驟1,依次改變壓力流量、報(bào)文分組長(zhǎng)度、報(bào)文分組數(shù)量以及TCP/UDP報(bào)文格式中的一個(gè)參數(shù),而保持其余參數(shù)固定不變,從而獲取KPLS算法所需的建模樣本集,包括吞吐量集合、時(shí)延集合以及丟包率集合;步驟2,根據(jù)獲得的建模集建立OpenFlow交換機(jī)關(guān)鍵性能參數(shù)的KPLS模型;步驟3,獲取OpenFlow交換機(jī)當(dāng)前的測(cè)試數(shù)據(jù);步驟4,帶入測(cè)試數(shù)據(jù)至KPLS模型,計(jì)算當(dāng)前OpenFlow交換機(jī)的關(guān)鍵性能參數(shù),包括吞吐量、時(shí)延以及丟包率。其中,步驟1中,獲取KPLS算法所需的建模樣本集的具體步驟為:步驟1.1,固定其余參數(shù)不變,改變發(fā)送壓力x1共N1次,獲得不同壓力流量下的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送報(bào)文分組長(zhǎng)度為x3Byte、傳輸中的分組數(shù)量為x4的TCP/UDP報(bào)文x2,持續(xù)時(shí)間為60秒,OpenFlow交換機(jī)在接收到TCP/UDP報(bào)文x2后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文x2,同時(shí)測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput1、時(shí)延Timedelay1以及丟包率Lossrate1,得到的樣本集為X1={x1,x2,x3,x4},Y1={Throughput1,Timedelay1,Lossrate1},其中:x1=(x11,x12,...,x1N1)T]]>x2=(x21,x22,...,x2N1)T]]>x3=(x31,x32,...,x3N1)T]]>x4=(x41,x42,...,x4N1)T]]>Throughput1=(Throughput11,Throughput12,...,Throughput1N1)T]]>Timedelay1=(Timedelay11,Timedelay12,...,Timedelay1N1)T]]>Lossrate1=(Lossrate11,Lossrate12,...,Lossrate1N1)T;]]>步驟1.2,固定其余參數(shù)不變,改變發(fā)送報(bào)文分組長(zhǎng)度x3共N2次,獲得不同分組長(zhǎng)度下的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送壓力x1Mbit/s、傳輸中的分組數(shù)量為x4的TCP/UDP報(bào)文x2,持續(xù)時(shí)間為60秒,OpenFlow交換機(jī)在接收到TCP/UDP報(bào)文x2后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文x2,同時(shí)測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput2、時(shí)延Timedelay2以及丟包率Lossrate2,得到樣本集為x2={x1,x2,x3},Y2={Throughput2,Timedelay2,Lossrate2},其中:x1=(x11,x12,...,x1N2)T]]>x2=(x21,x22,...,x2N2)T]]>x3=(x31,x32,...,x3N2)T]]>x4=(x41,x42,...,x4N2)T]]>Throughput2=(Throughput21,Throughput22,...,Throughput2N2)T]]>Timedelay2=(Timedelay21,Timedelay22,...,Timedelay2N2)T]]>Lossrate2=(Lossrate21,Lossrate22,...,Lossrate2N2)T;]]>步驟1.3,固定其余參數(shù)不變,改變傳輸中的報(bào)文分組數(shù)量x4共N3次,獲得不同傳輸中的報(bào)文分組數(shù)量下的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送壓力x1Mbit/s、發(fā)送報(bào)文分組長(zhǎng)度為x3Byte的TCP/UDP報(bào)文x2,持續(xù)時(shí)間為60秒,OpenFlow交換機(jī)在接收到TCP/UDP報(bào)文x2后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文x2,同時(shí)檢測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput3、時(shí)延Timedelay3以及丟包率Lossrate3,得到樣本集為X3={x1,x2,x3},Y3={Throughput3,Timedelay3,Lossrate3},其中:x1=(x11,x12,...,x1N3)T]]>x2=(x21,x22,...,x2N3)T]]>x3=(x31,x32,...,x3N3)T]]>x4=(x41,x42,...,x4N3)T]]>Throughput3=(Throughput21,Throughput22,...,Throughput2N3)T]]>Timedelay3=(Timedelay21,Timedelay22,...,Timedelay2N3)T]]>Lossrate3=(Lossrate21,Lossrate22,...,Lossrate2N3)T;]]>步驟1.4,固定其余參數(shù)不變,改變TCP/UDP報(bào)文x2共N4次,獲得發(fā)送壓力x1Mbit/s遞增情況下TCP/UDP格式不同的性能主要參數(shù),由流量發(fā)生器向OpenFlow交換機(jī)發(fā)送分組長(zhǎng)度為x3Byte、傳輸中的分組數(shù)量為x4的TCP/UDP報(bào)文x2,持續(xù)時(shí)間為60秒,OpenFlow交換機(jī)在接收到TCP/UDP報(bào)文x2后根據(jù)預(yù)先插入的流量表規(guī)則向信號(hào)接收器轉(zhuǎn)發(fā)TCP/UDP報(bào)文x2,同時(shí)通過(guò)檢測(cè)設(shè)備檢測(cè)當(dāng)前的性能主要參數(shù)吞吐量Throughput4、時(shí)延Timedelay4以及丟包率Lossrate4,得到樣本集為X4={x1,x2,x3,x4},Y4={Throughput4,Timedelay4,Lossrate4},其中:x1=(x11,x12,...,x1N4)T]]>x2=(x21,x22,...,x2N4)T]]>x3=(x31,x32,...,x3N4)T]]>x4=(x41,x42,...,x4N4)T]]>Throughput4=(Throughput41,Throughput42,...,Throughput4N4)T]]>Timedelay4=(Timedelay41,Timedelay42,...,Timedelay4N4)T]]>Lossrate4=(Lossrate41,Lossrate42,...,Lossrate4N4)T;]]>步驟1.5,進(jìn)一步獲得建模樣本集{X,Y}={X1,X2,X3,X4)T,(Y1,Y2,Y2,Y4)T}。步驟2中,建立OpenFlow交換機(jī)關(guān)鍵性能參數(shù)的KPLS模型的具體步驟為:步驟2.1,根據(jù)建模樣本集{X,Y}建立回歸方程為:X=TPT+EY=TQ+R]]>式中,自變量X={x1,x2,…,xp}n×x,n為樣本數(shù),p為自變量個(gè)數(shù),H為得分矩陣,P為H的載荷矩陣,Q為因變量Y關(guān)于H的回歸系數(shù)向量,E和R為殘差;步驟2.2,建立Y與X的偏最小二乘回歸模型為:Y=XB+R式中,B為偏最小二乘回歸系數(shù)向量;步驟2.3,記K=XXT,K∈Rn×n,則K的中心化矩陣為:K~=(I-1n1n1nT)K(I-1n1n1nT)]]>式中,I為n維單位陣,1n為n×1的全1陣;步驟2.4,建立KPLS模型為:Y^t=K~tU(HTK~U)-1HTY]]>式中,Kt=XtXT,U和H為得分矩陣,由KPLS迭代回歸獲得,Xt為當(dāng)前的測(cè)試數(shù)據(jù)。由KPLS迭代回歸獲得U和H為得分矩陣的具體步驟為:Step1.隨機(jī)初始化向量u;Step2.h←h/||h||;Step3.c=Y(jié)Th;Step4.u=Y(jié)c,u←u/||u||;Step5.重復(fù)2-4,直至各向量收斂;Step6.Y←Y-hhTY;重復(fù)Step1-Step6,直至獲得p個(gè)所期望提取得分向量,將p個(gè)得分向量u和h組合成n×p的得分矩陣U,H。步驟3中,獲取OpenFlow交換機(jī)當(dāng)前的測(cè)試數(shù)據(jù)的具體步驟為:步驟3.1,獲取當(dāng)前未來(lái)網(wǎng)絡(luò)的壓力x1Mbit/s以及報(bào)文形式x2,x2=0表示為TCP報(bào)文格式,x2=1表示為UDP報(bào)文格式;步驟3.2,獲取當(dāng)前網(wǎng)絡(luò)的報(bào)文分組長(zhǎng)度x3;步驟3.3,獲取當(dāng)前網(wǎng)絡(luò)的傳輸中的報(bào)文數(shù)量x4;步驟3.4,利用步驟3.1-3.3獲得的數(shù)據(jù)組成Xt。本發(fā)明使用了FLUKE公司ETHERSCOPEII型網(wǎng)絡(luò)測(cè)試儀產(chǎn)生數(shù)據(jù)流滿足高速、真實(shí)的數(shù)據(jù)流要求,OpenFlow交換機(jī)處于流量發(fā)生器與流量接收器的閉合環(huán)路并與控制器直接相連。進(jìn)行網(wǎng)絡(luò)測(cè)試的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。試驗(yàn)采用的是基于Linux平臺(tái)下的OpenFlow1.0.0版本的軟件交換機(jī),在該版本的交換機(jī)中存在著一個(gè)線性表和兩個(gè)Hash表,其中線性表的流表項(xiàng)為100,每個(gè)Hash表的流表項(xiàng)容量為64K,在測(cè)試吞吐量的試驗(yàn)中,為了反映出OpenFlow交換機(jī)在最大壓力下的性能,OpenFlow交換機(jī)最大長(zhǎng)度為100的線性流和128K的哈希流表在進(jìn)行吞吐量試驗(yàn)之前被全部填滿,從而保證了分組到達(dá)OpenFlow交換機(jī)后直接查詢流表并按照規(guī)則轉(zhuǎn)發(fā),而無(wú)需向NOX控制器請(qǐng)求。Step1.通過(guò)未來(lái)網(wǎng)絡(luò)硬件檢測(cè)設(shè)備直接獲取當(dāng)前未來(lái)網(wǎng)絡(luò)的壓力x1=480Mbit/s以及報(bào)文形式為x2=1的UDP報(bào)文格式;Step2.選擇當(dāng)前網(wǎng)絡(luò)的報(bào)文分組長(zhǎng)度x3=1240Byte;Step3.獲取當(dāng)前網(wǎng)絡(luò)的傳輸中的報(bào)文數(shù)量x4=210;對(duì)于Step1-Step3獲得的數(shù)據(jù),組成Xt。OpenFlow交換機(jī)關(guān)鍵性能參數(shù)的KPLS模型為:Y^t=K~tU(HTK~U)-1HTY]]>式中,Kt=XtXT,U和H為得分矩陣,由KPLS迭代回歸獲得,Xt為當(dāng)前的測(cè)試數(shù)據(jù)。參數(shù)的獲取通過(guò)以下步驟獲得:樣本集{X,Y}={X1,X2,X3,X4)T,(Y1,Y2,Y2,Y4)T},則回歸方程可以表示如下:X=TPT+EY=TQ+R]]>式中:自變量X={x1,x2,…,xp}n×p,n為樣本數(shù),p為自變量個(gè)數(shù),T為得分矩陣,P為T的載荷矩陣;Q為因變量Y關(guān)于T的回歸系數(shù)向量;E和R為殘差。Y與X的偏最小二乘回歸模型為:Y=XB+R式中B為偏最小二乘回歸系數(shù)向量。Step6:基于KPLS算法的OpenFlow交換機(jī)性能關(guān)鍵參數(shù)算法如下:記K=XXT,K∈Rn×n,K的中心化矩陣為:K~=(I-1n1n1nT)K(I-1n1n1nT)]]>其中:I-n維單位陣,1n-n×1的全1陣。KPLS迭代回歸方法如下:Step1.隨機(jī)初始化向量u;Step2.Step3.c=Y(jié)Th;Step4.u=Y(jié)c,u←u/||u||;Step5.重復(fù)2-4,直至各向量收斂;Step6.Y←Y-hhTY;重復(fù)Step1-Step6,直至獲得p個(gè)所期望提取得分向量,將p個(gè)得分向量u和h組合成n×p的得分矩陣U,H。最終該參數(shù)下的OpenFlow交換機(jī)關(guān)鍵參數(shù)為:吞吐量為276Mbit/s,時(shí)延0.17s,丟包率為28%。當(dāng)前第1頁(yè)1 2 3 當(dāng)前第1頁(yè)1 2 3