本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò),特別涉及一種基于網(wǎng)絡(luò)環(huán)境自適應(yīng)的quic協(xié)議多路徑傳輸方法。
背景技術(shù):
1、quic是由google提出的用于替代tcp的互聯(lián)網(wǎng)數(shù)據(jù)傳輸協(xié)議。它引入了許多新的特性,從而在理論上擁有比tcp更好的性能。例如,它通過多路傳輸解決了隊(duì)頭阻塞問題,通過0grtt握手降低了傳輸層握手延時(shí),以及通過連接遷移更好地對移動(dòng)性提供持。但是,現(xiàn)實(shí)生活中的網(wǎng)絡(luò)環(huán)境和終端設(shè)備是多樣性的,并且互聯(lián)網(wǎng)中存在著各種各樣的攻擊,所以quic在實(shí)際網(wǎng)絡(luò)中的表現(xiàn)可能并不如預(yù)期。因此,探究quic對現(xiàn)有網(wǎng)絡(luò)服務(wù)的影響是一項(xiàng)很重要的工作。首先介紹了quic的發(fā)展歷史及其主要特性,并以目前使用最為廣泛的2個(gè)應(yīng)用場景——網(wǎng)頁瀏覽和視頻傳輸。
2、quic旨在提高網(wǎng)絡(luò)連接的速度和可靠性,以取代當(dāng)前互聯(lián)網(wǎng)基礎(chǔ)設(shè)施中廣泛使用的傳輸控制協(xié)議(tcp)。quic通過加密和多路復(fù)用技術(shù)來提供更高的安全性和更快的數(shù)據(jù)傳輸。它支持在單個(gè)連接上并行發(fā)送多個(gè)數(shù)據(jù)流,從而降低延遲并提高吞吐量。quic還具有擁塞控制和流量控制等機(jī)制,以應(yīng)對網(wǎng)絡(luò)擁塞并保證數(shù)據(jù)傳輸?shù)姆€(wěn)定性。國際互聯(lián)網(wǎng)工程任務(wù)組(ietf)已完成對quic的標(biāo)準(zhǔn)化,并且主流的web瀏覽器和服務(wù)器正在逐步采用它。與tcp相比,quic在高延遲和不穩(wěn)定的網(wǎng)絡(luò)環(huán)境中,如移動(dòng)網(wǎng)絡(luò),可以顯著提升網(wǎng)頁加載速度并減少連接中斷,使得網(wǎng)絡(luò)體驗(yàn)更加流暢。
3、在過去的幾十年里,由于移動(dòng)設(shè)備(如智能手機(jī)、平板電腦等)的激增,無線網(wǎng)絡(luò)得到了長足的發(fā)展。通常,這些設(shè)備通常配備了幾個(gè)無線接口,如wi-fi、4g(lte)和5g(即多戶設(shè)備)。當(dāng)用戶移動(dòng)時(shí),一個(gè)無線連接可能會(huì)斷開,從而導(dǎo)致在無線網(wǎng)絡(luò)之間無縫切換的需求。諸如mpquic和mptcp的多路徑傳輸協(xié)議(mtp)允許更好地利用多歸屬設(shè)備上可用的網(wǎng)絡(luò)資源。建立在udp之上,相對較新的quic協(xié)議是現(xiàn)代網(wǎng)絡(luò)協(xié)議棧的基準(zhǔn)。為了實(shí)現(xiàn)快速更新和功能迭代,大多數(shù)quic實(shí)現(xiàn)都是作為用戶空間庫實(shí)現(xiàn)的,從而形成一個(gè)龐大而分散的生態(tài)系統(tǒng)。
4、現(xiàn)有技術(shù)的不足之處在于,現(xiàn)有的mp_quic允許從多條傳輸路徑進(jìn)行傳輸任務(wù),該協(xié)議以“流(stream)”的方式對文件進(jìn)行分片和傳輸,將各個(gè)“流”掛載到不同路徑實(shí)現(xiàn)多路徑傳輸。在進(jìn)行分片和“流”的掛載任務(wù)時(shí),當(dāng)前的研究成果大多為多條路徑交錯(cuò)掛載分片,一條路徑上進(jìn)行某一批次“流”傳輸工作的同時(shí)將下一批次的“流”掛載到另一條路徑上,等到這一批次的“流”開始傳輸時(shí)將順延批次的“流”掛載到之前的路徑上,實(shí)現(xiàn)傳輸任務(wù)的數(shù)據(jù)緩沖,減少因等待io讀寫操作消耗的時(shí)間;然而,當(dāng)“流”被掛載到當(dāng)前路徑的傳輸隊(duì)列后就不會(huì)再進(jìn)行變動(dòng),若該傳輸路徑的網(wǎng)絡(luò)出現(xiàn)波動(dòng)和中斷的情況,則會(huì)對后續(xù)其他路徑的傳輸任務(wù)產(chǎn)生影響。基于quic協(xié)議的網(wǎng)絡(luò)架構(gòu)更容易受到互聯(lián)網(wǎng)公司的青睞是因?yàn)槠湓谌蹙W(wǎng)環(huán)境下的表現(xiàn)優(yōu)于傳統(tǒng)的ftp協(xié)議,所以網(wǎng)絡(luò)波動(dòng)對mp_quic影響的考慮是有必要的。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的克服現(xiàn)有技術(shù)存在的不足,為實(shí)現(xiàn)以上目的,采用一種基于網(wǎng)絡(luò)環(huán)境自適應(yīng)的quic協(xié)議多路徑傳輸方法,以解決上述背景技術(shù)中提出的問題。
2、一種基于網(wǎng)絡(luò)環(huán)境自適應(yīng)的quic協(xié)議多路徑傳輸方法,所述多路徑傳輸包括數(shù)據(jù)流內(nèi)存池管理模塊、路徑數(shù)據(jù)流任務(wù)調(diào)度模塊,以及主成分分析優(yōu)化模塊的三組模塊,所述方法的步驟包括:
3、步驟s1、基于數(shù)據(jù)流內(nèi)存池管理模塊采用內(nèi)存池的方法實(shí)現(xiàn)傳輸多路徑的分布式處理和管理多路徑傳輸中的數(shù)據(jù)流;
4、步驟s2、基于深度強(qiáng)化學(xué)習(xí)的方法,利用路徑數(shù)據(jù)流任務(wù)調(diào)度模塊,使多路徑下的傳輸架構(gòu)根據(jù)實(shí)時(shí)的網(wǎng)絡(luò)環(huán)境實(shí)現(xiàn)自適應(yīng)的動(dòng)態(tài)調(diào)整;
5、步驟s3:基于主成分分析優(yōu)化模塊對傳輸數(shù)據(jù)進(jìn)行分析,識(shí)別并優(yōu)化關(guān)鍵的數(shù)據(jù)傳輸成分,優(yōu)化網(wǎng)絡(luò)環(huán)境自適應(yīng)的quic協(xié)議多路徑傳輸。
6、作為本發(fā)明的進(jìn)一步的方案:所述步驟s1中的具體步驟包括:
7、設(shè)定主機(jī)設(shè)備n個(gè)不同的網(wǎng)口用作網(wǎng)絡(luò)傳輸路徑,且構(gòu)建n個(gè)不同的內(nèi)存池用于作為被傳輸文件讀取的緩沖區(qū),在內(nèi)存池的建立過程中,把單個(gè)內(nèi)存池的容量ci設(shè)定為:
8、
9、其中,i為第i個(gè)路徑下的平均帶寬利用率,ctotal為該路徑對應(yīng)網(wǎng)口下的網(wǎng)卡總帶寬容量;
10、在讀取文件并存入不同的內(nèi)存池過程中,按照內(nèi)存池容量由大到小的順序分片并存入內(nèi)存池,如果文件容量大于內(nèi)存池容量總和,則等待某個(gè)內(nèi)存池變化后再存入等量的分片;
11、內(nèi)存池的容量不是恒定的,根據(jù)當(dāng)前的網(wǎng)絡(luò)狀態(tài)預(yù)知后續(xù)一定時(shí)間范圍內(nèi)的網(wǎng)絡(luò)環(huán)境,對即將到來的網(wǎng)絡(luò)環(huán)境提前一步調(diào)整內(nèi)存池容量大??;
12、通過輸入當(dāng)前網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)圖x,首先將其輸入進(jìn)訓(xùn)練好的多層卷積神經(jīng)網(wǎng)絡(luò),輸出后得到一個(gè)具備相應(yīng)路徑特征值的網(wǎng)絡(luò)拓?fù)鋱Dx’,經(jīng)由強(qiáng)化學(xué)習(xí)訓(xùn)練后,該智能體將會(huì)根據(jù)該路徑上節(jié)點(diǎn)和邊的特征值的信息決定增加或減少該路徑對應(yīng)內(nèi)存池的容量大小。
13、作為本發(fā)明的進(jìn)一步的方案:所述步驟s2中的具體步驟包括:
14、獲取內(nèi)存池中的數(shù)據(jù),并基于該路徑下協(xié)議的規(guī)則進(jìn)行封裝;
15、基于多路徑的方式進(jìn)行傳輸后需要根據(jù)不同的路徑構(gòu)建不同的“流”傳輸隊(duì)列;
16、數(shù)據(jù)流內(nèi)存池管理模塊通過合理分配內(nèi)存池的方式優(yōu)化網(wǎng)絡(luò)不穩(wěn)定的環(huán)境下多路徑傳輸下io和發(fā)送不同步的影響,操作未被封裝的緩沖區(qū)內(nèi)容;
17、當(dāng)文件內(nèi)容被封裝成“流”之后變?yōu)楸粧燧d到各自路徑的發(fā)送隊(duì)列上后,則基于強(qiáng)化學(xué)習(xí)的q-learning算法,進(jìn)行傳輸隊(duì)列上數(shù)據(jù)的即時(shí)性發(fā)送。
18、作為本發(fā)明的進(jìn)一步的方案:所述步驟s3中的具體步驟包括:
19、構(gòu)建主成分分析優(yōu)化模塊訓(xùn)練的智能體去模擬應(yīng)對真實(shí)的網(wǎng)絡(luò)應(yīng)用場景;
20、將封閉網(wǎng)絡(luò)環(huán)境下訓(xùn)練用數(shù)據(jù)設(shè)置為源域ds,真實(shí)的網(wǎng)絡(luò)環(huán)境數(shù)據(jù)集設(shè)置為目標(biāo)域dt;
21、其中,ds由模擬訓(xùn)練用的網(wǎng)絡(luò)拓?fù)鋱D集合xs={x1s,x2s,…,xns},ns為訓(xùn)練用的拓?fù)鋱D數(shù)量,集合作為遷移學(xué)習(xí)的數(shù)據(jù)集,以及經(jīng)過深度強(qiáng)化學(xué)習(xí)后訓(xùn)練后智能體模型gcn_rlmodel;
22、對于xs中的每一組元素xi執(zhí)行的動(dòng)作標(biāo)簽yi;標(biāo)簽集組成ys={y1s,y2s,…,yns}作為源域的標(biāo)簽集;dt由真實(shí)網(wǎng)絡(luò)傳輸環(huán)境下的拓?fù)鋱D結(jié)構(gòu)數(shù)據(jù)集合xt={x1t,x2t,…,xnt}組成,nt為用于進(jìn)行遷移學(xué)習(xí)的真實(shí)網(wǎng)絡(luò)拓?fù)鋱D數(shù)量,定義總方差目標(biāo)函數(shù)fpca為:
23、
24、其中,t表示矩陣轉(zhuǎn)置變換,tr(·)表示矩陣的跡操作,i表示單位矩陣,ata=i表示約束條件為特征映射矩陣是一個(gè)正交矩陣,該定義表明在滿足約束條件的前提下對后面的表達(dá)式求最大值;
25、求解fpca得到的a即為特征映射矩陣,后續(xù)將拓?fù)鋱D的鄰接矩陣x通過a即可將其映射到新的維度空間,然后交予智能體模型gcn_rlmodel執(zhí)行相應(yīng)的操作。
26、與現(xiàn)有技術(shù)相比,本發(fā)明存在以下技術(shù)效果:
27、采用上述的技術(shù)方案,通過設(shè)置數(shù)據(jù)流內(nèi)存池管理模塊、多路徑數(shù)據(jù)流任務(wù)調(diào)度模塊、網(wǎng)絡(luò)拓?fù)鋱D的自適應(yīng)優(yōu)化模塊。采用內(nèi)存池的方法實(shí)現(xiàn)傳輸多路徑的分布式處理,基于深度強(qiáng)化學(xué)習(xí)的方法,使多路徑下的傳輸架構(gòu)能夠根據(jù)實(shí)時(shí)的網(wǎng)絡(luò)環(huán)境實(shí)現(xiàn)自適應(yīng)的動(dòng)態(tài)調(diào)整。設(shè)計(jì)“數(shù)據(jù)流內(nèi)存池管理+路徑數(shù)據(jù)流任務(wù)調(diào)度+主成分分析優(yōu)化”的三組模塊實(shí)現(xiàn)網(wǎng)絡(luò)環(huán)境自適應(yīng)的quic協(xié)議多路徑傳輸方法,提升提升網(wǎng)絡(luò)波動(dòng)環(huán)境下多路徑quic協(xié)議的傳輸效率,對某一路徑下網(wǎng)絡(luò)阻塞的應(yīng)用場景增強(qiáng)了網(wǎng)絡(luò)連接傳輸?shù)聂敯粜?,而且可以基于主機(jī)支持和適配路徑傳輸協(xié)議的不同延申和擴(kuò)展該方法的應(yīng)用