張光艷
(北京市委黨校(北京行政學(xué)院),北京 100044)
大規(guī)模、異構(gòu)性和動態(tài)性是云計(jì)算環(huán)境的顯著特點(diǎn),這要求數(shù)據(jù)通信系統(tǒng)能夠有效應(yīng)對不斷變化的網(wǎng)絡(luò)狀況、數(shù)據(jù)規(guī)模以及計(jì)算需求[1]。此外,安全性和隱私保護(hù)也成為云計(jì)算數(shù)據(jù)通信亟待解決的重要挑戰(zhàn)之一。在應(yīng)對云計(jì)算環(huán)境下的數(shù)據(jù)通信挑戰(zhàn)時(shí),研究者們提出了多種解決方案,其中包括基于傳統(tǒng)路由協(xié)議的改進(jìn)、軟件定義網(wǎng)絡(luò)(Software Defined Network,SDN)的應(yīng)用以及各種負(fù)載均衡策略[2]。
由于云計(jì)算環(huán)境的動態(tài)性和異構(gòu)性,傳統(tǒng)的路由算法往往難以快速調(diào)整以適應(yīng)不斷變化的網(wǎng)絡(luò)拓?fù)浜土髁控?fù)載[3]。這導(dǎo)致了在某些情況下路由決策的遲滯,影響了系統(tǒng)的實(shí)時(shí)性和性能表現(xiàn)。另一個(gè)制約的主要表現(xiàn)為在面對大量節(jié)點(diǎn)和復(fù)雜網(wǎng)絡(luò)拓?fù)鋾r(shí),現(xiàn)有算法的計(jì)算和通信開銷顯著增加,限制了系統(tǒng)整體的可擴(kuò)展性。在下一步的研究中,將重點(diǎn)關(guān)注設(shè)計(jì)一種具備更強(qiáng)適應(yīng)性和可擴(kuò)展性的智能路由算法。
智能路由算法的核心思想基于強(qiáng)化學(xué)習(xí),旨在全面優(yōu)化自適應(yīng)性、負(fù)載均衡和安全性。設(shè)計(jì)一個(gè)深度強(qiáng)化學(xué)習(xí)模型來實(shí)現(xiàn)智能路由算法需要定義狀態(tài)表示、動作空間、獎(jiǎng)勵(lì)機(jī)制以及深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。以下介紹使用深度Q 網(wǎng)絡(luò)(Deep Q Network,DQN)作為強(qiáng)化學(xué)習(xí)模型的算法。
第一,狀態(tài)表示。定義一個(gè)狀態(tài),表示網(wǎng)絡(luò)的當(dāng)前狀態(tài)。令St表示在時(shí)間步t的狀態(tài),包括網(wǎng)絡(luò)拓?fù)湫畔ⅰ⒐?jié)點(diǎn)負(fù)載以及流量負(fù)載等。
第二,動作空間。定義一個(gè)動作空間,表示在給定狀態(tài)下可選擇的路由動作。令A(yù)t表示在時(shí)間步t可選擇的動作。
第三,獎(jiǎng)勵(lì)機(jī)制。設(shè)定一個(gè)獎(jiǎng)勵(lì)機(jī)制,以評估在給定狀態(tài)和執(zhí)行動作后的性能。令Rt+1表示在執(zhí)行動作后獲得的即時(shí)獎(jiǎng)勵(lì)。
第四,DQN 結(jié)構(gòu)。DQN 用于映射學(xué)習(xí)狀態(tài)和動作之間的關(guān)系,以實(shí)現(xiàn)在給定狀態(tài)和動作下的累積獎(jiǎng)勵(lì)。其目標(biāo)是學(xué)習(xí)最優(yōu)Q函數(shù),表示在最優(yōu)策略下的累積獎(jiǎng)勵(lì)。在訓(xùn)練過程中,DQN 的目標(biāo)是最小化預(yù)測Q值與實(shí)際Q值的差異,采用均方誤差作為損失函數(shù)[4]。具體地,損失函數(shù)可表示為
式中:L(θ)表示損失函數(shù);θ表示DQN 的參數(shù);St表示當(dāng)前狀態(tài);At表示當(dāng)前動作;β表示即時(shí)獎(jiǎng)勵(lì);St+1表示下一個(gè)狀態(tài);γ表示折扣因子;Q(St,At;θ)表示當(dāng)前狀態(tài)和動作下的預(yù)測Q值;Q(St+1,At+1;θ-)表示在下一個(gè)狀態(tài)下選擇最優(yōu)動作的預(yù)測Q值;E表示對當(dāng)前狀態(tài)、動作、獎(jiǎng)勵(lì)及下一個(gè)狀態(tài)的期望。目標(biāo)Q網(wǎng)絡(luò)的參數(shù)θ-用于穩(wěn)定訓(xùn)練,通常通過固定周期或軟更新的方式更新。
第五,訓(xùn)練過程。使用經(jīng)驗(yàn)回放和目標(biāo)網(wǎng)絡(luò)來穩(wěn)定DQN 的訓(xùn)練。在每個(gè)時(shí)間步t,執(zhí)行以下步驟。一是選擇動作At,其是由DQN 基于當(dāng)前狀態(tài)St給出的動作;二是執(zhí)行動作,觀察下一個(gè)狀態(tài)St+1和即時(shí)獎(jiǎng)勵(lì)Rt+1;三是將經(jīng)驗(yàn)(St,At,Rt+1,St+1)存儲到經(jīng)驗(yàn)回放緩沖區(qū)中;四是從經(jīng)驗(yàn)回放緩沖區(qū)中隨機(jī)抽樣一批數(shù)據(jù),更新DQN 的參數(shù);五是更新目標(biāo)網(wǎng)絡(luò)的參數(shù)。
通過DQN 算法,實(shí)現(xiàn)一個(gè)能夠?qū)W習(xí)并優(yōu)化路由策略的智能算法,從而提升云計(jì)算環(huán)境下數(shù)據(jù)通信的性能。
為了實(shí)現(xiàn)提出的智能路由算法,本文選擇采用Python 編程語言,并使用深度學(xué)習(xí)框架TensorFlow 作為主要開發(fā)工具。
要實(shí)現(xiàn)智能路由算法,需要先定義一個(gè)DQN模型,具體代碼為

