祖家琛 胡谷雨 嚴佳潔 李實吉
(陸軍工程大學(xué)指揮控制工程學(xué)院 南京 210007)(jiachen_zu@foxmail.com)
傳統(tǒng)意義上,網(wǎng)絡(luò)運營商會采用專用的網(wǎng)絡(luò)設(shè)備來提供不同的網(wǎng)絡(luò)功能,比如防火墻、網(wǎng)絡(luò)地址轉(zhuǎn)換器和流量分類器等,因此現(xiàn)有的大多數(shù)網(wǎng)絡(luò)服務(wù)需要依靠各式各樣專用的網(wǎng)絡(luò)中間件.但是,這些網(wǎng)絡(luò)中間件的使用帶來了諸多不便:1)價格昂貴,設(shè)備升級換代開銷大;2)高能耗,設(shè)備運行維護開銷大;3)可擴展性差,不同廠商設(shè)備之間很難兼容;4)需要專業(yè)人員維護,隨著設(shè)備增多管理維護難度大;5)生命周期短,每過幾年產(chǎn)品需要整體更新?lián)Q代.
然而,近年來網(wǎng)絡(luò)流量卻呈指數(shù)級別增長,據(jù)思科年度可視化網(wǎng)絡(luò)指數(shù)預(yù)測(visual networking index, VNI)[1]報告指出,到2022年全球年度IP流量預(yù)計達到4.8 ZB,相比2017年的1.5 ZB增加了3.2倍.除此之外,隨著物聯(lián)網(wǎng)(Internet of thing, IoT)和移動智能設(shè)備的發(fā)展,物聯(lián)網(wǎng)設(shè)備連接數(shù)從2015年的49億增長到2020年的122億.近年來諸如虛擬現(xiàn)實、增強現(xiàn)實等新型網(wǎng)絡(luò)服務(wù)也在不斷涌現(xiàn).面對巨大流量壓力和諸多新型網(wǎng)絡(luò)業(yè)務(wù),運營商不得不部署大量昂貴的專用網(wǎng)絡(luò)設(shè)備來提供服務(wù).文獻[2]中指出,在企業(yè)網(wǎng)絡(luò)中,網(wǎng)絡(luò)中間件的數(shù)目幾乎與網(wǎng)絡(luò)中的路由器和交換機數(shù)目相當.這使得網(wǎng)絡(luò)運營商的建設(shè)費用(capital expenditure, CAPEX)和運營成本(operating expense, OPEX)不斷增加,阻礙了網(wǎng)絡(luò)新業(yè)務(wù)的開發(fā).在這樣的背景下,網(wǎng)絡(luò)功能虛擬化(network function virtualization, NFV)[3]被提出利用虛擬化技術(shù)將網(wǎng)絡(luò)功能以軟件形式布置在標準化的服務(wù)器上,其基本思想是將專用設(shè)備上的網(wǎng)絡(luò)功能遷移到通用的X86服務(wù)器上,實現(xiàn)軟硬件分離的獨立發(fā)展,以提升傳統(tǒng)網(wǎng)絡(luò)的開放性、兼容性和靈活性.
服務(wù)功能鏈(service function chain, SFC)[4]通過定義一組有序的服務(wù)功能并將其實例化,基于虛擬網(wǎng)絡(luò)對網(wǎng)絡(luò)中間件間的流量進行靈活調(diào)度處理,從而滿足特定的網(wǎng)絡(luò)服務(wù)需求.在傳統(tǒng)SFC的定義[5]中,服務(wù)功能(service function, SF)作為邏輯元件可以是虛擬元件也可以是嵌入網(wǎng)絡(luò)的物理元件.而NFV+SFC被認為是未來網(wǎng)絡(luò)管理由實向虛的重要手段,現(xiàn)有理論研究中的SFC多采用虛擬化的網(wǎng)絡(luò)功能進行服務(wù),因此在本文中所提及的服務(wù)功能鏈資源管理中的SF均是指虛擬化的網(wǎng)絡(luò)服務(wù).
近些年關(guān)于網(wǎng)絡(luò)功能虛擬化下服務(wù)功能鏈資源管理的研究不斷更新,而相關(guān)綜述卻很少.因此,本文針對SFC的資源管理問題,首先簡要介紹了NFV的基礎(chǔ)架構(gòu)、網(wǎng)絡(luò)服務(wù)虛擬化概念及應(yīng)用場景.而后根據(jù)SFC編排的不同階段,將現(xiàn)有理論研究劃分為組鏈、布置、調(diào)度和按需縮放4個部分,從網(wǎng)絡(luò)場景、理論模型、優(yōu)化方法等方面進行分析、比較和總結(jié),并指出了尚未解決的技術(shù)難題和未來相關(guān)研究的發(fā)展趨勢.
NFV的概念于2012年首次提出,歐洲電信標準協(xié)會(European Telecommunications Standards Institute, ETSI)開始對這項新技術(shù)提出相關(guān)定義和體系結(jié)構(gòu)[6].2013年,ETSI發(fā)布了NFV的第1個正式定義架構(gòu),并對其進行了不斷修訂;它主要包含了3個部分:NFV基礎(chǔ)設(shè)施(network function virtualization infrastructure, NFVI)、NFV管理編排系統(tǒng)(management and orchestration, MANO)和虛擬化網(wǎng)絡(luò)功能(virtual network function, VNF),如圖1所示:

