李 寧,衷璐潔,高 楷
(1.首都師范大學信息工程學院,北京 100048;2.北京郵電大學網(wǎng)絡技術研究院,北京 100876)
隨著移動互聯(lián)網(wǎng)與通信技術的快速發(fā)展,5G 網(wǎng)絡、移動車載網(wǎng)絡中的新型業(yè)務需求對網(wǎng)絡傳輸速率及帶寬提出了更高要求[1]。為保證移動設備的連接性能,通常為其配置多個接口,以降低運行成本、簡化網(wǎng)絡管理并提供良好的用戶體驗。多路徑傳輸控制協(xié)議(Multi-Path Transmission Control Protocol,MPTCP)使用多路徑發(fā)送數(shù)據(jù)包,可滿足實時性、交互性與個性化的業(yè)務需求。因此,MPTCP 成為未來互聯(lián)網(wǎng)數(shù)據(jù)傳輸?shù)陌l(fā)展趨勢之一[2],但是通過多路徑傳輸來提高網(wǎng)絡性能仍存在諸多挑戰(zhàn)。例如,在有限的接收緩沖區(qū)和異構網(wǎng)絡環(huán)境中,由于網(wǎng)絡性能不穩(wěn)定以及傳輸路徑性能差異較大等因素容易造成接收端亂序,從而引發(fā)緩沖區(qū)阻塞問題,降低網(wǎng)絡多路徑的傳輸性能[3]。其中,具有代表性的場景有車載移動用戶與手機移動用戶通過接入各自的異構網(wǎng)絡訪問互聯(lián)網(wǎng)時,若不對存在路徑差異和無線網(wǎng)絡不可靠的情況進行管控,將會導致分組頻繁亂序及數(shù)據(jù)丟失,造成數(shù)據(jù)包重傳占用鏈路資源和接收端緩沖區(qū)阻塞等問題,嚴重影響服務質量與用戶體驗[4]。
本文綜合考慮異構網(wǎng)絡鏈路差異、子流性能評估以及多路徑帶寬負載均衡等問題,提出一種移動多路傳輸調度算法。該算法利用前向傳輸時間(Forward Transmission Time,F(xiàn)TT)實現(xiàn)子流傳輸性能的準確預測,并依據(jù)FTT 對數(shù)據(jù)包進行分發(fā),保障數(shù)據(jù)包到達緩沖區(qū)的時間趨近于最優(yōu)子流FTT,以提高多路徑帶寬利用率與數(shù)據(jù)傳輸效率。
MPTCP 由IETF 提出[5],其作為TCP 的擴展,目的是通過聚合多路徑帶寬來提高資源利用率及網(wǎng)絡吞吐量。數(shù)據(jù)調度算法是MPTCP 的重要組成部分,MPTCP數(shù)據(jù)調度對應用層數(shù)據(jù)流實施分段并在每個子流上進行數(shù)據(jù)傳輸,同時提供耦合擁塞控制以保障與正常TCP連接的公平性[6]。傳統(tǒng)的MPTCP 數(shù)據(jù)調度算法通常采用靜態(tài)和動態(tài)兩類方式。其中,靜態(tài)方式主要針對同構網(wǎng)絡環(huán)境,該類算法不考慮路徑的狀態(tài)特性,其是通過借助擁塞窗口對數(shù)據(jù)包進行分配。靜態(tài)方式的代表性算法有隨機調度和輪詢調度,輪詢調度(Round-Robin,RR)是一種廣泛應用于數(shù)據(jù)包分配[7]的算法,該算法對將要發(fā)送的數(shù)據(jù)段,從當前所有可用路徑中按子路徑從1~N的順序選取下一個有空余發(fā)送窗口的路徑作為本次調度的路徑選擇。靜態(tài)方式對于同構網(wǎng)絡的性能表現(xiàn)較優(yōu),但在異構網(wǎng)絡環(huán)境中其傳輸性能沒有單路徑傳輸更有優(yōu)勢。動態(tài)方式針對靜態(tài)調度策略的不足,將路徑特性納入考慮,且每次對路徑選擇時根據(jù)各路徑的傳輸特性優(yōu)先選擇傳輸質量較好的路徑進行數(shù)據(jù)傳輸[8]。其中,基于最小往返時延(Round-Trip Time,RTT)的調度算法LowRTT[9]優(yōu)先選擇傳輸延遲最小的路徑作為最佳路徑,且當最佳路徑的發(fā)送窗口為0 時,再選擇傳輸時延次小的路徑作為最佳路徑。與RR 算法相比,LowRTT 算法能夠更好地緩解數(shù)據(jù)包亂序問題,但由于每次僅選用一條子流進行數(shù)據(jù)傳輸,其未能充分利用多路徑并行傳輸?shù)膬?yōu)勢[10]。
灰色預測模型(Grey predicition Model,GM)是一種分析“部分信息已知,部分信息未知”不確定性系統(tǒng)問題的有效方法[11]。該模型通過累加生成方式產(chǎn)生新的數(shù)據(jù)序列,使用新產(chǎn)生的數(shù)據(jù)序列代替原始數(shù)據(jù)序列,并進一步應用微分方程求解完成新數(shù)據(jù)序列的預測。與目前主流的指數(shù)平滑、回歸分析、支持向量機及神經(jīng)網(wǎng)絡等預測方法相比,灰色預測模型具有無需統(tǒng)計大量樣本數(shù)據(jù)即可解決小樣本短序列建模問題的優(yōu)勢?;疑A測模型GM(1,N)是GM 的一種改進模型,該模型在保留小樣本數(shù)據(jù)預測特點的同時,增加了影響數(shù)據(jù)變化的其他因素數(shù)據(jù),可進一步提升灰色預測模型的精度[12]。
馬爾科夫模型對隨機變化的動態(tài)系統(tǒng)進行預測時,它將時間序列看作一個隨機過程,通過對事物不同狀態(tài)的初始概率與狀態(tài)之間的轉移概率進行深入研究,確定事物未來狀態(tài)的變化趨勢[13]。這種模型的實質是一種建立在“狀態(tài)”“狀態(tài)轉移”概念上的動態(tài)隨機數(shù)學模型,即通過研究對象的當前時刻狀態(tài)及狀態(tài)轉移概率來判斷研究對象下一時刻的所處狀態(tài)。
考慮到灰色模型的使用對象主要是預測時間短且波動性較小的系統(tǒng)對象,本文提出將灰色模型與馬爾科夫模型相結合的多路傳輸數(shù)據(jù)調度機制——灰色馬爾科夫多路傳輸調度(Grey-Markov Multi-path Transmission Scheduling,GMM-TS)。用灰色模型對數(shù)據(jù)進行擬合并找出變化趨勢,然后在此基礎上與馬爾科夫模型相融合,利用其具有對隨機過程提取概率分布規(guī)律的特點,進一步提升灰色預測模型對隨機波動較大數(shù)據(jù)序列的預測準確度。
在無線異構網(wǎng)絡中采用MPTCP 傳輸數(shù)據(jù)包時,不同類型的通信系統(tǒng)相融合需使用多條路徑,且傳輸過程的鏈路性能存在較大差異。傳輸性能差異將造成傳輸序列號(Transmission Sequence Number,TSN)較大的數(shù)據(jù)包先到達緩沖區(qū),從而引起數(shù)據(jù)包亂序問題[14],而接收端由于無法及時將緩沖區(qū)中的數(shù)據(jù)向上層應用傳輸而造成數(shù)據(jù)流傳輸時間的延長。
圖1 為異構子流的多路傳輸示例。假設子流1 的傳輸速率是子流2的3倍,TSN=1的數(shù)據(jù)包與TSN=2的數(shù)據(jù)包在同一時刻分別由子流1 和子流2 發(fā)送。當子流1 發(fā)送的TSN=1 的數(shù)據(jù)包到達接收端后提交至上層應用,繼續(xù)發(fā)送TSN=3 與TSN=4 的數(shù)據(jù)包,當TSN=3與TSN=4 的數(shù)據(jù)包到達接收端緩沖區(qū)后,暫存緩沖區(qū)并等待TSN=2 到達后按序交付應用層。在時間段T內提交到應用層的僅有TSN=1 數(shù)據(jù)包,且此時的有效吞吐量Q=1/T,而在順序傳輸?shù)那闆r下Q=3/T。與此同時,由于接收端緩沖區(qū)的限制,亂序數(shù)據(jù)包會引發(fā)接收端緩沖區(qū)阻塞,致使擁塞控制機制減緩發(fā)送速率,甚至停止發(fā)送[15]。若MPTCP 分發(fā)數(shù)據(jù)時僅考慮擁塞窗口和緩沖區(qū)大小,當發(fā)送窗口小于最大報文段MSS 時,則會造成接收緩沖區(qū)中存在大量數(shù)據(jù)包碎片。由于拼接數(shù)據(jù)包會占用額外的資源,因此會加重數(shù)據(jù)包亂序。
圖1 異構子流的多路傳輸示例Fig.1 Example of multi-path transmisson of heterogeneous substreams
為緩解無線異構網(wǎng)絡中因鏈路差異而造成的數(shù)據(jù)包亂序及緩沖區(qū)阻塞問題,本文提出一種基于灰色系統(tǒng)中離散數(shù)據(jù)預測的GM(1,N)預測模型與馬爾科夫優(yōu)化的自適應多路傳輸數(shù)據(jù)調度算法GMM-S。綜合考慮子流的丟包率、發(fā)送窗口大小及擁塞狀態(tài)對子流性能的影響,對未來時刻子流前向傳輸時延FTT 進行預測并進行相關路徑的性能評估,同時將其用作數(shù)據(jù)分發(fā)依據(jù),實現(xiàn)傳輸數(shù)據(jù)的多子流自適應動態(tài)調整。
考慮到MPTCP 的子流傳輸性能除了受到路徑吞吐量Q、傳輸時延T、丟包率L與發(fā)送窗口S等多種因素影響外[16],還會受到如終端與基站的距離等不確定因素的影響。為此,本文將MPTCP 子流傳輸性能的變化過程R建模為一個受多種因素影響的灰過程,具體如式(1)所示:
其中,Cf表示已知因素的影響部分,Uf表示未知因素的影響部分,Q,T,L,S分別表示吞吐量、傳輸時延、丟包率及發(fā)送窗口,α,β,γ,δ表示各確定因素相應的權重,xi表示影響R變化的未知因素,εi表示未知影響因素的權重,n為未知影響因素的個數(shù)。α,β,γ,δ值可通過建立GM(1,N)模型微分方程求得。
在無線異構網(wǎng)絡多路傳輸過程中,慢啟動階段子流的FTT 會呈現(xiàn)出幾何級增長趨勢,而在進入擁塞避免階段時FTT 則會大幅下降,當伴隨丟包現(xiàn)象的發(fā)生時,F(xiàn)TT 又將大幅上升[17]。一般而言,F(xiàn)TT 的時間序列呈現(xiàn)近似幾何級增長規(guī)律,同時在某些時刻存在較大波動?;诖耍疚奶岢鲞M一步引入馬爾科夫模型以揭示系統(tǒng)在不同狀態(tài)區(qū)間轉移的內在規(guī)律,并對灰色預測模型的殘差序列進行修正。
基于GM(1,N)的FTT 預測及馬爾科夫優(yōu)化多路數(shù)據(jù)傳輸調度方案主要由基于GM(1,N)預測與馬爾科夫優(yōu)化的子流性能評估模型以及數(shù)據(jù)分發(fā)調度2 個部分組成,具體構成如圖2 所示。其中,實線箭頭表示數(shù)據(jù)流,虛線箭頭表示信息流。在STPEM中首先獲取MPTCP 子流中的發(fā)送窗口、丟包率、吞吐量和前向傳輸時延數(shù)據(jù)4 組可直接獲取的已知影響因素,即選取N=4,建立GM(1,4)模型預測該子流下一時刻的FTT,之后在GM(1,4)預測基礎上實施馬爾科夫殘差修正,即根據(jù)FTT 預測值與實際值的相對誤差建立馬爾科夫殘差修正模型對GM(1,4)預測值進行修正,以完成對子流FTT 的預測,量化子流傳輸質量,且修正后的FTT 預測值越小表示該子流的傳輸性能越好。隨后,在DDS 部分根據(jù)FTT 預測值對子流進行分類,選取最短預測FTT 的子流為優(yōu)秀子流。在優(yōu)秀子流上根據(jù)擁塞窗口大小發(fā)送足夠多數(shù)量的數(shù)據(jù)包,而在普通子流上,則根據(jù)其與優(yōu)秀子流的預測FTT 時延差,實施傳輸數(shù)據(jù)包發(fā)送數(shù)量的動態(tài)調整。
圖2 GMM-S 數(shù)據(jù)調度方案Fig.2 GMM-S data scheduling scheme
2.2.1 GM(1,4)預測模型建立
本文選取子流發(fā)送窗口S、丟包率L、吞吐量Q和前向傳輸時延FTT 作為原始預測樣本數(shù)據(jù):
1)數(shù)據(jù)處理。令F={f1,f2,…,fn}表示MPTCP的子流集合,F(xiàn)TTf為子流f的前向時延,Sf為子流f的發(fā)送窗口,Lf為子流f的丟包率,Qf為子流f的吞吐量。假設當前為第t輪數(shù)據(jù)包發(fā)送,以子流f1為例,子流數(shù)據(jù)包前向傳輸時間FTTf1、發(fā)送窗口大小Sf1、子流丟包率Lf1與子流吞吐量Qf1分別如式(2)~式(5)所示:
將上述4 組數(shù)據(jù)作為原始樣本生成4 個數(shù)列,原始樣本數(shù)據(jù)矩陣X(0)為:
將X(0)通過一階累加運算來增強原始數(shù)列的規(guī)律性,弱化原始數(shù)據(jù)列的隨機性,得到更有規(guī)律的數(shù)據(jù)矩陣X(1):
將FTT 的一階累加矩陣FTT(1)進行緊鄰均值計算,生成緊鄰均值矩陣
2)模型建立。描述FTT 多元一階線性動態(tài)微分方程模型的灰微分方程如下所示:
其中,F(xiàn)TT(0)(k) 表示關鍵影響因素FTT 的原始數(shù)據(jù),稱為灰導數(shù)為FTT 一階累加數(shù)據(jù)的緊鄰均值,稱為背景值,a,bi(i=2,3,4)表示參數(shù),且可采用最小二乘法求出待定系數(shù)a和bi的值。
對于GM(1,4)的灰微分方程,若將X(1)(k)視為連續(xù)變量,則X(1)(k)為關于時間t的函數(shù),GM(1,4)的白化微分方程定義如下:
對式(10)進行求解,可得G M(1,4)的白化微分方程的時間響應函數(shù)如下所示
累減還原得序列FTT(0)的預測值:
基于GM(1,4)的FTT 預測算法描述如算法1 所示。其中,步驟1~步驟4 是對數(shù)據(jù)的收集與預處理,步驟5~步驟8 對預處理后的數(shù)據(jù)建立GM(1,4)模型并進行FTT 預測。
算法1基于GM(1,4)的FTT 預測
2.2.2 馬爾科夫殘差修正
表1 殘差狀態(tài)劃分結果Table 1 Residual state partition results
1)建立狀態(tài)轉移概率矩陣。由狀態(tài)Ei轉移到狀態(tài)Ej的次數(shù)為ni→j,以狀態(tài)Ei為起點轉向另一個狀態(tài)的次數(shù)為Ni,則狀態(tài)Ei轉移到狀態(tài)Ej的狀態(tài)轉移概率為:
根據(jù)式(14)構建狀態(tài)轉移概率矩陣P為:
2)計算預測值。建立狀態(tài)轉移概率矩陣P后,假設t時刻對象處于Ei狀態(tài),若P中的第i行滿足maxPi=pij,則認為下一時刻Ei最有可能轉移到Ej狀態(tài),并取Ej狀態(tài)區(qū)間[θj,θj+1]的中位數(shù)作為n+1 時刻的預測值。
對大國的不信任和防范是吳努政府的另一個基本心理,這是緬甸中立不結盟外交取向形成的重要原因。對于大國,吳努直言:他們都是為了自己的利益而不是其他人利益而行事的,所以不要讓緬甸成為他們的傀儡,也絕不能完全相信他們,把緬甸的命運交到他們手里。[86]1957年,緬甸副總理吳巴瑞、吳覺迎在北京與毛澤東的會談中,解釋說緬甸害怕大國“是十分自然的,因為從歷史上看大國總是欺侮小國。緬甸處在大國之間”。[87]
根據(jù)狀態(tài)轉移矩陣P對進行修正,并獲得最終預測值:
其中,Epmax表示在狀態(tài)轉移矩陣中,t時刻狀態(tài)Ei根據(jù)最大轉移概率maxPi轉移到狀態(tài)Ej的誤差區(qū)間步長。
算法2 給出了GM(1,4)FTT 預測值馬爾科夫修正算法的描述,其中步驟1 與步驟2 負責建立狀態(tài)轉移矩陣,步驟3~步驟7 通過狀態(tài)轉移矩陣修正灰色模型FTT 預測值,步驟8 對狀態(tài)轉移矩陣進行更新。
算法2GM(1,4)FTT 預測值馬爾科夫修正
2.2.3 基于FTTF′的數(shù)據(jù)包分發(fā)算法
為減少緩存阻塞帶來的負面影響,本文在子流上通過前向傳輸時延預測值評估該子流的性能,并動態(tài)設定傳輸數(shù)據(jù)量。根據(jù)GM-Markov 模型所求得的前向傳輸時延預測值FTT′對子流進行分類。將最小FTT′min的路徑選作優(yōu)秀子流,記作fi,其他子流標記為普通子流。對于優(yōu)秀子流fi,數(shù)據(jù)包分發(fā)方法[18]為:
其中,cwndi表示子流fi的擁塞窗口,C為發(fā)送緩沖區(qū)的待發(fā)送數(shù)據(jù)包。
為使數(shù)據(jù)包按序到達接收端,減小傳輸時間差異,則定義為普通子流并按下式發(fā)送數(shù)據(jù):
若Sj≤0,則該子流不傳輸數(shù)據(jù)。這樣的發(fā)送窗口大小動態(tài)調節(jié)方式,可使子流前向傳輸時延趨近于最優(yōu)子流前向時延,從而減小路徑間傳輸時延差異,解決由傳輸時延差異帶來的數(shù)據(jù)包亂序、緩存阻塞及傳輸性能下降等問題。
算法3 給出了GMM-S 數(shù)據(jù)包分發(fā)算法。其中,步驟1 先獲取FTT 預測值,步驟2~步驟5 實現(xiàn)在優(yōu)秀子流上發(fā)送數(shù)據(jù)包,步驟6~步驟13 實現(xiàn)在普通子流上數(shù)據(jù)包的發(fā)送。
算法3GMM-S 數(shù)據(jù)包分發(fā)
仿真實驗環(huán)境基于Ubuntu16.04,64 位操作系統(tǒng),使用NS 工具建立網(wǎng)絡拓撲,NS 版本為3.29 并添加了MPTCP 模塊[19]。網(wǎng)絡測試拓撲如圖3 所示。
圖3 異構無線網(wǎng)絡測試拓撲Fig.3 Heterogeneous wireless network test topology
為模擬真實無線環(huán)境,在每條路徑上設置分組丟失模型來模擬分布式分組丟失。路徑A 使用LTE蜂窩網(wǎng)絡,設置4 Mb/s 的接入帶寬??紤]到LTE 在大范圍內相對穩(wěn)定[20],丟包率設置為固定值0.01。路徑B 使用公共WiFi 網(wǎng)絡,設置10 Mb/s 的接入帶寬,路徑丟包率設置為0~1.0。無線異構網(wǎng)絡拓撲的具體參數(shù)配置如表2 所示。實驗在NS-3.29 仿真平臺下,以傳輸數(shù)據(jù)量、重傳次數(shù)、亂序塊大小/個數(shù)與吞吐量等參數(shù)作為主要指標,同時選取RR 算法及LowRTT 算法作為傳輸性能的比較對象。
表2 異構無線網(wǎng)絡拓撲的參數(shù)配置Table 2 Parameter configuration of heterogeneous wireless network topology
表3 給出了GMM-S、RR 及LowRTT 三種調度算法的傳輸時間、傳輸數(shù)據(jù)總量、傳輸次數(shù)、重傳次數(shù)、重傳占比及最大重傳數(shù)據(jù)段等數(shù)據(jù)。
表3 3 種數(shù)據(jù)調度算法的數(shù)據(jù)傳輸結果Table 3 Data transmission results of three data scheduling algorithms
相較于RR 和LowRTT 算法,本文提出的GMM-S算法在獲得更高吞吐量的同時有效減少了重傳次數(shù)。這主要是因為GMM-S 基于GM(1,N)和馬爾科夫優(yōu)化的子流性能評估模型更有效地完成路徑質量的準確評價,實現(xiàn)子流數(shù)據(jù)包發(fā)送的自適應動態(tài)調整。
3.2.1 GM(1,N)-Markov 預測誤差分析
圖4 給出本文實驗設置下從第44 次數(shù)據(jù)包傳輸開始后采用GM(1,4)-Markov 算法預測的最小FTT子流與實際最小FTT 子流的對比數(shù)據(jù)。在第1 次~第43 次數(shù)據(jù)包傳輸過程中,Subflow_3 是WiFi 鏈路的主子流且有較高的帶寬,在不產(chǎn)生丟包時該子流具有最小FTT,在GM(1,4)-Markov 預測算法狀態(tài)轉移概率矩陣中,Subflow_3 表現(xiàn)出最大的矩陣元素值。此后,即從第44 次開始,GM(1,4)-Markov 算法在綜合分析擁塞窗口、吞吐量及丟包情況的基礎上選出具有最小FTT 的Subflow_1。在第47 次數(shù)據(jù)包傳輸時,GM(1,4)-Markov 算法給出了最小FTT 子流為子流3 的預判,但由于此時實際傳輸子流仍為子流1,因此出現(xiàn)預測值與實際值不一致的情形,即產(chǎn)生誤差。從第48 次數(shù)據(jù)包傳輸開始至第59 次數(shù)據(jù)包傳輸,實際最小FTT 子流為Subflow_3。類似的誤差產(chǎn)生情形還發(fā)生在第67 次數(shù)據(jù)包傳輸。在隨后的數(shù)據(jù)包傳輸過程中,由于Markov 殘差修正算法的作用,誤差得以不斷修正,GM(1,4)-Markov 算法預測精度不斷提高,且總誤差控制在1.8%左右。
圖4 GM(1,N)-Markov 算法預測最小FTT 子流效果Fig.4 Effect of GM(1,N)-Markov algorithm on predicting the minimum FTT subflow
3.2.2 數(shù)據(jù)包亂序分析
圖5 給出了應用GMM-S、RR、LowRTT 三種數(shù)據(jù)調度算法在無線異構網(wǎng)絡中傳輸過程中出現(xiàn)的數(shù)據(jù)塊亂序情況。從圖5 可以看出:在50 s~100 s 的時間間隔內,RR 算法共發(fā)生199 次亂序,最大亂序塊大小為27 000 bit;LowRTT 算法共發(fā)生749 次亂序,最大亂序塊大小為29 000 bit;而GMM-S 算法共發(fā)生176 次亂序,最大亂序塊大小為16 000 bit??傮w而言,GMM-S 相比RR 和LowRTT 所產(chǎn)生的亂序塊更少且亂序數(shù)據(jù)塊也更小。這主要是由于GMM-S 實現(xiàn)了路徑質量的實時評估,并在數(shù)據(jù)分發(fā)時根據(jù)子流預測FTT 自適應地分發(fā)數(shù)據(jù)包,盡可能地保障數(shù)據(jù)包按序到達所導致的,GMM-S 不僅明顯減少了數(shù)據(jù)包亂序的發(fā)生次數(shù),同時也降低了亂序程度。
圖5 3 種數(shù)據(jù)調度算法的亂序到達結果對比Fig.5 Comparison of out-of-order arrival resuts of three data scheduling algorithms
3.2.3 數(shù)據(jù)發(fā)送到達結果分析
在實驗中,本文通過設置隨機丟包率來模擬無線異構網(wǎng)絡的不確定性,在傳輸過程中丟包的發(fā)生會引發(fā)重傳。圖6 給出了GMM-S、RR、LowRTT 三種算法數(shù)據(jù)發(fā)送到達結果對比。在理想狀態(tài)下,按序傳輸數(shù)據(jù)包且接收端按序接收,TSN 隨時間變化的圖像應為單調平穩(wěn)遞增的圖像,但重傳的發(fā)生會因為反復傳輸而使圖像出現(xiàn)水平線段。從圖6 可以看出:RR 在95.5 s 時發(fā)生了一次重傳,持續(xù)時間為0.2 s;LowRTT 在95.6 s時發(fā)生了一次重傳,持續(xù)時間為0.2 s;GMM-S 則是在95.8 s 時發(fā)生了一次重傳,持續(xù)時間為0.1 s。GMM-S 的重傳持續(xù)時間最少。此外,在數(shù)據(jù)傳輸過程中,若發(fā)生亂序或發(fā)送數(shù)據(jù)包過大的情況會導致緩沖區(qū)阻塞,致使發(fā)送端數(shù)據(jù)包停發(fā),在圖像中表現(xiàn)為中斷現(xiàn)象。在圖6 中,95 s~97 s 的時間段內,RR 產(chǎn)生了4 次明顯中斷,LowRTT 產(chǎn)生了5 次明顯中斷,而GMM-S 僅產(chǎn)生2 次明顯中斷,且中斷時間遠小于RR 和LowRTT,這表明GMM-S工作時接收端數(shù)據(jù)接收更為平穩(wěn)。
圖6 3 種數(shù)據(jù)調度算法的數(shù)據(jù)發(fā)送到達結果對比Fig.6 Comparison of data transmission and arrival results of three data scheduling algorithms
3.2.4 吞吐量
有效吞吐量(Effective Throughput,ET)[21]定義為單位時間t內由傳輸層送達應用層的數(shù)據(jù)量(Application lauer Data,AD),即:
在圖7 中,RR 的有效吞吐量波動區(qū)間約為0.1,LowRTT 有效吞吐量波動區(qū)間約為0.15,而GMM-S波動區(qū)間僅為0.01,且持續(xù)穩(wěn)定在10.06 Kb/s~10.07 Kb/s 之間。在95 s~96 s 時間段內RR、LowRTT及GMM-S 均發(fā)生了重傳,有效吞吐量發(fā)生了下降,但由于GMM-S 的自適應數(shù)據(jù)包分發(fā)機制會在產(chǎn)生丟包的子流上動態(tài)分配較少的數(shù)據(jù)包,因此GMM-S的有效吞吐量在重傳發(fā)生時未受到嚴重影響。
圖7 3 種數(shù)據(jù)調度算法的有效吞吐量對比Fig.7 Comparison of effective throughput variation of three data scheduling algorithms
3.2.5 服務質量評估
在實際應用場景中,較大的端到端時延會嚴重影響實時傳輸?shù)姆召|量。比如在實時視頻傳輸服務中,若因為發(fā)送率波動較大引起應用層數(shù)據(jù)接收時間間隔增大,用戶會感受到明顯的視頻卡頓或中斷。圖8 給出了90 s~100 s 時間段內數(shù)據(jù)發(fā)送速率的變化情況。從圖8 可以看出,L ow RT T 在97 s 時發(fā)送速率存在大幅增加的現(xiàn)象,這是因為在95 s~96 s期間發(fā)生了數(shù)據(jù)包亂序現(xiàn)象,在97 s 時緩沖區(qū)中的亂序數(shù)據(jù)包順序交付給應用層,此時的擁塞窗口增大,發(fā)送窗口因而變大,LowRTT 的發(fā)送速率出現(xiàn)明顯上升。而在GMM-S 中,每條子流維護各自的擁塞窗口,數(shù)據(jù)分發(fā)調度綜合考慮子流的傳輸性能為子流分發(fā)合理大小的數(shù)據(jù)包,因此不會出現(xiàn)LowRTT發(fā)送速率大幅波動的情形。
圖8 3 種數(shù)據(jù)調度算法的發(fā)送速率對比Fig.8 Comparison of transmission rate of three data scheduling algorithms
圖9給出了應用層數(shù)據(jù)接收時間間隔的分布數(shù)據(jù),應用層接收時間間隔分布以平均值±95%的置信區(qū)間來反映。從圖9 可以看出:RR 的應用層數(shù)據(jù)接收時間間隔主要分布在1.18E7 ns~1.2E7 ns之間;LowRTT 的應用層數(shù)據(jù)接收時間間隔主要分布在1.16E7 ns~1.18E7 ns 之間;而GMM-S 的應用層數(shù)據(jù)接收時間間隔則主要分布在1.11E7 ns~1.13E7 ns 之間,范圍明顯小于RR和LowRTT。這表明GMM-S可提供更穩(wěn)定的應用層數(shù)據(jù)傳送,為網(wǎng)絡傳輸服務質量及良好的用戶體驗提供保障。
圖9 應用層數(shù)據(jù)接收時間間隔分布Fig.9 Distribution of application layer data receiving interval
本文提出一種基于GM(1,N)前向傳輸時延預測與馬爾科夫優(yōu)化的自適應多路傳輸數(shù)據(jù)調度算法GMM-S,該算法綜合考慮子流中吞吐量、丟包率及發(fā)送窗口等因素對傳輸時延的影響,采用FTT 預測對子流性能進行評估,并通過調整相應發(fā)送窗口大小來最小化異構網(wǎng)絡中的傳輸時延差異。實驗結果表明,該算法可有效解決數(shù)據(jù)包亂序問題并顯著提升網(wǎng)絡傳輸性能。下一步將采用個性化數(shù)據(jù)傳輸算法對多路傳輸數(shù)據(jù)調度進行優(yōu)化,進一步提高網(wǎng)絡資源利用率與網(wǎng)絡服務質量。