?

基于節點綜合重要度排序的服務功能鏈部署優化方法

2023-03-24 13:25胡海巖康巧燕趙朔王建峰付有斌
計算機應用 2023年3期
關鍵詞:消耗時延排序

胡海巖,康巧燕*,趙朔,王建峰,付有斌

(1.空軍工程大學 信息與導航學院,西安 710077;2.中國人民解放軍93107部隊,沈陽 110141)

0 引言

網絡功能虛擬化(Network Function Virtualization,NFV)技術是云服務提供商為了降低投資與運營成本,將服務功能與底層硬件進行解耦的產物。NFV 可以在傳統的專用硬件設備上實現虛擬網絡功能(Virtualized Network Function,VNF)[1],將這些VNF 根據請求按照一定的邏輯順序連接形成服務功能鏈(Service Function Chain,SFC)。

隨著5G 網絡時代的到來,網絡通信系統需要更低的時延,在有些特殊場景下甚至到達了毫秒級[2],且在非理想環境下,基于軟件的網絡功能更容易出現硬件或軟件故障,從而導致網絡服務的中斷,造成不可估量的損失。因此在部署SFC 的過程中,提高部署可靠性、降低端到端的時延成為了研究熱點。本文在該熱點問題的基礎上,同時考慮降低節點、帶寬資源的開銷以達到降低運營商部署成本的目的。

針對可靠性問題,部分學者通過故障發生后的恢復機制進行研究,如文獻[3]中用蒙特卡洛樹搜索算法實現物理鏈路發生故障后的重映射問題;但這種恢復機制會暫停服務,影響服務質量。因此大部分學者通過備份增加冗余的方式進行研究:文獻[4]中對整條鏈路進行備份;文獻[5]中采用共享備份的方式以降低資源消耗;文獻[6]中對VNF 進行聯合備份,在提高可靠性的同時優化網絡資源分配;文獻[7]中提出一種相鄰VNF 備份、實例資源共享的備份機制,在降低節點和帶寬資源開銷的同時提高了網絡服務的映射成功率。但上述通過備份提高部署可靠性的方法會擴展SFC 的長度,不但會增加資源開銷,而且也會在一定程度上增加時延,導致運營商部署成本增加,傳輸效率降低。因此,本文通過聚合VNF 來減少部署的網絡節點,從而提高鏈路可靠性。

針對VNF 部署的問題,許多研究采用基于迭代的啟發式算法,如文獻[8]中將SFC 構建與映射同時混合編碼,并采用改進的遺傳粒子群算法對問題進行求解;文獻[9]中提出將遺傳算法與模擬退火算法相結合的求解策略,通過判斷個體約束性與糾正遺傳的方法避免局部最優的出現,大幅降低了端到端時延。但這種啟發式算法需要反復迭代,消耗時間較多,不利于VNF 的快速部署,難以應用于某些低時延的場景。文獻[10]中使用深度強化學習進行SFC 的部署,在保證可靠性的同時最大化映射成功率。文獻[11-12]使用機器學習來部署VNF,這類方法能夠明顯提高SFC 的優化效果,但又依賴于利用大量準確的數據集訓練模型。因此,本文依據可靠性、時延與拓撲屬性定義了節點綜合重要度以實現底層網絡節點的排序,優化VNF 的部署。