Fig. 1 ETSI-NFV architecture[7]
1) NFVI.NFV基礎(chǔ)設(shè)施為VNF提供資源,它包含網(wǎng)絡(luò)中所用的軟件和硬件.硬件資源包括計算硬件、存儲硬件和網(wǎng)絡(luò)硬件,其中計算硬件和存儲硬件一般被合并,通常采用通用的服務(wù)器(例如X86 PC服務(wù)器),包括CPU、內(nèi)存和網(wǎng)卡等,網(wǎng)絡(luò)硬件包括交換機和路由器用于提供網(wǎng)絡(luò)連接;而軟件的計算和存儲資源通常以虛擬機(virtual machine, VM)形式體現(xiàn),被布署在高容量的服務(wù)器上,利用虛擬化技術(shù)提供虛擬資源.虛擬網(wǎng)絡(luò)資源由位于硬件之上的VNF虛擬節(jié)點和虛擬鏈路組成,這些鏈路為VNF實例之間提供連接.因此,虛擬化資源和硬件資源在NFVI中是緊密耦合在一起的.
2) NFV MANO.NFV MANO由編排器(orche-strator)、虛擬化網(wǎng)絡(luò)功能管理器(VNF manager)和虛擬化基礎(chǔ)設(shè)施管理器(virtualized infrastructure manager, VIM)組成.NFV MANO負責提供存儲信息和數(shù)據(jù)模型的數(shù)據(jù)庫,支持基礎(chǔ)架構(gòu)虛擬化資源編排,VNF的生命周期管理并負責向VNF分配NFVI的物理資源等.此外,該框架還定義了可用于NFV-MANO的不同組件之間通信的接口,兼容傳統(tǒng)網(wǎng)絡(luò)管理系統(tǒng)(即運營支持系統(tǒng)(operations support system, OSS)和業(yè)務(wù)支持系統(tǒng)(business support system, BSS)),以允許VNF和舊版功能同時在設(shè)備上運行[8].
3) VNF.VNF是在虛擬資源(例如虛擬機)上運行的網(wǎng)絡(luò)功能軟件實例.一個VNF可以部署在單個虛擬機上或由多個虛擬機上的子功能組成.VNF通常由元素管理系統(tǒng)(element management system, EMS)管理,負責其創(chuàng)建、配置、性能監(jiān)視和安全管理.EMS可以為電信運營商(telecom service provider, TSP)提供運營支持系統(tǒng)OSS所需的基本信息.OSS與業(yè)務(wù)支持系統(tǒng)BSS一起,可幫助TSP部署和管理多種端到端電信服務(wù)(例如訂購、計費、續(xù)訂、問題排查等).NFV架構(gòu)著重于與現(xiàn)有OSSBSS解決方案的集成.
在網(wǎng)絡(luò)服務(wù)虛擬化中,覆蓋(overlay)網(wǎng)絡(luò)技術(shù)將虛擬網(wǎng)絡(luò)與物理網(wǎng)絡(luò)分離,為網(wǎng)絡(luò)服務(wù)提供鏈接,采用隧道技術(shù)例如VXLAN和NVGRE可以支持VNF的高效調(diào)度,集中管理.軟件定義網(wǎng)絡(luò)(software defined network, SDN)將網(wǎng)絡(luò)的控制和轉(zhuǎn)發(fā)分離,提供了一種新型的網(wǎng)絡(luò)連接方式[9].未來可以基于SDN-via-overlay網(wǎng)絡(luò)實現(xiàn)虛擬網(wǎng)絡(luò)的邏輯鏈接[10],進一步減少網(wǎng)絡(luò)管理的復(fù)雜性.NFV則提供了一種網(wǎng)絡(luò)功能節(jié)點虛擬化的手段,利用虛擬機容器管理技術(shù)合理地為VNF分配CPU內(nèi)核、存儲器和接口,實現(xiàn)VNF的實例化.二者結(jié)合為SFC的資源管理提供了重要的技術(shù)支撐[11].
表1羅列了部分NFV中可虛擬化的候選網(wǎng)絡(luò)功能,涵蓋了諸多常用路由設(shè)備和網(wǎng)絡(luò)應(yīng)用設(shè)備.這些功能既包含一些傳統(tǒng)的網(wǎng)絡(luò)功能,例如防火墻和IP網(wǎng)絡(luò)地址轉(zhuǎn)換器等,也包含一些特定的應(yīng)用程序功能.一般情況下,VNF不會單獨地提供網(wǎng)絡(luò)服務(wù),需要經(jīng)過編排以特定順序組成SFC來提供端到端的網(wǎng)絡(luò)服務(wù).

Table1 Virtualized Network Functions[12]
圖2提供了一個網(wǎng)絡(luò)服務(wù)功能鏈的示例,數(shù)據(jù)流需要按照鏈接順序經(jīng)過相應(yīng)的VNF處理,例如防火墻→深度包檢測→編碼器→數(shù)據(jù)監(jiān)視器→解碼器來完成定制化的網(wǎng)絡(luò)服務(wù).SFC在發(fā)送到邊緣路由器時會插入一個包含所需VNF的服務(wù)鏈包頭,它的屬性一般包括源地址、目的地址、VNF類型和數(shù)目等.

