• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于BBR的NDN擁塞控制算法

      2018-03-03 07:36:19黃俊琳
      關鍵詞:多路徑瓶頸隊列

      黃俊琳,雷 凱,汪 漪

      (1.北京大學深圳研究生院 互聯(lián)網(wǎng)研發(fā)中心,廣東 深圳 518055;2.南方科技大學,廣東 深圳 518055)

      0 引 言

      命名數(shù)據(jù)網(wǎng)絡(named data networking, NDN)[1]關注于內(nèi)容分發(fā)和獲取,是信息中心網(wǎng)絡(information centric networking, ICN)[2]的一個被廣泛關注的體系構架[3]。

      無論是傳統(tǒng)的TCP/IP網(wǎng)絡還是命名數(shù)據(jù)網(wǎng)絡,擁塞都是不可避免的。網(wǎng)絡擁塞的發(fā)生,根源在于用戶對網(wǎng)絡資源的需求大于網(wǎng)絡自身所能提供的能力。并且擁塞發(fā)生一般會直接導致網(wǎng)絡出現(xiàn)數(shù)據(jù)包丟失、傳輸時延增加、網(wǎng)絡吞吐量下降等現(xiàn)象,如果沒有有效的擁塞控制方法進行調(diào)控,嚴重的時候甚至會導致網(wǎng)絡崩潰。為了提高網(wǎng)絡傳輸?shù)男阅?,需要使用擁塞控制算法來解決有限的網(wǎng)絡資源的分配問題。在不同的場景下,擁塞控制的優(yōu)化目標存在不同,現(xiàn)有的NDN擁塞控制算法大多都將提高鏈路吞吐量作為主要的優(yōu)化目標,但是,隨著5G無線通信技術的快速發(fā)展以及自動駕駛、虛擬現(xiàn)實、增強現(xiàn)實和直播等技術與應用的出現(xiàn),如何在高通量的網(wǎng)絡下充分利用帶寬以及保障低延時傳輸成為傳輸控制的一個新目標。傳統(tǒng)的加性增乘性減(additive increase multiplicative decrease,AIMD)的窗口調(diào)節(jié)思想不再適用于高速網(wǎng)絡,保守的線性增加和激進的乘法減小窗口的方法使得鏈路帶寬利用率很低,抑制了NDN在高通量網(wǎng)絡下的發(fā)展,有必要針對這一特定的場景研究相應的NDN擁塞控制算法。

      要設計出適合NDN的擁塞控制算法,必須充分考慮NDN在數(shù)據(jù)傳輸上的新的特性[4]。

      1)數(shù)據(jù)傳輸由接收端驅(qū)動。消費者通過向網(wǎng)絡發(fā)送Interest包去請求內(nèi)容,中間節(jié)點通過內(nèi)容緩存(content store, CS)、待處理請求表(pending interest table, PIT)以及轉發(fā)信息表(forwarding information base, FIB)對Interest進行處理和轉發(fā),最后由擁有所請求數(shù)據(jù)的節(jié)點返回對應的Data包。接收端驅(qū)動的傳輸模式,是在接收端實現(xiàn)流量控制以及擁塞控制的基礎。

      2)Interest包和Data包之間是一一對應的關系。一個Interest包只能取回一個Data包,并且對應的Data包沿著Interest包到達的路徑原路返回。這種關系是在NDN中實現(xiàn)逐跳流平衡的基礎。

      3)多數(shù)據(jù)源。NDN的傳輸是無連接的,并且內(nèi)容可以緩存在網(wǎng)絡的內(nèi)部,因此,消費者能夠從不同的內(nèi)容源(生產(chǎn)者或者緩存了對應內(nèi)容的中間節(jié)點)獲取數(shù)據(jù)。

      4)多路徑傳輸。NDN的架構天然支持多路徑轉發(fā)。在NDN中,路由節(jié)點能夠通過Interest包中的內(nèi)容名和隨機數(shù)識別并丟棄發(fā)生環(huán)回的包,同時,因為Data包是沿著Interest包傳輸?shù)脑窂椒祷氐?,所以,NDN中不會出現(xiàn)Data包環(huán)回的現(xiàn)象。而傳統(tǒng)的TCP/IP網(wǎng)絡通常使用確定的最優(yōu)路徑來傳輸以防止數(shù)據(jù)包發(fā)生環(huán)回,這使得TCP中的多路徑是基于固定的路徑。因為NDN的路由和轉發(fā)是相互分離的,路由節(jié)點能夠根據(jù)數(shù)據(jù)面的表現(xiàn)來進行多路徑轉發(fā),所以能實現(xiàn)比TCP/IP更靈活的多路徑傳輸。

      盡管NDN在傳輸模式上與TCP/IP存在區(qū)別,但是2種架構下?lián)砣刂频谋举|(zhì)都是對有限的網(wǎng)絡資源進行調(diào)度以提高網(wǎng)絡的傳輸性能,關注的2個基本問題都是如何預防擁塞的發(fā)生以及如何快速感知和響應擁塞。在實現(xiàn)上兩者都是基于反饋信息進行的閉環(huán)控制,并且端節(jié)點以及中間路由節(jié)點都是擁塞控制的參與者,例如,兩者都可以使用基于窗口的端到端的速率調(diào)節(jié)方法、中間節(jié)點都可以通過隊列管理參與到擁塞控制中。這些共性使得TCP的擁塞控制算法能夠被引入到NDN中,但是需要針對NDN的特性對算法進行調(diào)整。

      關注于如何在有一定的丟包率的網(wǎng)絡鏈路上充分利用帶寬以及如何降低網(wǎng)絡鏈路上緩存的占用率、減小傳輸延遲這2個問題,本文分析了基于丟包的NDN擁塞控制方法的不足之處,在基于窗口的端到端擁塞控制算法的基礎上,借鑒谷歌最新提出的TCP擁塞控制思想[5],提出基于瓶頸帶寬以及往返時延(bottleneck bandwidth and round-trip time,BBR)的NDN擁塞控制算法,并在ndnSIM實現(xiàn)了所提出的基于BBR的NDN擁塞控制算法。通過已有的ICP(interest control protocol)[6]擁塞控制算法進行對比,驗證了所提出的算法的性能。

      1 相關研究

      TCP擁塞控制的成果為NDN擁塞控制的研究提供了不少的思路?,F(xiàn)有的很多的NDN擁塞控制算法都還使用TCP的基于丟包或者基于時延的思路。TCP中的AIMD的窗口調(diào)節(jié)機制也在NDN得到廣泛的應用。但是,NDN和TCP在數(shù)據(jù)傳輸模式的差異決定了兩者在擁塞控制的具體方法上必然存在差異。

      Carofiglio等[6]提出的ICP擁塞控制算法是一種接收端驅(qū)動的,基于窗口的端到端Interest包控制協(xié)議,窗口調(diào)節(jié)遵循AIMD的原則。這種方法對擁塞的判斷是基于丟包的,即根據(jù)超時重傳閾值(retransmission timeout, RTO)來判斷包傳輸是否發(fā)生超時,以確定是否發(fā)生擁塞。ITCP(information centric transport protocol)[7]是一個與ICP類似的基于窗口的接收端驅(qū)動的傳輸協(xié)議,實現(xiàn)了與TCP相類似的慢啟動、擁塞避免、快重傳以及快恢復的機制。以上2個NDN擁塞控制算法是針對單數(shù)據(jù)源的場景的,沒有考慮到NDN能進行靈活的多路徑傳輸?shù)奶攸c。Saino[8]提出了一種維護多個擁塞窗口以及RTO值的NDN擁塞控制算法,以適應NDN多數(shù)據(jù)源的特點。Carofiglio[9]提出了一個多路徑擁塞控制(remote adaptive active queue management,RAAQM)算法,該方法為每條路徑設置一個RTO計時器用于判斷超時丟包,不同路徑的區(qū)分依賴于每個節(jié)點為返回的Data包附加的節(jié)點標識符。

      雖然基于丟包的擁塞控制機制在NDN中仍被廣泛使用,但是它有2個明顯的缺點。

      1)基于丟包的擁塞控制算法通過監(jiān)控數(shù)據(jù)包是否發(fā)生超時來判斷是否發(fā)生丟包以及擁塞,因此,不能區(qū)分擁塞引起的丟包和傳輸錯誤引起的丟包。如果丟包是由傳輸錯誤引起的,基于丟包的擁塞控制算法所采取的“乘性減小”窗口調(diào)節(jié)方法將帶來不必要的傳輸窗口的大幅度減小,從而降低了網(wǎng)絡帶寬的利用率。

      2)中間節(jié)點的緩存隊列可用于吸收網(wǎng)絡中數(shù)據(jù)流量的波動,減少丟包的發(fā)生。消費者采用基于丟包的擁塞控制算法時,受限于擁塞感知的方法和時機,為了能夠充分探測網(wǎng)絡的可用帶寬,會向網(wǎng)絡注入過量的數(shù)據(jù)請求包。這導致了中間節(jié)點的緩存空間的高占用率,增加了數(shù)據(jù)包在網(wǎng)絡中的排隊時延。除此之外,緩存隊列過滿的現(xiàn)象,降低了節(jié)點應對突發(fā)流量的能力,在共享該節(jié)點進行轉發(fā)的數(shù)據(jù)流突然增多時,緩存會被迅速填滿而發(fā)生丟包。因此,基于丟包的擁塞控制機制雖然能夠保證網(wǎng)絡以瓶頸帶寬進行數(shù)據(jù)傳輸,但是卻是以高時延以及頻繁丟包為代價的。

      因為基于丟包的擁塞感知方式存在滯后性并且會導致中間節(jié)點的緩存隊列過滿,所以一些已有的研究工作對擁塞感知方式進行改進。Schneider[10]提出一種路由器通過包排隊時間以及局部丟包檢測來發(fā)現(xiàn)擁塞、通過顯式標記包來通知請求端網(wǎng)絡發(fā)生擁塞、請求端在收到擁塞的信號后調(diào)節(jié)各個接口的轉發(fā)比而將原來的擁塞路徑的流量分攤到其他路徑的多路徑NDN擁塞控制算法。Rozhnova[11]提出了一種逐跳控制的Interest包速率控制算法。該算法根據(jù)隊列占用情況和可用資源調(diào)整Interest的轉發(fā)速率,當中間節(jié)點由于擁塞無法向上游轉發(fā)Interest時,會通過NACK通知下游的節(jié)點。此外,該算法還會對轉發(fā)接口進行標記以及排序以進行多路徑適應性轉發(fā)。

      2 算法設計

      2.1 算法整體設計思路

      如果不考慮中間節(jié)點的內(nèi)容緩存以及多路徑傳輸?shù)挠绊?,NDN的數(shù)據(jù)傳輸過程中往返時延(round-trip time,RTT)、傳輸速率與等待接收的Data包的數(shù)據(jù)量的關系模型與Leonard Kleinrock提出的模型是基本相符的,本文基于此模型分析NDN中擁塞控制的最佳工作點。

      往返時延、傳輸速率與已發(fā)送但未確認的包數(shù)的關系如圖1所示,基于丟包的擁塞控制機制使得整個網(wǎng)絡傾向于工作在帶寬限制區(qū)域最右側的點,雖然實現(xiàn)了以瓶頸帶寬進行數(shù)據(jù)傳輸,但是緩存空間占用率過高,導致用戶經(jīng)歷較長的傳輸延遲以及頻繁丟包。

      在Leonard Kleinrock提出的模型中,使網(wǎng)絡工作在帶寬限制區(qū)域最左側的點要優(yōu)于帶寬限制區(qū)域最右側的點。網(wǎng)絡工作在Kleinrock最優(yōu)工作點能夠?qū)崿F(xiàn)最大的傳輸速率以及最小的傳輸時延。

      基于丟包的NDN擁塞控制方法僅依據(jù)返回的Data包以及計算得到的往返時延來判斷網(wǎng)絡的擁塞狀態(tài)。然而,僅憑這2個信息無法量化網(wǎng)絡當前的可用帶寬。為了能夠充分利用網(wǎng)絡的可用帶寬,消費者只能不斷地去增加傳輸?shù)乃俾手钡桨l(fā)生超時丟包。本文從谷歌提出的TCP擁塞控制算法[5]受到啟發(fā),在所提出的算法中使用即時帶寬以及往返時延這2個量來量化可用帶寬以及描述網(wǎng)絡的狀態(tài),從而實現(xiàn)更準確的控制和調(diào)節(jié),避免接收端為了充分探測可用帶寬而向網(wǎng)絡注入過量的請求包。同時,因為擁塞不是丟包發(fā)生的唯一的原因,傳輸錯誤也是導致數(shù)據(jù)包丟失的一個因素。所以,在無法區(qū)分這2種丟包的情況下,使用丟包事件作為擁塞的標志顯然是不合理的,本算法不再以丟包作為擁塞的標記,而更加關注于網(wǎng)絡的瓶頸帶寬、物理鏈路延遲以及由這兩者決定的傳輸鏈路的容量。

      基于BBR的NDN擁塞控制算法,核心是讓網(wǎng)絡工作在Kleinrock最優(yōu)工作點的附近,控制用戶注入網(wǎng)絡的流量,使之匹配網(wǎng)絡鏈路的承載能力,在確保數(shù)據(jù)以最大的速率傳輸?shù)耐瑫r最小化中間節(jié)點的隊列長度,從而最小化傳輸?shù)耐禃r延。因為NDN中數(shù)據(jù)傳輸是由接收端驅(qū)動,并且一個Interest包最多只能取回一個Data包,所以,基于BBR的NDN擁塞控制算法通過在接收端控制Interest包的發(fā)送速率以及最大發(fā)送窗口來控制注入網(wǎng)絡中數(shù)據(jù)流量。這2個參數(shù)的計算依賴于估計得到的瓶頸帶寬、物理鏈路延遲的值以及由當前傳輸所處的狀態(tài)決定的速率增益、窗口增益。整體設計思路如圖2所示。

      實現(xiàn)讓網(wǎng)絡工作在Kleinrock最優(yōu)工作點,關鍵在于如何確定鏈路瓶頸帶寬以及物理鏈路延遲。然而,瓶頸帶寬和物理鏈路延遲是無法同時測量的。要測量瓶頸帶寬,就必須保證網(wǎng)絡鏈路帶寬被充分利用,中間節(jié)點的緩存空間中存在一定數(shù)量的數(shù)據(jù)包,此時,由于排隊時延的存在,傳輸往返時延偏大;要測量物理鏈路延遲,就必須保證中間節(jié)點的緩存空間無隊列,此時,網(wǎng)絡中的流量不足以占滿鏈路帶寬,測得即時帶寬偏小。

      由于瓶頸帶寬和物理鏈路延遲無法被同時測量,算法采用分時測量的方法,在應用限制區(qū)域測量物理鏈路延遲的值,在帶寬限制區(qū)域測量瓶頸帶寬的值。圖1中,在傳輸?shù)倪^程中,瓶頸帶寬是即時帶寬的最大值,物理鏈路延遲是往返時延的最小值,所以,本算法使用一個固定時間窗口內(nèi)的即時帶寬的最大值和往返時延的最小值作為它們的估計值。

      2.2 狀態(tài)設置

      針對數(shù)據(jù)傳輸在不同的階段的特點,本算法設置了4個不同的狀態(tài),狀態(tài)之間的轉換由網(wǎng)絡反饋的信息進行控制,以此來實現(xiàn)自主的調(diào)速機制——主動調(diào)節(jié)窗口以及周期性地去探測是否有更多的可用帶寬等功能。這4個狀態(tài)分別是快速探索瓶頸帶寬(啟動狀態(tài))、消耗中間節(jié)點長隊列的低速發(fā)送(消耗隊列狀態(tài))、周期性探測可用帶寬的穩(wěn)定(周期探測狀態(tài))、維持低發(fā)送窗口以確定最小往返時延(時延更新狀態(tài)),狀態(tài)轉移圖如圖3所示。

      圖3 算法狀態(tài)轉移示意圖Fig.3 State transition diagram of the algorithm

      啟動狀態(tài)是傳輸?shù)某跏紶顟B(tài),類似于TCP擁塞控制中的“慢啟動”階段,目的是在一個較短的時間內(nèi)使數(shù)據(jù)充滿傳輸鏈路以探測到瓶頸帶寬。在該狀態(tài)下,通過查找所測量的瓶頸帶寬的平臺期來確定傳輸鏈路是否被充滿:如果連續(xù)在3個RTT周期內(nèi)所測量的最大即時帶寬只有很小的增長,可以認為已經(jīng)到達平臺期,將此時的即時帶寬值視為瓶頸帶寬。因為是在一個時間窗口內(nèi)確定傳輸速率是否達到瓶頸帶寬的,所以在探測到瓶頸帶寬后會形成一個較長的隊列。

      隊列消耗狀態(tài)緊跟在啟動狀態(tài)之后,目的是消除在探測瓶頸帶寬的過程中所形成的長隊列,使傳輸往返時延降低到接近物理鏈路延遲,確保網(wǎng)絡能夠穩(wěn)定在Kleinrock最佳工作點附近。當請求的數(shù)據(jù)量小于或者等于網(wǎng)絡鏈路帶寬時延積時,中間節(jié)點緩存的隊列被完全消耗,且傳輸鏈路保持充滿,接收端將從隊列消耗狀態(tài)切換到周期探測狀態(tài)。

      周期探測是一個穩(wěn)定狀態(tài),傳輸過程中絕大部分時間會處于這個狀態(tài)。在進入周期探測狀態(tài)時,算法已經(jīng)確定了當前的瓶頸帶寬以及物理鏈路延遲,并以此來控制Interest包的發(fā)送速率以及窗口。此外,周期探測狀態(tài)下除了進行穩(wěn)定的傳輸之外,還有一個重要功能是周期性地去探測是否有更多的可用帶寬。

      為了實現(xiàn)主動探測,本算法使用了一個簡單的序列探測機制。在每一個探測周期進行一次主動探測,每一個周期分為8個階段,每個階段持續(xù)的時間為測量得到的最小往返時延。階段之間的最主要的區(qū)別是速率增益可能會不同。8個階段分別對應于下面8個速率增益:a,2-a,1,1,1,1,1,1,其中,a為常數(shù)。整個探測周期的平均增益約為1,從而使得一個周期內(nèi)的平均發(fā)送速率約等于可用帶寬,實現(xiàn)高帶寬利用率的情況下維持一個短的隊列。a的取值不能過大或過小,a取值過大時,穩(wěn)定探測階段的往返時延的波動幅度會較大;a取值過小時,探測可用帶寬的時間會較長,本文在使用不同的a進行實驗后選取a=1.25。

      在周期探測狀態(tài)下,狀態(tài)機不會主動向其他狀態(tài)轉移,但這不意味著狀態(tài)機停留在周期探測狀態(tài)直到傳輸結束。在非時延更新狀態(tài)下,狀態(tài)機內(nèi)部會對估計的物理鏈路延遲進行監(jiān)視。狀態(tài)機發(fā)現(xiàn)該值長期沒有被更新時,會切換到時延更新狀態(tài)。在該狀態(tài)下,接收端使用一個小速率增益去消耗中間節(jié)點的緩存隊列,直到Interest包的發(fā)送窗口被限制在一個較小的值,并保持一段時間,確保探測到當前的物理鏈路延遲的準確值。

      3 實驗評測

      本文在基于NS-3的NDN通用仿真平臺ndnSIM[12]中實現(xiàn)了所提出的基于瓶頸帶寬和往返時延的NDN擁塞控制方法,并使用不同的拓撲對該算法進行評估,并與ICP擁塞控制算法進行對比,評價所使用的指標主要有以下4點。

      1)網(wǎng)絡吞吐量。網(wǎng)絡吞吐量是指網(wǎng)絡在單位時間內(nèi)成功傳輸?shù)臄?shù)據(jù)的數(shù)量,是對網(wǎng)絡鏈路帶寬利用的一個重要的指標。一個好的擁塞控制算法能夠在最大化吞吐量的同時使傳輸時延最小化。

      2)傳輸時延。傳輸時延是指從Interest包進入網(wǎng)絡到對應的Data包返回到接收端之間的時間間隔,一般由物理鏈路延遲、數(shù)據(jù)包在中間節(jié)點進行處理(路由和轉發(fā))產(chǎn)生的時延以及在中間節(jié)點排隊所產(chǎn)生的時延組成。其中,數(shù)據(jù)包在中間節(jié)點緩存中的排隊時延對傳輸時延的影響最為明顯。

      3)路由節(jié)點隊列長度。路由節(jié)點隊列長度決定數(shù)據(jù)包在中間節(jié)點的排隊時間。

      4)收斂時間。收斂時間指的是瓶頸帶寬鏈路的吞吐量收斂到瓶頸帶寬所需要的時間,這一指標能夠反映出高帶寬網(wǎng)絡下的小數(shù)據(jù)量傳輸?shù)膸捓眯省?/p>

      3.1 BBR-NDN算法與ICP-NDN算法的對比

      實驗的基本設置如下。

      1)實驗拓撲以及鏈路參數(shù)如圖4所示,圖4a中,消費者Ci向生產(chǎn)者Pi請求數(shù)據(jù),形成4條數(shù)據(jù)流。選取2條流用于模擬背景流量。在模擬背景流量時,C4以每秒800個Interest包的速率請求數(shù)據(jù),持續(xù)150 s;C3以每秒500個Interest包的速率請求數(shù)據(jù),并且在100 s后停止請求,模擬變化的背景流量;

      圖4 網(wǎng)絡拓撲Fig.4 Network topology

      2)Interest包的大小固定為37 Byte,Data包的大小固定為1 024 Byte;

      3)網(wǎng)絡中間節(jié)點不設置內(nèi)容緩存。

      實驗結果如圖5和圖6所示。使用本算法,總流量迅速收斂到瓶頸帶寬,并且往返時延穩(wěn)定在物理鏈路延遲附近,表明傳輸基本收斂到Kleinrock最優(yōu)工作點附近。

      圖5 存在背景流量場景下BBR-NDN與ICP-NDN吞吐量對比Fig.5 Comparison of throughputs between BBR-NDN and ICP-NDN under scenery with background traffic

      圖5表明,采用本算法,瓶頸鏈路的吞吐量收斂到瓶頸帶寬所用的時間要明顯小于ICP算法。并且在公平分享瓶頸帶寬上,使用本算法時,數(shù)據(jù)流1和數(shù)據(jù)流2對應的曲線基本上是重合的,而使用ICP算法時,數(shù)據(jù)流1和數(shù)據(jù)流2在Data包的接收速率上差別明顯,尤其是在背景流量突然減小(100 s時,模擬背景流量的其中一條數(shù)據(jù)流突然停止請求數(shù)據(jù)),重新分配帶寬時,不公平性進一步加劇,在圖5中表現(xiàn)為數(shù)據(jù)流2的傳輸速率約為數(shù)據(jù)流1的2倍,差距進一步被拉大。

      圖6表明,本算法的傳輸往返時延一直很好地被穩(wěn)定在稍高于理想往返時延處;使用ICP算法時,由于瓶頸鏈路的緩存長期處于高占用率的狀態(tài),傳輸往返時延明顯大于理想往返時延。因此,基于BBR的NDN擁塞控制算法在保障低時延傳輸上明顯優(yōu)于ICP算法。它克服了基于丟包的擁塞控制算法為了充分利用瓶頸帶寬而過度占用緩存、傳輸時延較長的缺點。

      圖6 存在背景流量場景下BBR-NDN與ICP-NDN傳輸往返時延與隊列長度對比Fig.6 Comparison of round-trip time and queue length between BBR-NDN and ICP-NDN under scenery with background traffic

      更換其他往返時延重復實驗,算法的吞吐量以及往返時延的變化曲線的形狀沒有很大的變化,所以不再一一繪制其他曲線,只將結果展示在表1中。

      表1表明,使用本算法時,實際往返時延與理想往返時延的比值都只稍大于1。ICP算法在充分利用帶寬的同時對低時延的保障能力明顯不如本算法。

      基于BBR的NDN擁塞控制算法在高帶寬下瓶頸鏈路吞吐量收斂到瓶頸帶寬所需的時間較短,且基本不隨往返時延的變化而變化,而ICP算法在同樣條件下的收斂時間則隨著往返時延的增大而明顯增大,并且都大于本算法。這個結果表明,基于BBR的NDN擁塞控制算法在快速收斂到瓶頸帶寬上明顯優(yōu)于ICP算法。

      表1 BBR-NDN與ICP-NDN在平均往返時延以及收斂時間上對比結果Tab.1 Comparison of average round-trip time and convergence time between BBR-NDN and ICP-NDN

      3.2 多瓶頸鏈路實驗

      多瓶頸鏈路實驗基本設置如下。

      1)實驗拓撲以及鏈路參數(shù)如圖4b所示,4條數(shù)據(jù)流的往返時延分別為240 ms,250 ms,250 ms,260 ms;

      2)Interest包的大小固定為37 Byte,Data包的大小固定為1 024 Byte;

      3)網(wǎng)絡中間節(jié)點不設置內(nèi)容緩存。

      多瓶頸鏈路拓撲下的實驗結果如圖7所示。盡管網(wǎng)絡中的數(shù)據(jù)流的往返時延存在差異,但是本算法仍能保證瓶頸鏈路的吞吐量能夠快速收斂到瓶頸帶寬,往返時延也能夠穩(wěn)定在稍高于理想往返時延附近。并且,在共享瓶頸鏈路帶寬時,各流的傳輸速率在一定的范圍內(nèi)波動,但在平均傳輸速率上,流與流之間是基本公平的傳輸?shù)?。因此,在增加網(wǎng)絡拓撲復雜度以及瓶頸鏈路的數(shù)量時,本算法仍能使數(shù)據(jù)流快速收斂到公平地共享帶寬的狀態(tài),并能保障低時延傳輸。

      4 總 結

      基于BBR的NDN擁塞控制算法的核心策略是保證注入網(wǎng)絡的流量在速率和總量上面能夠匹配傳輸鏈路的能力。算法通過在接收端使用瓶頸帶寬以及物理傳輸延遲這2個參數(shù)來描述傳輸鏈路的性能,形成以即時帶寬和往返時延作為反饋信息的閉環(huán)控制方式,在不同狀態(tài)下匹配不同的速率增益以及窗口增益,用計算得到的數(shù)據(jù)傳輸速率以及發(fā)送窗口來控制Interest包的發(fā)送速率,從而控制返回的Data包的速率,實現(xiàn)在充分利用網(wǎng)絡鏈路帶寬的同時保障低時延傳輸。

      本算法和和傳統(tǒng)的基于丟包的NDN擁塞控制算法相比有以下特點。首先,與傳統(tǒng)的基于丟包的擁塞控制算法的由丟包事件觸發(fā)的被動擁塞控制不同,本算法傾向于主動地發(fā)現(xiàn)擁塞以及可用帶寬;其次,擁塞控制的反饋環(huán)傳遞的信息由即時帶寬以及往返時延組成,采用窗口和速率雙重控制的方式,兩者相互協(xié)調(diào),前者控制消費者注入網(wǎng)絡的數(shù)據(jù)總量,后者控制信息流注入網(wǎng)絡的速率;此外,本算法根據(jù)估算的發(fā)送速率以及所請求內(nèi)容的大小來確定Interest包之間的發(fā)送間隔,實現(xiàn)了平滑的數(shù)據(jù)傳輸,減少了網(wǎng)絡中的突發(fā)流量;最后,在不考慮網(wǎng)絡內(nèi)緩存以及多路徑傳輸?shù)那闆r下,本算法能使網(wǎng)絡收斂到Kleinrock模型的最優(yōu)工作點附近,該工作點能保證網(wǎng)絡以瓶頸帶寬進行傳輸?shù)耐瑫r,減小中間路由節(jié)點的隊列長度以及數(shù)據(jù)包所經(jīng)歷的傳輸時延。

      圖7 BBR-NDN在多瓶頸鏈路拓撲下的傳輸性能Fig.7 Transmission performance of BBR-NDN under multi-bottleneck link topology

      本算法是在接收端實現(xiàn)的,沒有引入中間節(jié)點的控制,然而中間節(jié)點位于網(wǎng)絡內(nèi)部,離擁塞的位置更近,能夠更快地感知擁塞的存在以及預見擁塞的發(fā)生,對擁塞的調(diào)控更為迅速。同時,NDN在架構能夠很好地支持逐跳的控制方式。因此,在當前的擁塞控制算法中引入逐跳控制和多路徑轉發(fā),實現(xiàn)快速反饋以及將擁塞鏈路的流量分流到其他可用的路徑上,是一個值的深入研究的地方。

      由于路由器對Data包的緩存以及多路徑傳輸?shù)拇嬖?,端主機測量的往返時延存在多樣性,難以被準確地估計[13]。由于依賴于測量的往返時延來估計鏈路的物理鏈路延遲,所以考慮緩存以及多路徑傳輸?shù)那闆r下,本算法在估計物理鏈路延遲的值時會存在較大的誤差。因此,針對緩存以及多路徑傳輸?shù)奶匦詫λ惴ㄟM行優(yōu)化也是未來的一個研究點。

      [1] ZHANG L,AFANASYEV A,BURKE J,et al.Named data networking[J].SIGCOMM Comput Commun Rev, 2014, 44(3): 66-73

      [2] XYLOMENOS G,VERVERIDIS C,SIRIS V,et al.A Survey of Information-Centric Networking Research[J].IEEE Communications Surveys & Tutorials,2014, 16(2):1024-1049.

      [3] KATO T, BANDAI M.Congestion control avoiding excessive rate reduction in named data network[C]//Consumer Communications & NETWORKING Conference.New York:IEEE Press, 2017:108-113.

      [4] REN Y,LI J,SHI S, et al.Congestion control in named data networking-A survey[J]. Computer Communications, 2016(86):1-11.

      [5] CARDWELL N,CHENG Y,GUNN C S, et al.BBR: Congestion-Based Congestion Control[J].Queue,2016, 14(5): 20-53.

      [6] CAROFIGLIO G, GALLO M, MUSCARIELLO L.ICP: Design and evaluation of an Interest control protocol for content-centric networking[C]//Computer Communications Workshops. New York:IEEE Press, 2012:304-309.

      [7] SALSANO S, DETTI A, CANCELLIERI M,et al.Transport-layer issues in information centric networks[C]//Edition of the Icn Workshop on Information-Centric NETWORKING.New York:ACM, 2012:19-24.

      [8] SAINO L,COCORA C,PAVLOU G.CCTCP: A scalable receiver-driven congestion control protocol for content centric networking[C]//IEEE International Conference on Communications. New York:IEEE Press, 2013:3775-3780.

      [9] CAROFIGLIO G,GALLO M,MUSCARIELLO L, et al.Multipath congestion control in content-centric networks[C]//Computer Communications Workshops. New York:IEEE Press, 2013:363-368.

      [10] SCHNEIDER K,YI C,ZHANG B, et al.A Practical Congestion Control Scheme for Named Data Networking[C]//ACM Conference on Information-Centric NET WORKING. New York:ACM, 2016:21-30.

      [11] ROZHNOVA N,FDIDA S.An extended Hop-by-hop interest shaping mechanism for content-centric networking[C]//Global Communications Conference.New York:IEEE Press, 2014.

      [12] MASTORAKIS S, AFANASYEV A,MOISEENKO I,et al.ndnSIM 2: An updated NDN simulator for NS-3, NDN. [EB/OL]. (2016-11-11)[2017-09-22].http://ndnsim.net/2.4/.

      [13] LEI K, HOU C, LI L,et al.A RCP-Based Congestion Control Protocol in Named Data Networking[C]//International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery. New York:IEEE Press, 2015:538-541.

      (編輯:王敏琦)

      猜你喜歡
      多路徑瓶頸隊列
      多路徑效應對GPS多普勒測速的影響
      隊列里的小秘密
      基于多隊列切換的SDN擁塞控制*
      軟件(2020年3期)2020-04-20 00:58:44
      基于5.8G射頻的多路徑識別技術應用探討
      在隊列里
      豐田加速駛入自動駕駛隊列
      突破霧霾治理的瓶頸
      突破瓶頸 實現(xiàn)多贏
      基于5.8GHz多路徑精確識別方案研究
      如何渡過初創(chuàng)瓶頸期
      和顺县| 鹤庆县| 墨竹工卡县| 天水市| 云林县| 宜良县| 濉溪县| 诸城市| 阿勒泰市| 象山县| 大渡口区| 盘山县| 蓬莱市| 改则县| 高雄市| 新绛县| 肥西县| 虞城县| 确山县| 安岳县| 雷波县| 陕西省| 托克托县| 乡宁县| 灵石县| 吉首市| 津市市| 靖西县| 巨野县| 乳山市| 晋江市| 龙游县| 财经| 邳州市| 韩城市| 蒙自县| 衢州市| 天祝| 商洛市| 武乡县| 信阳市|