針對VNF 聚合[13]問題,文獻[14]中通過聚合功能相同的VNF 以達到降低映射成本的目的,但僅局限于相同功能的VNF 聚合,且未考慮到聚合后資源需求的增多會降低映射時的映射成功率。文獻[15]在聚合相同VNF 的基礎上,發現貪婪算法能夠有效降低總帶寬的消耗。文獻[16]中通過共享節點來節省節點資源,并通過遷移調整提高資源利用率,此外還詳細描述了帶寬消耗與節點資源消耗之間存在的矛盾,但并未直接解決這種矛盾。文獻[13]中為了解決這種矛盾,首先通過聚合不同的VNF 來降低節點資源消耗;然后通過一種能進行映射反饋的閉環算法有效地在降低節點資源消耗的同時降低帶寬消耗;并且引入了節點親密度的概念,通過降低節點跳數來降低需求帶寬。文獻[17]中介紹了6 種反映不同拓撲屬性的互補特征,并根據這6 種特征的不同特點提出了三種基于拓撲感知的虛擬網絡映射算法。文獻[18]中針對節點資源與帶寬的沖突設計了三種有效的策略,分別是重用虛擬機(即聚合相同VNF)、組合相鄰不同的VNF 與臨時鏈路映射,然后通過性別戰博弈(Battle of Sexes,BoS)模型解決這類沖突問題,但并未給出具體的聚合方式。文獻[19]中通過功能性約束、資源約束對節點進行聚合,有效地提高了可靠性,但并未考慮到不同VNF 對鏈路流量的影響不同。文獻[20]中根據虛擬鏈路流量變化對VNF 進行聚合,從而提高可靠性。本文通過改進基于流量改變率的VNF 聚合方法以減少部署的網絡節點,提高可靠性。

針對上述問題,本文以提高鏈路可靠性、降低節點資源與帶寬消耗為目標,首先針對不同帶寬需求的VNF,引入了流量改變率的概念[21],通過流量改變率聚合VNF,聚合方式是將相鄰的、流量改變率同小于等于1 或大于等于1 的不同VNF 進行聚合,從而減少部署的物理節點,提高鏈路可靠性,節約節點資源消耗與鏈路帶寬開銷,同時隨著鏈路跳數的減少,端到端的時延也會隨之降低;其次通過節點的度、可靠性、綜合時延與鏈路跳數定義了節點綜合重要度,對節點進行評價、排序,提高VNF 的映射效率;然后將聚合后的VNF依次映射到完成排序的底層節點上,映射過程要求映射的第i個節點到目標點的跳數不能大于第i-1 個節點到目標點的跳數,以此減少流量“乒乓效應”(在兩節點之間往返傳輸)的出現,從而降低帶寬開銷;最后用k-最短路徑算法映射虛擬鏈路,完成整個SFC 的部署。

1 模型建立與問題描述

1.1 網絡模型

物理網絡表示為一個加權無向圖GS=(N,L),其中:N為物理節點的集合,每個物理節點能夠承載多個服務器,用來實例化VNF;L為物理鏈路集合。對于任意節點n∈N,Cn表示剩余可用計算資源,Mn表示剩余可用存儲資源,Fn表示剩余可用轉發資源,Ha,b表示物理節點a與節點b之間的跳數,rn為物理節點的可靠性,dn為實例化VNF 后產生的時延(節點時延)。對于任意物理鏈路La,b∈L,用Ba,b表示剩余帶寬資源,Da,b表示鏈路時延。

SFC 請求為有向圖Gv=(Ig,Og,Dg,Tg,Rg,Vg,Lg),將SFC的集合表示為S={Sg|g=1,2,…},Ig與Og分別表示第g條SFC 的源點與目標點。對于任意一條Sg,Ig與Og的物理節點確定后,Dg為SFC 的最大時延限制,Tg為SFC 的生存時間,Rg為SFC 的可靠性要求下限,Vg={fi|i=1,2,…} 表示Sg所有的VNF 集合,對于任意一個fi∈Vg,Cg,i、Fg,i和Mg,i分別表示它的計算資源需求、轉發資源需求與存儲資源需求。用ηg表示流量改變率,Sg的路由集合表示為Lg=(l0,1,l1,2,…,li-1,i),用li-1,i表示第i-1 到第i個節點的路由,其中:0 為源點,i為目標點。bi-1,i表示第i-1 到第i個節點的帶寬需求,可用式(1)表示,即經過任意VNF 后,帶寬需求為流入的流量與VNF 流量改變率的乘積,Ball為鏈路總帶寬消耗。

如果Sg中第k個VNF 成功部署在底層網絡第i個節點上,則設μk,i=1;若不是則μk,i=0。若虛擬鏈路li-1,i成功映射到物理鏈路La,b上,則否則的可靠性可用式(3)表示,其中Rg為鏈路可靠性,即各部署成功的網絡節點可靠性之積。

