一種基于中繼選擇的深空文件傳輸方法
【專利摘要】本發(fā)明涉及一種基于中繼選擇的深空文件傳輸方法,屬于深空通信【技術(shù)領(lǐng)域】。本發(fā)明充分利用深空信道端到端路徑和跳到跳路徑同時(shí)存在的情況,將數(shù)據(jù)傳輸分為傳輸和重傳兩個(gè)階段,傳輸階段是基于中繼的,發(fā)送方每次選擇丟包率最小的那一跳完成數(shù)據(jù)的轉(zhuǎn)發(fā);重傳階段是端到端的,避免了中繼轉(zhuǎn)發(fā)階段的交互過(guò)程;同時(shí),根據(jù)天體運(yùn)動(dòng)規(guī)律合理地在拉格朗日點(diǎn)和行星運(yùn)動(dòng)軌道上布置中繼衛(wèi)星,減少衛(wèi)星軌道保持所消耗的能量,增加衛(wèi)星的壽命,減小網(wǎng)絡(luò)的運(yùn)營(yíng)成本,并能適應(yīng)未來(lái)深空探測(cè)的發(fā)展;另外,每一跳轉(zhuǎn)發(fā)選擇中繼節(jié)點(diǎn)時(shí),遵循丟包率最小原則,有效地減弱了逐跳傳輸時(shí)丟包引起的錯(cuò)誤累積,同時(shí)也降低了整個(gè)數(shù)據(jù)傳輸過(guò)程的丟包率,提高了深空數(shù)據(jù)傳輸可靠性。
【專利說(shuō)明】一種基于中繼選擇的深空文件傳輸方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于深空通信【技術(shù)領(lǐng)域】,更進(jìn)一步涉及深空網(wǎng)絡(luò)中基于中繼選擇的深空文件傳輸策略。
【背景技術(shù)】
[0002]深空通信是深空探測(cè)的基礎(chǔ),承載著深空探測(cè)中大量數(shù)據(jù)的可靠傳輸。隨著各國(guó)對(duì)太空探索的不斷深入,人們對(duì)衛(wèi)星與地面、衛(wèi)星與衛(wèi)星之間的文件傳輸?shù)男枨笠苍絹?lái)越大。深空通信環(huán)境具有完全不同于地球通信環(huán)境的特點(diǎn),存在著傳播距離遠(yuǎn)、鏈路間歇性中斷、信道誤碼率高以及上下行鏈路不對(duì)稱等問(wèn)題,傳統(tǒng)的數(shù)據(jù)傳輸策略不再適用于深空通?目。
[0003]現(xiàn)有的深空通信文件傳輸協(xié)議根據(jù)重傳機(jī)制的不同,主要分為兩類:(1)TCP/IP協(xié)議及其改進(jìn);(2)空間數(shù)據(jù)系統(tǒng)咨詢委員會(huì)(Consultative Committee for Space DataSystems, CCSDS)的文件傳輸協(xié)議(CCSDS File Delivery Protocol,CFDP)。
[0004]TCP/IP協(xié)議是在因特網(wǎng)的背景下,以帶寬無(wú)限大、低延遲、低誤碼率、連續(xù)通信等假設(shè)條件下建立的,TCP連接的建立需要發(fā)送雙方先通過(guò)握手協(xié)商,即正式開(kāi)始文件數(shù)據(jù)傳輸至少需要進(jìn)行一次往返傳播?,F(xiàn)有的TCP/IP協(xié)議體系在深空通信的傳播時(shí)延長(zhǎng)、誤碼率高、非對(duì)稱鏈路以及異構(gòu)網(wǎng)絡(luò)等問(wèn)題上面臨嚴(yán)峻的挑戰(zhàn)。在鏈路時(shí)延或者時(shí)延帶寬較積較大的深空網(wǎng)絡(luò),各種TCP改進(jìn)協(xié)議相差不大且性能很差,不能滿足深空文件高效傳輸?shù)娜蝿?wù)要求。
[0005]目前實(shí)際應(yīng)用較多的空間文件傳輸協(xié)議是CCSDS所建議的CFDP協(xié)議,該協(xié)議發(fā)送過(guò)程包括:首先發(fā)送元數(shù)據(jù)包MPDU (Meta-data H)U,包含需要傳輸?shù)奈募南嚓P(guān)信息,如文件名、文件大小、源地址和目的地址等);然后發(fā)送包含文件內(nèi)容的協(xié)議數(shù)據(jù)單元H)U(FileData H)U);文件內(nèi)容發(fā)送完成后發(fā)送文件結(jié)束標(biāo)識(shí)E0F_PDU(End of File PDU);接收端收到E0F_PDU后向發(fā)送端發(fā)送ACK (EOF) PDU,并判斷是否需要發(fā)送否定確認(rèn)應(yīng)答,其中包含未正確收到的數(shù)據(jù)的相關(guān)信息;發(fā)送端根據(jù)否定確認(rèn)信息NAK PDU內(nèi)容進(jìn)行重傳,該過(guò)程持續(xù)到接收端正確接收到該文件的所有數(shù)據(jù)并發(fā)送傳輸完成標(biāo)識(shí)FIN PDU (Finish TOU)。發(fā)送端接收到FINPDU,發(fā)送ACK (FIN) PDU,關(guān)閉鏈路。接收端收到傳輸完成ACK (FIN) PDU標(biāo)識(shí),整個(gè)文件傳輸結(jié)束。CFDP協(xié)議針對(duì)空間應(yīng)用專門(mén)進(jìn)行了優(yōu)化,其不依賴反饋的發(fā)送機(jī)制、確認(rèn)反饋(ACK:Acknowledgment)和非確認(rèn)反饋(NAK:Nagative ACK)機(jī)制結(jié)合的反饋重傳機(jī)制一方面為深空文件傳輸提供了可靠服務(wù),另一方面提高了鏈路利用率,縮短了文件傳輸時(shí)間。
[0006]盡管相比于TCP/IP協(xié)議,CFDP的反饋機(jī)制效率有明顯的提高,但為了確??煽總鬏?,CFDP仍需要反饋多次NAK和少量ACK信息,而傳輸距離的不斷增大,增大了這種交互的往返時(shí)延,降低了 CFDP的傳輸效率。特別是當(dāng)信道誤碼率條件惡劣時(shí),數(shù)據(jù)包丟失數(shù)量增多,增加了文件反饋重傳的次數(shù),深空大時(shí)延環(huán)境下的頻繁重傳使得往返傳播時(shí)延在整個(gè)文件傳輸過(guò)程中總的傳輸時(shí)延很大,從而增大了文件可靠傳輸所需的時(shí)間。因此,減少丟包是降低重傳次數(shù)、提高深空傳輸可靠性的關(guān)鍵。[0007]專利文獻(xiàn)CN102624506A “基于雙重傳策略的深空文件傳輸方法”將文件傳輸分為初始發(fā)送階段和重傳階段,初始階段所有數(shù)據(jù)包發(fā)送一次,重傳階段將需要重傳的數(shù)據(jù)包發(fā)送兩次,從而提高一次重傳成功的概率。該方法雖然提高了丟失包的重傳成功率,但在發(fā)送階段丟包率并沒(méi)有降低,而且在重傳階段冗余較大,鏈路利用率不高。
[0008]專利文獻(xiàn)CN102497649A “基于可靠性保證的衛(wèi)星網(wǎng)絡(luò)路由構(gòu)建方法”中對(duì)分組傳輸?shù)闹髀窂浇浞萋窂?,同時(shí)在主路徑和備用路徑上發(fā)送同樣的分組以提高分組成功接收的概率。該方法提高了數(shù)據(jù)包到達(dá)目的端的可靠性,但占用備份路徑發(fā)送與主路徑上完全相同的副本,使得系統(tǒng)鏈路利用率低,不符合深空通信資源受限的特點(diǎn)。
[0009]隨著深空探測(cè)任務(wù)不斷地向更遠(yuǎn)的太空發(fā)展,傳統(tǒng)的基于端到端的數(shù)據(jù)傳輸方法已不能滿足未來(lái)深空通信的發(fā)展要求,研究表明使用跳到跳重傳方式能夠比端到端重傳方式獲得更短的傳輸延遲和更高的帶寬利用率,因此基于中繼的深空通信傳輸協(xié)議成為研究的熱點(diǎn)。
[0010]專利CN201210184667.2 “基于中繼存儲(chǔ)-轉(zhuǎn)發(fā)的深空文件傳輸方法”中通過(guò)縮短點(diǎn)到點(diǎn)通信距離的方法,利用中繼節(jié)點(diǎn)存儲(chǔ)轉(zhuǎn)發(fā)機(jī)制對(duì)傳統(tǒng)的延時(shí)否定確認(rèn)型CFDP協(xié)議傳輸機(jī)制進(jìn)行了改進(jìn),將數(shù)據(jù)傳輸分為發(fā)送端至中繼星階段及中繼星至接收端階段,減小數(shù)據(jù)的差錯(cuò)概率,降低反饋重傳的時(shí)延,進(jìn)而提高文件傳輸效率。但中繼星在兩次傳輸階段中都參與了重傳,增加了中繼星和接收端以及發(fā)送端之間的信息交互,在深空通信鏈路間歇性中斷、網(wǎng)絡(luò)拓?fù)鋾r(shí)變的情況下,重傳數(shù)據(jù)包的可靠性大大降低,時(shí)延增加。
[0011]文獻(xiàn)“一種適用于衛(wèi)星網(wǎng)絡(luò)的跳到跳的傳輸協(xié)議”(2010年4月,宇航學(xué)報(bào),第31卷第11期)報(bào)道,采用跳到跳確認(rèn)、逐跳恢復(fù)的思想,中間節(jié)點(diǎn)也對(duì)錯(cuò)誤檢測(cè)和恢復(fù)有責(zé)任。這種方式將多跳轉(zhuǎn)發(fā)操作分割為一系列單跳傳輸處理,前面轉(zhuǎn)發(fā)中的錯(cuò)誤已經(jīng)被提前恢復(fù),不會(huì)影響到后面跳數(shù)轉(zhuǎn)發(fā)數(shù)據(jù)的錯(cuò)誤率,避免了錯(cuò)誤累積。該協(xié)議雖然有效地提高了傳輸?shù)目煽啃?,但是每一跳傳輸接收方和發(fā)送方都需要大量的交互信息并重傳,不符合深空通信特殊的網(wǎng)絡(luò)環(huán)境。由于深空通信上下行鏈路的數(shù)據(jù)速率嚴(yán)重不對(duì)稱,有時(shí)甚至只有單向信道,這使得接收方的反饋信息很難及時(shí)到達(dá)發(fā)送方。另外,由于受天體運(yùn)動(dòng)的影響,鏈路的連接間歇性中斷,跳到跳可靠傳輸時(shí)如果要重傳,反饋信息不一定能沿原路徑的反向鏈路到達(dá)發(fā)送方。
[0012]可見(jiàn),目前的深空文件傳輸策略中存在端到端傳輸成功率低、時(shí)延大,而跳到跳傳輸未能根據(jù)信道特點(diǎn)靈活選擇中繼節(jié)點(diǎn)的問(wèn)題,難以保證深空文件的可靠傳輸。并且,隨著未來(lái)深空探測(cè)任務(wù)向更遠(yuǎn)距離的空間發(fā)展,現(xiàn)有的深空文件傳輸策略已不能滿足未來(lái)深空通信的發(fā)展需求。
【發(fā)明內(nèi)容】
[0013]為了克服現(xiàn)有技術(shù)的不足,本發(fā)明提出一種基于中繼選擇的深空文件傳輸方法,針對(duì)深空通信傳輸距離遠(yuǎn)、鏈路間歇性中斷的特點(diǎn),利用中繼衛(wèi)星轉(zhuǎn)發(fā)數(shù)據(jù),通過(guò)提高每一跳數(shù)據(jù)傳輸成功率來(lái)提高整個(gè)系統(tǒng)的文件傳輸成功率,極大地提高系統(tǒng)可靠性。同時(shí),針對(duì)深空通信上下行鏈路速率不對(duì)稱、網(wǎng)絡(luò)拓?fù)鋾r(shí)變的特點(diǎn),在目的端才向發(fā)送端發(fā)送NAK信息要求重傳,而不是逐跳重傳恢復(fù)數(shù)據(jù),避免了跳到跳重傳時(shí)由于鏈路間歇性連接中斷造成的重傳失敗。[0014]深空的長(zhǎng)距離傳輸帶來(lái)了巨大的衰減,采用多跳中繼傳輸可以用來(lái)對(duì)抗這種衰減,提高鏈路的性能。但在深空通信中,隨著鏈路數(shù)目增多,系統(tǒng)的復(fù)雜度和成本增加,從而降低了系統(tǒng)的可靠性。因此根據(jù)深空通信中損耗的分類,以及未來(lái)深空網(wǎng)絡(luò)發(fā)展的趨勢(shì),構(gòu)建三跳中繼下行鏈路,即深空探測(cè)器-中繼衛(wèi)星(第一跳)、中繼衛(wèi)星-中繼衛(wèi)星(第二跳)、中繼衛(wèi)星-地面站(第三跳)。
[0015]為了與端到端傳輸方式進(jìn)行區(qū)分,稱產(chǎn)生業(yè)務(wù)流的端節(jié)點(diǎn)為發(fā)送端/源端,最終接收的目的地為接收端/目的端,中間轉(zhuǎn)發(fā)的節(jié)點(diǎn)叫發(fā)送方,下一跳叫接收方。本專利基于跳到跳傳輸?shù)环答伌_認(rèn)的主要思想是將數(shù)據(jù)傳輸分為傳輸和重傳兩個(gè)階段,傳輸階段是基于中繼的,重傳階段是端到端的。在數(shù)據(jù)傳輸階段,接收方收到一個(gè)數(shù)據(jù)包后,不進(jìn)行校驗(yàn)和檢查,直接轉(zhuǎn)發(fā)該數(shù)據(jù)包,直到將數(shù)據(jù)包傳到目的端;在重傳階段,接收端對(duì)接收到的數(shù)據(jù)進(jìn)行統(tǒng)計(jì),檢查出有數(shù)據(jù)包丟失時(shí)才向發(fā)送方要求重傳。整個(gè)數(shù)據(jù)傳輸過(guò)程中,中繼不需要對(duì)接收到的數(shù)據(jù)進(jìn)行存儲(chǔ),發(fā)送端在收到接收端反饋的FIN確認(rèn)信息后釋放緩存數(shù)據(jù)并關(guān)閉鏈路。
[0016]本發(fā)明提出的基于中繼傳輸?shù)纳羁瘴募鬏敺椒ㄊ菍?shù)據(jù)傳輸分為傳輸和重傳兩個(gè)階段,整個(gè)方法步驟如下:
[0017]步驟1),在發(fā)送端,將要發(fā)送的文件進(jìn)行分割,分成k個(gè)協(xié)議數(shù)據(jù)單元rou,每個(gè)PDU大小為L(zhǎng)字節(jié)。
[0018]步驟2),發(fā)送端直接向接收端發(fā)送元數(shù)據(jù)包MPDU信息,內(nèi)含文件名稱、文件大小、源地址和目的地址等信息,通知接收端文件傳輸開(kāi)始。
[0019]步驟3),發(fā)送端逐跳選擇中繼衛(wèi)星發(fā)送rou,中繼衛(wèi)星將PDU轉(zhuǎn)發(fā)到下一跳中繼衛(wèi)星,直至轉(zhuǎn)發(fā)到接收端 ,此為中繼傳輸階段。
[0020]步驟4),接收端收到文件結(jié)束標(biāo)識(shí)EOF后對(duì)它接收到的H)U信息進(jìn)行統(tǒng)計(jì),檢查是否有丟失。如果沒(méi)有丟包,跳到步驟6 ;否則,進(jìn)行下一步。
[0021]步驟5),接收端利用端到端路徑向發(fā)送端發(fā)送否定確認(rèn)信息NAK請(qǐng)求重傳,發(fā)送端接收到NAK信息后發(fā)送它所要求重傳的rou,直到包括MPDU在內(nèi)的全部PDU都被成功接收為止。
[0022]步驟6),接收端正確接收到所有數(shù)據(jù)包后,向發(fā)送端發(fā)送傳輸完成信息FIN,證明文件傳輸成功,發(fā)送端接收到FIN后返回一個(gè)確認(rèn)信息ACK FIN給接收端,同時(shí)關(guān)閉鏈路,釋放緩存數(shù)據(jù),接收方收到ACK FIN后關(guān)閉鏈路,文件傳輸結(jié)束。
[0023]在文件傳輸過(guò)程中,步驟I)的文件分割主要包括以下步驟:
[0024]步驟1.1),首先確定數(shù)據(jù)分組的最大長(zhǎng)度Lmax和最小長(zhǎng)度Lmin ;
SS
[0025]步驟1.2),根據(jù)公式^求得數(shù)據(jù)包個(gè)數(shù)的取值范圍,Sfile表示待傳輸
maxmi Iii
文件的字節(jié)數(shù)。
[0026]步驟1.3),優(yōu)先選擇k為滿足條件的最大整數(shù),則數(shù)據(jù)包的長(zhǎng)度L =當(dāng)Sfile
I k
<k*L時(shí),在最后一個(gè)數(shù)據(jù)分組中添加冗余數(shù)據(jù),使Sfile = k*L。
[0027]步驟1.4),從第一個(gè)數(shù)據(jù)起將k個(gè)數(shù)據(jù)包編號(hào)為1,2,3、、、k。[0028]從步驟1.3可以看出,k取最大整數(shù),即數(shù)據(jù)包長(zhǎng)度為符合條件的最小長(zhǎng)度。4QAM系統(tǒng)下一個(gè)數(shù)據(jù)包正確接收的概率為
【權(quán)利要求】
1.一種基于中繼選擇的深空文件傳輸方法,在數(shù)據(jù)傳輸過(guò)程中,將數(shù)據(jù)傳輸分為傳輸和重傳兩個(gè)階段,傳輸階段是基于中繼的,在數(shù)據(jù)傳輸階段,發(fā)送端逐跳選擇中繼衛(wèi)星發(fā)送PDU,當(dāng)接收方收到一個(gè)數(shù)據(jù)包后,不進(jìn)行校驗(yàn)和檢查,而是直接轉(zhuǎn)發(fā)該數(shù)據(jù)包,直到將數(shù)據(jù)包傳到接收端;重傳階段是端到端的,在重傳階段,接收端對(duì)它接收到的數(shù)據(jù)進(jìn)行統(tǒng)計(jì),檢查出有數(shù)據(jù)包丟失時(shí)才向發(fā)送端要求重傳;整個(gè)數(shù)據(jù)過(guò)程中,中間節(jié)點(diǎn)不需要對(duì)接收到的數(shù)據(jù)進(jìn)行存儲(chǔ),發(fā)送端在收到接收端返回的FIN確認(rèn)信息后將這段數(shù)據(jù)從緩沖區(qū)中刪除,并關(guān)閉鏈路,文件傳輸結(jié)束。
2.根據(jù)權(quán)利要求1所述的基于中繼的深空文件傳輸方法,其具體步驟為: 步驟I),在發(fā)送端,將要發(fā)送的文件進(jìn)行分割,分成k個(gè)協(xié)議數(shù)據(jù)單元rou,每個(gè)協(xié)議數(shù)據(jù)單元PDU大小為L(zhǎng)字節(jié); 步驟2),發(fā)送端直接向接收端發(fā)送元數(shù)據(jù)包MPDU信息,內(nèi)含文件名稱、文件大小、源地址和目的地址信息,通知接收端文件傳輸開(kāi)始; 步驟3),發(fā)送端逐跳選擇中繼衛(wèi)星發(fā)送協(xié)議數(shù)據(jù)單元rou,中繼衛(wèi)星將協(xié)議數(shù)據(jù)單元PDU轉(zhuǎn)發(fā)到下一跳中繼衛(wèi)星,直至轉(zhuǎn)發(fā)到接收端; 步驟4),接收端收到文件結(jié)束標(biāo)識(shí)EOF后對(duì)它接收到的協(xié)議數(shù)據(jù)單元PDU信息進(jìn)行統(tǒng)計(jì),檢查是否有丟失,如果沒(méi)有丟包,跳到步驟6);否則,進(jìn)行下一步。 步驟5),接收端利用端到端路徑向發(fā)送端發(fā)送否定確認(rèn)信息NAK請(qǐng)求重傳,發(fā)送端接收到NAK信息后發(fā)送它所要求重傳的協(xié)議數(shù)據(jù)單元H)U,直到包括MPDU在內(nèi)的全部協(xié)議數(shù)據(jù)單元PDU都被成功接收為止。 步驟6),接收端正確接收到所有數(shù)據(jù)包后,向發(fā)送端發(fā)送傳輸完成標(biāo)識(shí)FINPDU,證明文件傳輸成功,發(fā)送端接收到FIN后返回一個(gè)傳輸完成確認(rèn)信息ACK FIN給接收端,同時(shí)關(guān)閉鏈路,釋放緩存數(shù)據(jù),接收方收到ACK FIN后關(guān)閉鏈路,文件傳輸結(jié)束。
3.根據(jù)權(quán)利要求2所述的基于中繼選擇的深空文件傳輸方法,其特征在于:在數(shù)據(jù)傳輸過(guò)程中,步驟I)的文件分割主要包括以下步驟: 步驟1.D,首先確定數(shù)據(jù)分組的最大長(zhǎng)度Lmax和最小長(zhǎng)度Lmin ; 步驟1.2),根據(jù)公式
4.根據(jù)權(quán)利要求2所述基于中繼的深空文件傳輸方法,其特征在于:步驟3)所述中繼傳輸?shù)奶鴶?shù)問(wèn)題處理如下:構(gòu)建三跳中繼下行鏈路,即第一跳為深空探測(cè)器-中繼衛(wèi)星,第二跳為中繼衛(wèi)星-中繼衛(wèi)星,第三跳為中繼衛(wèi)星-地面站。
5.根據(jù)權(quán)利要求4所述的基于中繼選擇的深空文件傳輸方法,其特征在于:所述三跳中繼下行鏈路的中繼衛(wèi)星穩(wěn)定或亞穩(wěn)定地保持在拉格朗日點(diǎn)附近。
6.根據(jù)權(quán)利要求4所述的基于中繼選擇的深空文件傳輸方法,其特征在于:所述步驟3)中下一跳節(jié)點(diǎn)的選取規(guī)則是選擇信道增益最大的鏈路對(duì)應(yīng)的節(jié)點(diǎn)作為下一跳。
7.根據(jù)權(quán)利要求2所述的基于中繼選擇的深空文件傳輸方法,其特征在于:步驟5)所述重傳過(guò)程如下:接收端收到EOF信息后對(duì)它接收到的協(xié)議數(shù)據(jù)單元rou信息進(jìn)行統(tǒng)計(jì),檢查出有數(shù)據(jù)包丟失時(shí),接收端利用端到端路徑向發(fā)送端發(fā)送否定確認(rèn)信息NAK請(qǐng)求重傳,同時(shí)啟動(dòng)NAK計(jì)時(shí)器。發(fā)送端接收到NAK信息后發(fā)送它所要求重傳的H)U ;在接收端,當(dāng)NAK計(jì)時(shí)器滿后再次對(duì)它所接收到的協(xié)議數(shù)據(jù)單元PDU信息進(jìn)行統(tǒng)計(jì),如果仍有丟失的協(xié)議數(shù)據(jù)單元rou,再次觸發(fā)新的NAK,并啟動(dòng)NAK計(jì)時(shí)器。如此反復(fù),直到包括MPDU在內(nèi)的全部PDU都被成功接收為 止。
【文檔編號(hào)】H04L1/16GK104038318SQ201410299301
【公開(kāi)日】2014年9月10日 申請(qǐng)日期:2014年6月26日 優(yōu)先權(quán)日:2014年6月26日
【發(fā)明者】王汝言, 王琴, 趙輝, 彭海英, 張鴻, 方高峰 申請(qǐng)人:重慶郵電大學(xué)