Fig. 2 Example of service function chain[13]
虛擬化帶來了資源的彈性利用優(yōu)勢,要實現(xiàn)SFC在NFV場景下的完全應(yīng)用,未來在提供網(wǎng)絡(luò)服務(wù)的過程中應(yīng)支持[14]:1)可遷移性.例如VNF所在的服務(wù)器資源不足時,可以通過虛擬機的實時遷移來遷移實例到其他服務(wù)器上.2)性能一致性.虛擬化網(wǎng)元應(yīng)能提供和專用設(shè)備一致的性能,NFV系統(tǒng)應(yīng)能夠描述VNFI的資源使用情況,實例化給定配置的VNF,并根據(jù)給定性能指標分配資源.3)按需縮放性.根據(jù)網(wǎng)絡(luò)流量的大小,系統(tǒng)能夠自動對硬件資源和虛擬資源進行容量縮放,容量縮放包括垂直和水平兩方面,垂直縮放是指在現(xiàn)有服務(wù)器節(jié)點上增加和減少資源,水平縮放是指在現(xiàn)有服務(wù)節(jié)點基礎(chǔ)上增加或者減少節(jié)點數(shù)目.4)穩(wěn)定性和持續(xù)性.SFC需要提供符合服務(wù)規(guī)范和SLA的不間斷服務(wù)交付,網(wǎng)絡(luò)一旦出現(xiàn)故障,系統(tǒng)應(yīng)能保證被影響的VNF實例及時恢復(fù)正常功能.5)安全性.由于傳統(tǒng)網(wǎng)絡(luò)功能設(shè)備是專用物理設(shè)備,一般具有很好的安全性,但是在虛擬化環(huán)境很容易遭受外部攻擊,NFV系統(tǒng)應(yīng)當提供更好的安全機制來解決虛擬化引入的安全漏洞.6)兼容性.要保證虛擬軟件在不影響服務(wù)質(zhì)量的前提下盡量兼容傳統(tǒng)網(wǎng)絡(luò),能夠與多廠商硬件設(shè)備相互兼容.7)可擴展性.應(yīng)簡化通信協(xié)議,提供標準化接口,使SFC易于部署在大型網(wǎng)絡(luò)中.
伴隨SDN,NFV等網(wǎng)絡(luò)新技術(shù)的發(fā)展,虛擬化的網(wǎng)絡(luò)服務(wù)能夠應(yīng)用于各類網(wǎng)絡(luò)場景中,例如數(shù)據(jù)中心網(wǎng)絡(luò)、5G網(wǎng)絡(luò)、邊緣計算網(wǎng)絡(luò)和天地一體化網(wǎng)絡(luò).
1) 數(shù)據(jù)中心中的網(wǎng)絡(luò)服務(wù)虛擬化
目前,很多校園網(wǎng)絡(luò)、企業(yè)網(wǎng)絡(luò)需要在其分支機構(gòu)布置大量的網(wǎng)絡(luò)服務(wù)應(yīng)用.隨著云計算技術(shù)的不斷成熟,更多的服務(wù)和應(yīng)用程序被遷徙到云服務(wù)提供商的數(shù)據(jù)中心中.數(shù)據(jù)中心是網(wǎng)絡(luò)服務(wù)虛擬化的主要應(yīng)用場景[15],網(wǎng)絡(luò)服務(wù)虛擬化需要依托云計算模式來提供服務(wù),這其中包括服務(wù)器虛擬化[16]、固定接入設(shè)備的虛擬化[17]等.
2) 5G網(wǎng)絡(luò)中的網(wǎng)絡(luò)服務(wù)虛擬化
在5G網(wǎng)絡(luò)中引入NFV+SFC技術(shù),針對不同應(yīng)用場景進行網(wǎng)絡(luò)切片,可以對不同優(yōu)先級的業(yè)務(wù)提供差異化的資源和服務(wù)質(zhì)量,并按需向用戶提供定制化的網(wǎng)絡(luò)服務(wù)[18].這其中將包含5G接入網(wǎng)絡(luò)的虛擬化[19-20]、移動基站的虛擬化[21]和移動核心網(wǎng)虛擬化[22]等.
3) 邊緣計算中的網(wǎng)絡(luò)服務(wù)虛擬化
在傳統(tǒng)的云計算中,流量需要經(jīng)過移動核心網(wǎng)才能達到數(shù)據(jù)中心的云服務(wù)器進行處理.移動邊緣計算可以在邊緣網(wǎng)絡(luò)的服務(wù)器上提供計算、存儲和通信能力[23],具有低延時、超高帶寬等優(yōu)勢.邊緣計算將成為未來網(wǎng)絡(luò)的重要發(fā)展趨勢[24],其中的網(wǎng)絡(luò)服務(wù)虛擬化將涵蓋家庭網(wǎng)絡(luò)虛擬化[25]、內(nèi)容分發(fā)網(wǎng)絡(luò)(content distribution network, CDN)虛擬化[26]和物聯(lián)網(wǎng)應(yīng)用虛擬化[27]等.
4) 天地一體化網(wǎng)絡(luò)中的網(wǎng)絡(luò)服務(wù)虛擬化
5G技術(shù)的成熟與商用,使得眾多研究者對下一步6G技術(shù)的研究更加關(guān)注.天地一體化網(wǎng)絡(luò)[28]是6G研究中的重要研究方向,衛(wèi)星通信網(wǎng)絡(luò)融合到地面之后,將會對地球?qū)崿F(xiàn)無縫覆蓋,任何偏遠地區(qū)、深山海洋都能得到互聯(lián)網(wǎng)帶來的便捷服務(wù).而目前衛(wèi)星網(wǎng)絡(luò)是運營商專用的封閉網(wǎng)絡(luò),缺乏兼容性和互操作性.SDNNFV的引入可以實現(xiàn)衛(wèi)星的網(wǎng)絡(luò)功能虛擬化[29]和地球站虛擬化[30-31]等技術(shù),為異構(gòu)網(wǎng)絡(luò)的融合帶來便利.
資源的優(yōu)化分配是網(wǎng)絡(luò)虛擬化中的關(guān)鍵問題,在NFV體系架構(gòu)中,執(zhí)行資源分配的組件是MANO編排系統(tǒng),它可以采用SDN的方式來對網(wǎng)絡(luò)資源進行集中式的分配和調(diào)度,將虛擬化資源需求有效地映射到底層實際網(wǎng)絡(luò)(包括節(jié)點、鏈路),這一問題也被稱作虛擬化網(wǎng)絡(luò)嵌入問題(virtual network embe-dding, VNE)[32].伴隨著現(xiàn)代網(wǎng)絡(luò)管理向智能調(diào)度和細化服務(wù)的目標邁進,針對VNE的研究發(fā)展為不同場景下的SFC的嵌入問題.在SFC嵌入過程中,還需要滿足諸多性能要求,例如負載均衡、按需縮放、網(wǎng)絡(luò)功能遷移、節(jié)能和故障恢復(fù)等[33].針對網(wǎng)絡(luò)服務(wù)功能鏈資源管理,現(xiàn)有的理論研究主要集中在4個方面:1)SFC的組鏈.如何合理地按照用戶需求和VNF屬性描述和構(gòu)建SFC.2)SFC的部署.如何在滿足SFC需求和底層網(wǎng)絡(luò)容量限制下,有效地在物理節(jié)點上部署虛擬網(wǎng)元.3)SFC的調(diào)度.如何安排VNF的動態(tài)執(zhí)行順序以減少總的服務(wù)時間.4)VNF的按需縮放和遷移.如何在網(wǎng)絡(luò)負載發(fā)生變化或出現(xiàn)節(jié)點故障時,進行物理容量的按需縮放或者VNF的動態(tài)遷移.下面具體介紹各階段的研究現(xiàn)狀.
首先,在使用不同VNF構(gòu)建SFC過程中需要采用形式化的語言進行定義.互聯(lián)網(wǎng)中一種流行的服務(wù)描述方法是使用Web服務(wù)描述語言(Web Services Description Language, WSDL)或統(tǒng)一服務(wù)描述語言(United Services Description Language, USDL),旨在從業(yè)務(wù)、運營或技術(shù)角度描述Web和Internet服務(wù).而對于云服務(wù)的描述,可以采用云服務(wù)聲明性定義語言(Cloud Services Description Language, CSDL)進行描述.但是這些現(xiàn)有的服務(wù)描述語言不適用于彈性服務(wù)環(huán)境[34],用于描述SFC存在諸多問題.
Joseph等人[35]建立了一個數(shù)據(jù)模型,用于描述一些常用的網(wǎng)絡(luò)功能,但它沒有考慮網(wǎng)絡(luò)功能的資源需求,因此不適用于VNF的描述.Cheng等人[36]將網(wǎng)絡(luò)功能抽象為細粒度的原子函數(shù),并采用描述性的語言定義其公共特性例如類型和SLA等.Mehraghdam等人[37]首次引入一種上下文無關(guān)的語言來形式化定義SFC請求,并在此基礎(chǔ)上進一步提出了YANG模型[38-39],以一種靈活的方式描述SFC請求中的VNF結(jié)構(gòu),該方法采用啟發(fā)式方法針對服務(wù)的不同資源需求,選擇不同服務(wù)可能組合的Pareto集,可以在不影響總體功能的情況下更改VNF的順序.該模型已在很多組織比如OpenDaylight和ETSI的標準中得到應(yīng)用.
另一方面,SFC的性能將受到VNF的組成和處理順序影響.例如在圖3中,考慮1個服務(wù)鏈請求,其初始的流量速率為4 Gbps,由5個不同的VNF構(gòu)成.假設(shè)其中VNF1是一個編碼器,相對傳出流量是傳入流量的2倍;VNF2是一個負載均衡器,它將傳入的流量分成2個相等的流;VNF3是一個解碼器,相對傳出流量是傳入流量的2倍.執(zhí)行順序與VNF之間的依賴關(guān)系有關(guān),其中VNF2,VNF3,VNF4必須在VNF1之后執(zhí)行,而VNF3必須在VNF2之后執(zhí)行.基于依賴關(guān)系,有多種不同的組鏈方式.圖3顯示了此示例的2個可能的服務(wù)鏈組成.可以看出VNF1→VNF4→VNF2→VNF3→VNF5的組鏈方式相比VNF1→VNF2→VNF3→VNF4→VNF5帶寬占用更少,能夠減少鏈路帶寬資源的消耗.因此,不同的組鏈方式會影響網(wǎng)絡(luò)服務(wù)的性能,應(yīng)針對服務(wù)提供商的優(yōu)化目標合理安排服務(wù)鏈VNF的順序.

