吳海超,王新民
(1.長春財經學院 信息工程學院,吉林 長春 130122;2.長春工業大學 數學與統計學院,吉林 長春 130122)
隨著互聯網接入設備的高速增長和物聯網(Internet of things,IoT)的出現,未來霧計算被越來越多行業不斷引入。相較于其它算法,霧計算的最大優勢在于它能夠不受中心化的困擾,可以充分利用本地位置感知分發的技術,并且該算法還可以應用于不同類別的終端設備中[1-4]。正是因為這些優點,在可以預見的車聯網、物聯網、智能電網等等各種場景中都將會發揮重要的作用,甚至可以超過云計算的應用。霧計算與云計算區別的主要因素是它與終端用戶的密切關系[5]。隨著計算機技術迭代更新速度加快以及人們對移動終端的依賴程度越來越高,去中心化成為了必然趨勢,所以霧計算的重要性將會越來越突出,盡管在短時間內它還無法取代云計算,但是在一些重要場景中霧計算以及發揮了一定的作用[6-8]。
為了減少IoT中負載均衡時所帶來的服務時延,提出了一種面向低時延的云霧混合網絡及其負載均衡策略,對邊緣設備產生的物聯網請求進行調度,將其分配給霧和云上的足夠資源。所提策略的創新點總結如下:
(1)為了彌補云計算高時延的不足,所提策略構建了云霧混合網絡,將物聯網設備的服務請求合理分配到云和霧計算中,以充分利用霧計算低時延與云計算處理能力強的優勢,滿足系統低時延、數據處理速度快的需求。
(2)針對現有IoT負載均衡方案時延較大的問題,所提方案將物聯網服務請求的均衡建模成一個優化問題,并利用改進的蝙蝠算法求解此問題,合理分配云霧計算資源,實現服務總時延最小化。
霧計算的概念最早出現在2012年,提出該概念的機構是思科。該技術的出現將云計算擴展到網絡邊緣[9]。在云計算技術的實施過程中,可以利用已經搭建的網絡架構,通過相關的軟件和硬件技術,將數據中心和最終的用戶相互連接起來,形成霧計算層。該層面上的相關設備可以完成相關的計算功能,從而有效節省了大量的計算時間,降低了網絡時延,可以滿足更多用戶的需求。除此以外,通過使用霧計算還可以實現對于位置的感知功能[10,11]。霧網絡中所用到的各類設備大部分都是與用戶終端比較接近的設備,包括交換機、路由器等。文獻[12]提出了一個醫療保健參考模型,該模型由4個層級組成,分別為集成了用于收集數據的不同物理傳感器的傳感層、提供網絡支持和在有線或無線網絡中數據傳輸的網絡層、創建和管理各種類型的服務來滿足用戶需求的服務層、同時還包括可以實現將用戶與應用該軟件相互連接功能的接口層。
霧計算拓寬了云計算技術的功能,兩種不同的計算方法在使用過程中可以相互影響,通過兩者的配合確保了用戶服務質量的提升[13]。通過利用當前快速發展的現代化網絡技術,加強對霧計算的研究,將會有效提升物聯網技術的發展質量。霧層負責處理對物聯網設備的本地緩沖和不同連接要求,而云層負責處理與霧層的連接、用戶或設備數據的管理以及例如儀表板、規則引擎,大數據分析和集成框架的應用服務[14]。文獻[15]中提出了一個工作流服務請求和動態最小響應時間,該響應時間分析了在邊緣計算中映射請求的同一層級的算法。實驗結果表明,該算法在響應時間和阻塞率上都有很好的性能。
霧計算在實施過程中所用到的各種不同的組成設備相互之間比較分散,同時計算速度有限,僅僅依靠單一的設備在較短的時間內是無法完成繁重的數據處理工作的,應該使用分布式的計算方法,對計算量進行劃分,然后由不同的設備進行計算,完成計算后統一反饋結果,從而計算速度[16]。所以,重點針對霧計算過程中每個設備的計算效率、花費的成本等,從而以此為依據分配工作任務,實現提升計算速度,降低時延的目的,應該加強對霧網絡分布式負載均衡算法的研究。文獻[17]闡明了一個關于云計算和邊緣計算中的網絡流量問題的核心挑戰,并提出了兩個優化模型,使得每個節點的平均分組時間與平均到達時間的最大百分比達到了最小化,而第二個模型處理了最大化本地網絡鏈路利用率的問題。
考慮到環境的性質,安全性是霧計算中的一個主要挑戰。文獻[18]提出了一個網絡安全框架,可識別出在分布式霧計算環境中的惡意邊緣設備。該框架采用兩階段馬爾可夫模型對惡意或合法邊緣設備進行早期預測。實驗結果表明了所提框架的有效性。文獻[19]深入探討了在制造集群場景中如何能夠利用霧計算科學確定能耗值。首先,該文獻構建了相應的數學模型,同時提出了相應的優化函數,然后,使用改進的粒子群優化算法獲得最優解,并將完成任務的優先級構建到制造集群。最后,引入了多智能體系統來實現制造集群的分布式調度。通過糖果包裝生產線的實驗對所提出的ELBS方法進行了驗證,實驗結果表明所提出的方法為混合作業機器人提供了最佳的調度和負載平衡。
提出的云霧混合網絡集成了霧計算與云計算,其為一個3層體系的架構,如圖1所示。其中:邊緣層由終端節點、嵌入式系統、傳感器和執行器組成,計算、能量和帶寬都非常有限;霧層包括路由器、網關、交換機等中間網絡設備,均具備計算和存儲功能,且接入點采用4G、5G、LTE、Wi-Fi等不同的協議;云層由在存儲和處理能力方面具有非常豐富的虛擬化能力的云數據中心組成。

