專利名稱:一種多拓撲虛擬網(wǎng)絡映射方法
一種多拓撲虛擬網(wǎng)絡映射方法技術領域
網(wǎng)絡虛擬化技術是推動互聯(lián)網(wǎng)體系架構發(fā)展的重要方法之一,其本質是通過抽象、分配、隔離機制在一個公共物理網(wǎng)絡上獨立地運營多個虛擬子網(wǎng),各虛擬子網(wǎng)可以使用相互獨立的協(xié)議體系,并能夠根據(jù)用戶動態(tài)變化的需求對整個網(wǎng)絡中節(jié)點和鏈路資源進行合理配置,從而增強網(wǎng)絡的靈活性與多樣性,實現(xiàn)網(wǎng)絡的可測可控性,最優(yōu)化網(wǎng)絡資源的分配與調度,提高安全和服務質量、降低運營維護成本,以求根本性地解決互聯(lián)網(wǎng)現(xiàn)有的僵化、以補丁和更新為主的發(fā)展現(xiàn)狀。
網(wǎng)絡虛擬化技術可以用于為新型網(wǎng)絡體系結構的研究提供共享物理實驗網(wǎng)絡的基礎,同時它還能夠將底層物理設施提供商與網(wǎng)絡服務運營商相分離,允許多個運營商的網(wǎng)絡共享同一個公共的底層物理網(wǎng)絡基礎架構(鏈路、交換節(jié)點等),每個網(wǎng)絡都在其中擁有既不受其他網(wǎng)絡影響又可以靈活調整的網(wǎng)絡資源份額,不同網(wǎng)絡運營商可以采用不同的網(wǎng)絡協(xié)議,提供創(chuàng)新的端到端服務,因此網(wǎng)絡虛擬化也很有希望成為一種未來網(wǎng)絡的主流運營模式。
背景技術:
虛擬網(wǎng)絡映射問題則是網(wǎng)絡虛擬化技術中必不可少的環(huán)節(jié),它的主要功能是將用戶的虛擬網(wǎng)絡請求(Virtual Request)合理地映射至運營商提供的底層物理網(wǎng)絡設施 (Substrate Network),映射過程不僅要實現(xiàn)虛擬網(wǎng)絡之間的分隔與互不影響,從而保證每個虛擬網(wǎng)絡用戶的服務質量(QM),同時也要盡量合理地分配底層物理網(wǎng)絡資源,提高資源利用率。如圖1所示。
在圖1中,兩個不同的虛擬網(wǎng)絡被映射在底層物理網(wǎng)絡上,并向相應的用戶提供服務。由于虛擬網(wǎng)絡請求拓撲的多樣性,以及節(jié)點和鏈路兩組限制條件需要同時考慮,使得將多個不同的虛擬網(wǎng)絡映射到一個公共底層物理網(wǎng)絡成為NP-hard問題。為解決該問題, 國外很多研究學者已經(jīng)提出了一些求解映射匹配次優(yōu)解的映射方法,但現(xiàn)有算法僅針對隨即拓撲的虛網(wǎng)請求進行研究。
虛擬網(wǎng)絡映射的實現(xiàn)過程可以分為兩個步驟節(jié)點映射和鏈路映射。現(xiàn)有的主要方法是使用貪婪算法進行節(jié)點映射,使用K最短路徑算法進行鏈路映射。系統(tǒng)以時間窗為單位,一個時間窗內的所有虛擬網(wǎng)絡請求將按照其收入(Revenue)排序,從規(guī)模最大的請求開始進行映射。若映射成功,則更新底層物理網(wǎng)絡狀態(tài);若失敗,則將請求放入等待隊列; 或直接拒絕該請求。
其中,對每個虛擬網(wǎng)絡請求的映射步驟如下
首先進行節(jié)點映射對虛擬網(wǎng)絡請求中的每個虛網(wǎng)節(jié)點(Vn。J,使用貪婪算法尋找擁有最大剩余資源(Available Resource, AR)的底層物理網(wǎng)節(jié)點(Sn。de);若該Sn。de滿足該Vn。de的CPU限制,則該Vn。de映射成功;若對某Vmtte,沒有滿足要求的Sn。de,則節(jié)點映射失?。蝗羲蠽n。de映射成功,則節(jié)點映射完成。
節(jié)點映射完成后進行鏈路映射對虛擬網(wǎng)絡請求中的每條虛網(wǎng)鏈路(Vlink),確定其兩端點Vn。del、Vn。de2映射至底層物理網(wǎng)絡中的Snmto、Sn。de2 ;使用K最短路徑算法尋找Sn。del、 Snode2之間的第I-K條最短路徑;若其中某條路徑滿足該Vlink的帶寬要求,則該Vlink映射成功;若所有K條路徑均不滿足帶寬要求,則鏈路映射失敗;若所有Vlink映射成功,則鏈路映射完成。
在現(xiàn)階段的虛擬網(wǎng)絡映射算法中,僅考慮了隨機拓撲的虛網(wǎng)請求,而在實際應用中,虛網(wǎng)請求往往是針對具體的需求而生成的,因此具有相應的拓撲結構。例如內容分發(fā)網(wǎng)絡(CDN) —般是星型拓撲,交互式網(wǎng)絡電視(IPTV)在進行多播分發(fā)時一般使用樹型拓撲等等。由于沒有考慮到使用拓撲信息對虛網(wǎng)映射算法進行專門優(yōu)化,現(xiàn)有虛網(wǎng)映射算法對底層物理網(wǎng)絡資源的利用率較低,即系統(tǒng)的支出(Cost)較高,收入支出比(Revenue/Cost)較低。發(fā)明內容
本發(fā)明分析了虛網(wǎng)拓撲信息對虛網(wǎng)映射算法的影響,發(fā)現(xiàn)在虛網(wǎng)節(jié)點映射部分, 如果可以針對不同的網(wǎng)絡拓撲進行優(yōu)化,則后續(xù)鏈路映射的復雜度可以大大簡化,并可以提高底層物理網(wǎng)資源的利用率。
本發(fā)明根據(jù)該出發(fā)點設計了一種多拓撲虛網(wǎng)映射方法,為虛網(wǎng)映射問題引入了拓撲信息進行優(yōu)化。該方法包括四種子算法,當相應拓撲的虛網(wǎng)請求到達時,系統(tǒng)可以識別該拓撲并調用相應的子算法。這四種子算法分別針對星型拓撲、環(huán)型拓撲、樹型拓撲、隨機拓撲進行了優(yōu)化,經(jīng)過優(yōu)化的四種算法分別使用了隨機型加權剩余資源(General Weighted Available Resource,GWAR)、星型加權剩余資源(Star Weighted Available Resource, SWAR)、環(huán)型加權剩余資源(Ring Weighted Available Resource, RWAR)、樹型加權剩余資源(Tree Weighted Available Resource, TWAR)作為節(jié)點映射的優(yōu)化目標,充分利用了這些拓撲結構的特點,使映射結果使用底層物理網(wǎng)絡資源所付出的支出大幅降低,因而大幅提高了收入支出比。
本發(fā)明涉及的定義
1)收入(Revenue)
Revenue是指虛網(wǎng)映射成功獲得的利潤,根據(jù)映射成功的虛網(wǎng)帶寬和CPU定義
Revenue = α Ε Σ BWe+ β Ε Σ CPUe
其中,BWk是映射成功的虛網(wǎng)帶寬,0 隊是映射成功的虛網(wǎng)節(jié)點CPU資源,α jP βκ 是用于調節(jié)帶寬和CPU的權重系數(shù),也可以理解為運營商提供虛網(wǎng)服務時帶寬和CPU資源的單價,下標R指收入。
2)支出(Cost)
Cost是指虛網(wǎng)映射成功支出的費用,根據(jù)映射使用的底層物理網(wǎng)絡帶寬和CPU定義
Cost =acE HOPS · Bffc+ β c Σ CPUc
其中,BW。是映射使用的底層物理網(wǎng)絡帶寬,HOPS是一條虛擬鏈路在底層物理網(wǎng)絡上占用的實際鏈路數(shù)量,CPUc是映射使用的底層物理網(wǎng)絡節(jié)點CPU,0。和β c是用于調節(jié)帶寬和CPU的權重系數(shù),也可以理解為運營商提供虛網(wǎng)服務時帶寬和CPU資源的成本,下標 C 指 Cost0
3)剩余資源(Available Resource, AR)
AR是針對某底層物理網(wǎng)節(jié)點或某虛網(wǎng)請求節(jié)點的剩余資源,根據(jù)該底層物理網(wǎng)節(jié)點或虛網(wǎng)請求節(jié)點的剩余CPU資源和與其連接的剩余鏈路資源定義
AR = CPUa Σ BWa
其中,CPUa是底層物理網(wǎng)節(jié)點或虛網(wǎng)請求節(jié)點的剩余CPU資源,BWa是與該底層物理網(wǎng)節(jié)點或虛網(wǎng)請求節(jié)點連接的底層鏈路剩余帶寬資源,下標A指AR(Available Resource,剩余資源)。
本發(fā)明,一是通過設計多拓撲虛網(wǎng)映射方法,為虛網(wǎng)映射問題引入了多拓撲信息進行優(yōu)化,該方法可以識別虛網(wǎng)請求的拓撲,并調用相應的子算法,同時該方法具有可擴展性,新型拓撲虛網(wǎng)請求算法可以很容易加入該方法。二是提出了針對四種拓撲結構的虛網(wǎng)請求分別進行優(yōu)化的四種虛網(wǎng)映射子算法,起到了在相應拓撲的虛網(wǎng)請求到達時提升虛網(wǎng)映射算法的收入支出比的作用,并作為多拓撲虛網(wǎng)映射方法的組成部分。
(1)多拓撲虛網(wǎng)映射方法結構
如上所述,現(xiàn)有的虛網(wǎng)映射算法不區(qū)分到達虛網(wǎng)請求的拓撲,統(tǒng)一使用相同的虛網(wǎng)映射算法。但在實際情況下,虛網(wǎng)請求在生成時為了實現(xiàn)具體功能一般會具有特殊的拓撲結構,同時這種拓撲結構是虛網(wǎng)請求者預先知道的,因此本發(fā)明提出由虛網(wǎng)請求者使用變量TOPO (隨機型/缺省0,星型1,環(huán)形2,數(shù)型幻對自己的虛網(wǎng)請求作出標識,多拓撲映射方法可以識別該標識,并調用相應的虛網(wǎng)映射算法。
該方法還具有可擴展性,目前使用隨機拓撲映射算法作為缺省算法,處理隨機拓撲請求和未識別標識的請求,因此新的虛網(wǎng)拓撲映射算法可以依照該結構加入系統(tǒng),并從缺省算法中分擔相應的映射任務。
( 多拓撲虛網(wǎng)映射算法
如上所述,現(xiàn)有的虛網(wǎng)節(jié)點映射流程中,在尋找底層物理網(wǎng)節(jié)點時,衡量標準是節(jié)點的剩余資源,該衡量標準僅考慮了底層物理網(wǎng)節(jié)點的剩余資源大小,沒有考慮節(jié)點之間的拓撲連接關系,因此本發(fā)明提出使用四種加權剩余資源作為新優(yōu)化目標,分別對隨機型拓撲、星型拓撲、環(huán)型拓撲和數(shù)型拓撲的虛網(wǎng)請求到達情況下的虛網(wǎng)映射算法進行優(yōu)化,這四個新的優(yōu)化目標分別為隨機型加權剩余資源(General Weighted Available Resource, GWAR)、星型加權剩余資源(Star Weighted Available Resource, SWAR)、環(huán)型加權剩余資源(Ring Weighted Available Resource, RWAR)、樹型加權剩余資源(Tree Weighted Available Resource, TffAR)
GffAR = Corrn-general · CPUa Σ BWa
SffAR = Corrn-star · CPUa Σ BWa
RffAR = Corrnjing · CPUa Σ BWa
TffAR = Corrn-tree · CPUa Σ BWa
其中,Corr是針對某底層物理網(wǎng)節(jié)點Sn。de的相關系數(shù),隨著Corr增加,拓撲信息的作用得到增強,應設置為Corr > 1。指數(shù)!^general表示當前虛網(wǎng)請求中已經(jīng)映射成功并且映射的象節(jié)點與Sn。de有直接連接的虛擬網(wǎng)節(jié)點個數(shù),n_general的大小表征了 Sn。de與之前已經(jīng)映射成功的所有底層物理網(wǎng)絡節(jié)點的距離。指數(shù)n_star表示當前虛網(wǎng)請求的中心節(jié)點映射的象節(jié)點是否與Sntxte有直接連接,n_star = O或1,表征了 Sn。de與中心節(jié)點的距離。指數(shù)n_ring表示當前虛網(wǎng)請求的環(huán)結構中上一個映射成功的虛節(jié)點的象節(jié)點是否與Sn。de有直接連接,n_ring = 0或1,表征了 Sn。de與環(huán)結構中上一個虛節(jié)點的距離。指數(shù) n_tree表示當前虛網(wǎng)請求的樹結構中父節(jié)點的象節(jié)點是否與Sn。de有直接連接,n_tree = 0 或1,表征了 Sn。de與樹結構中父節(jié)點的距離。
在使用了這四種加權剩余資源作為優(yōu)化目標以后,底層物理網(wǎng)節(jié)點剩余資源和鏈路映射的拓撲問題同時得到了考慮,顯著降低了鏈路映射的復雜度,降低了系統(tǒng)支出,提升了底層物理網(wǎng)鏈路資源的利用率,提升了系統(tǒng)的收入支出比。
圖1虛擬網(wǎng)絡映射問題
圖2時間窗模式下的虛網(wǎng)映射總體流程
圖3多拓撲虛網(wǎng)映射方法的具體步驟
圖4步驟C3
圖5步驟C7
實施方式
本發(fā)明的具體操作流程的核心是時間窗,一個時間窗內進行一次虛擬網(wǎng)絡映射, 虛網(wǎng)映射在時間窗模式下的流程,如圖2所示
A.釋放前一個時間窗內離開的虛網(wǎng)請求占用的底層物理網(wǎng)資源,離開的虛網(wǎng)請求包括完成服務的請求和被主動拒絕的請求;虛網(wǎng)請求包含虛網(wǎng)節(jié)點請求和虛網(wǎng)鏈路請求兩部分;
B.統(tǒng)計本時間窗內到達的虛網(wǎng)請求,到達的虛網(wǎng)請求包括新到達的請求和重新排隊的請求;
C.將步驟B中統(tǒng)計的到達的虛網(wǎng)請求按照其收入(Revenue)從大到小進行排序, 然后根據(jù)虛網(wǎng)請求者使用的變量TOPO值,對虛網(wǎng)請求的拓撲類型進行識別,然后分別使用相應的隨機型,星型,環(huán)形,樹型拓撲映射算法將到達的虛網(wǎng)請求按順序映射至底層物理網(wǎng)絡,若其中任意一個到達的虛網(wǎng)請求映射成功,即虛網(wǎng)節(jié)點和虛網(wǎng)鏈路同時映射成功,則更新底層物理網(wǎng)絡的狀態(tài);若映射失敗,則將該虛網(wǎng)請求送至等待隊列,等待下個時間窗或直接拒絕。
該虛網(wǎng)映射流程保證了虛網(wǎng)請求可以實時處理,并且虛網(wǎng)請求的準入機制可以通過調節(jié)參數(shù)進行控制(如推遲、拒絕虛網(wǎng)請求)。
該虛網(wǎng)映射流程中的核心步驟是將時間窗內的一組虛網(wǎng)請求映射至底層物理網(wǎng)絡(步驟C),這個映射過程可以用下面的流程進一步詳細描述,如圖3-5所示
Cl)首先進行虛網(wǎng)請求節(jié)點映射,將虛網(wǎng)請求按照其收入從大到小進行排序,形成請求隊列(Qrequest);
C2)判斷當前請求隊列中是否存在虛網(wǎng)請求,如果是,執(zhí)行步驟C3,如果否,執(zhí)行步驟Dl ;
C3)選擇當前請求隊列中排在首位的虛網(wǎng)請求,根據(jù)TOPO的取值0、1、2、3,分別執(zhí)行下列C3. 1、C3. 2X3. 3X3. 4子步驟,TOPO取除0、1、2、3的其他值,則使用缺省值TOPO = 0,并執(zhí)行步驟C3. 1 ;
C3. DTOPO = 0,將該虛網(wǎng)請求內的虛網(wǎng)節(jié)點(Vn。de)按照其剩余資源(Available Resource, AR)從大到小排序,形成虛網(wǎng)節(jié)點隊列(Qv mde);
C3. 2)TOPO = 1,將該虛網(wǎng)請求內的虛網(wǎng)節(jié)點(Vn。de)按照中心節(jié)點排首位、其余節(jié)點按照剩余資源(Available Resource, AR)從大到小排序,形成虛網(wǎng)節(jié)點隊列(Qv mde);
C3. 3)TOPO = 2,將該虛網(wǎng)請求內的虛網(wǎng)節(jié)點(Vnode)按照剩余資源(Available Resource, AR)最大節(jié)點排首位,其余節(jié)點按照環(huán)型連接順序排序,形成虛網(wǎng)節(jié)點隊列(Qvnode)
C3. 4) TOPO = 3,將該虛網(wǎng)請求內的虛網(wǎng)節(jié)點(Vn。de)按照上層節(jié)點優(yōu)先、同層節(jié)點按照父節(jié)點順序、同一父節(jié)點按照剩余資源(Available Resource,AR)從大到小排序,形成虛網(wǎng)節(jié)點隊列(Qv—n。J ;
C4)判斷當前虛網(wǎng)節(jié)點隊列中是否存在虛網(wǎng)節(jié)點,如果是,執(zhí)行步驟C5,如果否, 則將當前請求隊列中排在首位的虛網(wǎng)請求移出請求對列,執(zhí)行步驟C2 ;
C5)選擇當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點,在底層物理網(wǎng)中選擇物理網(wǎng)節(jié)點(sn。J,選擇的物理網(wǎng)節(jié)點的CPU資源不小于當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點CPU資源;并將滿足CPU條件的物理網(wǎng)節(jié)點組成物理網(wǎng)節(jié)點子集(Ss n。J ;
C6)判斷物理網(wǎng)節(jié)點子集中是否存在物理網(wǎng)節(jié)點,如果是,執(zhí)行步驟C7,如果否, 則當前虛網(wǎng)請求隊列中排在首位虛網(wǎng)請求映射失敗,將該請求移出虛網(wǎng)請求隊列,并送至下個時間窗的等待隊列或拒絕請求,執(zhí)行步驟C2 ;
C7)根據(jù) Τ0Ρ0 的取值 0、1、2、3,分別執(zhí)行 C7. 1、C7. 2、C7. 3、C7. 4 子步驟,Τ0Ρ0 取除0、1、2、3的其他值,則使用缺省值Τ0Ρ0 = 0,并執(zhí)行步驟C7. 1 ;
C7. 1) Τ0Ρ0 = 0,選出當前物理網(wǎng)節(jié)點子集中隨機型加權剩余資源(General Weighted Available Resource, GWAR)最大的物理網(wǎng)節(jié)點,并將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點映射至該物理網(wǎng)節(jié)點,將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點移出虛網(wǎng)節(jié)點隊列,執(zhí)行步驟C4;
C7. 2) Τ0Ρ0 = 1,選出當前物理網(wǎng)節(jié)點子集中星型加權剩余資源(Mar Weighted Available Resource, SWAR)最大的物理網(wǎng)節(jié)點,并將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點映射至該物理網(wǎng)節(jié)點,將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點移出虛網(wǎng)節(jié)點隊列,執(zhí)行步驟C4;
C7. 3) Τ0Ρ0 = 2,選出當前物理網(wǎng)節(jié)點子集中環(huán)型加權剩余資源(Ring Weighted Available Resource, RWAR)最大的物理網(wǎng)節(jié)點,并將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點映射至該物理網(wǎng)節(jié)點,將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點移出虛網(wǎng)節(jié)點隊列,執(zhí)行步驟C4;
C7. 4) Τ0Ρ0 = 3,選出當前物理網(wǎng)節(jié)點子集中樹型加權剩余資源(Tree Weighted Available Resource, TWAR)最大的物理網(wǎng)節(jié)點,并將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點映射至該物理網(wǎng)節(jié)點,將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點移出虛網(wǎng)節(jié)點隊列,執(zhí)行步驟C4。
C8)開始進行鏈路映射,將節(jié)點映射成功的虛網(wǎng)請求按收入從大到小進行排序,形成請求隊列(Qrequest);
C9)判斷當前請求隊列中是否存在虛網(wǎng)請求,如果是,執(zhí)行步驟C10,如果否,當前時間窗的映射算法結束;
C10)選擇當前請求隊列中排在首位的虛網(wǎng)請求,并將該虛網(wǎng)請求內的虛網(wǎng)鏈路 (VliJ按照其帶寬(BW)從大到小排序,形成虛網(wǎng)鏈路隊列(Qvlink);
Cll)判斷當前虛網(wǎng)鏈路隊列中是否存在虛網(wǎng)鏈路,如果是,執(zhí)行步驟C12,如果否,則將當前請求隊列中排在首位的虛網(wǎng)請求移出請求隊列,執(zhí)行步驟C9;
C12)選擇當前虛網(wǎng)鏈路隊列中排在首位的虛網(wǎng)鏈路,使用K最短路徑 (K-Shortest)算法依次尋找第1至K條最短路徑,這些路徑由一條或多條底層物理網(wǎng)鏈路 (Slink)組成,K為大于1的整數(shù),僅保留這K條路徑這樣的路徑組成路徑的所有物理網(wǎng)鏈路的最低帶寬滿足當前虛網(wǎng)鏈路隊列中排在首位的虛網(wǎng)鏈路帶寬;保留的路徑形成物理網(wǎng)路徑子集(Ssjjath);
C13)判斷當前物理網(wǎng)路徑子集中是否存在物理網(wǎng)路徑,如果是,執(zhí)行步驟C14 ;如果否,則當前虛網(wǎng)請求隊列中排在首位虛網(wǎng)請求映射失敗,將該請求移出虛網(wǎng)請求隊列,并送至下個時間窗的等待隊列或拒絕請求,執(zhí)行步驟C9 ;
C14)將當前虛網(wǎng)鏈路隊列中排在首位的虛網(wǎng)鏈路映射至當前物理網(wǎng)路徑子集中的最短路徑,將當前虛網(wǎng)鏈路隊列中排在首位的虛網(wǎng)鏈路移出虛網(wǎng)鏈路隊列,執(zhí)行步驟 C11。10
權利要求
1.一種多拓撲虛擬網(wǎng)絡映射方法,在一個時間窗內進行一次虛擬網(wǎng)絡映射的步驟包括A.釋放前一個時間窗內離開的虛網(wǎng)請求占用的底層物理網(wǎng)資源,離開的虛網(wǎng)請求包括完成服務的請求和被主動拒絕的請求;虛網(wǎng)請求包含虛網(wǎng)節(jié)點請求和虛網(wǎng)鏈路請求兩部分;B.統(tǒng)計本時間窗內到達的虛網(wǎng)請求,到達的虛網(wǎng)請求包括新到達的請求和重新排隊的請求;C.將步驟B中統(tǒng)計的到達的虛網(wǎng)請求按照其收入(Revenue)從大到小進行排序,然后根據(jù)虛網(wǎng)請求者使用的變量TOPO值,對虛網(wǎng)請求的拓撲類型進行識別,然后分別使用相應的隨機型,星型,環(huán)形,樹型拓撲映射算法將到達的虛網(wǎng)請求按順序映射至底層物理網(wǎng)絡, 若其中任意一個到達的虛網(wǎng)請求映射成功,即虛網(wǎng)節(jié)點和虛網(wǎng)鏈路同時映射成功,則更新底層物理網(wǎng)絡的狀態(tài);若映射失敗,則將該虛網(wǎng)請求送至等待隊列,等待下個時間窗或直接拒絕。
2.如權利要求1所述的方法,上述步驟C包括Cl)首先進行虛網(wǎng)請求節(jié)點映射,將虛網(wǎng)請求按照其收入從大到小進行排序,形成請求隊列(Qrequest);C2)判斷當前請求隊列中是否存在虛網(wǎng)請求,如果是,執(zhí)行步驟C3,如果否,執(zhí)行步驟Dl ;C3)選擇當前請求隊列中排在首位的虛網(wǎng)請求,根據(jù)TOPO的取值0、1、2、3,分別執(zhí)行下列C3. 1、C3. 2、C3. 3、C3. 4子步驟,TOPO取除0、1、2、3的其他值,則使用缺省值TOPO = 0, 并執(zhí)行步驟C3. 1 ;C3. DTOPO = 0,將該虛網(wǎng)請求內的虛網(wǎng)節(jié)點(Vnode)按照其剩余資源(Available Resource, AR)從大到小排序,形成虛網(wǎng)節(jié)點隊列(Qv mde);C3.2)T0P0= 1,將該虛網(wǎng)請求內的虛網(wǎng)節(jié)點(Vn。J按照中心節(jié)點排首位、其余節(jié)點按照剩余資源(Available Resource, AR)從大到小排序,形成虛網(wǎng)節(jié)點隊列(Qv mde);C3. 3) TOPO = 2,將該虛網(wǎng)請求內的虛網(wǎng)節(jié)點(Vn。de)按照剩余資源(Available Resource, AR)最大節(jié)點排首位,其余節(jié)點按照環(huán)型連接順序排序,形成虛網(wǎng)節(jié)點隊列(Qvnode) C3. 4) TOPO = 3,將該虛網(wǎng)請求內的虛網(wǎng)節(jié)點(Vn。de)按照上層節(jié)點優(yōu)先、同層節(jié)點按照父節(jié)點順序、同一父節(jié)點按照剩余資源(Available Resource,AR)從大到小排序,形成虛網(wǎng)節(jié)點隊列(Qv—n。<J ;C4)判斷當前虛網(wǎng)節(jié)點隊列中是否存在虛網(wǎng)節(jié)點,如果是,執(zhí)行步驟C5,如果否,則將當前請求隊列中排在首位的虛網(wǎng)請求移出請求對列,執(zhí)行步驟C2 ;C5)選擇當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點,在底層物理網(wǎng)中選擇物理網(wǎng)節(jié)點 (Sn。J,選擇的物理網(wǎng)節(jié)點的CPU資源不小于當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點CPU 資源;并將滿足CPU條件的物理網(wǎng)節(jié)點組成物理網(wǎng)節(jié)點子集(Ss nmJC6)判斷物理網(wǎng)節(jié)點子集中是否存在物理網(wǎng)節(jié)點,如果是,執(zhí)行步驟C7,如果否,則當前虛網(wǎng)請求隊列中排在首位虛網(wǎng)請求映射失敗,將該請求移出虛網(wǎng)請求隊列,并送至下個時間窗的等待隊列或拒絕請求,執(zhí)行步驟C2 ;C7)根據(jù)TOPO的取值0、1、2、3,分別執(zhí)行C7. 1、C7. 2、C7. 3、C7. 4子步驟,TOPO取除0、 1、2、3的其他值,則使用缺省值TOPO = 0,并執(zhí)行步驟C7. 1 ;C7. DTOPO = 0,選出當前物理網(wǎng)節(jié)點子集中隨機型加權剩余資源(General Weighted Available Resource, GWAR)最大的物理網(wǎng)節(jié)點,并將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點映射至該物理網(wǎng)節(jié)點,將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點移出虛網(wǎng)節(jié)點隊列,執(zhí)行步驟C4;C7. 2) TOPO = 1,選出當前物理網(wǎng)節(jié)點子集中星型加權剩余資源(Mar Weighted Available Resource, SWAR)最大的物理網(wǎng)節(jié)點,并將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點映射至該物理網(wǎng)節(jié)點,將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點移出虛網(wǎng)節(jié)點隊列,執(zhí)行步驟C4;C7. 3)T0P0 = 2,選出當前物理網(wǎng)節(jié)點子集中環(huán)型加權剩余資源(Ring Weighted Available Resource, RWAR)最大的物理網(wǎng)節(jié)點,并將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點映射至該物理網(wǎng)節(jié)點,將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點移出虛網(wǎng)節(jié)點隊列,執(zhí)行步驟C4;C7.4)T0P0 = 3,選出當前物理網(wǎng)節(jié)點子集中樹型加權剩余資源(Tree Weighted Available Resource, TWAR)最大的物理網(wǎng)節(jié)點,并將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點映射至該物理網(wǎng)節(jié)點,將當前虛網(wǎng)節(jié)點隊列中排在首位的虛網(wǎng)節(jié)點移出虛網(wǎng)節(jié)點隊列,執(zhí)行步驟C4。C8)開始進行鏈路映射,將節(jié)點映射成功的虛網(wǎng)請求按收入從大到小進行排序,形成請求隊列(Qrequest)。C9)判斷當前請求隊列中是否存在虛網(wǎng)請求,如果是,執(zhí)行步驟C10,如果否,當前時間窗的映射算法結束;C10)選擇當前請求隊列中排在首位的虛網(wǎng)請求,并將該虛網(wǎng)請求內的虛網(wǎng)鏈路(Vlink) 按照其帶寬(BW)從大到小排序,形成虛網(wǎng)鏈路隊列(Qv link);Cll)判斷當前虛網(wǎng)鏈路隊列中是否存在虛網(wǎng)鏈路,如果是,執(zhí)行步驟C12,如果否,則將當前請求隊列中排在首位的虛網(wǎng)請求移出請求隊列,執(zhí)行步驟C9 ;C12)選擇當前虛網(wǎng)鏈路隊列中排在首位的虛網(wǎng)鏈路,使用K最短路徑(K-Shortest) 算法依次尋找第1至K條最短路徑,這些路徑由一條或多條底層物理網(wǎng)鏈路(Slink)組成, K為大于1的整數(shù),僅保留這K條路徑這樣的路徑組成路徑的所有物理網(wǎng)鏈路的最低帶寬滿足當前虛網(wǎng)鏈路隊列中排在首位的虛網(wǎng)鏈路帶寬;保留的路徑形成物理網(wǎng)路徑子集(Sspath);C13)判斷當前物理網(wǎng)路徑子集中是否存在物理網(wǎng)路徑,如果是,執(zhí)行步驟C14;如果否,則當前虛網(wǎng)請求隊列中排在首位虛網(wǎng)請求映射失敗,將該請求移出虛網(wǎng)請求隊列,并送至下個時間窗的等待隊列或拒絕請求,執(zhí)行步驟C9 ;C14)將當前虛網(wǎng)鏈路隊列中排在首位的虛網(wǎng)鏈路映射至當前物理網(wǎng)路徑子集中的最短路徑,將當前虛網(wǎng)鏈路隊列中排在首位的虛網(wǎng)鏈路移出虛網(wǎng)鏈路隊列,執(zhí)行步驟C11。
3.如權利要求2所述的方法,其中收入是指虛網(wǎng)映射成功獲得的利潤,根據(jù)映射成功的虛網(wǎng)帶寬和CPU定義Revenue = α Ε Σ BWe+ β Ε Σ CPUe其中,BWk是映射成功的虛網(wǎng)帶寬,CPUe是映射成功的虛網(wǎng)節(jié)點CPU資源,α κ和β κ是用于調節(jié)帶寬和CPU的權重系數(shù),下標R指Revenue (收入)。
4.如權利要求2所述的方法,其中AR是針對某底層物理網(wǎng)節(jié)點或某虛網(wǎng)請求節(jié)點的剩余資源,根據(jù)該底層物理網(wǎng)節(jié)點或虛網(wǎng)請求節(jié)點的剩余CPU資源和與其連接的剩余鏈路資源定義AR = CPUa Σ BWa其中,CPUa是底層物理網(wǎng)節(jié)點或虛網(wǎng)請求節(jié)點的剩余CPU資源,BWa是與該底層物理網(wǎng)節(jié)點或虛網(wǎng)請求節(jié)點連接的底層鏈路剩余帶寬資源,下標A指AR(Available Resource,剩余資源)。
5.如權利要求2所述的方法,其中,所述剩余資源包括隨機型加權剩余資源(General Weighted Available Resource, GWAR)、星型加權剩余資源(Star Weighted Available Resource, SWAR)、環(huán)型加權剩余資源(Ring Weighted Available Resource, RWAR)、樹型加權剩余資源(Tree Weighted Available Resource, TffAR)GffAR = Corrn-general · CPUa Σ BWaSffAR = Corrn star · CPUa Σ BWaRffAR = Corrnjing · CPUa Σ BWaTffAR = Corrn-tree · CPUa Σ BWa其中,Corr是針對某底層物理網(wǎng)節(jié)點Sn。de的相關系數(shù),隨著Corr增加,拓撲信息的作用得到增強,應設置為Corr > 1。指數(shù)!^general表示當前虛網(wǎng)請求中已經(jīng)映射成功并且映射的象節(jié)點與Sntxte有直接連接的虛擬網(wǎng)節(jié)點個數(shù),n_general的大小表征了 Sn。de與之前已經(jīng)映射成功的所有底層物理網(wǎng)絡節(jié)點的距離。指數(shù)n_star表示當前虛網(wǎng)請求的中心節(jié)點映射的象節(jié)點是否與Sn。de有直接連接,n_star = O或1,表征了 Sn。de與中心節(jié)點的距離。 指數(shù)n_ring表示當前虛網(wǎng)請求的環(huán)結構中上一個映射成功的虛節(jié)點的象節(jié)點是否與Sntxte 有直接連接,n_ring = O或1,表征了 Sn。de與環(huán)結構中上一個虛節(jié)點的距離。指數(shù)n_tree 表示當前虛網(wǎng)請求的樹結構中父節(jié)點的象節(jié)點是否與Sn。de有直接連接,n_tree = O或1, 表征了 Sn。de與樹結構中父節(jié)點的距離。
全文摘要
本發(fā)明提供了一種多拓撲虛擬網(wǎng)絡映射方法。該方法包括四種子算法,這四種子算法分別針對隨機型(缺省)、星型、環(huán)型、樹型拓撲進行了優(yōu)化。當虛網(wǎng)請求到達時,系統(tǒng)可以通過變量TOPO的取值識別該請求的拓撲,并調用相應的子算法。由于子算法充分利用了相應的拓撲結構特點,因此該多拓撲映射方法大幅提升了底層物理網(wǎng)絡資源的使用效率,增加了映射的收入支出比。同時,新的拓撲子算法也可以按照類似模式加入該多拓撲映射方法。本發(fā)明提供的方法適用于實驗網(wǎng)絡、運營商網(wǎng)絡等已經(jīng)或將要使用網(wǎng)絡虛擬化技術進行網(wǎng)絡分離、資源管理調度或提供定制服務的網(wǎng)絡,該方法具有鏈路映射復雜度低、虛網(wǎng)請求映射成功率高、可擴展性強等特點。
文檔編號H04L12/24GK102546232SQ20111034224
公開日2012年7月4日 申請日期2011年11月3日 優(yōu)先權日2011年11月3日
發(fā)明者劉江, 劉韻潔, 王健, 陳建亞, 黃韜 申請人:北京郵電大學