Fig. 3 Example of SFC composition
Mehraghdam等人[37]為了使生成SFC的總數(shù)據(jù)速率最小化,提出了一種用于組鏈的貪心算法.根據(jù)輸出數(shù)據(jù)速率與輸入數(shù)據(jù)速率的比值對虛擬網(wǎng)元進行升序排序,并盡量將減少流速率的VNF放在前面,此方法被驗證可以有效地減少帶寬占用.由于不同的組鏈方式會影響SFC下一階段部署,因此兩者在研究中常常被聯(lián)合進行優(yōu)化.Beck等人[40]提出了一種遞歸啟發(fā)式方法來同時進行SFC組鏈和布署,該方法首先根據(jù)VNF之間的依賴關(guān)系枚舉出所有可能的組鏈方案,在每一步都選擇1個VNF加入服務(wù)鏈,同時將其部署到底層網(wǎng)絡(luò)中;當無法嵌入VNF時,通過回溯最后成功映射的VNF,并尋找其他組鏈替代方案進行映射.進一步地,文獻[41-42]使用有向無環(huán)圖來描述SFC中VNF的依賴順序,并且采用拓撲排序的方法對VNF進行分組,這種方法可以快速得到組鏈方案,并提高下一步離線布署SFC的效率.值得注意的是,Sun等人[43]根據(jù)來自現(xiàn)實企業(yè)網(wǎng)絡(luò)的統(tǒng)計數(shù)據(jù),觀察到53.8%的網(wǎng)絡(luò)功能是可以并行工作的.VNF并行工作意味著服務(wù)鏈長度的縮減,這將帶來服務(wù)跳數(shù)和延遲的減少.文中提出了一種創(chuàng)新的框架NFP以實現(xiàn)網(wǎng)絡(luò)功能并行性,提高NFV的性能.首先,NFP為運營商提供了一種規(guī)范描述方案,以直觀地描述NF(network function)鏈接圖.其次,NFP編排器基于數(shù)據(jù)包操作智能地識別NF間的依賴性,并自動將策略編譯為高性能服務(wù)圖.第三,NFP基礎(chǔ)設(shè)施執(zhí)行輕量級數(shù)據(jù)包復(fù)制、分布式并行數(shù)據(jù)包傳遞以及負載平衡的數(shù)據(jù)包副本合并.最終在Linux容器中實現(xiàn)了基于DPDK[44]的NFP原型系統(tǒng).