圖1 云霧混合網絡的架構

這些請求來源異構資源的集合ζ={si|i=1,…,m}的處理能力,一個資源代表著一個已完成請求處理的物理設備。其中資源si可能位于靠近霧邊緣的位置,也可能位于遠離云邊緣的位置。每個請求φj均會存在的時延為:傳輸時延,即將請求數據包的比特數據推送到連接鏈路上所需的時間;排隊時延,即請求數據包通過網絡路由器和交換機所花費的時間;傳播時延,即信號在到達目的地之前通過傳輸媒體進行傳播的時間。由于傳播時延與其它時延相比是微不足道的,所以傳播時延忽略不計。
傳輸時延是一個關于數據包長度和鏈路傳輸速率的函數,由于其對于固定的包大小和傳輸速率具有確定的值,因此可以預先評估。相反,排隊時間本質上是隨機的,因此總時延可以看成一個隨機變量,其平均值為
(1)

物聯網數據處理包括數據存儲、數據聚合以及分析、特征提取、圖像、視頻處理等,數據處理的時間由請求的數據大小和處理請求的資源的處理能力所決定,資源si處理每個請求φj所需的時間Tij,其中資源能力是根據處理速度Vi確定的。此外,如果資源正忙于為其它請求提供服務,則請求可能會遇到額外的時延。
負載均衡策略的目標在于特定時間將Ψ中的請求分配給ζ中的有能力的資源,以達到時延最小化的目的。請求φj的時延為從請求在霧邊緣啟動到完全處理并將結果返回給請求者的往返時間(round-trip time,RTT)。負載均衡模型中假設:①作為計算處理器的資源在霧端和云端時一次只能處理一個請求;②請求可以隨時啟動;③每個請求數據量大小由請求擁有的數據包數量決定,每個請求可以具有多個分組,且其中每個數據分組的大小是相同的;④如果請求開始處理,則必須在不中斷的情況下完成。
一個集合中有n個請求,Ψ={φj|j=1,…,n}由邊緣層物聯網設備生成,并且需要由一組m資源ζ={si|i=1,…,m}進行處理,資源分布在霧和云之間[20]。負載均衡模型的目標是,在考慮各種約束條件下,完成總時延的最小化,即使用m個可用資源為n個請求提供服務時的往返時間總和。目標函數表示如下
(2)
式中:Xij為決策變量,用于指示請求φj是否被分配給資源si。給定請求的單個時延為