設節點資源開銷為costall,可用式(4)表示,即節點的計算、存儲與轉發能力之和。

1.2 優化目標

本文的主要目標是在提高鏈路可靠性的同時降低帶寬開銷與節點資源開銷,由此設定目標函數為:

式(8)保證SFC 中的一個虛擬功能只能映射到一個底層節點,防止VNF 分割;式(9)保證虛擬鏈路能夠映射在一條或多條物理鏈路上;式(10)表示一條物理鏈路上只允許布置至多一次虛擬鏈路;式(11)~(13)分別為計算、存儲與轉發能力約束,不等式左邊為每個節點的資源消耗,為了實現負載均衡[19],保證每個節點的資源消耗不超過它的總資源的90%;式(14)表示鏈路帶寬約束,式(15)表示時延約束,不等式左邊為節點時延與鏈路時延之和。

1.3 問題描述

SFC 的部署問題分為SFC 的構建與映射兩個部分。

SFC 的構建過程需要考慮VNF 的依賴關系,若VNF2 依賴于VNF1,則流量必須先經過VNF1 的處理后才能到VNF2。如入侵檢測系統要在網絡保密器之前執行,解碼器在編碼器之后執行,本文假設VNF 順序已知,不考慮構建問題。SFC 的映射過程需要考慮兩個問題:

1)網絡節點的資源限制。一個節點可部署的VNF 有限,如5G 邊緣數據中心處理數據的能力十分有限。

2)VNF 映射節點的位置。VNF 會改變流量速率,例如防火墻會丟掉某些數據包導致輸出速率小于輸入速率,而虛擬專用網絡(Virtual Private Network,VPN)代理會給數據報文新增頭部開銷從而導致輸出速率大于輸入速率。

圖1~4 展示了同一條SFC 在相同的網絡結構中的不同部署方法,其中:VNF 上的數字代表流量改變率[22];B為鏈路總帶寬,箭頭與序號代表數據流經過的順序。

不同的VNF 部署位置會產生不同的帶寬消耗,圖1(a)為將流量改變率小的VNF 靠后部署的方法;圖1(b)為將流量改變率大的VNF 靠后部署的方法。通過對比可以看出圖1(a)方法的所需帶寬高于圖1(b)方法,所以相同路徑的不同VNF 部署位置所需帶寬不同。

圖1 不同部署位置的VNF部署方法Fig.1 VNF deployment methods with different deployment locations

不同路徑的帶寬消耗也不同,如圖2 所示,對VNF 進行聚合,聚合后的VNF 節點資源需求為各VNF 節點資源需求之和,流量改變率為各VNF 節點改變率之積,可以看出圖2(b)方法的帶寬消耗小于圖2(a),所以鏈路跳數越小帶寬消耗越少。

圖2(c)展示了兩節點之間的“乒乓效應”。圖中兩節點中的一條鏈路經過了往返兩次傳輸,與圖1(b)相比,VNF 部署位置相同,但流量所經路徑不同,可以看出圖2(c)方法所需帶寬遠高于圖1(b),因此在鏈路傳輸中應盡量減少“乒乓效應”以提高傳輸效率,降低帶寬消耗。

圖2 不同路徑的VNF部署方法Fig.2 VNF deployment methods with different paths

不同的VNF 聚合方式的帶寬消耗也不同,如圖3 所示。圖3(a)與圖3(b)的部署方式相同,但是兩者采用了不同的聚合方式,可以看出圖3(b)方法的帶寬消耗大于圖3(a)。

圖2(a)、圖2(b)、圖3(b)方法都采用了聚合的方式將3個VNF 部署到兩個節點上,假設每個節點的可靠度為0.95,則這種聚合后的鏈路可靠度為0.952=0.902 5。圖1(a)、圖1(b)、圖2(c)方法將3 個VNF 分別部署到3 個節點上,鏈路可靠度為0.953=0.857 4。因此同樣數量的VNF 下,對VNF 進行聚合處理能夠減少映射的網絡節點數量,從而提高鏈路的可靠性。

圖3 不同聚合方式的VNF部署方法Fig.3 VNF deployment methods with different aggregation methods