Fig. 4 Example of SFC placement[47]
目前,在大多數(shù)的網(wǎng)絡(luò)服務(wù)功能鏈資源管理研究中,SFC的組鏈多被假設(shè)為固定模式并當作部署階段的默認輸入.現(xiàn)有組鏈研究更多集中于系統(tǒng)工程的實現(xiàn),設(shè)計一款根據(jù)用戶具體需求,對VNF快速編排構(gòu)建SFC的編排器是實現(xiàn)網(wǎng)絡(luò)服務(wù)虛擬化的第一步,最終目標是實現(xiàn)細粒度的服務(wù)匹配.未來可以根據(jù)VNF對數(shù)據(jù)包的具體操作進行劃分,對VNF之間的依賴關(guān)系進一步挖掘.
現(xiàn)有針對服務(wù)功能鏈的資源管理研究大多集中于SFC的部署階段,對于1組網(wǎng)絡(luò)服務(wù)SFC請求,需要在底層物理網(wǎng)絡(luò)上進行VNF的實例化,分配資源并進行路由.目前有3種架構(gòu)支持VNF的實例化:1)虛擬機架構(gòu).VM托管VNF,使用虛擬機監(jiān)控程序管理其網(wǎng)絡(luò)連接[45].2)裸機架構(gòu).VNF無需使用虛擬機監(jiān)控程序即可直接訪問服務(wù)器上的物理資源[46].3)容器架構(gòu).通過容器虛擬化部署VNF,容器是一種輕量級的虛擬化架構(gòu),可以在1臺服務(wù)器上運行多種VNFs和其他應(yīng)用程序.在現(xiàn)有理論研究中模型多采用虛擬機架構(gòu).
圖4給出了SFC部署的一個簡化示例,用戶需要獲取社交網(wǎng)絡(luò)服務(wù)(例如,通過SFC登錄Facebook服務(wù)器),假設(shè)SFC請求需要經(jīng)過3種類型的VNF處理:Web代理(proxy)、防火墻(firewall, FW)和負載均衡器(load balancer, LB).底層網(wǎng)絡(luò)中的服務(wù)節(jié)點上可以部署不同類型的VNF,在這種情況下有多種部署方案可以滿足SFC的預(yù)定義順序.由于底層網(wǎng)絡(luò)中有限的物理資源(即CPU、內(nèi)存和帶寬等),尋找最優(yōu)的折衷方案部署SFC以減少資源瓶頸成為一個挑戰(zhàn).此外,對于不同的服務(wù)場景,會針對特定的目標(如剩余網(wǎng)絡(luò)資源最大、服務(wù)器功耗最小、特定QoS(quality of service)指標的提升等)來進行優(yōu)化設(shè)計.
SFC部署問題可以看作是著名的VNE問題的泛化,而這已經(jīng)證明是一個NP難的問題[48].整數(shù)線性規(guī)劃(integer linear programming,ILP)常用于小規(guī)模網(wǎng)絡(luò)SFC部署問題的建模求解,Bari等人[49]采用ILP模型建模,優(yōu)化的目標是最小化運營支出和資源碎片,這其中包括了VNF的部署代價、能源消耗和流量成本等.利用CPLEX等計算工具可以得到小規(guī)模網(wǎng)絡(luò)下的精確求解.但在大規(guī)模網(wǎng)絡(luò)下運算會導(dǎo)致時間過長,因此文中設(shè)計了一種基于維特比算法的啟發(fā)式方法用于大規(guī)模網(wǎng)絡(luò)下的SFC部署.Mechtri等人[50]將底層網(wǎng)絡(luò)有向圖轉(zhuǎn)換為資源矩陣,利用鄰接矩陣的特征分解來解決分布式云環(huán)境中的VNF放置和選路問題;Khebbache等人[51]也采用基于矩陣分析和多階段圖的方法來找到多項式時間內(nèi)的優(yōu)化解,并在SFC的布置階段設(shè)計了一種基于二分圖完美匹配的算法.但是針對大規(guī)模網(wǎng)絡(luò),文獻[49-51]在鏈接虛擬網(wǎng)元每個階段都以貪婪的方式依次去布置VNF,從優(yōu)化的角度來講,采用啟發(fā)式算法有助于提升求解效率并提高可擴展性,但可能導(dǎo)致SFC部署的次優(yōu)解決方案.文獻[52]針對數(shù)據(jù)中心場景,在貪婪部署SFC的基礎(chǔ)上,設(shè)計了一個2階段的啟發(fā)式算法對貪婪解進行進一步調(diào)整,該方法面對時變網(wǎng)絡(luò)負載可以有效地減少使用的服務(wù)器數(shù)量,進一步提高資源利用率.
除了ILP模型外,由于每個VNF實例的服務(wù)過程可以看作一個排隊過程,排隊模型也被應(yīng)用于SFC的部署和調(diào)度[53].Zhang等人[54]基于Open Jackson排隊網(wǎng)絡(luò)模型對SFC部署和調(diào)度進行聯(lián)合優(yōu)化,相比ILP模型可以更好地模擬數(shù)據(jù)中心網(wǎng)絡(luò)中的流量特性和擁塞狀況;Tang等人[55]基于動態(tài)的排隊模型來解決5G接入網(wǎng)絡(luò)中的VNF部署問題,并利用Lyapunov優(yōu)化方法,提出了一種基于遺傳算法的SFC調(diào)度與映射算法;Elias等人[56]則將SFC的布置問題歸結(jié)為非線性整數(shù)規(guī)劃模型,目標函數(shù)是最大程度地減少網(wǎng)絡(luò)擁塞.他們提出了一種基于博弈論的方法以完全分布式的方式解決問題,并獲得了接近集中式部署算法的性能.
與上述研究工作不同,由于在SFC部署過程中可以選擇復(fù)用已有的VNF實例,一些研究從多路徑路由(multi-path routing, MRP)的角度出發(fā)求解SFC部署問題.Cao等人[57]基于分段路由方法提出一種競爭性在線流量控制算法,通過對偶變量更新和尋找最短路徑來優(yōu)化網(wǎng)絡(luò)吞吐量.Dwaraki等人[58]提出了一種自適應(yīng)路由算法來解決SFC的選路問題.在該算法中,虛擬網(wǎng)元請求被轉(zhuǎn)換為分段圖.文中提出了一種通過鏈路和節(jié)點的負載利用率測量來計算端到端延遲的方法,并通過執(zhí)行常規(guī)的最短路徑算法來最小化估計時延.Pei等人基于文獻[57-58]的研究方法,在文獻[59]中提出了一種區(qū)分流的路由算法,旨在最小化SFC請求的資源消耗代價.該算法將數(shù)據(jù)流根據(jù)資源偏好分為不同種類.不同流的資源代價被區(qū)別地定義用以平衡負載.但由于分段路由需要列舉SFC請求中所有的可選網(wǎng)元位置,此計算代價在大規(guī)模網(wǎng)絡(luò)部署時會非常高.Sallam等人[60]提出了一種虛擬網(wǎng)絡(luò)圖的簡化方法,可以降低文獻[57-58]中算法的計算復(fù)雜度.而后,他們將受SFC約束的最大流問題公式化為分數(shù)多商品流模型,以實現(xiàn)吞吐量最優(yōu)的路由.Pei等人[61]則基于深度學(xué)習(xí)設(shè)計了一種新的路由方案,以減少分段路由方法的計算時間.性能評估表明,深度學(xué)習(xí)方法可以顯著提高計算效率,并在請求成功率和端到端延遲方面獲得與最短路徑解幾乎相同的性能.
上述研究中,多數(shù)集中于求解SFC的離線部署問題上,在求解過程中SFC請求默認已知并被一個個部署.然而在實際系統(tǒng)中,在不同時刻網(wǎng)絡(luò)的載荷是動態(tài)變化的,SFC請求通常是事先未知、動態(tài)地產(chǎn)生和釋放,且具有一定的生命時間;因此求解SFC的在線部署問題具有更強的實際意義,卻也變得更加復(fù)雜.Zhou等人[62]針對地理分布云提出了一種基于原始對偶優(yōu)化的布置方案,該方案能對SFC每次到來的請求實時尋求優(yōu)化位置進行部署以減少資源代價.進一步地,在SFC的部署過程中也可以選擇開啟新的VNF實例進行服務(wù),Pei等人[63]在SFC的在線部署時同時考慮復(fù)用已有實例和開啟新實例,并在部署中對兩者的代價進行權(quán)衡選擇.為了有效地映射SFC請求并動態(tài)調(diào)整VNF實例的數(shù)量,還提出了一個VNF的動態(tài)釋放算法來關(guān)閉冗余的實例.
針對在線布置,基于正則化的在線學(xué)習(xí)方法可以將離線部署問題轉(zhuǎn)化為一系列單個時隙的正則化問題,借助歷史流量記錄,使用在線學(xué)習(xí)方法可以預(yù)測即將到來的資源需求;由于預(yù)測誤差可被證明具有理論上界,因此近些年常用于求解SFC的在線部署問題.Zhang等人[64]將在線學(xué)習(xí)方法與用于VNF縮放的多時標優(yōu)化算法相結(jié)合,通過最小化預(yù)測需求的誤差,以最小化次優(yōu)在線決策產(chǎn)生的代價.Fei等人[65]采用了一種廣泛使用的在線學(xué)習(xí)方法FTRL(follow the regularized leader),以最小化預(yù)測SFC資源需求產(chǎn)生的誤差.利用預(yù)測結(jié)果,可以根據(jù)處理能力自適應(yīng)地分配VNF實例,理論分析和真實數(shù)據(jù)仿真均證明了該在線算法具有良好的性能保證.Jia等人[66]將在線學(xué)習(xí)方法應(yīng)用于跨地理位置云數(shù)據(jù)中心的動態(tài)布署,該方法允許VNF的動態(tài)布署和釋放,并設(shè)計了一個隨機舍入方法來得到VNF數(shù)目的可行整數(shù)解,保證了和離線最優(yōu)方案相比,在線方案在總成本上具有良好的競爭力.
除此之外,強化學(xué)習(xí)因為具有從歷史經(jīng)驗和環(huán)境反饋中自學(xué)習(xí)決策的優(yōu)點,常用于動態(tài)場景下的資源智能調(diào)度[67],也適用于求解SFC的布署問題.文獻[68]中提出一種基于強化學(xué)習(xí)的多智能體服務(wù)鏈資源調(diào)度架構(gòu),基于經(jīng)典算法Q學(xué)習(xí)進行服務(wù)鏈映射,根據(jù)系統(tǒng)狀態(tài)、執(zhí)行動作后的獎懲反饋來決定服務(wù)鏈中各虛擬網(wǎng)元的部署位置.實驗結(jié)果表明該算法有效降低了業(yè)務(wù)的平均傳輸延時,提升系統(tǒng)的負載均衡性.Sun等人[69]基于Q學(xué)習(xí)提出一種SFC部署的混合模塊算法,其中強化學(xué)習(xí)模塊負責備選路徑的輸出,負載均衡模塊負責從中多路徑中選擇最優(yōu)解.但是上述論文在采用強化學(xué)習(xí)解決SFC部署問題時,狀態(tài)空間的定義過于簡單,實際在SFC部署時需要考慮的特征變量很多,而龐大的狀態(tài)空間定義會造成求解復(fù)雜度的提升.深度Q學(xué)習(xí)網(wǎng)絡(luò)(deep Q network, DQN)[70]能夠有效處理大規(guī)模離散狀態(tài)空間問題,適用于根據(jù)QoS需求細化部署SFC,可以作為進一步的研究方向.
網(wǎng)絡(luò)功能虛擬化下服務(wù)功能鏈的部署問題是近幾年網(wǎng)絡(luò)虛擬化資源優(yōu)化分配的研究熱點;針對現(xiàn)有理論研究,可以看出研究場景正在從數(shù)據(jù)中心內(nèi)部向著跨地理位置的分布式數(shù)據(jù)中心、邊緣計算場景不斷擴展,研究方法也從離線求解向著在線求解、線性規(guī)劃+啟發(fā)式算法向著智能學(xué)習(xí)算法發(fā)展.但是由于缺乏相關(guān)標準數(shù)據(jù),現(xiàn)有理論文獻也存在方法很難橫向比較等問題.
一旦在物理節(jié)點上布署好VNF,SFC數(shù)據(jù)流通過VNF處理需要一定的時間.如何在多數(shù)據(jù)流并行處理的情況下,合理安排服務(wù)節(jié)點上的VNF執(zhí)行順序進行高效調(diào)度成為了一個問題.圖5展示了一個SFC的調(diào)度示例,3條服務(wù)鏈等待被處理,底層網(wǎng)絡(luò)有5個高容量服務(wù)器節(jié)點(high volume server, HVS)承載不同的VNF實例,假設(shè)同一時刻HVS只能對一種VNF請求進行服務(wù),應(yīng)該如何安排服務(wù)器上的VNF處理順序來最小化總的SFC處理時間.