(3)
從數學的角度來看,時延是啟動時間和服務結束時間之間的差,其中,服務時間包括了開始時間、處理時間、傳輸和排隊時間,計算如下
Tij=TSij+tij+QTij-T0j
(4)
式中:TSij是資源si處理請求φj的開始時間,tij是請求的處理時間,QTij是請求φj到達資源si之前的傳輸和排隊時間,T0j是請求rj的啟動時間。
每個請求的處理時間等于請求數據大小除以資源處理能力,假設Qi表示請求的數據量大小,fi表示資源的處理能力,則處理時間通過tij=Qi/fi得到。請求φj從邊緣層到位于霧或云中的資源si的傳輸和排隊時間為
(5)
一個請求的時延是其各個數據包時延的總和,該數據包的時延是在特定平均值周圍分布的單個時延。
設定目標函數是為了在滿足約束集合的條件下實現其最小化。約束條件包括:
(1)每個請求φj只能由一個資源來完成服務
(6)
(2)請求φj在被傳輸到資源之前不能開始處理。這個時間量包括啟動時間加上到霧或云計算所在位置的傳輸和排隊時間。即為了處理請求,需要先創建該請求并將其傳輸到資源,表示如下
TSij≥T0j+QTij,?rj∈Ψ,?si∈ζ
(7)
(3)每個資源si一次只能處理一個請求。如果有兩個請求同時到達資源進行處理,則其中一個請求必須在另一個請求完成后才能開始進行處理。這兩個請求的執行順序由參數βijk定義,如果βijk=1,則資源si執行請求φj,然后執行請求φk,反之亦然。對于?si∈ζ, ?φj,φk∈Ψ,φj≠φk,決策變量βijk的定義如下
ifXij+Xik=2 thenβijk+βikj=1TSik≥βijk(TSij+tij)
(8)
(4)請求之間的優先依賴性。即使請求被分配了到不同的處理器中,如果它的前例沒有完成處理,那么此請求不能開始進行處理。即
(9)
(5)請求必須在特定截止期限之前送達,即
Tij≤Dj
(10)
式中:Dj為請求φj的截止期限。
由于蝙蝠算法(bat algorithm,BA)在全局搜索場景中效果十分顯著,并且收斂效率也相對較高,程序編譯并不復雜。所以在云霧混合網絡情況下的負載均衡一般通過BA算法對其進行優化。這種算法是近年來剛剛興起的一種算法,其計算出的任何一個優化解都將會被視作一個蝙蝠[21]。對于任何一個蝙蝠而言都會相對應有一個適應度,BA算法在運用過程中將會通過調整頻率、脈沖發射率以及不同的響度對最優蝙蝠開展全域內的搜索。
對于優化問題而言,BA算法雖然具有明顯的優勢,然而其缺點也十分明顯,一是經常得到局部最優的結果,二是收斂速度相對較慢[22]。為盡可能克服這些缺點,本文中將會通過負載均衡的方法對蝙蝠種群數據前期做初始化處理,這樣能夠有效提升最終解的質量,然后還要充分利用Powell搜索,進而能夠有效提升其收斂效率。
具體來講,基本蝙蝠算法主要分成6步進行:
步驟1首先對模型中的參數開展初始化操作:一般要設定一個最大迭代次數值,這里將其記作Gmax,然后要確定合適的搜索精度這里記作ε,還要確定脈沖頻率的最大值以及其最小值這里用hmax,hmin表示,蝙蝠的初始化位置通過向量Xi(i=1,2,3,…N)表示,那么針對當前蝙蝠群中進行搜索后就能夠得到的一個最優蝙蝠位置,用X*表示。
步驟2在種群迭代中根據以下公式更新蝙蝠的速度和位置