經過比較可得,圖2(b)方法在6 種部署方法中帶寬消耗最小。因此在理想狀態下,以最優的聚合規則對VNF 進行聚合,再將帶寬需求較小的VNF 靠前部署、帶寬需求較大的VNF 靠后部署,并且選擇鏈路跳數最小的節點依次部署,同時減少鏈路的“乒乓效應”,就能以最優的方式降低鏈路帶寬消耗并提高鏈路可靠性。但在非理想狀態下,由于部分VNF具有依賴關系,映射到底層網絡也應保持這種依賴關系,因此本文不考慮VNF 的靠前部署與靠后部署,而是依次對VNF 進行部署。

圖4 為非理想狀態下的VNF 部署方法,帶寬消耗相較于圖1、圖2(a)、圖2(c)方法仍具有優勢。同時,將圖4 方法與圖1(a)相比較可以看出,通過VNF 聚合也可達到將流量改變率小于1 的VNF 靠前部署的目的,從而降低鏈路的帶寬消耗。

圖4 最終VNF部署方法(B=337.6 MB/s)Fig.4 Final VNF deployment method(B=337.6 MB/s)

2 流量與可靠性優化的VNF部署設計

本章首先采用基于流量改變率的VNF 聚合方法對VNF進行處理,然后對底層節點按照節點綜合重要度進行評價與排序,將聚合后的VNF 依次映射到完成排序的底層節點上,最后采用k-最短路徑算法映射虛擬鏈路。

2.1 基于流量改變率的VNF聚合方法

本節涉及兩個概念:聚合與流量改變率。

文獻[13]中指出當一個多功能物理設備能夠提供多種網絡功能與足夠的計算能力時,可以將來自同一SFC 請求的多個VNF 映射到同一物理設備上,即聚合原SFC 序列中資源需求與功能不同的VNF,以提高物理資源利用率與鏈路的可靠性。本文通過流量改變率聚合VNF,而流量改變率η[21]即流量通過VNF 后,流出的流速率與流入的流速率之比,可將它分為三類:1)η<1 的VNF,即流出流量小于流入流量,如防火墻、網絡加速器、解碼器等;2)η=1 的VNF,即流出流量等于流入流量,如入侵檢測、負載均衡器等;3)η>1 的VNF,即流出流量大于流入流量,如編碼器、網絡保密器、VPN 代理等。

本文聚合VNF 的主要思路為:在一個序列已知的SFC中,分別聚合η≤1、η≥1 的相鄰VNF,由于“1”不改變聚合后的VNF 流量改變率,因此既可與η<1 的相鄰VNF 聚合,也可與η>1 的相鄰VNF 聚合,這樣能夠最小化聚合后的VNF 數量。本文將η=1 的VNF 與前一個VNF 做相同處理,即當前一個VNF的η<1 時,η=1 的VNF 當作小于1 處理;當前一個VNF的η>1 時,當作大于1 處理。聚合后的VNF將映射到同一物理節點上,其中聚合后的VNF 節點資源需求為各VNF 節點資源需求之和,流量改變率為各VNF 節點改變率之積。

如圖5 所示,VNF 下的數字為流量改變率η,聚合方法1中VNF1 與VNF2的η<1,可以進行聚合;VNF3 與VNF4的η>1,可以進行聚合,聚合完成后,部署VNF 的節點由原始的4 個變為2 個,不僅可以提高鏈路的可靠性,同時也可達到將η<1 的VNF 靠前部署的目的,以降低鏈路帶寬消耗。在聚合方法2 與聚合方法3 中,η=1 的VNF3 既可與η<1 的相鄰VNF 聚合,也可與η>1 的相鄰VNF 聚合。在聚合方法4 與聚合方法5 中,當η=1 的VNF3 既與η<1 的VNF 相鄰,又與η>1 的VNF 相鄰時,則規定VNF3 與前一個相鄰的VNF 聚合。聚合方法6 為特殊情況,由于相鄰的VNF 之間沒有同小于等于1 或同大于等于1 的VNF,所以無法進行聚合。設本文的聚合方式為J1。

圖5 不同流量改變率的VNF聚合方法Fig.5 VNF aggregation method based on different traffic change rate