Fig. 5 Example of SFC scheduling[13]
相比SFC部署研究,目前針對SFC調(diào)度的研究較少.Riera等人[71-72]首次提出在光網(wǎng)絡(luò)中將這一問題歸結(jié)為資源限制下的柔性作業(yè)調(diào)度問題(flexible job shop scheduling problem, FJSP),這是一個經(jīng)典的NP難問題,優(yōu)化的目標是最小化總的工序完成時間.盡管在文中很好地形式化了該問題,但他們沒有給出具體的求解方法.Mijumbi等人[73]假設(shè)VM可以按序處理多個VNF,在文中采用貪婪算法和禁忌搜索方法,用于在線布置和調(diào)度VNF,該算法同時執(zhí)行映射和調(diào)度(1次完成),從而提高了請求接受率,縮短了平均工序時間并降低了嵌入代價.Qu等人[74]將SFC調(diào)度問題通過MILP(mixed integer linear programming)建模,考慮了服務(wù)過程中的傳輸時延和處理時延,基于遺傳算法較好地求解了這一柔性作業(yè)調(diào)度問題,對比文獻[73]中方法可以縮減調(diào)度時間.進一步地,Alameddine等人[75]綜合考慮了SFC部署、路由和調(diào)度3個階段的相互影響,對MILP模型進一步細化.由于規(guī)劃求解的解空間太大,文中提出一種基于列生成(column generation, CG)的原始-對偶分解方法提升算法的可擴展性.Yao等人[76]也對SFC的部署和調(diào)度問題進行聯(lián)合優(yōu)化,為了降低線性規(guī)劃的復(fù)雜度,文中創(chuàng)新性地提出一種VNF在線搶占式調(diào)度方法并允許VM動態(tài)地調(diào)整VNF的處理順序.
但是上述研究[73-76]均是解決SFC的離線調(diào)度問題(即SFC數(shù)目已知,調(diào)度時間內(nèi)VNF數(shù)量不變),當新的VNF請求到達時,它必須等待直到當前調(diào)度完成.在實際場景中,由于SFC的動態(tài)到達,針對SFC的在線調(diào)度顯得更有實際意義.Pham等人[77]設(shè)計了一種基于匹配博弈的SFC調(diào)度方法,該方法可以很好地擴展至在線場景,達到資源限制下的“穩(wěn)定調(diào)度”,且仿真結(jié)果優(yōu)于文獻[74].
現(xiàn)有單獨針對SFC調(diào)度問題的理論研究較少,一般都是結(jié)合SFC部署進行聯(lián)合優(yōu)化.未來可以考慮結(jié)合SFC的在線部署進行在線調(diào)度方面的研究.類似地,參考文獻[67]中的資源智能調(diào)度模型,采用強化學(xué)習(xí)等智能學(xué)習(xí)算法應(yīng)該有助于該問題的求解.