代碼中,定義類“DQNNetwork”繼承自TensorFlow的tf.keras.Model 類,表示DQN 的模型。在初始化方法中,定義了3 個(gè)全連接層,分別是具有128 個(gè)神經(jīng)元和ReLU 激活函數(shù)的第一層,具有64 個(gè)神經(jīng)元、ReLU 激活函數(shù)的第二層以及輸出層。
在每一步訓(xùn)練中,先使用DQN 模型預(yù)測當(dāng)前狀態(tài)下的Q值,然后計(jì)算目標(biāo)Q值,通過均方誤差損失來更新DQN 的參數(shù)。同時(shí),通過更新目標(biāo)Q 網(wǎng)絡(luò)的權(quán)重,確保目標(biāo)Q 網(wǎng)絡(luò)與DQN 保持一致。
在主循環(huán)中,根據(jù)num_episodes 的設(shè)定,執(zhí)行一定數(shù)量的episodes。對于每個(gè)episode,使用初始狀態(tài)initial_state,并在每個(gè)時(shí)間步中執(zhí)行動作,更新狀態(tài)、計(jì)算獎(jiǎng)勵(lì),然后將經(jīng)驗(yàn)存儲到記憶中。algorithm.update_q_network() 和algorithm.update_target_network()表示更新Q 網(wǎng)絡(luò)和目標(biāo)網(wǎng)絡(luò),具體代碼為

