本發(fā)明屬于空間信息網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別涉及一種測控網(wǎng)按需文件傳輸方法,可用于衛(wèi)星通信。
背景技術(shù):
衛(wèi)星測控網(wǎng)是對航天飛行器進(jìn)行測量和控制的專用網(wǎng)絡(luò),其主要任務(wù)是對升空段運(yùn)載火箭進(jìn)行測量和控制,對飛行器軌道和姿態(tài)進(jìn)行測量和控制,對飛行器遙測數(shù)據(jù)進(jìn)行接收處理,接收載人航天器視頻圖像,進(jìn)行雙向語音通信等。
傳統(tǒng)的衛(wèi)星測控網(wǎng)的資源是預(yù)分配模式,由調(diào)度中心進(jìn)行統(tǒng)一控制、計劃和使用。隨著中繼衛(wèi)星返向多址技術(shù)的成熟,現(xiàn)階段的測控網(wǎng)已經(jīng)能實(shí)現(xiàn)用戶飛行器的返向隨機(jī)多址接入,但由于中繼衛(wèi)星技術(shù)的限制前向多址技術(shù)難以實(shí)現(xiàn)。因此,現(xiàn)有的文件傳輸分為兩種,一種是無前向ack確認(rèn)的不可靠傳輸機(jī)制,另一種則是有前向ack確認(rèn)機(jī)制的可靠傳輸機(jī)制?,F(xiàn)有的可靠傳輸機(jī)制雖然能實(shí)現(xiàn)文件的可靠傳輸,但是由于其ack需要獨(dú)占前向鏈路,而ack本身需要的帶寬很低,因此前向鏈路利用率低,限制了多文件同時傳輸時的效率。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明目的在于提出一種基于ack接力傳輸?shù)男l(wèi)星測控網(wǎng)絡(luò)按需文件可靠傳輸方法,以解決上述現(xiàn)有技術(shù)由于中繼衛(wèi)星無前向多址技術(shù)所導(dǎo)致的無法有效利用上行鏈路資源的問題,提高鏈路資源利用率和文件傳輸?shù)乃俾省?/p>
實(shí)現(xiàn)上述目的的技術(shù)思路是,前向ack分組到達(dá)資源調(diào)度中心后按照ack分組的目的和飛行器當(dāng)前所處的中繼衛(wèi)星進(jìn)行分組,通過目的飛行器軌道預(yù)測來判決是在當(dāng)前中繼衛(wèi)星上行鏈路中傳輸還是下一中繼衛(wèi)星的上行鏈路上傳輸,按照見空插入的方式?jīng)Q定插入位置,以得到ack的最優(yōu)發(fā)送路徑,減少ack確認(rèn)的時延,提高文件發(fā)送速率。由于ack采用累積方式可以加快分組確認(rèn)的速度,因此在尋找可用時間段時,將已被相同目標(biāo)用戶飛行器ack占用的時隙安排當(dāng)做可用時隙,用更新的ack報文替代原有的ack報文占用該時隙。
依據(jù)上述思路,本發(fā)明的實(shí)現(xiàn)步驟包括如下:
(1)用戶飛行器向中繼衛(wèi)星按需發(fā)送數(shù)據(jù)包,并將發(fā)送的數(shù)據(jù)包按照發(fā)送順序放入待確認(rèn)緩存隊(duì)列;
(2)中繼衛(wèi)星再將數(shù)據(jù)包透明轉(zhuǎn)發(fā)給對應(yīng)的中繼地面站,中繼地面站通過地面網(wǎng)絡(luò)直接將數(shù)據(jù)包轉(zhuǎn)發(fā)給地面用戶,地面用戶收到數(shù)據(jù)包后返回一個確認(rèn)報文ack,該報文首先被發(fā)送到資源調(diào)度中心;
(3)資源調(diào)度中心收到確認(rèn)報文ack后,查找用戶飛行器與當(dāng)前中繼衛(wèi)星的可用通信時間段,并在可用通信時間段內(nèi)從前到后依次搜索該報文的待發(fā)送時間段是否存在:若存在,則將ack報文的發(fā)送時間設(shè)置為ack報文待發(fā)送時間段的起始時刻,轉(zhuǎn)入步驟(5);若不存在,執(zhí)行步驟(4);
(4)確認(rèn)報文ack進(jìn)入中繼衛(wèi)星接力傳輸階段后,資源調(diào)度中心按用戶飛行器與中繼衛(wèi)星的連接順序,搜索用戶飛行器與各個中繼衛(wèi)星的可用通信時間段,直至找到該報文的待發(fā)送時間段,并將該報文的發(fā)送時間設(shè)置為該報文待發(fā)送時間段的起始時刻,執(zhí)行步驟(5);
(5)資源調(diào)度中心將確認(rèn)報文ack轉(zhuǎn)發(fā)到中繼地面站,并在該報文待發(fā)送時間段的起始時刻通過前向鏈路發(fā)送給中繼衛(wèi)星,中繼衛(wèi)星再將該報文轉(zhuǎn)發(fā)給用戶飛行器;
(6)用戶飛行器收到確認(rèn)報文ack后,對步驟(1)中已存儲在待確認(rèn)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行確認(rèn),并將確認(rèn)收到的數(shù)據(jù)包刪除,至此完成一次有效的數(shù)據(jù)包發(fā)送。
本發(fā)明與現(xiàn)有技術(shù)相比,具有如下優(yōu)點(diǎn):
1)本發(fā)明采用中繼衛(wèi)星接力傳輸方案為確認(rèn)報文ack分配資源,利用用戶飛行器的軌道預(yù)測信息來為報文分配最優(yōu)的發(fā)送資源,解決了ack跨中繼衛(wèi)星傳輸問題,實(shí)現(xiàn)了ack報文的連續(xù)傳輸;
2)本發(fā)明采用確認(rèn)報文ack的后向替代機(jī)制,避免了無效ack報文傳輸,能夠加快對數(shù)據(jù)分組的確認(rèn),提高了中繼衛(wèi)星前向鏈路的利用率;
3)本發(fā)明采用在可用通信時間段內(nèi)插入式安排確認(rèn)報文ack的方式,在可用通信時間內(nèi)查找第一個能滿足ack發(fā)送的時隙,解決了前向ack報文發(fā)送需要獨(dú)占鏈路資源的問題,提高了鏈路利用率的同時能夠加快ack報文的傳輸。
附圖說明
圖1是本發(fā)明的測控網(wǎng)絡(luò)場景示意圖
圖2是本發(fā)明的實(shí)現(xiàn)流程圖。
具體實(shí)施方式
下面結(jié)合附圖對本發(fā)明做進(jìn)一步的描述:
參照附圖1,本發(fā)明描述的測控網(wǎng)絡(luò)場景包含5類節(jié)點(diǎn),分別為用戶飛行器節(jié)點(diǎn)、中繼衛(wèi)星節(jié)點(diǎn)、地面站節(jié)點(diǎn)、地面用戶節(jié)點(diǎn)及資源調(diào)度中心節(jié)點(diǎn)。其中:
用戶飛行器節(jié)點(diǎn)有多個,這些用戶飛行器是中低軌道資源衛(wèi)星或觀測衛(wèi)星,具有可預(yù)測的飛行軌跡,可按需發(fā)起反向文件傳輸任務(wù);
中繼衛(wèi)星節(jié)點(diǎn)有3個,每個中繼衛(wèi)星是相對于地球靜止的地球同步軌道衛(wèi)星,其軌道高度36500km,用于為用戶飛行器提供數(shù)據(jù)中繼轉(zhuǎn)發(fā)功能;
地面站節(jié)點(diǎn)有3個,每個地面站與中繼衛(wèi)星一一對應(yīng),具有數(shù)據(jù)轉(zhuǎn)發(fā)能力;
地面用戶有多個,每個地面用戶可接收用戶飛行器發(fā)來的數(shù)據(jù)報文;
資源調(diào)度中心節(jié)點(diǎn)有一個,其功能是管理并分配前向鏈路資源。
參照附圖2,本發(fā)明的具體步驟如下:
步驟1,用戶飛行器發(fā)送文件數(shù)據(jù)分組。
用戶飛行器向中繼衛(wèi)星按需發(fā)送數(shù)據(jù)分組,并將發(fā)送的數(shù)據(jù)分組按照發(fā)送順序放入待確認(rèn)緩存隊(duì)列,該數(shù)據(jù)分組為待傳輸文件的分片。
步驟2,中繼衛(wèi)星及中繼地面站轉(zhuǎn)發(fā)數(shù)據(jù)包分組。
中繼衛(wèi)星收到數(shù)據(jù)分組后將其透明轉(zhuǎn)發(fā)給對應(yīng)的中繼地面站,中繼地面站收到數(shù)據(jù)分組后直接通過地面網(wǎng)絡(luò)將其轉(zhuǎn)發(fā)給目的地面用戶。
步驟3,地面用戶接收并處理數(shù)據(jù)分組。
地面用戶收到發(fā)來的數(shù)據(jù)分組,將數(shù)據(jù)分組遞交給上層應(yīng)用,并將確認(rèn)報文ack發(fā)送給資源調(diào)度中心。
步驟4,資源調(diào)度中心為確認(rèn)報文ack分配傳輸資源。
(4a)從確認(rèn)報文ack中取出其報文的目的飛行器id;
(4b)根據(jù)目的飛行器的軌道參數(shù)和當(dāng)前時間來計算該用戶飛行器當(dāng)前時刻的位置坐標(biāo);
(4c)利用步驟(4b)中得出的飛行器位置坐標(biāo)來計算其與每個中繼衛(wèi)星的空間直線距離,將其距離最近的中繼衛(wèi)星設(shè)置為當(dāng)前中繼衛(wèi)星;
(4d)計算當(dāng)前中繼衛(wèi)星的可用通信時間段,具體步驟如下:
(4d1)將從當(dāng)前時間起到用戶飛行器與當(dāng)前中繼衛(wèi)星斷開連接的時間段[tcurrent,tshift]設(shè)置為物理連通時間段;
(4d2)在物理連通時間段內(nèi)中去掉已被按需分配業(yè)務(wù)和確認(rèn)報文ack占用的時間段;
(4d3)在步驟(4d2)得到的時間段內(nèi)加入被同一目的飛行器ack占用的時間段,該時間段即是可用通信時間段;
(4e)在當(dāng)前中繼衛(wèi)星的可用通信時間段內(nèi)從前往后搜索待發(fā)送時間段,若在待發(fā)送時間段內(nèi)能尋找出第一個長度大于確認(rèn)報文ack長度的時間空隙,則搜索成功,執(zhí)行步驟5,若在待發(fā)送時間段內(nèi)不能找到一個長度大于確認(rèn)報文ack長度的時間空隙,則搜索失敗,執(zhí)行步驟(4f);
(4f)通過計算得出用戶飛行器隨時間推移的空間坐標(biāo)變化,按照步驟(4c)中的距離最近原則,找出用戶飛行器將進(jìn)入的下一中繼衛(wèi)星;
(4g)該確認(rèn)報文ack遞交給步驟(4f)中確定的下一中繼衛(wèi)星處理,返回步驟(4d);
(4g)不斷進(jìn)行(4d)-(4f)步驟,直至找到確認(rèn)報文ack可用的時隙。
步驟5,中繼衛(wèi)星及中繼地面站轉(zhuǎn)發(fā)確認(rèn)報文ack。
資源調(diào)度中心將確認(rèn)報文ack報文轉(zhuǎn)發(fā)到中繼地面站,在分配的待發(fā)送時間段內(nèi)通過前向鏈路發(fā)送給中繼衛(wèi)星,中繼衛(wèi)星將確認(rèn)報文ack轉(zhuǎn)發(fā)給用戶飛行器。
步驟6,用戶飛行器完成報文發(fā)送。
用戶飛行器收到確認(rèn)報文ack后,對步驟1中已存儲在待確認(rèn)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行確認(rèn),并將確認(rèn)收到的數(shù)據(jù)包刪除,至此完成一次有效的數(shù)據(jù)包發(fā)送。
重復(fù)以上步驟,用戶飛行器不斷進(jìn)行返向數(shù)據(jù)分組的發(fā)送和前向確認(rèn)報文ack的接收,最終完成整個文件的可靠傳輸。