Fig.7 Example of VNF migration
針對NFV的兩大性能要求:按需縮放和可遷移性,目前也存在一些研究.首先,針對VNF的按需縮放(這里指的是垂直縮放):不同的VNF一般被隔離在不同的VM中以共享物理資源.但每個VM的計算能力都有限,VM的負載不平衡會導(dǎo)致網(wǎng)絡(luò)性能下降.在這種情況下,應(yīng)該有一個有效的資源分配機制來適應(yīng)VNF需求.
具體地,在每個服務(wù)器節(jié)點上,CPU內(nèi)核在不同VNF之間通過多租戶技術(shù)(multi-tenancy)[78]共享.圖6顯示了一個VNF間共享CPU的示例,其中2個不同的VNF共享4核CPU.如果VNF2需要更多的計算資源,而VNF1需要的計算資源較少.服務(wù)器節(jié)點應(yīng)具有自適應(yīng)的資源分配方案以平衡負載,該方案可以根據(jù)VNF的資源需求調(diào)整不同VM的容量分配(比如,將VNF1的CPU資源從2個內(nèi)核重新分配到1個內(nèi)核,但將VNF2的CPU資源從2個內(nèi)核增加到3個內(nèi)核).這可以視作一種基于虛擬機在線擴容機制的垂直按需縮放.