實(shí)驗(yàn)具體目標(biāo)是驗(yàn)證數(shù)據(jù)通信效率、負(fù)載均衡以及安全性。搭建實(shí)驗(yàn)環(huán)境采用多核心的Intel Xeon處理器、32 GB 大容量內(nèi)存以及高性能的NVIDIA Tesla 系列圖形處理單元(Graphics Processing Unit,GPU)。需要安裝Ubuntu Server 操作系統(tǒng),配置VMware虛擬化軟件,以便模擬多個(gè)云計(jì)算節(jié)點(diǎn)。此外,配置深度學(xué)習(xí)框架(如TensorFlow)、網(wǎng)絡(luò)模擬工具(GNS3)以及加密庫(OpenSSL)。
實(shí)驗(yàn)數(shù)據(jù)集采用PlanetLab 數(shù)據(jù)集,涵蓋了節(jié)點(diǎn)之間的實(shí)時(shí)通信數(shù)據(jù)、節(jié)點(diǎn)負(fù)載信息以及性能數(shù)據(jù),具有豐富的網(wǎng)絡(luò)通信和性能指標(biāo)。對于云計(jì)算環(huán)境下數(shù)據(jù)通信的智能路由算法的實(shí)驗(yàn)設(shè)計(jì),PlanetLab 數(shù)據(jù)集的全球范圍覆蓋使其適用于不同地域、網(wǎng)絡(luò)拓?fù)湟约柏?fù)載情況的研究[5]。
對比實(shí)驗(yàn)是要將本文設(shè)計(jì)的深度強(qiáng)化學(xué)習(xí)模型來實(shí)現(xiàn)智能路由算法,與傳統(tǒng)路由協(xié)議路由信息協(xié)議(Routing Information Protocol,RIP)和開放最短路徑優(yōu)先協(xié)議(Open Shortest Path First,OSPF)進(jìn)行對比實(shí)驗(yàn)。表1 ~表3 是3 種路由協(xié)議的實(shí)驗(yàn)配置。

表1 深度強(qiáng)化學(xué)習(xí)框架的配置

表2 RIP 協(xié)議的配置

表3 OSPF 協(xié)議的配置
經(jīng)過對比實(shí)驗(yàn)、記錄及整理數(shù)據(jù),實(shí)驗(yàn)對比結(jié)果如表4 所示。

表4 實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)對比結(jié)果顯示了深度強(qiáng)化學(xué)習(xí)模型在多個(gè)方面的性能優(yōu)勢。收斂時(shí)間方面,深度強(qiáng)化學(xué)習(xí)模型相較于傳統(tǒng)的RIP協(xié)議表現(xiàn)更好,且略優(yōu)于OSPF協(xié)議。在路由表更新頻率方面,深度強(qiáng)化學(xué)習(xí)模型和OSPF協(xié)議表現(xiàn)相當(dāng),而RIP 協(xié)議的更新較為緩慢。負(fù)載均衡方面,深度強(qiáng)化學(xué)習(xí)模型表現(xiàn)優(yōu)異,具有較高的負(fù)載均衡指標(biāo)。相比之下,OSPF 協(xié)議也相對較好,而RIP 協(xié)議的負(fù)載均衡指標(biāo)較低。
文章通過采用深度強(qiáng)化學(xué)習(xí)模型,提出了一種具有自適應(yīng)性、高效通信、快速適應(yīng)性以及良好負(fù)載均衡性能的智能路由算法。實(shí)驗(yàn)對比結(jié)果顯示,相對于傳統(tǒng)路由協(xié)議,文章設(shè)計(jì)的智能路由算法在收斂時(shí)間、數(shù)據(jù)傳輸效率、路由表更新頻率及負(fù)載均衡性能等關(guān)鍵性能指標(biāo)上均更具有優(yōu)越性。在未來的研究方向上,可以進(jìn)一步優(yōu)化算法性能,使其適應(yīng)更復(fù)雜的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),推動智能路由算法的實(shí)際應(yīng)用和發(fā)展。