文獻[20]中同樣采取基于帶寬需求變化的VNF 聚合方式進行處理,它的聚合方法為將η>1 的VNF 與之后的所有η≤1 的VNF 進行聚合,直到下一個η>1 的VNF 為止。設文獻[20]的聚合方式為J2。為了與文獻[20]具有相同的VNF 聚合條件,設置一種新的聚合方式J3:在一個序列已知的SFC 中,分別聚合η≤1、η>1 的VNF。

如圖6 所示,將SFC 中VNF 數量為4 的情況通過樹狀圖的方式 全部列 出,其中:A為η>1 的VNF;B為η≤1 的VNF。數字為以不同方式聚合后的VNF 數量,J3為40,J2為47,可看出按照J3聚合的VNF 數量小于按照J2聚合的VNF數量,因此相較于J2,J3的聚合效果更好。

圖6 J2與J3的對比結果Fig.6 Comparison result of J2 and J3

而本文的聚合方法J1與J3相比,聚合判定條件由η=1的VNF 只能與小于1 的VNF 聚合,更改為η=1 的VNF 既能與小于1 的VNF 聚合也能與大于1 的VNF 聚合,聚合效果更好。如圖7 所示,在相同情況下,按照J1方法聚合可將VNF數量從4 個聚合成2 個,而按照J3方法聚合仍然是4 個VNF,因此可得出J1的聚合效果優于J3。

圖7 J1與J3的對比結果Fig.7 Comparison result of J1 and J3

因為J3的聚合效果優于J2,可以說明:在相同情況下,J1的聚合效果優于J2。因此在VNF 數量較小的情況下(本文為3~6 個),本文的聚合效果更好,能夠節省更多的帶寬資源,提高鏈路可靠性,降低時延?;诹髁扛淖兟实腣NF 聚合的具體步驟如算法1 所示:

算法1 基于流量改變率的VNF 聚合方法。

輸入 VNF 集合V,集合中每個VNF 的對應流量改變率η;

輸出 完成聚合的VNF 集合V′。

聚合后的VNF 節點資源需求為各VNF 節點資源需求之和,流量改變率為各VNF 節點改變率之積。

2.2 基于節點綜合重要度的節點排序與SFC映射

VNF 聚合完成后,需要將它們映射到底層物理節點上。受文獻[20,22]工作的啟發,本文綜合考慮物理網絡節點之間的關系與時延感知,通過分析節點的度、鏈路跳數、可靠性、綜合時延四者與節點綜合重要度的相關性對節點進行評價與降序排序,然后將2.1 節完成聚合的VNF 依次映射至完成排序的節點上,最后通過k-最短路徑算法映射虛擬鏈路,完成整個SFC 的部署。

根據節點綜合重要度對網絡節點進行排序,可分為兩個部分:1)對底層網絡拓撲進行感知,主要考慮節點的度與鏈路跳數;2)在此基礎上綜合考慮節點綜合時延與可靠性。具體如下:

①根據節點的拓撲結構考慮節點的重要度。首先衡量一個節點n的重要度的關鍵是節點的度,即節點與鄰近節點之間直接鏈接的鏈路數目。相同情況下,節點的度越大,節點重要度越大,二者呈正相關。節點的度NDn為節點n與鄰近節點之間相連的鏈路數量之和,可表示為:

由圖2 的分析可知,鏈路跳數越小,它的映射節點距離越近、范圍越小,帶寬消耗就越小,越有利于節點的排序,因此鏈路跳數與節點重要度呈負相關。本文用節點n與源點Ig的跳數hn,Ig、節點n與目標點Og的跳數hn,Og之和表示鏈路跳數,鏈路跳數Hn可表示為:

綜上所述,節點的度與節點重要度呈正相關,鏈路跳數與節點重要度呈負相關,因此可將節點的重要度Xn表示為:

②除了考慮節點重要度外,還綜合考慮了節點的可靠性與綜合時延。節點的可靠性rn即節點的故障間隔Fn占故障間隔Fn與修復時間Rn之和的比值[23],可表示為:

節點可靠性越高,越有利于節點的排序,因此節點可靠性與節點的重要度呈正相關。

網絡時延即一個報文或分組從網絡一端到另一端所消耗的時間,通常由節點的處理時延、排隊時延、傳輸時延與鏈路的傳播時延組成,本文用節點的綜合時延表示。節點的綜合時延ZDn為節點時延dn與相鄰鏈路綜合時延之和,其中相鄰鏈路的綜合時延為節點相鄰鏈路時延Dn之和與節點的度NDn的比值:

節點綜合時延越小,越有利于節點的排序,因此節點綜合時延與節點的重要度呈負相關。

綜合考慮上述各指標與節點重要度的關系,可將節點綜合重要度Yn表示為:

由此可通過多指標計算出各個節點的綜合重要度,并按照綜合重要度對各節點進行評價與排序,能夠顯著提高映射效率。具體流程如算法2 所示。

算法2 基于節點綜合重要度的節點排序。

輸入 物理網絡GS=(N,Ln);

輸出 完成排序的節點集合N′。

在VNF 聚合映射策略中,為了減少鏈路的“乒乓效應”,降低帶寬消耗,要求映射的第i個節點到目標點的跳數不能大于第i-1 個節點到目標點的跳數(如圖2(c)所示的“乒乓效應”,映射的第3 個節點到目標點的跳數大于映射的第2 個節點到目標點的跳數),對于不符合要求的節點直接刪除;然后依次將完成聚合的VNF 映射到完成排序的節點上,完成VNF 的部署;最后通過計算鏈路的可靠性判斷是否達到標準要求,若不達標則VNF 部署失敗。具體流程如算法3 所示。

算法3 基于節點綜合重要度的節點排序。

輸入 聚合VNF 后的SFC 序列(I,O,D,T,R,V′,L′),排序后的物理鏈路Gs=(N′,Ln′) ;

輸出 VNF 映射List。

最后在滿足約束式(9)、(14)~(15)的條件下,采用k-最短路徑算法,將兩個虛擬節點間的虛擬鏈路映射到相對應的底層物理鏈路上,完成整個SFC 的部署。

3 性能評估實驗與結果分析

為了驗證方法的有效性,采用Matlab 仿真軟件對本文方法進行評估分析,通過特定的評價指標,與基于服務質量(Quality of Service,QoS)保障的服務功能鏈動態部署方法[2]、基于流量優化的可靠服務功能鏈部署方法[20]、可靠性感知的資源節約型虛擬網絡功能部署方法[24]作對比。同時本文為了與文獻[20]中提出的聚合方式進行比較,為驗證圖6 的樹狀圖結果,設置了一個對照實驗,該實驗采用文獻[20]中的聚合方式,其余設置與本文一致。

3.1 評價指標

本文通過SFC 平均可靠性、平均端到端時延、平均帶寬開銷、長期平均開銷比、映射成功率評價方法的性能。

1)Sg的可靠性Rg由式(3)可得,則它的平均可靠性為:

其中:Nsuc為成功部署SFC 的數量。

2)Sg的端到端時延Dg為:

則它的平均端到端時延可定義為:

3)Sg的平均帶寬開銷Bcostave可定義為:

其中:Bcostg為部署成功后Sg消耗的帶寬。

4)Sg的映射成功率ωacc可定義為:

其中:Nsuc(T)表示在時間T內SFC 部署成功的數量;Nv(T)表示在時間T內SFC 請求到達的數量;δ為無窮小,防止Nv(T)為0。

5)在t時刻,將成功部署一個Sg的收益定義為:

在t時刻,成功部署一個Sg,底層物理網絡的開銷為:

其中:α、β、χ和γ分別表示收益與開銷中節點計算資源、存儲資源、轉發資源以及鏈路帶寬資源各自所占的比重,本文均設定為1。

Sg的長期平均收益開銷比為:

3.2 仿真環境設置

本文基于Matlab R2016b 仿真軟件對方法進行評估。物理網絡為100 個節點與525 條鏈路組成的連通圖,是一個中型網絡拓撲圖。具體參數設置如表1 所示。