(11)

步驟3生成隨機數1,如果1>ri(ri為第i只蝙蝠的脈沖頻度),則更新當前最優蝙蝠位置
Xnew=Xold+εAt
(12)
步驟4生成隨機數2,如果2 (13) 步驟5通過以上幾步能夠得出蝙蝠群體的適應度值,然后利用該值就能夠做出科學的評估,以此為基礎就能夠進一步確定其最優位置以及具體的適應度值。完成此過程后,需要再次做迭代操作,重新回到步驟2開始,直至能夠符合開始所設置的精度要求或者能夠符合迭代次數超過設定的最大值的條件。 步驟6結束算法,最終能夠得到最優函數值以及蝙蝠的最優位置。 Powell算法無須對目標函數做求導處理,所以這就決定了當其導數不連續情況下同樣能夠引用該方法,另外該算法也無須求出相應的梯度,其搜索精度相對較高,基于以上這些優點該算法得到了廣泛應用。然而任何一種算法都有其固有缺陷,Powell算法的應用對初始點有著嚴格的要求,所以一般在引用該方法時要通過負載均衡對其做初始化處理。其具體的計算過程如圖2所示。 圖2 Powell算法的流程 通過負載均衡進一步求出的蝙蝠種群的初始化結果,假設n個初始蝙蝠種群的無關搜索方向記作d(i)(i=0,1,2,…,n-1),令c(0)=c(j),從c(0)開始依次沿搜索方向進行一維搜索,獲得c(i)(i=1,2,…,n)。設d(n)=c(n)-c(0),如果|d(n)|≤δ,在得出c(n)后計算也就會相應終止;不然,從c(n)開始將會沿d(n)方向開展線性搜索直至最終求出c(n+1)。 搜索方向的確定一般利用如下公式進行計算:f(c(0))-2f(c(0))+f(2c(n)-c(0))<2[f(c(m))-f(c(m+1))],如果成立,則說明d(0),d(1),…,d(n-1)線性相關,需要調整搜索方向;否則,說明d(0),d(1),…,d(n-1)線性無關,不調整搜索方向。 云霧網絡數據中心有m個霧計算設備,需要處理α個邊緣終端所產生的調度響應。每個霧設備中具有的資源向量可以被劃分為兩個類別,包括空閑資源向量、被使用的資源向量。負載均衡代表了讓全部的邊緣終端都可以與相鄰的霧設備相連,經過不斷演化計算,每個終端最終都可以與霧設備保持最小的距離[24]。兩者之間的距離可以通過資源相關系數進行表示,如果該系數較小,則代表將要用到的資源和霧設備兩者可以產生非常多的互補,如果空間不受限制,那么這個時候將會被分配至其它相關性并不顯著的一些設備之中。假如利用皮爾遜相關系數?vp對于虛擬資源以及物理節點兩者之間的相關性進行計算,相關性的大小保持在[-1,1]。則邊緣終端與霧設備的距離為 (14) 邊緣終端與霧設備的距離取值范圍為[0,1]。如果將邊緣終端與不活躍霧設備之間間隔設置為最大值,該值的大小為1,那么這一狀態代表了僅在邊緣終端不能放置的情況下,才可以分配至新霧設備中[25]。基于改進BA算法的云霧網絡負載均衡策略的算法偽代碼如算法1所示。 算法1:基于改進BA的云霧網絡負載均衡策略 初始化:首先要確定合理的基本參數;假設在實際運行時受到了n個服務請求,這些請求的數據集用Ψ表示,這里再假設霧設備數是m,那么通過負載均衡再做出初始化操作,并且要把聚類中心設定成蝙蝠的位置編碼,這樣將會最終得到N個數量的初始蝙蝠。 Begin (1)將蝙蝠種群的速度、脈沖頻率、脈沖響度以及脈沖發射速率做出初始化處理。 (2)利用公式計算出所有的蝙蝠所對應的適應度值,然后獲取一個最優解,再通過速度以及位置公式進一步對剩余蝙蝠所對應的信息做出具體的調整。 If1>ri,then 對目前群體中的最佳蝙蝠位置通過隨機擾動的方式獲取替換當前蝙蝠的位置,具體公式如下:Xnew=Xold+εAt。 If2 得到一個新解,通過Ai以及ri公式對音強進行降低處理,在此過程中還要進一步增大脈沖發生率; Otherwise, 不調整Ai以及ri,再次回到步驟(5)。 (5)對蝙蝠群體做出科學的評估,同時對最優位置通過Powell算法開展局部搜索。 (6)判斷算法是否能夠完全符合起初設定的終止條件:如果符合(|d(n)|≤δ)或超過了設定的最大迭代次數,就進行步驟(7);否則,設i=i+1,再次回到步驟(2)。 (7)輸出:最優的蝙蝠位置以及其所對應的負載均衡方案。 End 在改進BA算法應用于實時仿真環境之前,需要針對算法中的不同參數在方案實現中的作用進行探究。改進BA算法實現時最重要的兩個參數分別是種群規模N和最大迭代次數Gmax,直接影響著負載均衡方案的質量和運行時間。 考慮到改進BA算法的整體時延Tij和傳輸時間QTij會決定所得最優解的質量,通過實驗確定種群規模。實驗中考慮了不同規模的調度問題κ,其中每個值是包含n請求和m資源的一個元組(n/m)。針對κ中的每個值,仿真進行5次不同的實驗。實驗中計算得到整體時延和傳輸時間的平均值,并且最大迭代次數為50。整體時延以及運行時間與種群規模的關系如圖3所示。 從圖3(a)中可知,隨著種群規模的增加,改進BA算法的整體時延逐漸減小,但在種群數量達到40之后,整體時延減小量變得微不足道。而從圖3(b)可知,傳輸時間隨著種群規模的增加而繼續急劇增加。因此,綜合兩者,改進BA算法將種群數量設為60,如此系統僅需花費中等運行時間而能獲得高質量的負載均衡方案。 為了確定最大迭代次數的最佳值,在進行實驗時同時考慮了獲得解的質量(如確定的整體時延)和改進BA算法的運行時間。實驗中相應的平均整體時延和運行時間的平均值與最大迭代次數的關系如圖4所示。 圖3 整體時延、運行時間與種群規模的關系 圖4 平均整體時延、運行時間與最大迭代次數的關系 從圖4中可知,最大迭代次數的增加會將解的質量(時延)提高到某一點。但是,最大迭代次數的增加通常會急劇增加算法的運行時間。因此,所提算法中最大迭代次數設為20,如此系統僅需花費中等運行時間而能獲得高質量的負載均衡方案。 基于離散事件仿真器構建所提策略的仿真模型。在邊緣層請求遵循一種特定的分布,并根據到達時間的生成,每個生成的請求都與其在模型中的定義屬性相關聯。請求從邊緣傳輸到所提改進BA算法的調度器,該調度器會決定在霧資源或云資源上分配請求的時間和位置。所提策略集成改進BA算法與離散事件模擬器,改進BA算法的調度器會在特定的定義時間范圍內接收請求。最初,模擬器中的所有資源都是可利用的,但隨著時間的推移,請求被啟動,也將會被分配給資源。因此改進BA算法會生成一個負載均衡方案,并且當新的請求到達時,其會為了將來的決策而將已生成的方案內容保留。實驗中假設所有的請求數據包的實際時延可以與平均值相同,也可以基于所使用的分布而有不同的值,且傳輸和排隊時延分布設為具有特定均值和方差的高斯分布。 為了論證所提策略的性能,將其與文獻[12]、文獻[17]、文獻[19]中的策略進行對比分析,其中選取總體平均服務時延和錯過截止期限的請求數作為評價策略性能的指標。并且實驗基于兩種調度模式展開,即靜態調度模式和動態調度模式。在靜態模式下,請求之間的到達間隔時間被消除,并且假設所有請求都在時間0時批量一次生成。在動態調度中,請求是服從泊松分布,并根據到達率生成。 實驗中使用了16臺服務器,平均處理速度為每秒處理500個數據包,且處理速度廣泛分布在每秒處理50到1000包之間。服務器的平均時延設置為每個數據包平均5 ms,且服務器時延一般分布在從1 ms~9.7 ms。實驗總共處理了100個請求,優先級設為在1到16上均勻分布。截止期限要求的平均值設為400 s,波動范圍是50 s。不同負載的平均整體時延、錯過截止期限請求數與平均請求數據量關系的對比如圖5所示。 圖5 靜態調度下平均整體時延、錯過截止 期限的請求數與平均請求數據量的關系 從圖5中可以看出,與其它策略相比,所提策略在總體時延方面具有更好的表現。文獻[17]和文獻[19]這兩種策略的結果非常接近,因為它們都是基于優先級來實現資源內的請求分配,但調度是不同的。文獻[12]需要最長的時延時間,因此以循環調度的方式進行請求分配時是不會考慮請求優先級的。 此外,與其它策略相比,所提策略可以在更長的時間內保持無請求錯過其截止期限的記錄。但在平均6500個數據包的情況下,所提策略無法保證滿足所有請求滿足它們的截止期限,因為請求的服務時延增加了,截止期限也變得十分關鍵。即使所提策略是可行的,但也不能保證滿足所有的要求。如圖5(b)所示,這一結論可以通過平均請求數據量大小位于6000到8000的之間時呈現的結果中得到驗證。當數據量達到8000個包時,問題變得不可行,因此所提策略也無法找到可行的調度方案。 實驗的環境配置包括了16個服務器和500個請求,以評估請求隨時間到達的時延。請求是服從泊松分布,平均的到達時間為1 s,優先級設為在1到16上均勻分布。截止期限要求的平均值設為200 s,波動范圍是50 s,資源調度的時間范圍是10 s,平均請求數據大小通常分布在1000到10 000個數據包之間。負載的平均整體時延、錯過截止期限請求數與平均請求數據量之間的對比關系如圖6所示。 圖6 動態調度下平均整體時延、錯過截止 期限的請求數與平均請求數據量的關系 從圖6中可以看出,與其它策略相比,所提策略遺傳算法在總體時延方面具有更好的表現。文獻[12]和文獻[17]這兩種策略的結果非常接近,但隨著平均請求數據量的增加,這兩種策略之間差異會增大。 此外,如圖6(b)所示,如果平均請求數據量小于5000個數據包,所提策略可以實現了0個請求錯過其截止期限,在平均6000個數據包的情況下,其依然可以實現了0個請求丟失,而文獻[12]和文獻[17]中策略丟失了近20%的請求,文獻[19]中策略丟失了35%的請求。在平均請求數據量為6000個數據包這一節點之后,大多數請求的截止期限要求變得非常關鍵,其中一些請求甚至一件不可完成。因此,當數據大小增加到6000個數據包以上時,所提策略也開始丟失請求,但其在請求錯過其截止期限方面的表現仍是最優的。 一般來說,云資源具有強大的處理能力,但同時也具有較大的平均傳輸和網絡時延。相反,霧資源的處理能力有限,但由于其離邊緣較近,所以造成的平均時延較小。為了能夠針對擁有最小的時延一組請求進行服務,考慮了3個參數:平均時延率τf/τc;處理速度比Vf/Vc;資源數量比率Mf/Mc。 實驗中通過固定另外兩個參數,且只改變一個參數的方式研究了每個參數對服務時延的影響。其中,云端配置了4個超級云服務器,具非常高的處理能力,可以每秒處理5000個數據包。然而這些服務器的平均時延設置得相對比較高,每個數據包為10 ms。為了評估時延,在這組實驗中總共處理了500個請求,這些請求的到達時間遵循泊松分布,平均到達時間為1 s,并且平均請求數據量的大小從1000包變為10 000包。 (1)平均時延率的影響 實驗中霧服務器的數量設為云服務器數量的4倍,即Mf/Mc=4,并且霧服務器的處理能力只有10%,即Vf/Vc=10%。平均時延率τf/τc將改變為10%、20%、50%和70%。平均時延率對總體平均服務時延的影響如圖7所示。 圖7 不同平均時延率對平均時延的影響對比 從圖7中可以看出,當平均時延率從10%增加到70%時,會增加霧的時延,并且霧的時延會不斷增加直到平均時延率處于與云時延相同時的節點。這是因為霧服務器遠離邊緣設備,更靠近云服務器。在這種情況下,霧服務器與云服務器兩者產生的時延一樣低。 (2)處理速度比的影響 實驗中霧服務器的數量設為云服務器數量的4倍,即Mf/Mc=4,霧服務器的平均時延τf/τc為10%。處理速度比Vf/Vc分別被設置為4%、7%、15%和20%。處理速度比對總體平均服務時延的影響如圖8所示。 從圖8中可以看出,當處理速度比從20%降低到4%時,霧的時延會增加,并且霧的時延會不斷增加直到其超越云的時延。這是因為霧服務器具有緩慢的處理速度。在這種情況下,即使這些資源比云資源更接近邊緣,但由于處理速度慢,霧也會產生較高的時延。 (3)計算資源數量比率的影響 實驗中服務器的平均時延率設為云平均時延的10%,并且霧服務器的處理能力設為云服務器能力的10%。霧資源的數量相對于云資源數量比的變化為100%、150%、200%、400%和800%。資源數量比率對總體平均服務時延的影響如圖9所示。 從圖9中可以看出,當資源的數量比率從800%降低到 100%時,霧的時延會增加,并且霧的時延會不斷增加直到其超越云的時延,因為霧服務器具有很少的資源。因此即使這些資源更接近邊緣并且具有良好的處理能力,但由于霧服務器的資源很少,這也會以負面的方式影響霧服務器中產生的時延。 圖8 處理速度比對平均時延的影響 圖9 計算資源數量比率對平均時延的影響對比 當前,我國現代化信息技術發展迅速,已經廣泛深入到各個不同的領域,以具有較低延時為代表的信息服務質量變得越發重要。霧計算的出現對云計算技術起到了發展提升作用,提出了一種面向低時延的云霧混合網絡及其負載均衡策略。基于構建了云霧混合網絡,將物聯網設備的有限功能要求應用程序合理分配到云和霧計算中,并且將物聯網服務請求的均衡建模成一個優化問題,利用改進的BA算法進行求解,合理分配云和霧計算資源,降低用戶請求的處理時延,滿足低時延需求。基于離散事件仿真器構建實驗模型對所提策略進行測試,通過種群規模和最大迭代次數等參數對改進BA影響的分析,得到將兩參數分別設為60、20,能夠在較合適的時延時間內實現高質量的負載均衡。并且與其它策略相比,在靜態調度和動態調度兩種場景下,所提策略的總時延也有了顯著改善。最后,論證了將霧計算與云計算相結合的重要性,在如資源平均時延、處理能力、資源數量等參數方面,霧計算相較于云計算具有更好的性能。 所提策略中僅考慮時延最小化這一目標函數,接下來的研究將考慮多個目標函數,并且全面考慮關鍵請求調度、允許搶占、優先處理等方面,從而實現資源利用率的最大化以及時延的最小化。3.2 基于Powell局部搜索的改進BA算法

3.3 基于改進BA算法的云霧網絡負載均衡策略

4 改進BA算法實驗
4.1 種群規模
4.2 迭代最大次數


5 仿真實驗與結果分析
5.1 靜態調度

5.2 動態調度

5.3 云計算網絡與云霧混合網絡的對比分析



6 結束語