本發(fā)明涉及基于SDN實(shí)現(xiàn)異構(gòu)覆蓋網(wǎng)路由優(yōu)化的方法問題,屬于計(jì)算機(jī)網(wǎng)絡(luò)
技術(shù)領(lǐng)域:
,特別是屬于覆蓋網(wǎng)絡(luò)路由領(lǐng)域。
背景技術(shù):
:覆蓋網(wǎng)絡(luò)是一種虛擬網(wǎng)絡(luò),它可以在不改變現(xiàn)有基礎(chǔ)網(wǎng)絡(luò)的前提下提供新的網(wǎng)絡(luò)功能,例如基于不同服務(wù)質(zhì)量(QoS)需求的路由等。因此,覆蓋網(wǎng)絡(luò)廣泛地被服務(wù)提供商應(yīng)用在構(gòu)造虛擬網(wǎng)絡(luò)來提供各種新型的網(wǎng)絡(luò)服務(wù),例如對(duì)等網(wǎng)服務(wù),流媒體傳輸,內(nèi)容分發(fā)網(wǎng)絡(luò)等。因此覆蓋網(wǎng)絡(luò)的性能直接影響著服務(wù)提供商的服務(wù)質(zhì)量,并間接影響著服務(wù)提供商的經(jīng)濟(jì)收益。隨著現(xiàn)在互聯(lián)網(wǎng)的飛速發(fā)展,覆蓋網(wǎng)絡(luò)也隨著服務(wù)提供商的擴(kuò)張?jiān)絹碓蕉嗟乇徊渴鹪诂F(xiàn)有的基礎(chǔ)網(wǎng)絡(luò)上。那么在同一個(gè)基礎(chǔ)網(wǎng)絡(luò)上,很有可能部署著多個(gè)覆蓋網(wǎng)絡(luò)。盡管這些共存的覆蓋網(wǎng)絡(luò)是被各個(gè)服務(wù)提供商獨(dú)立部署的,但是他們共享著下層的網(wǎng)絡(luò)資源。例如他們的覆蓋網(wǎng)節(jié)點(diǎn)可能部署在同一臺(tái)主機(jī)或服務(wù)器上,傳輸數(shù)據(jù)時(shí)這些數(shù)據(jù)流也可能經(jīng)過同一條物理鏈路。通過這些共享的網(wǎng)絡(luò)資源,他們可能會(huì)相互影響。例如當(dāng)一個(gè)覆蓋網(wǎng)絡(luò)進(jìn)行大流量數(shù)據(jù)傳輸時(shí),會(huì)造成用于傳輸?shù)南聦渔溌返膿砣6@個(gè)鏈路的擁塞會(huì)導(dǎo)致使用該鏈路的另一覆蓋網(wǎng)絡(luò)的數(shù)據(jù)流的傳輸效率降低。這種相互影響使得共存覆蓋網(wǎng)絡(luò)會(huì)不斷進(jìn)行重路由對(duì)下層網(wǎng)絡(luò)資源進(jìn)行競(jìng)爭(zhēng),從而造成整個(gè)路由的不斷振蕩。不僅如此,這種覆蓋網(wǎng)絡(luò)間的沖突還會(huì)使每個(gè)覆蓋網(wǎng)絡(luò)的性能降低。我們希望可以讓覆蓋網(wǎng)絡(luò)進(jìn)行合作來改善它們的表現(xiàn)。然而目前的覆蓋網(wǎng)絡(luò)合作方案具有很大的缺陷。首先,因?yàn)楦采w網(wǎng)絡(luò)是被服務(wù)提供商獨(dú)立部署的,它們之間無法相互感知。因此它們只能盲目地相互競(jìng)爭(zhēng)?,F(xiàn)有的解決方案是強(qiáng)制全部共存覆蓋網(wǎng)絡(luò)路由進(jìn)行全局最優(yōu)化的處理。這種全局最優(yōu)化的解決方案需要全部共存覆蓋網(wǎng)絡(luò)的支持。但是該方案會(huì)犧牲部分覆蓋網(wǎng)絡(luò)的性能來對(duì)網(wǎng)絡(luò)整體性能進(jìn)行提升。顯然,這些被犧牲的覆蓋網(wǎng)絡(luò)是不愿意參與到這個(gè)方案中來的。這使得這種全局最優(yōu)化的解決方案變得不可行。我們需要提供一種可以使全部覆蓋網(wǎng)絡(luò)收益的解決方案。其次,一般的合作方案只能用于相同類型的覆蓋網(wǎng)絡(luò),并不適用于異構(gòu)覆蓋網(wǎng)絡(luò)。為了使異構(gòu)覆蓋網(wǎng)絡(luò)可以相互進(jìn)行合作,有幾個(gè)問題需要得到解決。不同于同構(gòu)覆蓋網(wǎng)絡(luò),異構(gòu)覆蓋網(wǎng)絡(luò)的表現(xiàn)目標(biāo)不一樣。一個(gè)覆蓋網(wǎng)絡(luò)是無法理解一個(gè)不同的覆蓋網(wǎng)絡(luò)的表現(xiàn)目標(biāo)的。如果覆蓋網(wǎng)絡(luò)相互誤解了彼此的表現(xiàn)目標(biāo),它們的合作結(jié)果也會(huì)與我們的期望相違。例如,一個(gè)時(shí)延敏感的覆蓋網(wǎng)絡(luò)無法處理帶寬敏感覆蓋網(wǎng)絡(luò)的路由問題。如果這兩個(gè)覆蓋網(wǎng)絡(luò)相互進(jìn)行合作,那么時(shí)延敏感的覆蓋網(wǎng)絡(luò)可能會(huì)試圖減少帶寬敏感流的時(shí)延,而帶寬敏感的覆蓋網(wǎng)絡(luò)可能會(huì)試圖增加時(shí)延敏感流的帶寬。因此,如何讓異構(gòu)覆蓋網(wǎng)絡(luò)相互了解各自的表現(xiàn)(performance)目標(biāo),以及如何讓異構(gòu)覆蓋網(wǎng)絡(luò)進(jìn)行雙贏的合作,是目前計(jì)算機(jī)網(wǎng)絡(luò)工程領(lǐng)域一個(gè)亟待解決的技術(shù)難題。技術(shù)實(shí)現(xiàn)要素:有鑒于此,本發(fā)明的目的是發(fā)明實(shí)現(xiàn)覆蓋網(wǎng)絡(luò)之間相互合作的方法,能夠使異構(gòu)覆蓋網(wǎng)絡(luò)之間相互感知,并且理解彼此的表現(xiàn)目標(biāo),在這個(gè)基礎(chǔ)上對(duì)覆蓋網(wǎng)絡(luò)的路由進(jìn)行指導(dǎo),使覆蓋網(wǎng)絡(luò)能夠恰當(dāng)?shù)匕才潘鼈兊牧髁?,友好地共享底層資源,最后保證覆蓋網(wǎng)絡(luò)之間的公平性的同時(shí)提升它們的表現(xiàn)。為了達(dá)到上述目的,本發(fā)明提出了基于SDN實(shí)現(xiàn)異構(gòu)覆蓋網(wǎng)路由優(yōu)化的集中式方法,所述方法包括下列操作步驟:(11)為每一個(gè)覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)SDN控制器,為所有覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)數(shù)據(jù)服務(wù)器,所述的覆蓋網(wǎng)絡(luò)的SDN控制器都與所述的數(shù)據(jù)服務(wù)器相連接;(12)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)經(jīng)驗(yàn)或者歷史表現(xiàn)來設(shè)定自己的基準(zhǔn)表現(xiàn)參考值(13)覆蓋網(wǎng)絡(luò)節(jié)點(diǎn)對(duì)底層網(wǎng)絡(luò)進(jìn)行探測(cè),獲取到當(dāng)前的網(wǎng)絡(luò)狀態(tài),然后覆蓋網(wǎng)絡(luò)將探測(cè)到的網(wǎng)絡(luò)狀態(tài)信息經(jīng)過所述的SDN控制器的匯總,上傳給所述的數(shù)據(jù)服務(wù)器;(14)當(dāng)覆蓋網(wǎng)絡(luò)中產(chǎn)生服務(wù)請(qǐng)求的時(shí)候,該覆蓋網(wǎng)絡(luò)的請(qǐng)求節(jié)點(diǎn)會(huì)向SDN控制器匯報(bào)并請(qǐng)求路由策略;SDN控制器匯總覆蓋網(wǎng)絡(luò)中的服務(wù)請(qǐng)求后,計(jì)算出覆蓋網(wǎng)絡(luò)的表現(xiàn)函數(shù)并上傳給數(shù)據(jù)服務(wù)器;(15)所述的數(shù)據(jù)服務(wù)器將所收到的覆蓋網(wǎng)絡(luò)的表現(xiàn)函數(shù)進(jìn)行匯總后,計(jì)算出最優(yōu)全局路由策略;然后數(shù)據(jù)服務(wù)器將計(jì)算出的最優(yōu)全局路由策略進(jìn)行切分并發(fā)送給對(duì)應(yīng)的覆蓋網(wǎng)絡(luò)的SDN控制器;所述的切分是指把全局路由策略根據(jù)覆蓋網(wǎng)絡(luò)的對(duì)應(yīng)關(guān)系把對(duì)應(yīng)部分分割出來;(16)所述的SDN控制器從數(shù)據(jù)服務(wù)器接收到路由策略后,將其部署到覆蓋網(wǎng)絡(luò)中,然后由覆蓋網(wǎng)絡(luò)節(jié)點(diǎn)根據(jù)該路由策略將流量部署到底層網(wǎng)絡(luò)中;(17)重復(fù)步驟(13)~(16),直至覆蓋網(wǎng)絡(luò)的路由策略數(shù)個(gè)周期沒有變化。步驟(14)的具體內(nèi)容包括如下操作子步驟:(1401)每個(gè)覆蓋網(wǎng)絡(luò)統(tǒng)計(jì)其可用虛擬路徑,得到該覆蓋網(wǎng)絡(luò)可用的虛擬路徑集合R(s)R(s)={r1,r2,…,ri,…,rn}這里ri代表著該覆蓋網(wǎng)絡(luò)的第i條虛擬路徑,n是該覆蓋網(wǎng)絡(luò)的虛擬路徑的總數(shù);(1402)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)自己的虛擬路徑,統(tǒng)計(jì)這些虛擬路徑所對(duì)應(yīng)的底層鏈路,得到所述的覆蓋網(wǎng)絡(luò)虛擬路徑集合R(s)和底層鏈路之間的對(duì)應(yīng)關(guān)系矩陣A(s):這里,l,r分別是底層物理鏈路和該覆蓋網(wǎng)絡(luò)虛擬路徑的編號(hào),L是所有物理鏈路的總集合。L={link1,link2,…,linkl,…},這里linkl代表第l條物理鏈路。當(dāng)arl=1時(shí),表示底層物理鏈路l是虛擬路徑r的一部分,當(dāng)arl=0時(shí),表示底層物理鏈路l與虛擬路徑r無關(guān);(1403)覆蓋網(wǎng)絡(luò)探測(cè)并收集虛擬路徑上的底層流量分布信息,得到與其虛擬路徑集合R(s)相對(duì)應(yīng)的底層流量分布向量U(-s),也就是虛擬路徑上的背景流量:U(-s)=(u1(-s),...,ul(-s),...,u|L|(-s))T]]>這里是覆蓋網(wǎng)絡(luò)s探測(cè)到的底層物理鏈路l上承載的背景流量,而l是底層物理鏈路的編號(hào);(1404)每個(gè)覆蓋網(wǎng)絡(luò)統(tǒng)計(jì)自己的服務(wù)請(qǐng)求得到覆蓋網(wǎng)絡(luò)流集合F(s):F(s)={f1,f2,…,fk}該集合中,每一個(gè)元素表示:對(duì)應(yīng)于一個(gè)服務(wù)請(qǐng)求,覆蓋網(wǎng)絡(luò)需要提供的一條覆蓋網(wǎng)絡(luò)流;所述的覆蓋網(wǎng)絡(luò)流包含起始節(jié)點(diǎn)、目的節(jié)點(diǎn)以及基本的帶寬、時(shí)延等需求信息;(1405)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)所述的覆蓋網(wǎng)絡(luò)流的起始節(jié)點(diǎn)和目的節(jié)點(diǎn)統(tǒng)計(jì)其可用的虛擬路徑,并得到覆蓋網(wǎng)絡(luò)流集合F(s)與虛擬路徑集合R(s)的對(duì)應(yīng)關(guān)系矩陣B(s):這里,f,r分別是覆蓋網(wǎng)絡(luò)流和覆蓋網(wǎng)絡(luò)虛擬路徑的編號(hào),當(dāng)bfr=1時(shí),表示覆蓋網(wǎng)絡(luò)流f可以通過虛擬路徑r傳輸數(shù)據(jù),當(dāng)bfr=0時(shí),表示虛擬路徑r對(duì)于覆蓋網(wǎng)絡(luò)流f不可用;(1406)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)各自的QoS表現(xiàn)需求來定義自己的虛擬路徑表現(xiàn)函數(shù),該函數(shù)是與底層網(wǎng)絡(luò)流量部署情況相關(guān)的函數(shù),表示覆蓋網(wǎng)絡(luò)表現(xiàn)與底層網(wǎng)絡(luò)中具體流量分布的關(guān)系;虛擬路徑表現(xiàn)函數(shù)的定義根據(jù)覆蓋網(wǎng)絡(luò)的種類和QoS表現(xiàn)需求而有所不同,對(duì)于時(shí)延敏感的覆蓋網(wǎng)絡(luò),虛擬路徑表現(xiàn)函數(shù)是一條覆蓋網(wǎng)絡(luò)虛擬路徑的時(shí)延函數(shù),該函數(shù)定義如下:θr(U)=Σl∈rdelayl(ul)]]>這里r代表著一條虛擬路徑,而l代表著這條虛擬路徑上的一條物理鏈路。delayl(ul)是物理鏈路的時(shí)延函數(shù),代表物理鏈路l的時(shí)延與它所實(shí)際承載的流量ul的關(guān)系。U=(u1,u2,…,u|L|)T則為底層鏈路負(fù)載向量,代表著底層鏈路實(shí)際負(fù)載的總體情況。(1407)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)下式計(jì)算得到各自的覆蓋網(wǎng)絡(luò)表現(xiàn)函數(shù):pref(s)(v(s))=(v(s)E(s))T[θ(A(s)(v(s)E(s))+U(-s))]上式中的v(s)為覆蓋網(wǎng)絡(luò)s的路由策略矩陣,其定義如下:這里vfr代表覆蓋網(wǎng)絡(luò)流f分配到虛擬路徑r上的流量。并且當(dāng)且僅當(dāng)bfr=1時(shí),vfr≥0,即該虛擬路徑r可為覆蓋網(wǎng)絡(luò)流f所用時(shí),覆蓋網(wǎng)絡(luò)流f才可對(duì)其分配流量。E(s)則是一個(gè)輔助矩陣,其定義為一個(gè)1×|F(s)|的全一矩陣,即[1,1,…,1]T,用于對(duì)每列元素的求和。v(s)E(s)的意義是計(jì)算覆蓋網(wǎng)絡(luò)s分配到每條虛擬路徑上的向量。步驟(15)中所述的數(shù)據(jù)服務(wù)器計(jì)算出最優(yōu)全局路由策略是指:按照下式計(jì)算出全局路由策略矩陣v的最優(yōu)值V:在該公式中,是覆蓋網(wǎng)絡(luò)s的基準(zhǔn)表現(xiàn)值;pref(s)(v(s))則是所述步驟(1407)中定義的覆蓋網(wǎng)絡(luò)表現(xiàn)函數(shù);v=(v(1),v(2),…,v(s),…)T是全局路由策略矩陣,表示把所有覆蓋網(wǎng)絡(luò)的路由策略矩陣進(jìn)行匯總;是覆蓋網(wǎng)絡(luò)s的權(quán)值。為了達(dá)到本發(fā)明的目的,本發(fā)明還提出了基于SDN實(shí)現(xiàn)異構(gòu)覆蓋網(wǎng)路由優(yōu)化的分布式方法,所述方法包括下列操作步驟:(21)為每一個(gè)覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)SDN控制器,為所有覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)數(shù)據(jù)服務(wù)器,所述的覆蓋網(wǎng)絡(luò)的SDN控制器都與所述的數(shù)據(jù)服務(wù)器相連接;(22)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)經(jīng)驗(yàn)或者歷史表現(xiàn)來設(shè)定自己的基準(zhǔn)表現(xiàn)參考值(23)每個(gè)覆蓋網(wǎng)絡(luò)探測(cè)網(wǎng)絡(luò)狀態(tài),并由SDN控制器統(tǒng)計(jì)該覆蓋網(wǎng)絡(luò)的需求;(24)每個(gè)覆蓋網(wǎng)絡(luò)的SDN控制器將自己上個(gè)周期的路由策略匯報(bào)到數(shù)據(jù)服務(wù)器上;(25)數(shù)據(jù)服務(wù)器將收集到的覆蓋網(wǎng)絡(luò)路由策略進(jìn)行匯總,得到上個(gè)周期的覆蓋網(wǎng)絡(luò)全局路由策略,并將匯總后的覆蓋網(wǎng)絡(luò)全局路由策略發(fā)送給各個(gè)覆蓋網(wǎng)絡(luò)的SDN控制器;(26)覆蓋網(wǎng)絡(luò)的SDN控制器根據(jù)收到的上個(gè)周期的全局覆蓋網(wǎng)絡(luò)路由策略和本周期在步驟(23)中所探測(cè)到的底層網(wǎng)絡(luò)流量分布情況,對(duì)覆蓋網(wǎng)絡(luò)的網(wǎng)絡(luò)參數(shù)進(jìn)行更新;(27)根據(jù)更新后的網(wǎng)絡(luò)參數(shù),每個(gè)覆蓋網(wǎng)絡(luò)的SDN控制器計(jì)算其自己覆蓋網(wǎng)絡(luò)的最優(yōu)路由策略;(28)每個(gè)覆蓋網(wǎng)絡(luò)的SDN控制器根據(jù)自己計(jì)算的最優(yōu)路由策略來對(duì)覆蓋網(wǎng)絡(luò)的路由進(jìn)行控制;(29)重復(fù)步驟(23)~(28),直至覆蓋網(wǎng)絡(luò)的最優(yōu)路由策略數(shù)個(gè)周期沒有變化。步驟(23)的具體內(nèi)容包括如下操作子步驟:(2301)每個(gè)覆蓋網(wǎng)絡(luò)統(tǒng)計(jì)其可用虛擬路徑,得到覆蓋網(wǎng)絡(luò)可用的虛擬路徑集合R(s);所述虛擬路徑集合R(s)的定義與前述步驟(1401)中的定義完全一致;(2302)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)自己的虛擬路徑,統(tǒng)計(jì)這些路徑所對(duì)應(yīng)的底層鏈路,得到覆蓋網(wǎng)絡(luò)路徑集合R(s)和底層鏈路之間的對(duì)應(yīng)關(guān)系矩陣A(s);所述A(s)的定義與前述步驟(1402)中的定義完全一致;(2303)覆蓋網(wǎng)絡(luò)探測(cè)并收集虛擬路徑上的底層流量分配信息,得到與虛擬路徑集合R(s)相對(duì)應(yīng)的底層流量分配矩陣U(-s),也就是虛擬路徑上的背景流量;所述U(-s)的定義與前述步驟(1403)中的定義完全一致;(2304)每個(gè)覆蓋網(wǎng)絡(luò)統(tǒng)計(jì)自己的服務(wù)請(qǐng)求得到覆蓋網(wǎng)絡(luò)流集合F(s);所述F(s)的定義與前述步驟(1404)中的定義完全一致;(2305)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)覆蓋網(wǎng)絡(luò)流的起始節(jié)點(diǎn)和目的節(jié)點(diǎn)統(tǒng)計(jì)其可用的虛擬路徑,并得到覆蓋網(wǎng)絡(luò)流集合F(s)與虛擬路徑集合R(s)的對(duì)應(yīng)關(guān)系矩陣B(s);所述B(s)的定義與前述步驟(1405)中的定義完全一致;(2306)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)各自的QoS表現(xiàn)需求來定義自己的虛擬路徑表現(xiàn)函數(shù)θr(U),該函數(shù)是與底層網(wǎng)絡(luò)流量部署情況相,所述θr(U)的定義與前述步驟(1406)中的定義完全一致;步驟(24)中所述的每個(gè)覆蓋網(wǎng)絡(luò)的路由策略用前述步驟(1407)所定義的路由策略矩陣v(s)來表示;步驟(25)中所述的全局覆蓋網(wǎng)絡(luò)路由策略用前述步驟(1407)所定義的全局路由策略矩陣v來表示。步驟(26)中所述的需要更新的網(wǎng)絡(luò)參數(shù)是如下參數(shù):覆蓋網(wǎng)絡(luò)探測(cè)的底層流量與其他覆蓋網(wǎng)絡(luò)實(shí)際路由策略的分歧參數(shù):α(t+1)=α(t)-λ(U(-s)-A(-s)(v(-s)E(-s)))覆蓋網(wǎng)絡(luò)的路由策略與其他覆蓋網(wǎng)絡(luò)實(shí)際探測(cè)的分歧參數(shù):β(t+1)=β(t)-λ(U(s)-A(s)(v(s)E(s)))覆蓋網(wǎng)絡(luò)流量對(duì)物理網(wǎng)絡(luò)造成的負(fù)載參數(shù):γ(t+1)=γ(t)-λ(c-A(s)(v(s)E(s))-U(-s))上述3個(gè)公式中:λ為收斂系數(shù),影響著覆蓋網(wǎng)絡(luò)合作的收斂速度和準(zhǔn)確度;λ的值可以根據(jù)實(shí)際情況進(jìn)行調(diào)整,而α,β和γ的初始值一般為0;α(t),β(t)和γ(t)分別為參數(shù)在周期t時(shí)的值,而α(t+1),β(t+1)和γ(t+1)分別為三個(gè)參數(shù)在下個(gè)周期,即周期t+1時(shí)的值。A(s)是在前述步驟(1402)中定義的覆蓋網(wǎng)絡(luò)s的路徑集合和底層鏈路之間的對(duì)應(yīng)關(guān)系矩陣,A(-s)=(A(1),…,A(s-1),A(s+1),…,A(|s|))為除覆蓋網(wǎng)絡(luò)s以外所有覆蓋網(wǎng)絡(luò)的路徑集合和底層鏈路之間的對(duì)應(yīng)關(guān)系的向量,其中的元素為每個(gè)覆蓋網(wǎng)絡(luò)的路徑集合和底層鏈路之間的對(duì)應(yīng)關(guān)系矩陣,S={1,2,…s,…}是覆蓋網(wǎng)絡(luò)編號(hào)的集合。U(-s)是在前述步驟(1403)中定義的覆蓋網(wǎng)絡(luò)s探測(cè)到的底層流量分布矩陣,U(s)是覆蓋網(wǎng)絡(luò)s實(shí)際分配到底層的流量向量,其定義如下:U(s)=(u1(s),...,ul(s),...,u|L|(s))T]]>這里是覆蓋網(wǎng)絡(luò)s實(shí)際分配到底層物理鏈路l上的流量,而l是底層物理鏈路的編號(hào)。v(s)是覆蓋網(wǎng)絡(luò)s的路由策略矩陣,定義與前述步驟(1407)中的定義完全一致;v(-s)是除了覆蓋網(wǎng)絡(luò)s以外的所有覆蓋網(wǎng)絡(luò)的路由策略的向量,其定義為:v(-s)=(v(1),…,v(s-1),v(s+1),…,v(|s|))TE(-s)是一個(gè)輔助矩陣,其定義為一個(gè)(|S|-1)×(|S|-1)的對(duì)角矩陣,其對(duì)角線上的元素為(E(1),…,E(s-1),E(s+1),…,E(|S|)),其形式如下:其中,E(i)是一個(gè)1×|F(i)|的全一矩陣,而F(i)為前述步驟(1404)中定義的覆蓋網(wǎng)絡(luò)i的覆蓋網(wǎng)絡(luò)流的集合。這里(v(-s)E(-s))的意義為計(jì)算除覆蓋網(wǎng)絡(luò)s以外的所有覆蓋網(wǎng)絡(luò)分配到它們的虛擬路徑上的流量,而A(-s)(v(-s)E(-s))的意義是計(jì)算這些流量分配到底層鏈路上的情況。c=(c1,c2,…,cl,…,c|L|)T,是物理鏈路承載能力的集合。這里cl代表著編號(hào)為l的物理鏈路的承載能力。步驟(27)的具體內(nèi)容是:覆蓋網(wǎng)絡(luò)的SDN控制器通過如下公式計(jì)算得到覆蓋網(wǎng)絡(luò)的最優(yōu)路由策略矩陣V(s),作為其最優(yōu)路由策略:其中為覆蓋網(wǎng)絡(luò)s的權(quán)值。本發(fā)明的有益效果在于:通過引入SDN的概念來構(gòu)建覆蓋網(wǎng)絡(luò),本發(fā)明將覆蓋網(wǎng)絡(luò)路由的數(shù)據(jù)平面和控制平面相分離,大大降低了異構(gòu)覆蓋網(wǎng)絡(luò)合作的難度。在此基礎(chǔ)上,通過構(gòu)建異構(gòu)覆蓋網(wǎng)絡(luò)合作架構(gòu),本發(fā)明解決了異構(gòu)覆蓋網(wǎng)絡(luò)之間的相互感知問題,為異構(gòu)覆蓋網(wǎng)絡(luò)的合作提供了基礎(chǔ)。本發(fā)明提出的實(shí)現(xiàn)覆蓋網(wǎng)絡(luò)合作路由的兩種方法考慮了異構(gòu)覆蓋網(wǎng)絡(luò)不同的需求,改善了覆蓋網(wǎng)絡(luò)之間的路由沖突,使覆蓋網(wǎng)絡(luò)通過合作來優(yōu)化各自的流量安排,最終基于異構(gòu)覆蓋網(wǎng)絡(luò)各自的需求提高了它們的表現(xiàn)。附圖說明圖1是本發(fā)明提出的基于SDN實(shí)現(xiàn)異構(gòu)覆蓋網(wǎng)路由優(yōu)化的集中式方法的流程圖。圖2是本發(fā)明的實(shí)施例中異構(gòu)覆蓋網(wǎng)絡(luò)的合作架構(gòu)示意圖。圖3是本發(fā)明的實(shí)施例中覆蓋網(wǎng)絡(luò)的網(wǎng)絡(luò)示意圖。圖4是本發(fā)明提出的基于SDN實(shí)現(xiàn)異構(gòu)覆蓋網(wǎng)路由優(yōu)化的分布式方法的流程圖。具體實(shí)施方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述。參見圖1,介紹本發(fā)明提出的提出了基于SDN實(shí)現(xiàn)異構(gòu)覆蓋網(wǎng)路由優(yōu)化的集中式方法,所述方法包括下列操作步驟:(11)參見圖2,為每一個(gè)覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)SDN控制器,為所有覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)數(shù)據(jù)服務(wù)器,所述的覆蓋網(wǎng)絡(luò)的SDN控制器都與所述的數(shù)據(jù)服務(wù)器相連接;在圖2中,有3個(gè)覆蓋網(wǎng)絡(luò),編號(hào)為1到3,每個(gè)覆蓋網(wǎng)絡(luò)都設(shè)置了一個(gè)SDN控制器,為整個(gè)覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)數(shù)據(jù)服務(wù)器;(12)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)經(jīng)驗(yàn)或者歷史表現(xiàn)來設(shè)定自己的基準(zhǔn)表現(xiàn)參考值例如覆蓋網(wǎng)絡(luò)在不進(jìn)行合作時(shí)獲得的收益為那么覆蓋網(wǎng)絡(luò)可以將基準(zhǔn)表現(xiàn)參考值設(shè)為使合作后獲得的收益不低于不合作時(shí)的收益。這樣的設(shè)定是比較恰當(dāng)?shù)摹⒁妶D3,例如,在不進(jìn)行合作時(shí),時(shí)延敏感的覆蓋網(wǎng)絡(luò)1的覆蓋網(wǎng)絡(luò)流加權(quán)時(shí)延為500ms。因?yàn)闀r(shí)延敏感的覆蓋網(wǎng)絡(luò)的表現(xiàn)和它的覆蓋網(wǎng)絡(luò)流加權(quán)時(shí)延負(fù)相關(guān),那么覆蓋網(wǎng)絡(luò)1此時(shí)的表現(xiàn)可以設(shè)為那么覆蓋網(wǎng)絡(luò)1的基準(zhǔn)表現(xiàn)參考值可以設(shè)為(13)覆蓋網(wǎng)絡(luò)節(jié)點(diǎn)對(duì)底層網(wǎng)絡(luò)進(jìn)行探測(cè),獲取到當(dāng)前的網(wǎng)絡(luò)狀態(tài),然后覆蓋網(wǎng)絡(luò)將探測(cè)到的網(wǎng)絡(luò)狀態(tài)信息經(jīng)過所述的SDN控制器的匯總,上傳給所述的數(shù)據(jù)服務(wù)器;(14)當(dāng)覆蓋網(wǎng)絡(luò)中產(chǎn)生服務(wù)請(qǐng)求的時(shí)候,該覆蓋網(wǎng)絡(luò)的請(qǐng)求節(jié)點(diǎn)會(huì)向SDN控制器匯報(bào)并請(qǐng)求路由策略;SDN控制器匯總覆蓋網(wǎng)絡(luò)中的服務(wù)請(qǐng)求后,計(jì)算出覆蓋網(wǎng)絡(luò)的表現(xiàn)函數(shù)并上傳給數(shù)據(jù)服務(wù)器;(15)所述的數(shù)據(jù)服務(wù)器將所收到的覆蓋網(wǎng)絡(luò)的表現(xiàn)函數(shù)進(jìn)行匯總后,計(jì)算出最優(yōu)全局路由策略;然后數(shù)據(jù)服務(wù)器將計(jì)算出的最優(yōu)全局路由策略進(jìn)行切分并發(fā)送給對(duì)應(yīng)的覆蓋網(wǎng)絡(luò)的SDN控制器;所述的切分是指把全局路由策略根據(jù)覆蓋網(wǎng)絡(luò)的對(duì)應(yīng)關(guān)系把對(duì)應(yīng)部分分割出來;(16)所述的SDN控制器從數(shù)據(jù)服務(wù)器接收到路由策略后,將其部署到覆蓋網(wǎng)絡(luò)中,然后由覆蓋網(wǎng)絡(luò)節(jié)點(diǎn)根據(jù)該路由策略將流量部署到底層網(wǎng)絡(luò)中;(17)重復(fù)步驟(13)~(16),直至覆蓋網(wǎng)絡(luò)的路由策略數(shù)個(gè)周期沒有變化。步驟(14)的具體內(nèi)容包括如下操作子步驟:(1401)每個(gè)覆蓋網(wǎng)絡(luò)統(tǒng)計(jì)其可用虛擬路徑,得到該覆蓋網(wǎng)絡(luò)可用的虛擬路徑集合R(s)R(s)={r1,r2,…,ri,…,rn}這里ri代表著該覆蓋網(wǎng)絡(luò)的第i條虛擬路徑,n是該覆蓋網(wǎng)絡(luò)的虛擬路徑的總數(shù);參見圖3,一般來說覆蓋網(wǎng)絡(luò)具有數(shù)個(gè)虛擬節(jié)點(diǎn),這些節(jié)點(diǎn)間由虛擬鏈路相連接,而虛擬路徑則由這些鏈路組成。在圖3中,虛擬節(jié)點(diǎn)A、B和C組成覆蓋網(wǎng)絡(luò)1,虛擬節(jié)點(diǎn)D、E和F組成覆蓋網(wǎng)絡(luò)2。以覆蓋網(wǎng)絡(luò)1為例,節(jié)點(diǎn)A點(diǎn)到節(jié)點(diǎn)C有兩條虛擬路徑可以選擇,即A-C和A-B-C。那么我們記r1=A-C;r2=A-B-C。同理可得r3=A-B;r4=A-C-B;r5=B-C;r6=B-A-C。那么對(duì)于覆蓋網(wǎng)絡(luò)1,R(1)={r1,r2,r3,r4,r5,r6,}。對(duì)于覆蓋網(wǎng)絡(luò)2,R(2)={r1,r2,r3,r4,r5,r6,}。這里,r1=D-F;r2=D-E-F;r3=D-E;r4=D-F-E;r5=E-F;r6=E-D-F。(1402)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)自己的虛擬路徑,統(tǒng)計(jì)這些虛擬路徑所對(duì)應(yīng)的底層鏈路,得到所述的覆蓋網(wǎng)絡(luò)虛擬路徑集合R(s)和底層鏈路之間的對(duì)應(yīng)關(guān)系矩陣A(s):這里,l,r分別是底層物理鏈路和該覆蓋網(wǎng)絡(luò)虛擬路徑的編號(hào),L是所有物理鏈路的總集合。L={link1,link2,…,linkl,…},這里linkl代表第l條物理鏈路。當(dāng)arl=1時(shí),表示底層物理鏈路l是虛擬路徑r的一部分,當(dāng)arl=0時(shí),表示底層物理鏈路l與虛擬路徑r無關(guān);以圖3為例,L={a-b,a-d,b-c,c-d};R(s)與(1401)中一致;那么A(1)=011001100101010110100101;A(2)=011001011001100101010110]]>(1403)覆蓋網(wǎng)絡(luò)探測(cè)并收集虛擬路徑上的底層流量分布信息,得到與其虛擬路徑集合R(s)相對(duì)應(yīng)的底層流量分布向量U(-s),也就是虛擬路徑上的背景流量:U(-s)=(u1(-s),...,ul(-s),...,u|L|(-s))T]]>這里是覆蓋網(wǎng)絡(luò)s探測(cè)到的底層物理鏈路l上承載的背景流量,而l是底層物理鏈路的編號(hào);以圖3為例,假設(shè)覆蓋網(wǎng)絡(luò)1探測(cè)到底層物理鏈路的承載的流量分別為:a-b上1Mbps,a-d上1Mbps,b-c上2Mbps,c-d上1Mbps,那么U(-1)=(1,1,2,1)T(1404)每個(gè)覆蓋網(wǎng)絡(luò)統(tǒng)計(jì)自己的服務(wù)請(qǐng)求得到覆蓋網(wǎng)絡(luò)流集合F(s):F(s)={f1,f2,…,fk}該集合中,每一個(gè)元素表示:對(duì)應(yīng)于一個(gè)服務(wù)請(qǐng)求,覆蓋網(wǎng)絡(luò)需要提供的一條覆蓋網(wǎng)絡(luò)流;所述的覆蓋網(wǎng)絡(luò)流包含起始節(jié)點(diǎn)、目的節(jié)點(diǎn)以及基本的帶寬、時(shí)延等需求信息;以第i條覆蓋網(wǎng)絡(luò)流為例,它的需求信息是從節(jié)點(diǎn)A到節(jié)點(diǎn)B并滿足帶寬不低于1Mb,那么,這些信息記為又例如第j條覆蓋網(wǎng)絡(luò)流的需求信息是從節(jié)點(diǎn)C到節(jié)點(diǎn)D并滿足總時(shí)延不高于500ms;那么,這些信息記為以圖3為例,覆蓋網(wǎng)絡(luò)1有兩個(gè)流量需求,那么F(1)={f1,f2},覆蓋網(wǎng)絡(luò)2有一個(gè)流量需求,F(xiàn)(2)={f1},(1405)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)所述的覆蓋網(wǎng)絡(luò)流的起始節(jié)點(diǎn)和目的節(jié)點(diǎn)統(tǒng)計(jì)其可用的虛擬路徑,并得到覆蓋網(wǎng)絡(luò)流集合F(s)與虛擬路徑集合R(s)的對(duì)應(yīng)關(guān)系矩陣B(s):這里,f,r分別是覆蓋網(wǎng)絡(luò)流和覆蓋網(wǎng)絡(luò)虛擬路徑的編號(hào),當(dāng)bfr=1時(shí),表示覆蓋網(wǎng)絡(luò)流f可以通過虛擬路徑r傳輸數(shù)據(jù),當(dāng)bfr=0時(shí),表示虛擬路徑r對(duì)于覆蓋網(wǎng)絡(luò)流f不可用;以圖3為例,B(1)=101000000101;B(2)=110000]]>(1406)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)各自的QoS表現(xiàn)需求來定義自己的虛擬路徑表現(xiàn)函數(shù),該函數(shù)是與底層網(wǎng)絡(luò)流量部署情況相關(guān)的函數(shù),表示覆蓋網(wǎng)絡(luò)表現(xiàn)與底層網(wǎng)絡(luò)中具體流量分布的關(guān)系;虛擬路徑表現(xiàn)函數(shù)的定義根據(jù)覆蓋網(wǎng)絡(luò)的種類和QoS表現(xiàn)需求而有所不同,對(duì)于時(shí)延敏感的覆蓋網(wǎng)絡(luò),虛擬路徑表現(xiàn)函數(shù)是一條覆蓋網(wǎng)絡(luò)虛擬路徑的時(shí)延函數(shù),該函數(shù)定義如下:θr(U)=-1*Σl∈rdelayl(ul)]]>這里r代表著一條虛擬路徑,而l代表著這條虛擬路徑上的一條物理鏈路。delayl(ul)是物理鏈路的時(shí)延函數(shù),代表物理鏈路l的時(shí)延與它所實(shí)際承載的流量ul的關(guān)系。U=(u1,u2,…,u|L|)T則為底層鏈路負(fù)載向量,代表著底層鏈路實(shí)際負(fù)載的總體情況。以步驟(1401)中R(1)中的r2為例,r2由link1和link3組成,所以θ2(U)=-1*[delay1(u1)+delay3(u3)](1407)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)下式計(jì)算得到各自的覆蓋網(wǎng)絡(luò)表現(xiàn)函數(shù):pref(s)(v(s))=(v(s)E(s))T[θ(A(s)(v(s)E(s))+U(-s))]上式中的v(s)為覆蓋網(wǎng)絡(luò)s的路由策略矩陣,其定義如下:以圖3為例,覆蓋網(wǎng)絡(luò)1的覆蓋網(wǎng)絡(luò)流f1向虛擬路徑A-C分配0.5Mbps的流量,向虛擬路徑A-B-C分配1.5Mbps的流量,覆蓋網(wǎng)絡(luò)流f2向虛擬路徑B-C分配1Mbps的流量;覆蓋網(wǎng)絡(luò)2的覆蓋網(wǎng)絡(luò)流f1向虛擬路徑D-F分配2Mbps的流量,向虛擬路徑D-E-F分配1Mbps的流量。那么:v(1)=0.501.5000000100;v(2)=210000]]>這里vfr代表覆蓋網(wǎng)絡(luò)流f分配到虛擬路徑r上的流量。并且當(dāng)且僅當(dāng)bfr=1時(shí),vfr≥0,即該虛擬路徑r可為覆蓋網(wǎng)絡(luò)流f所用時(shí),覆蓋網(wǎng)絡(luò)流f才可對(duì)其分配流量。E(s)則是一個(gè)輔助矩陣,其定義為一個(gè)1×|F(s)|的全一矩陣,即(1,1,…,1)T,用于對(duì)每列元素的求和。v(s)E(s)的意義是計(jì)算覆蓋網(wǎng)絡(luò)s分配到每條虛擬路徑上的向量。以圖3中覆蓋網(wǎng)絡(luò)1為例,pref(1)(v(1))=(v(1)E(1))T[θ(A(1)(v(1)E(1))+U(-1))]=(0.501.500000010011)T[θ(011001100101010110100101(0.501.500000010011)+1121)]=0.5*θ1(U)+1.5*θ2(U)+1*θ5(U)]]>這里U=(2.5,1.5,4.5,1.5)T步驟(15)中所述的數(shù)據(jù)服務(wù)器計(jì)算出最優(yōu)全局路由策略是指:按照下式計(jì)算出全局路由策略矩陣v的最優(yōu)值V:在該公式中,是覆蓋網(wǎng)絡(luò)s的基準(zhǔn)表現(xiàn)值;pref(s)(v(s))則是所述步驟(1407)中定義的覆蓋網(wǎng)絡(luò)表現(xiàn)函數(shù);v=(v(1),v(2),…,v(s),…)T是全局路由策略矩陣,表示把所有覆蓋網(wǎng)絡(luò)的路由策略矩陣進(jìn)行匯總;是覆蓋網(wǎng)絡(luò)s的權(quán)值。在服務(wù)器對(duì)最優(yōu)全局路由策略進(jìn)行切分時(shí),會(huì)將對(duì)應(yīng)的路由策略發(fā)給覆蓋網(wǎng)絡(luò)。例如,假設(shè)最優(yōu)全局路由策略為:V=(200000000100,200000)T]]>那么服務(wù)器會(huì)進(jìn)行切分,將發(fā)給覆蓋網(wǎng)絡(luò)1,將發(fā)給覆蓋網(wǎng)絡(luò)2。參見圖4,為了達(dá)到本發(fā)明的目的,本發(fā)明還提出了基于SDN實(shí)現(xiàn)異構(gòu)覆蓋網(wǎng)路由優(yōu)化的分布式方法,所述方法包括下列操作步驟:(21)參見圖2,為每一個(gè)覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)SDN控制器,為所有覆蓋網(wǎng)絡(luò)設(shè)置一個(gè)數(shù)據(jù)服務(wù)器,所述的覆蓋網(wǎng)絡(luò)的SDN控制器都與所述的數(shù)據(jù)服務(wù)器相連接;(22)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)經(jīng)驗(yàn)或者歷史表現(xiàn)來設(shè)定自己的基準(zhǔn)表現(xiàn)參考值例如覆蓋網(wǎng)絡(luò)在不進(jìn)行合作時(shí)獲得的收益為那么覆蓋網(wǎng)絡(luò)可以將基準(zhǔn)表現(xiàn)參考值設(shè)為使合作后獲得的收益不低于不合作時(shí)的收益。這樣的設(shè)定是比較恰當(dāng)?shù)摹?23)每個(gè)覆蓋網(wǎng)絡(luò)探測(cè)網(wǎng)絡(luò)狀態(tài),并由SDN控制器統(tǒng)計(jì)該覆蓋網(wǎng)絡(luò)的需求;(24)每個(gè)覆蓋網(wǎng)絡(luò)的SDN控制器將自己上個(gè)周期的路由策略匯報(bào)到數(shù)據(jù)服務(wù)器上;(25)數(shù)據(jù)服務(wù)器將收集到的覆蓋網(wǎng)絡(luò)路由策略進(jìn)行匯總,得到上個(gè)周期的覆蓋網(wǎng)絡(luò)全局路由策略,并將匯總后的覆蓋網(wǎng)絡(luò)全局路由策略發(fā)送給各個(gè)覆蓋網(wǎng)絡(luò)的SDN控制器;(26)覆蓋網(wǎng)絡(luò)的SDN控制器根據(jù)收到的上個(gè)周期的全局覆蓋網(wǎng)絡(luò)路由策略和本周期在步驟(23)中所探測(cè)到的底層網(wǎng)絡(luò)流量分布情況,對(duì)覆蓋網(wǎng)絡(luò)的網(wǎng)絡(luò)參數(shù)進(jìn)行更新;(27)根據(jù)更新后的網(wǎng)絡(luò)參數(shù),每個(gè)覆蓋網(wǎng)絡(luò)的SDN控制器計(jì)算其自己覆蓋網(wǎng)絡(luò)的最優(yōu)路由策略;(28)每個(gè)覆蓋網(wǎng)絡(luò)的SDN控制器根據(jù)自己計(jì)算的最優(yōu)路由策略來對(duì)覆蓋網(wǎng)絡(luò)的路由進(jìn)行控制;(29)重復(fù)步驟(23)~(28),直至覆蓋網(wǎng)絡(luò)的最優(yōu)路由策略數(shù)個(gè)周期沒有變化。步驟(23)的具體內(nèi)容包括如下操作子步驟:(2301)每個(gè)覆蓋網(wǎng)絡(luò)統(tǒng)計(jì)其可用虛擬路徑,得到覆蓋網(wǎng)絡(luò)可用的虛擬路徑集合R(s);所述虛擬路徑集合R(s)的定義與前述步驟(1401)中的定義完全一致;(2302)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)自己的虛擬路徑,統(tǒng)計(jì)這些路徑所對(duì)應(yīng)的底層鏈路,得到覆蓋網(wǎng)絡(luò)路徑集合R(s)和底層鏈路之間的對(duì)應(yīng)關(guān)系矩陣A(s);所述A(s)的定義與前述步驟(1402)中的定義完全一致;(2303)覆蓋網(wǎng)絡(luò)探測(cè)并收集虛擬路徑上的底層流量分配信息,得到與虛擬路徑集合R(s)相對(duì)應(yīng)的底層流量分配矩陣U(-s),也就是虛擬路徑上的背景流量;所述U(-s)的定義與前述步驟(1403)中的定義完全一致;(2304)每個(gè)覆蓋網(wǎng)絡(luò)統(tǒng)計(jì)自己的服務(wù)請(qǐng)求得到覆蓋網(wǎng)絡(luò)流集合F(s);所述F(s)的定義與前述步驟(1404)中的定義完全一致;(2305)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)覆蓋網(wǎng)絡(luò)流的起始節(jié)點(diǎn)和目的節(jié)點(diǎn)統(tǒng)計(jì)其可用的虛擬路徑,并得到覆蓋網(wǎng)絡(luò)流集合F(s)與虛擬路徑集合R(s)的對(duì)應(yīng)關(guān)系矩陣B(s);所述B(s)的定義與前述步驟(1405)中的定義完全一致;(2306)每個(gè)覆蓋網(wǎng)絡(luò)根據(jù)各自的QoS表現(xiàn)需求來定義自己的虛擬路徑表現(xiàn)函數(shù)θr(U),該函數(shù)是與底層網(wǎng)絡(luò)流量部署情況相,所述θr(U)的定義與前述步驟(1406)中的定義完全一致;步驟(24)中所述的每個(gè)覆蓋網(wǎng)絡(luò)的路由策略用前述步驟(1407)所定義的路由策略矩陣v(s)來表示;步驟(25)中所述的全局覆蓋網(wǎng)絡(luò)路由策略用前述步驟(1407)所定義的全局路由策略矩陣v來表示。步驟(26)中所述的需要更新的網(wǎng)絡(luò)參數(shù)是如下參數(shù):覆蓋網(wǎng)絡(luò)探測(cè)的底層流量與其他覆蓋網(wǎng)絡(luò)實(shí)際路由策略的分歧參數(shù):α(t+1)=α(t)-λ(U(-s)-A(-s)(v(-s)E(-s)))覆蓋網(wǎng)絡(luò)的路由策略與其他覆蓋網(wǎng)絡(luò)實(shí)際探測(cè)的分歧參數(shù):β(t+1)=β(t)-λ(U(s)-A(s)(v(s)E(s)))覆蓋網(wǎng)絡(luò)流量對(duì)物理網(wǎng)絡(luò)造成的負(fù)載參數(shù):γ(t+1)=γ(t)-λ(c-A(s)(v(s)E(s))-U(-s))上述3個(gè)公式中:λ為收斂系數(shù),影響著覆蓋網(wǎng)絡(luò)合作的收斂速度和準(zhǔn)確度;λ的值可以根據(jù)實(shí)際情況進(jìn)行調(diào)整,通過實(shí)驗(yàn),我們發(fā)現(xiàn)λ的取值一般在0~1之間比較合適,λ越大,收斂速度越快,λ越小,收斂準(zhǔn)確度越高。因此,實(shí)際中我們可以先在第一個(gè)周期令λ=1,在這之后,每個(gè)周期逐漸減小λ的取值。例如,令λt=0.8*λt-1。這里λt為周期t時(shí)λ的取值,λt-1為上個(gè)周期的λ的取值。而α,β和γ的初始值一般為0;α(t),β(t)和γ(t)分別為參數(shù)在周期t時(shí)的值,而α(t+1),β(t+1)和γ(t+1)分別為三個(gè)參數(shù)在下個(gè)周期,即周期t+1時(shí)的值。A(s)是在前述步驟(1402)中定義的覆蓋網(wǎng)絡(luò)s的路徑集合和底層鏈路之間的對(duì)應(yīng)關(guān)系矩陣,A(-s)=(A(1),…,A(s-1),A(s+1),…,A(|S|))為除覆蓋網(wǎng)絡(luò)s以外所有覆蓋網(wǎng)絡(luò)的路徑集合和底層鏈路之間的對(duì)應(yīng)關(guān)系的向量,其中的元素為每個(gè)覆蓋網(wǎng)絡(luò)的路徑集合和底層鏈路之間的對(duì)應(yīng)關(guān)系矩陣,S={1,2,…S,…}是覆蓋網(wǎng)絡(luò)編號(hào)的集合。以圖3為例,A(-1)=(A(2)),A(-2)=(A(1))。U(-s)是在前述步驟(1403)中定義的覆蓋網(wǎng)絡(luò)s探測(cè)到的底層流量分布矩陣,U(s)是覆蓋網(wǎng)絡(luò)s實(shí)際分配到底層的流量向量,其定義如下:U(s)=(u1(s),...,ul(s),...,u|L|(s))T]]>以步驟(1407)中的覆蓋網(wǎng)絡(luò)路由策略為例,U(1)=(1.5,0.5,2.5,0.5)T,U(2)=(1,1,2,1)T。這里是覆蓋網(wǎng)絡(luò)s實(shí)際分配到底層物理鏈路l上的流量,而l是底層物理鏈路的編號(hào)。v(s)是覆蓋網(wǎng)絡(luò)s的路由策略矩陣,定義與前述步驟(1407)中的定義完全一致;v(-s)是除了覆蓋網(wǎng)絡(luò)s以外的所有覆蓋網(wǎng)絡(luò)的路由策略的向量,其定義為:v(-s)=(v(1),…,v(s-1),v(s+1),…,v(|S|))T以步驟(1407)中的覆蓋網(wǎng)絡(luò)路由策略為例,v(-1)=(v(2)),v(-2)=(v(1))。E(-s)是一個(gè)輔助矩陣,其定義為一個(gè)(|S|-1)×(|S|-1)的對(duì)角矩陣,其對(duì)角線上的元素為(E(1),…,E(s-1),E(s+1),…,E(|s|)),其形式如下:以圖3為例,其中,E(i)是一個(gè)1×|F(i)|的全一矩陣,而F(i)為前述步驟(1404)中定義的覆蓋網(wǎng)絡(luò)i的覆蓋網(wǎng)絡(luò)流的集合。這里(v(-s)E(-s))的意義為計(jì)算除覆蓋網(wǎng)絡(luò)s以外的所有覆蓋網(wǎng)絡(luò)分配到它們的虛擬路徑上的流量,而A(-s)(v(-s)E(-s))的意義是計(jì)算這些流量分配到底層鏈路上的情況。c=(c1,c2,…,cl,…,c|L|)T,是物理鏈路承載能力的集合。這里cl代表著編號(hào)為l的物理鏈路的承載能力。以圖3為例,c=(3,4,5,3)T。步驟(27)的具體內(nèi)容是:覆蓋網(wǎng)絡(luò)的SDN控制器通過如下公式計(jì)算得到覆蓋網(wǎng)絡(luò)的最優(yōu)路由策略矩陣V(s),作為其最優(yōu)路由策略:其中為覆蓋網(wǎng)絡(luò)s的權(quán)值。發(fā)明人對(duì)本發(fā)明所提出的方法進(jìn)行了大量仿真實(shí)驗(yàn)。在仿真實(shí)驗(yàn)中,我們使用通用的拓?fù)渖善鱃T-ITM軟件構(gòu)建了數(shù)個(gè)不同的底層網(wǎng)絡(luò)環(huán)境。我們?cè)跇?gòu)建的底層網(wǎng)絡(luò)環(huán)境中,網(wǎng)絡(luò)節(jié)點(diǎn)的數(shù)量為20~100個(gè)不等,每?jī)蓚€(gè)物理節(jié)點(diǎn)之間具有鏈路相連的概率在20%~100%之間變化,鏈路的帶寬則在10~20Mbps之間變化。同時(shí),我們也在生成的底層網(wǎng)絡(luò)上隨機(jī)構(gòu)建了數(shù)量不等,規(guī)模不同,種類不同的覆蓋網(wǎng)絡(luò)。根據(jù)底層網(wǎng)絡(luò)的的規(guī)模,覆蓋網(wǎng)絡(luò)的數(shù)量在3~10個(gè)之間;覆蓋網(wǎng)絡(luò)的規(guī)模也在5~20個(gè)節(jié)點(diǎn)間變化。構(gòu)建的覆蓋網(wǎng)絡(luò)主要可以分為3類:時(shí)延敏感的覆蓋網(wǎng)絡(luò)(代表了提供視頻流等服務(wù)的覆蓋網(wǎng)絡(luò)),吞吐量敏感的覆蓋網(wǎng)絡(luò)(代表了提供文件傳輸服務(wù)等服務(wù)的覆蓋網(wǎng)絡(luò))以及丟包率敏感的覆蓋網(wǎng)絡(luò)(代表了提供實(shí)時(shí)通信服務(wù)等服務(wù)的覆蓋網(wǎng)絡(luò))。覆蓋網(wǎng)絡(luò)的服務(wù)需求也是根據(jù)覆蓋網(wǎng)絡(luò)的種類隨機(jī)生成的。每個(gè)節(jié)點(diǎn)對(duì)產(chǎn)生服務(wù)需求的概率為30%,而占用帶寬則在0.5~3Mbps之間變化。在每次仿真實(shí)驗(yàn)中,我們讓覆蓋網(wǎng)絡(luò)進(jìn)行n*50(n為共存覆蓋網(wǎng)絡(luò)數(shù)量)個(gè)周期的迭代,并以10次仿真結(jié)果的平均值作為最后的仿真實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果證明本發(fā)明的方法是有效的。在不同種類覆蓋網(wǎng)絡(luò)共存的情況下,本發(fā)明可以根據(jù)不同種類覆蓋網(wǎng)絡(luò)的需求改善其表現(xiàn),降低了覆蓋網(wǎng)絡(luò)的時(shí)延和丟包率,提高了覆蓋網(wǎng)絡(luò)的吞吐量。而且,在覆蓋網(wǎng)絡(luò)數(shù)量增加,網(wǎng)絡(luò)環(huán)境變得復(fù)雜的情況時(shí),改進(jìn)的覆蓋網(wǎng)絡(luò)合作路由方案用相對(duì)較少的運(yùn)算代價(jià)依然有效地改善了覆蓋網(wǎng)絡(luò)的表現(xiàn)。同時(shí),本發(fā)明也有效地減少了由覆蓋網(wǎng)絡(luò)資源競(jìng)爭(zhēng)造成的底層網(wǎng)絡(luò)擁塞,改善了底層網(wǎng)絡(luò)的網(wǎng)絡(luò)環(huán)境。實(shí)驗(yàn)表明本發(fā)明提出的這兩種方法都是非常有效的。當(dāng)前第1頁1 2 3