表1 物理網絡參數設置Tab.1 Physical network parameter setting

SFC 設置:SFC 請求到達率服從λ=1/20 的泊松分布,生存周期服從μ=1 000 的指數分布,仿真實驗持續6× 104個時間單位。具體參數設置如表2 所示。

表2 SFC參數設置Tab.2 SFC parameter setting

為降低隨機因素的影響,仿真實驗共進行了10 次,并選取每次結果的平均值作為實驗的最終結果。

3.3 實驗結果分析

在相同的物理網絡環境與SFC 請求下將本文方法與文獻[2,20,24]中的方法和本文對照實驗方法進行對比實驗仿真,5 種方法的具體對比如表3 所示,所有方法均采用k-最短路徑映射虛擬鏈路。其中:本文的VNF 聚合方法用J1表示,文獻[20]中的聚合方法用J2表示。

表3 不同VNF部署方法對比Tab.3 Comparison of different VNF deployment methods

分別從SFC 平均可靠性、重復映射鏈路跳數、平均端到端時延、平均帶寬開銷、長期平均收益開銷比與映射成功率6 個方面進行分析。

從圖8 可以看出,本文方法、文獻[20]方法與對照實驗方法的映射成功率遠高于文獻[2]與文獻[24]方法,達到了0.95 以上。因為在部署的過程中,這3 種方法不僅考慮了節點的拓撲位置,還考慮了節點的可靠性與綜合時延,約束條件更加完善,大幅提高了映射成功率。文獻[2]方法沒有考慮鏈路時延,文獻[24]方法不僅沒有考慮鏈路時延,也沒考慮節點時延,只關注鏈路的可靠性,使SFC 部署成功后的時延約束不足,導致映射成功率較低。

圖8 SFC映射成功率Fig.8 SFC mapping success rate

如圖9 所示,相較于文獻[20]方法,本文方法的長期平均收益開銷比θ提高約16%。本文方法、文獻[20]方法與對照實驗方法的θ遠高于文獻[2]與文獻[24]方法,本文方法的θ更是達到了0.95 以上,明顯優于其他方法。由于本文方法、文獻[20]方法與對照實驗方法首先考慮了VNF 的聚合,大幅降低了節點的資源消耗與帶寬消耗,其次考慮了“乒乓效應”,有效降低了帶寬的開銷,顯著提高了θ。對照實驗方法與文獻[20]方法相比,節點排序方式不同,收益開銷比卻大幅提升,說明用節點綜合重要度對節點進行評價與排序更加有效,能夠讓不同的評價指標對節點的排序起到更加有效的作用,從而降低了節點資源與帶寬的開銷,提高了θ。本文方法與對照實驗方法相比,VNF 聚合方式不同,收益開銷比結果也有所提高,說明本文的聚合方式更加有效,能夠減少更多的部署節點,從而降低節點資源消耗與鏈路帶寬消耗,提高θ。

圖9 長期平均收益開銷比Fig.9 Average long-term revenue-to-cost ratio

由圖10 可以看出,本文方法、文獻[20]方法、對照實驗方法與文獻[2]、文獻[24]方法相比,平均重復映射鏈路條數更少。因為這3 種方法都考慮了“乒乓效應”,而文獻[2]、文獻[24]方法未考慮這種特殊情況,“乒乓效應”會顯著增加鏈路重復映射條數,從而增加鏈路帶寬消耗。本文方法、文獻[20]方法與對照實驗方法在VNF 映射時考慮了鏈路跳數的約束,從而降低了鏈路重復映射條數。

圖10 鏈路重復映射條數Fig.10 Link number of duplicated mapping

