亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于深度強化學(xué)習(xí)的TCP網(wǎng)絡(luò)擁塞控制協(xié)議

        2023-04-07 03:04:32盧光全李建波呂志強
        計算機應(yīng)用與軟件 2023年3期
        關(guān)鍵詞:經(jīng)驗動作歷史

        盧光全 李建波 呂志強

        (青島大學(xué)計算機科學(xué)技術(shù)學(xué)院 山東 青島 266071)

        0 引 言

        隨著互聯(lián)網(wǎng)規(guī)模和網(wǎng)絡(luò)應(yīng)用的不斷增加,網(wǎng)絡(luò)擁塞現(xiàn)象日益顯著。盡管高帶寬的網(wǎng)絡(luò)鏈路能夠在一定程度上滿足網(wǎng)絡(luò)服務(wù)的需求,提高吞吐量和降低延遲等,但更高端的硬件資源價格昂貴且沒有從本質(zhì)上解決網(wǎng)絡(luò)擁塞問題。更可行的是對高層的擁塞控制協(xié)議進行設(shè)計或改進。隨著計算機網(wǎng)絡(luò)路由協(xié)議算法的不斷創(chuàng)新,許多網(wǎng)絡(luò)擁塞控制協(xié)議被提出[1-3]。其中TCP NewReno擁塞控制協(xié)議是業(yè)界的主流,但由于其基于規(guī)則的設(shè)計模式,它在動態(tài)變化的網(wǎng)絡(luò)環(huán)境中未能更好地均衡吞吐量和時延。在網(wǎng)絡(luò)構(gòu)建的過程中上述規(guī)則被定義為“事件-動作”,即在面對丟包或者擁塞時此類網(wǎng)絡(luò)協(xié)議只能根據(jù)單一的映射關(guān)系選擇固定“動作”,盡管這一“動作”會降低網(wǎng)絡(luò)吞吐量等性能指標(biāo)。這些網(wǎng)絡(luò)協(xié)議也未能根據(jù)網(wǎng)絡(luò)的過去經(jīng)驗對擁塞窗口做出動態(tài)的自適應(yīng)調(diào)整,僅僅是在特定場景和特定假設(shè)下達(dá)到網(wǎng)絡(luò)性能的次優(yōu)化。

        基于規(guī)則的協(xié)議主要存在兩個問題:

        (1) 當(dāng)網(wǎng)絡(luò)環(huán)境發(fā)生變化時,這些基于規(guī)則的協(xié)議不能動態(tài)地對新的網(wǎng)絡(luò)環(huán)境更好地適應(yīng)。即不同的網(wǎng)絡(luò)環(huán)境存在不同的帶寬、延遲和網(wǎng)絡(luò)拓?fù)?。因?適用于特定網(wǎng)絡(luò)下的TCP擁塞控制協(xié)議很難甚至無法在另一個網(wǎng)絡(luò)中起作用。

        (2) 在構(gòu)建網(wǎng)絡(luò)的時候,人為地建立標(biāo)準(zhǔn)性的假設(shè),在這些假設(shè)之上成立規(guī)則。

        擁塞控制算法在保證應(yīng)用數(shù)據(jù)進行可靠傳輸中起著重要的作用。但是,網(wǎng)絡(luò)環(huán)境是復(fù)雜且動態(tài)變化的,鏈路的信息具有非透明性,這對設(shè)計擁塞控制算法提出了更高的挑戰(zhàn)。如圖1所示,通信雙方的通信鏈路帶寬不均衡。當(dāng)以1 Mbit/s從S向R發(fā)送數(shù)據(jù)時,超過鏈路所提供的最大帶寬,在M處會發(fā)生擁塞,導(dǎo)致網(wǎng)絡(luò)性能變差甚至崩塌。此時S就會減小擁塞窗口,降低其發(fā)送速率。NewReno遇到此類問題時執(zhí)行固定的AIMD規(guī)則,在網(wǎng)絡(luò)出現(xiàn)擁塞時,擁塞窗口的大小默認(rèn)縮減至原始值的1/2,這種設(shè)計浪費了網(wǎng)絡(luò)資源,從而嚴(yán)重降低了網(wǎng)絡(luò)的性能。

        圖1 鏈路帶寬不均衡

        深度強化學(xué)習(xí)通過挖掘網(wǎng)絡(luò)歷史經(jīng)驗為處理網(wǎng)絡(luò)擁塞提供了新模式。TRL-CC可以有效地克服上述問題,從而學(xué)習(xí)到一個較成功的策略,最終實現(xiàn)智能化擁塞控制。TRL-CC通過利用歷史經(jīng)驗實現(xiàn)擁塞控制智能化和擺脫基于規(guī)則的模式。在這種情況下,每個發(fā)送方作為一個代理,代理與網(wǎng)絡(luò)環(huán)境直接進行交互,代理不需要了解網(wǎng)絡(luò)的全部信息,它只需要觀測網(wǎng)絡(luò)環(huán)境的狀態(tài)(例如:往返時間(RTT)、吞吐量、擁塞窗口等)。一次TCP會話建立到會話結(jié)束稱為一個片段。在一個片段內(nèi)的每個時間步,代理通過接收網(wǎng)絡(luò)環(huán)境的狀態(tài)選擇一個合適的動作,此時的動作會被反饋給環(huán)境并且影響環(huán)境的下個狀態(tài),同時代理將得到執(zhí)行這一動作帶來的回報,目的是最大化未來折扣累積回報。

        通過上述對傳統(tǒng)TCP擁塞控制問題的描述,本文提出一種基于深度強化學(xué)習(xí)的智能化擁塞控制方案TRL-CC。盡管沒有必要說明,TRL-CC建立在NewReno之上。對TRL-CC研究的主要貢獻如下:

        (1) TRL-CC利用時序卷積網(wǎng)絡(luò)對歷史經(jīng)驗進行時序上因果關(guān)系處理,并結(jié)合強化學(xué)習(xí)選取合適的動作對擁塞窗口進行調(diào)整。據(jù)我們了解,盡管在這之前存在基于強化學(xué)習(xí)的擁塞控制方案,同時它們也利用歷史經(jīng)驗學(xué)習(xí)網(wǎng)絡(luò)環(huán)境以達(dá)到目標(biāo)(例如:高吞吐量、低延遲等)。但是,它們僅僅是把過去經(jīng)驗直接作為輸入,未考慮歷史經(jīng)驗中存在的隱式關(guān)系。利用當(dāng)前的網(wǎng)絡(luò)狀況跟過去一段時間內(nèi)的網(wǎng)絡(luò)情況有著密切聯(lián)系這一隱式條件,TRL-CC可以學(xué)習(xí)到更優(yōu)的策略來實現(xiàn)智能化的擁塞控制。所以該方案是首次利用歷史經(jīng)驗在時序上的因果關(guān)系并結(jié)合強化學(xué)習(xí)實現(xiàn)擁塞控制。

        (2) TRL-CC在實現(xiàn)智能化的擁塞控制方案時,對往返時間進行量化。擁塞窗口通過結(jié)合量化往返時間進行自適應(yīng)動態(tài)調(diào)整。

        (3) 本文考慮到環(huán)境執(zhí)行動作到代理收到執(zhí)行這一動作的回報存在延遲。所以,TRL-CC在學(xué)習(xí)過程中對Q函數(shù)的更新做了修改。代理用t+1時刻的回報代替t時刻的回報。

        (4) TRL-CC通過NS-3[4]仿真,并且與TCP NewReno以及基于強化學(xué)習(xí)的擁塞控制(RL-CC)方案作比較,表明TRL-CC能夠更好地學(xué)習(xí)網(wǎng)絡(luò)狀況,同時在性能方面較NewReno和RL-CC有著顯著的提升。

        1 相關(guān)工作

        1.1 回 顧

        在有線和無線網(wǎng)絡(luò)中,TCP是被廣泛探討的話題。同時,擁塞控制是網(wǎng)絡(luò)中最基本的問題。多年來,許多端到端擁塞控制理論被提出。例如,Reno[5]根據(jù)返回的確認(rèn)字符(ACK)信息調(diào)整擁塞窗口,在低帶寬、低時延的網(wǎng)絡(luò)中可以發(fā)揮出優(yōu)勢。但是在高帶寬延時網(wǎng)絡(luò)中,RTT很大,擁塞窗口增長慢,導(dǎo)致帶寬利用率降低。Cubic[6]使用cubic函數(shù)調(diào)整擁塞窗口,其優(yōu)點在于只要沒檢測到丟包,就不會主動降低發(fā)送速率,可以最大程度地利用網(wǎng)絡(luò)剩余帶寬。但這也將會成為其短板。Vegas[7]將時延作為擁塞出現(xiàn)的信號。如果RTT超過了預(yù)期的值則開始減小擁塞窗口。還有包括BBR[8]、Compound TCP[9]等端到端的擁塞控制協(xié)議。這些協(xié)議都有各自獨特的設(shè)計,它們使用固定的函數(shù)或者規(guī)則調(diào)整擁塞窗口的變化。對于上述傳統(tǒng)的擁塞控制協(xié)議,固定規(guī)則策略限制了它們適應(yīng)現(xiàn)代網(wǎng)絡(luò)的復(fù)雜性和快速變化。更重要的是,這些擁塞控制協(xié)議不能從歷史經(jīng)驗中學(xué)習(xí)。

        同時,研究者們已經(jīng)利用機器學(xué)習(xí)方法來解決傳統(tǒng)TCP協(xié)議的局限性。例如,Remy[10]使用機器學(xué)習(xí)的方式生成擁塞控制算法模型,針對不同網(wǎng)絡(luò)狀態(tài)采用不同的方式調(diào)整擁塞窗口。它通過離線方式進行訓(xùn)練,通過輸入各種參數(shù)(如瓶頸鏈路帶寬、時延等),反復(fù)調(diào)節(jié)目標(biāo)函數(shù)使其達(dá)到最優(yōu),最終會生成一個網(wǎng)絡(luò)狀態(tài)到調(diào)節(jié)方式的映射表。當(dāng)訓(xùn)練的網(wǎng)絡(luò)模型假設(shè)與實際網(wǎng)絡(luò)的假設(shè)一致時,Remy可以很好地工作。但是當(dāng)實際網(wǎng)絡(luò)假設(shè)發(fā)生改變時,Remy的性能會下降。它的映射表是在訓(xùn)練時計算得出的,與傳統(tǒng)的TCP及其變種一樣,它無法適應(yīng)不斷變化的網(wǎng)絡(luò)環(huán)境,每當(dāng)網(wǎng)絡(luò)環(huán)境發(fā)生變化時,它必須重新計算映射表。PCC[11]摒棄基于規(guī)則的模式,可以快速適應(yīng)網(wǎng)絡(luò)中不斷變化的條件。它不斷地通過“微型實驗”積極尋找更優(yōu)的發(fā)送速率。但是,貪婪地尋找更優(yōu)的發(fā)送速率會讓其陷入局部最優(yōu)的地步。并且,它的性能需要依靠準(zhǔn)確的時鐘。不論是Remy還是PCC,它們都把網(wǎng)絡(luò)環(huán)境視為黑匣子,拋棄了傳統(tǒng)的基于規(guī)則的設(shè)計模式,專注于尋找可以達(dá)到最好性能的發(fā)送速率改變規(guī)則。但是,它們都沒有利用先前的經(jīng)驗。

        近來,許多研究者利用強化學(xué)習(xí)和網(wǎng)絡(luò)擁塞控制結(jié)合,這一結(jié)果能夠更好地解決TCP擁塞控制問題。QTCP[12]是把Q-learning與擁塞控制結(jié)合得到的在線學(xué)習(xí)方案。它可以較好地適應(yīng)新的網(wǎng)絡(luò)環(huán)境,擺脫傳統(tǒng)的基于規(guī)則的設(shè)計原理,從經(jīng)驗中學(xué)習(xí)網(wǎng)絡(luò)狀況以獲得更好的性能(例如,高吞吐量、低時延)。并且提出一種廣義的Kanerva編碼函數(shù)逼近算法。TCP-Drinc[13]與深度強化學(xué)習(xí)結(jié)合,把多個觀測狀態(tài)通過深度卷積網(wǎng)絡(luò)處理,然后加入LSTM再對特征進行深層次的提取,最終通過一個全連接網(wǎng)絡(luò)選擇動作,來決定如何調(diào)整擁塞窗口的大小。它也是一種從過去的經(jīng)驗中學(xué)習(xí)合適的策略以適應(yīng)網(wǎng)絡(luò)環(huán)境動態(tài)變化的擁塞控制方案。盡管QTCP和TCP-Drinc都是從過去的經(jīng)驗中學(xué)習(xí),但都未曾考慮歷史經(jīng)驗中的因果關(guān)系。

        1.2 NewReno存在的問題

        擁塞控制的目標(biāo)是多個發(fā)送方可以公平地共享一個瓶頸鏈路帶寬,不會引起網(wǎng)絡(luò)的崩塌。每個發(fā)送方包含一個有限大小的擁塞窗口(cwnd),維持發(fā)送數(shù)據(jù)的多少,以保證注入網(wǎng)絡(luò)的數(shù)據(jù)包不會引起網(wǎng)絡(luò)擁塞。TCP擁塞控制協(xié)議及其變種不斷地被提出。TCP NewReno通過AIMD規(guī)則來維持整擁塞窗口。AIMD主要包含三個步驟:

        (1) 慢開始:cwnd=cwnd+1(每個ACK都被發(fā)送方收到)。

        (2) 擁塞避免:cwnd=cwnd+1/cwnd(每個ACK都被發(fā)送方收到)。

        (3) 快恢復(fù):cwnd=cwnd/2(收到三次重復(fù)ACKs)。

        圖2為TCP NewReno流的擁塞窗口(包的數(shù)量)隨時間的變化。它通過AIMD規(guī)則控制擁塞窗口變化。一個TCP會話建立時,發(fā)送方并不知道擁塞窗口應(yīng)該取多大的值適合當(dāng)前的網(wǎng)絡(luò)狀況,所以數(shù)據(jù)包剛注入網(wǎng)絡(luò)時擁塞窗口會快速提升到某個值((1) 慢開始),盡管這種策略被稱為慢開始,但是擁塞窗口呈指數(shù)增長。TCP設(shè)置了一個慢開始門限限制擁塞窗口無限增加。發(fā)送方根據(jù)確認(rèn)字符判斷網(wǎng)絡(luò)出現(xiàn)擁塞,進入擁塞避免階段((2) 擁塞避免),擁塞窗口增長緩慢(在接收到每個確認(rèn)信息ACK)。直到鏈路發(fā)生丟包或發(fā)送方收到三個重復(fù)冗余ACK,進入第三階段((3) 快恢復(fù)),跳過慢開始階段直接進入擁塞避免。AIMD原理說明TCP過程將會收斂到一個同時滿足效率和公平性的平衡點上,也表明多個流在共享一個鏈路時最終能得到收斂[14]。

        圖2 NewReno流擁塞窗口

        2 對問題的建模

        2.1 問題描述

        當(dāng)一個網(wǎng)絡(luò)的拓?fù)浜蛥?shù)發(fā)生改變時,網(wǎng)絡(luò)需要重新被規(guī)劃以充分利用瓶頸鏈路帶寬和降低往返時間。事實上,在保證充分利用帶寬和降低往返時間的前提下,本文提出基于強化學(xué)習(xí)的TRL-CC通過學(xué)習(xí)歷史經(jīng)驗達(dá)到自適應(yīng)動態(tài)規(guī)劃網(wǎng)絡(luò)目的。強化學(xué)習(xí)包含兩個實體:代理和環(huán)境。通常情況下,深度強化學(xué)習(xí)用于解決馬爾可夫決策問題(MDP)。但在本文中,網(wǎng)絡(luò)內(nèi)部信息并不透明,代理不能完全了解網(wǎng)絡(luò)信息。因此,本文對網(wǎng)絡(luò)環(huán)境建模為部分可觀測馬爾可夫問題(POMDP)。

        沒有先驗知識的代理通過學(xué)習(xí)得到最優(yōu)策略π(a|st),通常情況,策略π(a|st)是通過狀態(tài)空間S到動作空間A映射,定義為:

        π(a|st)S→A

        (1)

        代理根據(jù)當(dāng)前狀態(tài)st隨機或根據(jù)式(1)固定地選取動作at并從環(huán)境中獲得回報r(st,at),目的是最大化長期累積折扣回報,被定義為:

        Rt=r(st,at)+γ·Rt+1

        (2)

        式中:γ∈[0,1]表示折扣因子。

        即使在相同的環(huán)境中,當(dāng)策略發(fā)生變化時,累計回報也會發(fā)生改變。這是因為累計回報取決于選取的動作。此時,需要計算代理在狀態(tài)st下執(zhí)行動作at后獲得的累計回報,這得以從Q函數(shù)體現(xiàn),被定義為:

        Qπ(st,at)=Est+1[rt+γQπ(st+1,at+1)|st,at]

        (3)

        2.2 狀態(tài)空間

        在一個TCP會話建立時,有許多的狀態(tài)變量可以描述網(wǎng)絡(luò)情況,例如往返時間TRT和最小往返時間TRT,min、上次發(fā)包的時間、慢開始的閾值、擁塞窗口大小、連續(xù)兩次發(fā)包的擁塞窗口的差值、平均往返時間、收到確認(rèn)信息的總和、在一個時間間隔內(nèi)接收到的平均確認(rèn)信息、網(wǎng)絡(luò)吞吐量等。選取只與代理目標(biāo)相關(guān)的特征并做預(yù)處理是必要的,因為能更好地解釋模型。

        數(shù)據(jù)包傳輸時,通過最小往返時間可以估計出鏈路的傳輸時延,但是鏈路可能會發(fā)生動態(tài)變化。因此,最小延遲比vRTT=TRT,min/TRT也作為衡量網(wǎng)絡(luò)狀況特征,它表示在動態(tài)變化的鏈路中數(shù)據(jù)的傳播時延所占的比例。同時,數(shù)據(jù)包的傳輸過程中需要考慮隊列延遲,把dRTT=TRT-TRT,min作為隊列延遲的估計。此外,返回確認(rèn)信息表明在一次數(shù)據(jù)傳輸過程,接收方收到數(shù)據(jù)包還是丟失數(shù)據(jù)包,一定程度上可以反映網(wǎng)絡(luò)情況,所以確認(rèn)信息(ACK)也作為一個特征。

        通過上述討論,下一步定義TRL-CC的狀態(tài)空間。在一個TCP會話期間,代理對觀測狀態(tài)處理之后,我們考慮以下特征:(1) 擁塞窗口大小,用w表示;(2) 一次發(fā)包時間內(nèi)的吞吐量(tp);(3) 往返時間(TRT);(4)TRT,min和TRT之比υRTT;(5)TRT和TRT,min兩者之間的差值dRTT;(6) 發(fā)送數(shù)據(jù)包后返回的確認(rèn)字符,用τACK表示。因此,狀態(tài)空間定義為:

        S=[s1,s2,…,sk]

        (4)

        其中st表示為:

        st=[w(t),tp(t),RTT(t),υRTT(t),dRTT(t),τACK(t)]

        (5)

        代理選取式(5)中的s1,s2,…,sk這K個歷史經(jīng)驗作為時序卷積網(wǎng)絡(luò)的輸入,提取時序上隱式的因果關(guān)系。最終,代理把提取的隱式特征壓成一維張量作為DQN的輸入。

        2.3 動作空間

        代理通過在動態(tài)變化網(wǎng)絡(luò)中學(xué)習(xí)合適的策略,處理每個觀測狀態(tài)后選擇合適的動作,構(gòu)成<狀態(tài),動作>對,并將動作映射為擁塞窗口的改變。如表1所示,擁塞窗口調(diào)整的狀態(tài)空間A,共有5個動作。代理結(jié)合往返時間的量化對擁塞窗口做動態(tài)改變。本文參考文獻[15]對往返時間均勻量化為M個區(qū)間,如式(6)所示。

        Δμ=(TRT,max-TRT,min)/M

        (6)

        式中:Δμ稱為乘性因子,擁塞窗口隨乘性因子做不定的改變。代理預(yù)測的任何一個動作對改變擁塞窗口滿足式(7):

        表1 擁塞窗口改變規(guī)則

        2.4 回報和效用函數(shù)

        回報是指代理在每個時間步選取動作后作用于環(huán)境中,然后從環(huán)境中獲得的評價性響應(yīng)?;貓笕≈低ㄟ^效用函數(shù)得到映射。TRL-CC的效用函數(shù)目標(biāo)是最大化吞吐量且最小化延遲。因此,效用函數(shù)的定義如下:

        Utilityt=α×log(tp(t))-βlog(RTT(t))

        (8)

        式中:α、β代表吞吐量、往返時間的權(quán)重,且α+β=1。式(8)表明應(yīng)該努力地最大化吞吐量的同時最小化延遲。

        盡管效用函數(shù)是模型要實現(xiàn)的目標(biāo),但值得注意的是,代理僅僅采用式(8)作為回報函數(shù),代理可能持續(xù)選擇相同的動作,使得效用函數(shù)一直是最大化,但網(wǎng)絡(luò)的性能并不一直是最優(yōu)的。為了能夠更好地均衡吞吐量和往返時間。本文采用時間步t和t+TRT連續(xù)時間的效用函數(shù)值之差來定義效用函數(shù),如下:

        U=Ut+TRT-Ut

        (9)

        表2中,ε表示兩個連續(xù)效用值差值的容忍度。當(dāng)連續(xù)的兩個效用函數(shù)值的差大于ε,代理會得到一個正的回報值,反之亦然。

        表2 效用函數(shù)回報

        3 擁塞控制方案

        3.1 TRL-CC

        隨著機器學(xué)習(xí)和深度學(xué)習(xí)在視頻流[16-18]、流量預(yù)測[19-20]等方面的成功發(fā)展,這促使本文利用深度學(xué)習(xí)對擁塞控制做進一步研究,尋找一個智能化的擁塞控制方案。TRL-CC的設(shè)計如圖3所示,它可以從歷史經(jīng)驗中隱式學(xué)習(xí)和預(yù)測未來網(wǎng)絡(luò)情況。它大致可以分為三部分:(1) 對網(wǎng)絡(luò)實行控制和決策的代理;(2) 執(zhí)行代理選擇的動作并對這些動作做出標(biāo)準(zhǔn)性評價的環(huán)境;(3) 存放歷史經(jīng)驗的緩沖區(qū)。

        圖3 TRL-CC模型

        本文對傳統(tǒng)的強化學(xué)習(xí)策略做了改進。首先,每過一個往返時間,緩沖區(qū)更新一次。數(shù)據(jù)以元組(st,at,rt,st+TRT)的形式存放在緩沖區(qū)中。TRL-CC利用時序卷積網(wǎng)絡(luò)提取歷史經(jīng)驗中隱式的關(guān)系作為輸入,每次選取K個歷史經(jīng)驗。最后,t時刻的回報經(jīng)過TRT才會被代理收到。本文考慮這一延遲,改變了Q函數(shù)的更新方式。通過這些改進,DQN可以從歷史經(jīng)驗中更好地學(xué)習(xí)。

        3.2 代 理

        在定義了狀態(tài)、動作空間、回報函數(shù)和TRL-CC方案設(shè)計之后,現(xiàn)在介紹代理的設(shè)計如圖4所示。代理將時序上連續(xù)的K個歷史經(jīng)驗作為輸入,并且輸出是動作空間中的下一個動作。

        圖4 代理設(shè)計(FC:全連接層;A:動作空間)

        在單獨使用強化學(xué)習(xí)實現(xiàn)擁塞控制時,僅僅是把過去經(jīng)驗直接作為輸入。盡管可以得到比傳統(tǒng)模型好的效果,但RL-CC卻忽略了歷史經(jīng)驗中隱式的因果關(guān)系。文獻[21]中提到時序卷積網(wǎng)絡(luò)(TCN)在處理時序上的序列時是一個非常有前景的方法。在t時刻,代理從緩沖區(qū)中選取t時刻之前的K個連續(xù)的歷史經(jīng)驗作為TCN的輸入。TCN的卷積網(wǎng)絡(luò)層層之間是有因果關(guān)系的,意味著不會“遺漏”歷史信息的情況發(fā)生。而且它使用大量的空洞卷積擴大感受野,可獲得更長的歷史信息。網(wǎng)絡(luò)參數(shù)的丟棄概率是0.3。最后,代理通過兩個全連接網(wǎng)絡(luò)來計算最合適的動作的Q函數(shù)值。

        在圖4中,代理使用全連接層網(wǎng)絡(luò)計算每個動作的Q函數(shù)值時,采用的是Softmax激活函數(shù),定義如下:

        代理選取最大概率的動作Ai計算對應(yīng)的Q函數(shù)值。

        3.3 DQN訓(xùn)練過程

        在實現(xiàn)擁塞控制時,在每個時間步t,代理會接收到來自環(huán)境的狀態(tài)向量st,基于策略π(st)選擇動作at。并且在下一個時間t+TRT,代理收到標(biāo)量值回報r(st,at),表示在時間步t執(zhí)行動作at的回報。但是,環(huán)境執(zhí)行動作at的回報被代理在時間t+TRT收到,這表明在學(xué)習(xí)中存在延遲τ。在強化學(xué)習(xí)中,像這樣的延遲大多都被忽略掉。然而,對于擁塞控制來說,它對維持網(wǎng)絡(luò)穩(wěn)定有著重要的作用。出于此原因,TRL-CC在學(xué)習(xí)過程中對Q函數(shù)(式(3))的更新做了修改。代理把rt+1作為動作at的回報。因此,在時間t+1開始時,修改Q函數(shù)的更新方式為:

        Qπ(st,at)←rt+1+γQπ(st+2,at+2)

        (10)

        式中:Q函數(shù)利用神經(jīng)網(wǎng)絡(luò)進行近似。

        式中:ω表示神經(jīng)網(wǎng)絡(luò)權(quán)重,將代理得到的觀測狀態(tài)通過時序神經(jīng)網(wǎng)絡(luò)進行處理后和權(quán)重作為神經(jīng)網(wǎng)絡(luò)的輸入,然后通過迭代和學(xué)習(xí)得到近似的Q函數(shù)。

        在神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練時,假設(shè)式(11)成立,由此定義損失函數(shù)為:

        4 實驗結(jié)果與分析

        4.1 網(wǎng)絡(luò)環(huán)境

        本文利用NS-3仿真網(wǎng)絡(luò)環(huán)境,如圖5所示,在路由器1和路由器2之間有著大小為B的頸鏈路帶寬,設(shè)置最小往返時間為80 ms,這是一種典型的啞鈴狀網(wǎng)絡(luò)模型。有N個發(fā)送方和N個接收方,多個發(fā)送方共同競爭一個瓶頸鏈路,每個發(fā)送方都是一個獨立的代理。代理每次訓(xùn)練50個片段,每個片段為800 s。如果代理在TRT時間間隔內(nèi)沒有接收到確認(rèn)字符,則會用上一時刻的觀測狀態(tài)。

        圖5 網(wǎng)絡(luò)拓?fù)?/p>

        為了驗證TRL-CC的性能,選擇兩個基準(zhǔn)方案NewReno、RL-CC進行對比。本文主要專注于吞吐量和往返時間兩方面的性能。

        4.2 評 估

        本節(jié)評估本文提出的TRL-CC方案的性能。首先它與傳統(tǒng)的擁塞控制算法NewReno、未考慮時序特征的基于強化學(xué)習(xí)的擁塞控制方案進行對比。隨后通過實驗分析歷史經(jīng)驗K的取值。最后,TRL-CC不做任何改變的部署在高帶寬網(wǎng)絡(luò)進行實驗分析。

        4.2.1TRL-CC性能

        圖6是代理在進行20個片段的訓(xùn)練后得到的擁塞窗口和往返時延以及吞吐量的變化曲線。它包含代理學(xué)習(xí)的三個過程:(1) 隨機探索;(2) 隨機學(xué)習(xí);(3) 收斂階段。擁塞窗口的變化符合式(7),在圖6(a)和圖6(b)中可以看出擁塞窗口是通過往返時延量化的。標(biāo)注①之間是隨機探索過程,代理以一定概率隨機選取動作,隨機選擇動作的概率為0.1。在代理學(xué)習(xí)的過程中隨機選擇概率會減小,但是最終它不會為零,因為面對動態(tài)變化的網(wǎng)絡(luò)保持一定的概率探索環(huán)境是有必要的。標(biāo)注②之間是隨機學(xué)習(xí)過程,代理通過學(xué)習(xí)到的策略選擇合適的動作,然后結(jié)合效用函數(shù)確保代理達(dá)到收斂階段(標(biāo)注③),最終往返時延收斂到最小往返時延附近波動。

        (a) 擁塞窗口的變化

        (b) 往返時延的變化

        (c) 吞吐量的變化圖6 TRL-CC方案性能

        通過圖6(c)可以看出,盡管代理在學(xué)習(xí)過程中使得擁塞窗口自適應(yīng)減小(發(fā)包數(shù)量減少),但是吞吐量卻一直保持穩(wěn)定。這也進一步說明TRL-CC在減小延遲的同時也能充分利用瓶頸鏈路帶寬,提高鏈路利用率。

        4.2.2對比實驗

        此節(jié)主要通過從吞吐量和延遲方面進行比較,展示TRL-CC在吞吐量和延遲方面具有良好的性能。主要以下面三個擁塞控制方法進行比較:

        (1) TCP NewReno:如今廣泛應(yīng)用的經(jīng)典擁塞控制算法之一。

        (2) RL-CC:基于強化學(xué)習(xí)的擁塞控制方案,沒有利用歷史經(jīng)驗在時序上的關(guān)系。將其作為TRL-CC的對比實驗。

        (3) TRL-CC:在RL-CC的基礎(chǔ)之上,考慮過去經(jīng)驗在時序上的因果關(guān)系。即此刻的網(wǎng)絡(luò)情況與之前某段時間內(nèi)的網(wǎng)絡(luò)情況是有聯(lián)的。利用時序卷積網(wǎng)絡(luò)提取網(wǎng)絡(luò)中潛在的關(guān)系,對未來網(wǎng)絡(luò)情況做更好的規(guī)劃。

        從圖7(a)可以看出,NewReno的時延上下浮動劇烈且時延較其他兩者相對較高。在圖7(b)中,NewReno的吞吐量存在波動且不能保持穩(wěn)定。這主要是因為NewReno中固定的AIMD規(guī)則,當(dāng)代理觀測到有包丟失時,擁塞窗口減半。而另一方面,在TCP連接剛建立時,RL-CC方案隨機探索階段時延波動大、收斂較慢,同時吞吐量的穩(wěn)定性比較差。TRL-CC較RL-CC可以學(xué)習(xí)到控制網(wǎng)絡(luò)行為更優(yōu)的策略,時延可以快速收斂且在最小往返時間附近波動,吞吐量保持相對穩(wěn)定。主要原因是,歷史經(jīng)驗中存在時序上隱式關(guān)系,這種關(guān)系一旦被提取利用,代理就可以更好地結(jié)合過去經(jīng)驗和現(xiàn)在的網(wǎng)絡(luò)情況,并對未來網(wǎng)絡(luò)情況做好規(guī)劃。

        (a) 三個算法的往返時間

        (b) 三個算法的吞吐量

        (c) 平均往返時間

        (d) 平均吞吐量圖7 TRL-CC、NewReno、RL-CC比較

        通過圖7(a)和圖7(b),得到了圖7(c)和圖7(d)。可以進一步看出,TRL-CC無論在時延還是吞吐量方面,它的性能較于前兩者都是最好的。這是因為它利用歷史經(jīng)驗中潛在的因果關(guān)系,并且得以從效用函數(shù)中體現(xiàn)。TRL-CC在吞吐量方面較NewReno提升32.8%,較RL-CC提升8.5%,瓶頸帶寬鏈路得到了充分利用;較NewReno時延降低41.3%,較RL-CC時延降低12%。

        TRL-CC不僅在吞吐量和延遲方面達(dá)到了較高的性能,而且相較于其他兩個方案更均衡吞吐量和時延,更加具有魯棒性。

        4.2.3K取值分析

        在考慮過去經(jīng)驗時,過去經(jīng)驗選取數(shù)量(K)對擁塞控制有著很大影響。此節(jié)對歷史經(jīng)驗K取值進行比較,同時取不同K值的方案也與NewReno以及RL-CC作對比,結(jié)果如圖8所示。

        (a) K取不同值的往返時間對比

        (b) K取不同值的吞吐量對比

        (c) 平均往返時間

        (d) 平均吞吐量圖8 K取值不同對網(wǎng)絡(luò)影響

        正如圖8(a)所示,當(dāng)K=64和K=128時,延遲波動較小且在最小往返時間附近,相對較小。反觀K=16和K=32時,盡管時延在NewReno和RL-CC下面浮動,但卻幾乎沒有收斂到最小往返時間附近。這種原因有兩種:(1) 在定義狀態(tài)空間時,代理加入了隊列延遲這一特征;(2) 關(guān)鍵是時序卷積網(wǎng)絡(luò)處理較長時間的歷史經(jīng)驗,它能夠存儲更長時間的信息,代理可以從更豐富的信息中學(xué)習(xí),使隊列延遲一直保持較小值。另一方面,圖8(b)表示吞吐量的變化,K取值大(K=64 128),吞吐量變化保持穩(wěn)定。結(jié)果表明,歷史經(jīng)驗K越大時,TRL-CC方案的性能越優(yōu)。同時,通過圖8(a)和圖8(b),TRL-CC通過效用函數(shù)均衡了吞吐量和往返時間。最后,柱狀圖(圖8(c)、圖8(d))進一步詮釋了上述結(jié)論。

        4.2.4高帶寬網(wǎng)絡(luò)

        本節(jié)把在瓶頸鏈路帶寬2 Mbit/s、最小往返時間為80 ms訓(xùn)練好的模型直接部署到網(wǎng)絡(luò)瓶頸鏈路帶寬為20 Mbit/s、最小往返時間為80 ms的網(wǎng)絡(luò)中。每個片段的訓(xùn)練時間仍然是800 s。

        在網(wǎng)絡(luò)發(fā)生變化時,圖9表示三種擁塞控制方案的自適應(yīng)性。NewReno因基于規(guī)則的設(shè)計,不能從歷史經(jīng)驗中學(xué)習(xí),導(dǎo)致它在面對網(wǎng)絡(luò)變化時表現(xiàn)出很差的性能甚至使網(wǎng)絡(luò)出現(xiàn)崩塌。TRL-CC在面對網(wǎng)絡(luò)變化時仍然可以從歷史經(jīng)驗中學(xué)習(xí)到最優(yōu)策略,具有更好的魯棒性。如圖9(a)所示,隨著瓶頸鏈路帶寬的增大(與2 Mbit/s相比),往返時間變小。這是由于帶寬變大時隊列延遲降低,這顯然是合理的。圖9(b)是相應(yīng)的吞吐量隨模擬時間的變化,當(dāng)歷史經(jīng)驗K取值較大時,代理在學(xué)習(xí)過程中會謹(jǐn)慎。這是因為代理綜合“考慮”歷史經(jīng)驗,避免出現(xiàn)網(wǎng)絡(luò)性能下降。歷史經(jīng)驗K取值越大、延遲越小且在最小往返時間附近波動;吞吐量也越穩(wěn)定。

        (a) 鏈路帶寬為20 Mbit/s的往返時間

        (b) 鏈路帶寬為20 Mbit/s的吞吐量

        (c) 平均往返時間

        (d) 平均吞吐量圖9 鏈路帶寬發(fā)生變化時性能對比

        圖9(c)和圖9(d)表明,TRL-CC較NewReno吞吐量提升25.8%,較RL-CC吞吐量提升8.3%。另一方面,TRL-CC較NewReno延遲降低33%,比RL-CC降低15%。最終,在變化的網(wǎng)絡(luò)中,TRL-CC的自適應(yīng)性更好,仍然能保持最優(yōu)性能。

        5 結(jié) 語

        本文提出智能化的擁塞控制方案。不像傳統(tǒng)的基于規(guī)則的擁塞控制協(xié)議,它通過量化往返時間控制擁塞窗口自適應(yīng)動態(tài)變化。雖然RL-CC通過學(xué)習(xí)過去經(jīng)驗對未來網(wǎng)絡(luò)進行規(guī)劃,取得了較好的效果。但TRL-CC通過時序卷積網(wǎng)絡(luò)處理過去經(jīng)驗在時序上存在的因果關(guān)系,這使得該方案較RL-CC更具有魯棒性,在吞吐量和往返時間方面取得更好的性能。

        首先,本文在瓶頸鏈路帶寬較小的網(wǎng)絡(luò)中部署TRL-CC。TRL-CC較NewReno和RL-CC(未考慮過去經(jīng)驗在時序上存在的因果關(guān)系)在吞吐量和延遲方面達(dá)到了更好的性能。在平均吞吐量方面,TRL-CC比NewReno提升32.8%,比RL-CC提升8.5%。同時TRL-CC的時延比NewReno降低41.3%,比RL-CC降低了12%。然后,把訓(xùn)練好的TRL-CC遷移到高帶寬網(wǎng)絡(luò)環(huán)境中,不需要再次訓(xùn)練。通過實驗分析,TRL-CC的吞吐量比NewReno和RL-CC分別提升25.8%和8.3%;延遲降低33%和15%。最終,本文對歷史經(jīng)驗K取值進行探討,發(fā)現(xiàn)代理“考慮”歷史經(jīng)驗越多時,TRL-CC越可以更好地均衡吞吐量和時延。

        猜你喜歡
        經(jīng)驗動作歷史
        2021年第20期“最值得推廣的經(jīng)驗”評選
        黨課參考(2021年20期)2021-11-04 09:39:46
        經(jīng)驗
        2018年第20期“最值得推廣的經(jīng)驗”評選
        黨課參考(2018年20期)2018-11-09 08:52:36
        動作描寫要具體
        畫動作
        動作描寫不可少
        新歷史
        全體育(2016年4期)2016-11-02 18:57:28
        歷史上的6月
        歷史上的八個月
        非同一般的吃飯動作
        一区二区三区日韩蜜桃| 538在线啪在线观看| 国产精品久久久久免费a∨不卡| 午夜麻豆视频在线观看| 日韩免费视频| 国产69精品久久久久999小说| 天天综合天天色| 亚洲一区二区一区二区免费视频 | 国产一区二区三区日韩精品| 无码人妻一区二区三区在线视频| 国产AV无码专区亚洲AV桃花庵 | 国内自拍视频一区二区三区| 久久国产精品偷任你爽任你| 国产亚洲婷婷香蕉久久精品| 人妻少妇精品一区二区三区| 国产成人大片在线播放| 亚洲国产成人久久综合| 亚洲天堂手机在线| 成人性生交c片免费看| 国产亚洲一区二区在线观看| 成人免费毛片aaaaaa片| 中文字幕人妻中文| 按摩偷拍一区二区三区| 人成午夜大片免费视频77777| 亚洲熟妇无码av另类vr影视 | 日本妇人成熟免费2020| 饥渴的熟妇张开腿呻吟视频| 国产午夜激情视频自拍| 日本av不卡一区二区三区| 久久久久久久久毛片精品 | 亚洲一区二区懂色av| 亚洲av成人片色在线观看高潮 | 无码gogo大胆啪啪艺术| 日本a级特黄特黄刺激大片| 熟妇丰满多毛的大隂户| 在线观看av手机网址| 97中文乱码字幕在线| 国产乱人偷精品人妻a片| 国产免费破外女真实出血视频 | 国产综合自拍| 国产精品三级在线不卡|