Fig.6 The CPU sharing among multiple VNFs[47]
對此,Buh等人[79]設(shè)計了一種軟件定義設(shè)備中多核體系架構(gòu)間的新型自適應(yīng)流量分配機制,并通過在Linux Bridge網(wǎng)絡(luò)設(shè)備上的測試進行了驗證.Savi等人[80]討論了服務(wù)器上包括線程切換成本(由重復(fù)的內(nèi)容加載保存在同一CPU上引起)和擴展成本(由多個CPU內(nèi)核之間的VNF負載均衡需求引起)帶來的資源代價,并證實他們會影響SFC的嵌入性能.Kulkarni等人[81]提出了一個名為VNFnice的VNF調(diào)度和管理框架,以實現(xiàn)CPU資源的公平分配.在他們的工作中,每個VNF的負載被計算為數(shù)據(jù)流到達速率和估計服務(wù)時間的乘積,在數(shù)據(jù)包粒度上采用動態(tài)背壓算法來管理擁塞.最后,基于DPDK平臺在容器中進行虛擬網(wǎng)元的管理.
除了垂直按需縮放,基于虛擬機遷移技術(shù)的VNF在線遷移機制可以被視為一種水平的按需縮放.
圖7給出一個數(shù)據(jù)中心場景下VNF遷移的簡化示例,由于服務(wù)器間承載VNF的負載存在差異,可以通過遷出VNF2到VNF5所在的服務(wù)器來進行負載均衡.如果需要降低數(shù)據(jù)中心能耗,則可以選擇遷出VNF5到VNF3所在服務(wù)器并關(guān)閉VNF5原有服務(wù)器.VNF的在線遷移機制能為服務(wù)功能鏈的資源管理帶來很大幫助[82]:1)當節(jié)點處于過載狀態(tài)時,可以觸發(fā)遷移將某些VNF遷出到其他節(jié)點,使得各節(jié)點負載控制在合理范圍[83];2)除了用于負載均衡的遷移,在節(jié)點利用率過低時也可以采用VNF遷移來進行聚合,文獻[84]中討論了在數(shù)據(jù)中心場景下,低流量期間關(guān)閉服務(wù)器帶來的虛擬網(wǎng)元遷移問題,通過聚合VNF可以減少數(shù)據(jù)中心的能源消耗;3)當節(jié)點發(fā)生故障或者服務(wù)中斷時,通過VNF遷移至備用服務(wù)節(jié)點快速地恢復(fù)業(yè)務(wù)[85-86],從而保障業(yè)務(wù)的連續(xù)性.
除了在線遷移外,VNF還可以通過重新安裝或者關(guān)閉實例來進行水平的按需縮放,這2種方式在SFC的在線部署中需要進行權(quán)衡.文獻[87]中對在VNF實例水平按需縮放過程中,應(yīng)該直接重新安裝VNF還是遷移VNF這一問題進行了討論,文中提出基于最短服務(wù)中斷時間(重啟或遷移)的標準來判斷VNF的水平縮放方式,并以最短延遲為目標優(yōu)化VNF的部署路徑.進一步地,文獻[88]中在面對動態(tài)負載時同時考慮了垂直縮放和水平縮放,并提出通過服務(wù)中斷時間來選擇策略.
現(xiàn)有基于虛擬機遷移機制針對VNF的在線遷移研究較多,但是結(jié)合虛擬機在線擴容機制對于VNF垂直按需縮放的研究較少,未來可以針對具體場景探究選擇合適的縮放模式來滿足SFC的資源需求.
目前,網(wǎng)絡(luò)虛擬化資源管理引起了來自學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注,成為當前網(wǎng)絡(luò)技術(shù)研究的一大熱點.表2總結(jié)了網(wǎng)絡(luò)功能虛擬化下服務(wù)功能鏈的理論研究現(xiàn)狀,結(jié)合未來網(wǎng)絡(luò)運維自動化、智能化的性能要求,我們認為現(xiàn)有研究中還存在3個問題:
1) NFV平臺的處理性能問題.NFV旨在將虛擬化的網(wǎng)絡(luò)功能部署在通用的硬件設(shè)備上,而通用硬件設(shè)備相比傳統(tǒng)專業(yè)網(wǎng)絡(luò)設(shè)備,缺乏硬件方面的優(yōu)化,在進行一些特殊的網(wǎng)絡(luò)服務(wù)時性能會有所下降.為了將NFV平臺集成進現(xiàn)有網(wǎng)絡(luò),需要在硬件和軟件兩方面進行性能優(yōu)化.
2) 現(xiàn)有理論研究過多關(guān)注方法的新穎性而忽略了在實際系統(tǒng)中的可行性.針對不同網(wǎng)絡(luò)場景、網(wǎng)絡(luò)拓撲、資源狀況存在很大差異,例如數(shù)據(jù)中心網(wǎng)絡(luò)拓撲主要采用胖樹型[89-90]或遞歸層次結(jié)構(gòu)[91],目前大型數(shù)據(jù)中心可以容納超過12 000臺服務(wù)器,高性能物理服務(wù)器可以容納20部虛擬機[92].而在邊緣計算場景,未來數(shù)據(jù)中心的基礎(chǔ)設(shè)施向著分布式、小型化發(fā)展,在這種情況下更多的微型數(shù)據(jù)中心被布置在高樓、小區(qū)或者集成到通信基站中,其計算、存儲資源通常很有限.未來如何根據(jù)不同服務(wù)場景,細化數(shù)學(xué)模型,選擇合適的優(yōu)化目標,依然是網(wǎng)絡(luò)虛擬化資源管理研究的熱點.
3) 多數(shù)理論研究只針對服務(wù)功能鏈編排的某一階段進行優(yōu)化,由于SFC編排的各個階段是相互關(guān)聯(lián)的,應(yīng)考慮多個階段進行聯(lián)合優(yōu)化.目前尚未提出相關(guān)算法協(xié)調(diào)解決3個以上階段的資源分配問題,因此以協(xié)調(diào)一致方式進行多階段的資源優(yōu)化管理仍然是一個挑戰(zhàn).
針對現(xiàn)有理論研究趨勢和存在問題,未來可以考慮從4個方面進行研究:
1) NFV平臺的系統(tǒng)優(yōu)化.文獻[93]指出現(xiàn)有NFV系統(tǒng)需要在包處理效率、網(wǎng)絡(luò)感知能力、系統(tǒng)可用性、可編程性和資源利用率方面進行提升.在VNF運行環(huán)境方面,文獻[94]指出可以采用現(xiàn)有Intel的DPDK來提升VNF的網(wǎng)絡(luò)處理性能.針對不同的虛擬機和虛擬機管理器,可以從網(wǎng)絡(luò)驅(qū)動和系統(tǒng)網(wǎng)絡(luò)棧方面進行定制優(yōu)化.這方面的研究偏向于系統(tǒng)架構(gòu)優(yōu)化和工程實現(xiàn),也是NFV從理論走向?qū)嵺`的關(guān)鍵.
4) 與其他軟件定義的體系結(jié)構(gòu)相似,NFV體系結(jié)構(gòu)也容易因為軟件漏洞造成安全問題.更進一步,通過攻擊部分VNF,可能會導(dǎo)致整條SFC的服務(wù)失敗.盡管已經(jīng)有許多保護軟件組件的網(wǎng)絡(luò)安全解決方案,但是必須重新審視這些方案以適用于NFV和SFC.在安全上的一些未解決問題包括如何評估來自多個供應(yīng)商的產(chǎn)品的可靠性、如何利用VNF的靈活性來防御分布式拒絕服務(wù)(DDoS)攻擊等[95].此外,NFV技術(shù)的發(fā)展促進了企業(yè)的網(wǎng)絡(luò)功能外包服務(wù),但用戶流量在第三方平臺處理的隱私保護也成為一個值得研究的問題.

Table 2 Summary of State-of-the-art SFC Resource Management Study
網(wǎng)絡(luò)服務(wù)功能鏈的實現(xiàn)是和現(xiàn)有網(wǎng)絡(luò)新技術(shù)發(fā)展緊密結(jié)合的.首先,云計算技術(shù)的不斷成熟引導(dǎo)著未來網(wǎng)絡(luò)向著云網(wǎng)融合的趨勢發(fā)展[96],基于云架構(gòu)實現(xiàn)計算、存儲、網(wǎng)絡(luò)資源的彈性分配,構(gòu)建以數(shù)據(jù)中心為主的智能通信計算基礎(chǔ)設(shè)施已然成為業(yè)界主流選擇.數(shù)據(jù)中心的虛擬化是云計算技術(shù)的核心,它需要通過服務(wù)器虛擬化、存儲虛擬化和網(wǎng)絡(luò)虛擬化來共同實現(xiàn).相比服務(wù)器虛擬化和存儲虛擬化,網(wǎng)絡(luò)虛擬化的發(fā)展顯得較為緩慢.而近些年來SDN和NFV的出現(xiàn),又給網(wǎng)絡(luò)虛擬化的發(fā)展注入了全新動力.
目前,SDN和NFV等網(wǎng)絡(luò)新技術(shù)正在從理論研究走向?qū)嵤╇A段,并在數(shù)據(jù)中心、5G網(wǎng)絡(luò)和天地一體化等網(wǎng)絡(luò)建設(shè)中得到應(yīng)用.本文對現(xiàn)有網(wǎng)絡(luò)功能虛擬化下服務(wù)功能鏈資源管理的研究進行了綜述,基于網(wǎng)絡(luò)服務(wù)功能鏈的不同編排階段(包括組鏈、部署、調(diào)度、按需縮放和遷移)展開討論.指出了現(xiàn)有研究存在的一些問題并提出擬解決方案,未來有關(guān)網(wǎng)絡(luò)服務(wù)功能鏈的資源管理依然是一個值得研究的課題.期待更多的網(wǎng)絡(luò)運營商和通信設(shè)備廠商加大投入,進一步加速技術(shù)標準化進程,讓SDN+NFV+SFC模式從理論走向?qū)嶋H應(yīng)用,更好地駕馭未來復(fù)雜網(wǎng)絡(luò).