由圖11 可以看出,本文方法、文獻[20]方法、對照實驗方法、文獻[24]方法與文獻[2]方法相比,SFC 的平均可靠性Rg都在0.9 以上,本文方法的Rg更是達到了0.92 以上,相較于文獻[20]方法提升了約2%。因為本文方法、文獻[20]方法、對照實驗方法都對VNF 進行聚合處理,大幅降低了底層物理節點的數量,有效提高了鏈路的可靠性。而文獻[24]方法提高Rg的方法是將VNF 部署在可靠性最高的節點上,后續再不斷對此進行動態調整,因此Rg也可維持在0.9 以上。文獻[2]方法雖然考慮到了節點的可靠性,但卻未進行聚合處理,所以Rg較低,維持在0.87 左右。對照實驗方法與文獻[20]方法相比,節點排序方式不同,Rg基本持平,因為兩個節點排序中的限制條件并不會嚴重影響部署節點的數量,從而對鏈路的可靠性影響較低。本文方法與對照實驗方法相比,VNF 聚合方式不同,Rg明顯提高,說明本文的VNF 聚合方式更加有效,能夠減少更多的部署節點,從而提高鏈路的可靠性。

圖11 SFC平均可靠性Fig.11 Average SFC reliability

由圖12 可看出,本文方法與文獻[20]方法相比,SFC 端到端平均時延Dg降低約22%。本文方法、文獻[20]方法、對照實驗方法與文獻[2]、文獻[24]方法相比,Dg更低,因為這3 種方法都將綜合時延作為評價指標對節點進行排序,同時在VNF 映射時考慮“乒乓效應”,有效地降低了鏈路時延,從而顯著地降低了Dg。相較于文獻[20]方法,對照實驗方法的節點排序方式不同,Dg更低,說明用節點綜合重要度對節點進行排序更加有效,能夠使綜合時延對節點的排序起到更加有效的作用,從而降低Dg。本文方法與對照實驗方法相比,VNF 聚合方式不同,端到端平均時延更低,說明本文的VNF 聚合方式更加有效,能夠減少更多的部署的節點,從而降低節點時延與鏈路時延,進而降低了Dg。

由圖13 可看出,本文方法與文獻[20]方法相比,SFC 端到端平均帶寬開銷Bcostave降低約29%。本文方法、文獻[20]方法、對照實驗方法與文獻[2]、文獻[24]方法相比,Bcostave更低,因為這三種方法首先進行了VNF 的聚合處理,能夠顯著降低帶寬消耗,同時減少了鏈路的“乒乓效應”,能夠減少鏈路的重復映射,從而使帶寬消耗更低。對照實驗方法與文獻[20]方法相比,節點排序方式不同,平均帶寬開銷卻大幅降低,說明用節點綜合重要度對節點進行排序更加有效,能夠讓節點的跳數對于節點的排序起到更加有效的作用,從而降低Bcostave。本文方法與對照實驗方法相比,VNF 聚合方式不同,平均帶寬開銷有所降低,說明本文的聚合方式更加有效,能夠減少更多的部署節點,從而減少鏈路帶寬消耗,降低平均帶寬開銷。

圖13 平均帶寬開銷Fig.13 Average bandwidth overhead

4 結語

針對5G 網絡環境中低時延、高可靠性的要求,本文研究了NFV 環境下關于服務功能鏈(SFC)的部署問題,提出了基于節點綜合重要度排序的服務功能鏈部署方法。首先通過流量改變率將VNF 進行聚合,從而減少部署的物理節點,進而提高鏈路可靠性,節約節點資源消耗與鏈路帶寬開銷;然后通過節點綜合重要度對節點進行排序,提高VNF 映射效率;其次將聚合后的VNF 依次映射到完成排序的底層節點上,同時在VNF 映射階段考慮“乒乓效應”,以減少重復映射鏈路跳數,降低鏈路帶寬消耗;最后通過k-最短路徑算法進行虛擬鏈路映射,完成整個SFC 的部署。仿真結果表明,本文方法能夠有效提高鏈路可靠性、降低時延、降低資源開銷,起到了良好的優化效果。未來將結合深度學習模型對節點綜合重要度的權重進行動態調整,進一步實現對SFC 的優化部署。

猜你喜歡
消耗時延排序
如此消耗卡路里
玉鋼燒結降低固體燃料消耗實踐
排序不等式
降低鋼鐵料消耗的生產實踐
恐怖排序
我們消耗很多能源
基于GCC-nearest時延估計的室內聲源定位
節日排序
基于改進二次相關算法的TDOA時延估計
FRFT在水聲信道時延頻移聯合估計中的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合