居曉琴



摘 ? 要:針對當前物聯網任務卸載算法在延遲、能耗和安全方面存在的缺點,文章提出了一種基于機器學習的物聯網應用動態安全卸載策略,通過使用機器學習策略,可以在霧-物聯網(Fog-IoT)環境中實現高效、安全的卸載。首先,采用Neuro-Fuzzy模型在智能網關上保護數據;其次,使用粒子群優化為IoT設備選擇一個最佳Fog節點;然后,通過智能網關將任務卸載到霧節點上,如果霧節點無法處理工作負載,則將其轉發到云中,敏感數據保存在私有云,非敏感數據實施動態卸載策略進行卸載。實驗結果表明,提出的動態安全卸載策略最大程度地減少了延遲和能耗,比其他現有算法更具優勢。
關鍵詞:物聯網;霧計算;動態安全卸載;強化學習;Neuro-Fuzzy模型
中圖分類號: TP393 ? ? ? ? ?文獻標識碼:A
Abstract: Aiming at the shortcomings of current IoT task offloading algorithms in terms of delay, energy consumption and security, a dynamic security offloading strategy for Internet of things applications based on machine learning is proposed. By using machine learning strategies, it can be used to offload efficiently and securely in Fog and Internet of Things (Fog-IoT) environment. First, the Neuro-Fuzzy model is used to protect data on the intelligent gateway. Secondly, particle swarm optimization is used to select an optimal Fog node for the IoT device, and then the task is offloaded to the fog node through the intelligent gateway. If the fog node cannot handle the workload, then Forward it to the cloud, sensitive data is stored in the private cloud, and non-sensitive data is dynamically uninstalled. The experimental results show that the proposed dynamic security offloading strategy minimizes delay and energy consumption and is superior to other existing algorithms.
Key words: Internet of Things; fog computing; dynamic security offloading; reinforcement learning; Neuro-Fuzzy model
1 引言
霧計算(Fog Computing,FC)被認為是監控物聯網應用的理想平臺,可用于智能城市、可穿戴傳感器、醫療保健和車輛監控等多個領域[1,2],用于減少計算的延遲和功耗。霧計算在云計算和物聯網(Internet of Things,IoT)之間形成了分布式網絡環境的中間層,可以提供一個連續體來橋接丟失的鏈接,這些數據可以在更靠近邊緣的終端處理或者推送至云上[3]。該模式可以集成在同構和異構無線網絡中,充分利用資源,提高整體網絡效率,減少網絡流量[4]。霧計算是物聯網和云之間的一個層,包括智能門、路由器、交換機和接入點等組件。
在當前社會中,由于移動設備數量眾多,移動計算起著至關重要的作用。移動霧計算(Mobile Fog Computing,MFC)作為三類移動計算中的一種,有著不可替代的作用。MFC旨在減少需要轉發到云端進行處理和存儲的數據量。當需要實時進行大量數據處理、存儲和分析時,MFC可提高系統效率,而且每個物聯網設備可以將計算任務卸載到霧設備中而不是發送到云計算數據中心,從而明顯地減少了傳輸延遲。
2 粒子群優化
PSO初始化為一群隨機粒子,然后通過迭代找到最優解。在每一次迭代中,粒子通過跟蹤粒子本身所找到的最優解和整個種群目前找到的最優解兩個極值來更新自己的位置和速度。假設在D維的目標搜索空間中,粒子群包含有N個粒子,其中第i個粒子的位置是一個D維向量,可以表示為:
3 物聯網應用動態安全卸載策略
考慮一個物聯網,網絡節點為。此網絡中的每個物聯網設備可能包含計算密集型或延遲敏感型計算任務。這些物聯網設備部署在一個網絡中,該網絡通過智能網關分別連接到霧節點和云,從而創建一個分層網絡。霧節點形成了云的網絡連續體。給定一個任務,物聯網評估該任務,看它是否可以使用常駐資源在本地執行該任務。如果物聯網發現它無法執行任務,它會將任務卸載到霧中。霧要么執行任務,要么將其發送到云。本文的目的是執行動態卸載,同時在任務卸載期間將用戶敏感的任務保持在霧中,同時在吞吐量、延遲、能耗、資源利用率和響應時間方面獲得高性能。
3.1 系統建模
當前使用的霧-云-物聯網系統框架是由物聯網層的物聯網移動設備、網絡層的網絡設備、霧層的霧設備和云層的云基礎設施組成,如圖2所示。最底層的物聯網設備負責采集、監控和測量數據,然后向霧層發送、接收數據。物聯網設備的特點是計算能力低,受電池壽命和小尺寸因素的限制,內存相當低。網絡層由交換機、路由器和網關等網絡設備組成,它們可以采用小范圍霧的功能。在此框架中,通過對物聯網設備數據的評估,采用智能網關對網絡進行安全保護。霧層由霧節點組成,霧節點是一種高性能的分布式系統,可以沿連續過程向云和物聯網層報告處理結果。云計算層分布在頂層,由可以存儲和處理海量數據的云服務器組成,具有無限的能力來實現安全且繁重的計算,云層架構可以分為私有、公共或混合的。
3.2 基于粒子群優化算法的霧節點選擇
隨著霧節點當前工作負載的變化,采用PSO算法更新用于選擇最佳霧節點的信息。霧節點的作用為降低IoT移動設備與霧之間的總處理延遲。最佳霧化節點的選擇由兩個指標決定:可用處理能力(Available Processing Capacity,APC)和剩余節點能量(Remaining Node Energy,RNE)。每個節點都將使用這兩個指標來計算其適合度。當用戶設備發出請求時,將選擇具有較高APC和RNE的霧節點。
3.3 用于安全評估的模糊神經模型
在物聯網霧架構中,物聯網設備通過網關與上層通信。網關負責物聯網設備、霧、云和用戶設備之間的橋接。網關提供通信鏈接,對IoT設備進行實時控制,并提供離線服務。網關可用于保護往返于上層的數據,通過隔離異常行為的資源來實現安全性。由于智能網關具有可觀的處理能力和存儲能力,本文通過在智能網關上使用模糊神經網絡(Nuero-Fuzzy Network)來保護網絡安全。
采用Nuero-Fuzzy模型來評估智能網關上來自物聯網設備的數據,通過考慮探測值和響應時間兩個因素進行安全評估。從這兩個值可以推導出預測值。如果大于1,認為資源為有效讀數,否則該讀數無效,從而保證了資源與事務隔離。
假設Nuero-Fuzzy模型由N個設備組成,每個輸入具有兩個參數和,輸出為有效和無效的值。探測值可以分為小、中和大三級,響應時間對應低、中和高。在提出的模型中,如果數據大小在100至350bit之間,則探測值適中;小于100bit,則較小,大于350bit,則較大。同樣,在100至1000ms之間時視為中等級別,低于100ms或者高于1000ms則視為低或高級別。對于每個情節,生成的、、和輸出都會被存儲在知識庫內,然后根據構造的的模糊規則對Neuro-Fuzzy網絡的培訓,以適應來自IoT設備的傳入數據。構造的模糊規則如表1所示。
由于探測值和響應時間不正確,IoT設備的數據被檢測為無效。根據獲得的有效或無效預測值,保留受信任設備的數據。
3.4 動態卸載任務
當霧節點無法在延遲約束內處理所有接收到的任務時,霧節點會將任務卸載到云服務器中。針對此情況,提出了基于Q-學習的動態任務卸載方案。Q-學習是一種無模型的強化學習機制,通過體驗一個行為的后果來學習最佳的行為過程,而不必構建域映射。該方法通過代理在特定狀態下嘗試來實現,代理根據所收到的即時獎勵和對其所采取的狀態和行為的未來獎勵的估計來評估行為的后果。通過反復嘗試所有狀態,獲得最佳狀態。
Q-學習包括狀態空間、行為空間和獎勵函數。每個狀態s和行為a的配對(s,a)都有一個Q值。如果位于狀態s中的代理選擇一個行為,則使用式(10)根據獲得的獎勵數量更新狀態-行為對的Q值。選擇行為時,利用貪婪策略考慮后續狀態 的最高Q值。
在霧層給定的任務i,行為表示從所有現有的VM中選擇滿足卸載任務i的虛擬機。任務要求包括服務器的類型(私有或公共)、可用于在任務限制內執行任務的VM。行為空間表示為,云服務器中可用VM定義狀態空間,每個VM可以用CPU和內存量MEM進行表征,行為對表示為:
將任務分配給滿足延遲和資源限制的任何虛擬機。為了確定對服務器和任務需求的當前觀測的最佳操作,霧節點根據當前狀態和從環境接收到的回報選擇適當的云。該系統的目標是最大化接收到的回報和最小化等待時間。將任務調度問題中的動態任務卸載看作馬爾可夫決策過程,行為空間由用于每個任務i的二進制向量來描述。當可用VM接收到當前任務i時用1表示,否則用0表示。然后計算狀態-行為對的獎勵函數,獲得的獎勵表示云服務器的當前狀態(運行、等待、忙碌等)。狀態-行為對規則如(10)所示:
其中,是學習率,r是在s狀態下采取行為a所獲得的獎勵,是折扣因子。使用任務分類器將輸入任務分為敏感或非敏感任務,敏感任務卸載到私有云服務器,非敏感任務卸載到公共云。
4 實驗結果與分析
為了驗證提出的基于機器學習的物聯網應用動態安全卸載策略的有效性,采用吞吐量、延遲、能耗、資源利用率和響應時間等幾種指標評估其性能,并在相同的環境下與FCFS[12]、DTO-SO[13]、CMS-ACO[14]和LOTEC[15]幾種卸載方案進行對比。
4.1 實驗環境和評估指標
本文的實驗環境是在Pentium (R) Dual-Core CPU E570 0@3.0 0 GHz和RAM 2 GB計算機上進行測試,實驗環境中在開源網絡模擬器NS3.26上進行Java編程。創建一個霧-云物聯網網絡,該網絡由1個智能網關,5~10個物聯網移動設備,5個霧節點和1個混合云服務器組成。在實驗中,所有模擬參數均已設置為遵循均勻分布。每個設備均由CPU供電,其時鐘頻率范圍為1~1.5 GHz,時鐘頻率是隨機設置的。將移動設備之間的可用帶寬設置為100 ~1000Kb/s之間。計算卸載要求CPU周期和任務以位的形式卸載,計算任務分為復雜和非復雜任務。為了表征卸載任務的復雜性,使用負載輸入數據比率(Load-input Data Ratio,LDR)。當LDR較高時,該任務被分類為計算密集型任務,否則為非密集型。非計算密集型任務可以在本地設備或邊緣執行。在測試過程中,采用吞吐量、延遲、能耗、資源利用率和響應時間等幾種指標用于比較分析。
4.2 結果分析
圖1給出了請求數量對所提出方法的吞吐量影響,并與DTO-SO方法對比。將敏感任務的延遲要求設置為1s,將非敏感任務的延遲要求設置為1.5s,設置任務數。從圖中可以看到,吞吐量隨著物聯網設備請求數量的增加而增加。當n=10時,本文方法實現的吞吐量敏感任務為30KB/s,非敏感任務為23KB/s。對比方法在敏感和非敏感任務分別為20 KB/s 和18 KB/s;在n=50時,本文方法在敏感任務和非敏感任務的吞吐量為120 KB /s和100 KB /s,而DTO-SO的吞吐量分別為95 KB /s和80 KB /s。與DTO-SO相比,提出的安全卸載方案提高了23.2%的吞吐量。
圖2給出了資源利用率的測試結果對比。從圖中可以看出,所提出的卸載方案在n=10時,敏感任務和非敏感任務的資源利用率為92%和90%,DTO-SO和CMS-ACO則為89%和87%。
圖3給出了不同卸載方案的響應時間的結果對比。從圖中可以看出,隨著請求任務數量的增加,響應時間逐漸增多。在n=10時,與LOTEC中的0.9s和DTO-SO中的0.7s相比,本文方法只需0.5s來完成卸載任務。
5 結束語
本文提出了一種基于機器學習的物聯網動態應用安全卸載策略,解決了當前物聯網任務卸載算法在延遲、能耗和安全方面的問題。該方案利用Neuro-Fuzzy模型消除無效資源,保護敏感數據,采用PSO選擇最佳卸載霧節點,并通過調度程序動態平衡霧節點和云資源的負載以及數據安全。實驗結果表明,所提出的方法用于分層系統架構中的任務卸載是安全有效的,性能明顯優于其他卸載算法。
基金項目:
2018年度江蘇高校哲學社會科學研究基金項目“基于虛擬現實技術的教學方法研究”(項目編號:2018SJA1239)。
參考文獻
[1] Li C,Xue Y,Wang J,et al.Edge-oriented computing paradigms: A survey on architecture design and system management[J]. ACM Computing Surveys (CSUR), 2018, 51(2): 1-34.
[2] Roman R,Lopez J,Mambo M.Mobile edge computing, fog et al.: A survey and analysis of security threats and challenges[J].Future Generation Computer Systems,2018, 78: 680-698.
[3] Wang D, Ding W, Ma X, et al.MiFo: A novel edge network integration framework for fog computing[J].Peer-to-peer Networking and Applications, 2019, 12(1): 269-279.
[4] Naeem R Z,Bashir S, Amjad M F,et al.Fog computing in internet of things: Practical applications and future directions[J]. Peer-to-Peer Networking and Applications,2019,12: 1236–1262.