本發(fā)明涉及一種超遠(yuǎn)程戰(zhàn)術(shù)通信方法,尤其涉及一種用于數(shù)傳電臺(tái)自組網(wǎng)超遠(yuǎn)程數(shù)據(jù)傳輸?shù)膽?zhàn)術(shù)通信方法。
背景技術(shù):
數(shù)傳電臺(tái)利用固定頻率進(jìn)行遠(yuǎn)距離戰(zhàn)術(shù)通信。數(shù)傳電臺(tái)具有通信距離遠(yuǎn),成本低,可自組網(wǎng)等優(yōu)勢(shì),在有線通信設(shè)施遭到破壞、移動(dòng)IP機(jī)制無法使用的惡劣通信環(huán)境中可快速建立應(yīng)急通信滿足特殊需求任務(wù),有助于戰(zhàn)場(chǎng)上部隊(duì)快速展開和推進(jìn),在地震、水災(zāi)、臺(tái)風(fēng)等自然災(zāi)害后的救援以及野外邊遠(yuǎn)地區(qū)作戰(zhàn)指揮中可發(fā)揮重要作用。數(shù)傳電臺(tái)通信方式為半雙工,數(shù)據(jù)的收、發(fā)需要加以控制,否則會(huì)造成數(shù)據(jù)碰撞。多個(gè)數(shù)傳電臺(tái)間的無序數(shù)據(jù)通信會(huì)使得電臺(tái)之間數(shù)據(jù)傳輸錯(cuò)誤率較高,制約數(shù)傳電臺(tái)組網(wǎng)通信作為一種實(shí)用通信手段的推廣應(yīng)用。另外,若想利用數(shù)傳電臺(tái)自組網(wǎng)、超傳輸距離通信,不僅需要對(duì)電臺(tái)收、發(fā)進(jìn)行控制,以高效完成網(wǎng)內(nèi)通信,還需要對(duì)轉(zhuǎn)信路由進(jìn)行設(shè)計(jì),以便達(dá)到超傳輸距離通信的目的。
技術(shù)實(shí)現(xiàn)要素:
為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種數(shù)傳電臺(tái)在組網(wǎng)狀態(tài)下的通信方法,并提供了一種超遠(yuǎn)距離通信的轉(zhuǎn)信方法,實(shí)現(xiàn)了數(shù)傳電臺(tái)的超遠(yuǎn)程數(shù)據(jù)傳輸。
本發(fā)明的技術(shù)方案如下:
一種用于數(shù)傳電臺(tái)自組網(wǎng)超遠(yuǎn)程數(shù)據(jù)傳輸?shù)膽?zhàn)術(shù)通信方法,各節(jié)點(diǎn)首先按照自組網(wǎng)協(xié)議進(jìn)行自組網(wǎng),生成路由表;然后,發(fā)送節(jié)點(diǎn)判斷與網(wǎng)內(nèi)各節(jié)點(diǎn)的距離是否在最大通信距離內(nèi),對(duì)于在最大通信距離內(nèi)的節(jié)點(diǎn),則直接按照收發(fā)協(xié)議與其進(jìn)行通信;對(duì)于在最大通信距離外的節(jié)點(diǎn),則按照轉(zhuǎn)信協(xié)議與其進(jìn)行通信。
所述節(jié)點(diǎn)包括控制電臺(tái)和傳輸電臺(tái),分別用于收發(fā)控制信息和數(shù)據(jù)信息。
各節(jié)點(diǎn)間利用幀傳輸控制信息、數(shù)據(jù)信息和路由信息,分別對(duì)應(yīng)狀態(tài)幀、數(shù)據(jù)幀和路由幀。狀態(tài)幀攜帶路由信息及轉(zhuǎn)信內(nèi)容,數(shù)據(jù)幀用于傳輸電臺(tái)之間通信,攜帶信息長(zhǎng)度、信息內(nèi)容等,路由幀用于自組網(wǎng)時(shí)構(gòu)建路由表。
所述的自組網(wǎng)協(xié)議過程為:
(1)各節(jié)點(diǎn)開始工作時(shí)或空閑超過規(guī)定時(shí)間時(shí)廣播當(dāng)前路由表;
(2)各節(jié)點(diǎn)將收到的路由幀的設(shè)備號(hào)與自身設(shè)備號(hào)形成連接關(guān)系
寫入路由表中,同時(shí)對(duì)比自身路由表與收到的路由表,已存在的
路由不再寫入。
所述的收發(fā)協(xié)議過程為:
(1)發(fā)送節(jié)點(diǎn)控制電臺(tái)發(fā)送傳輸請(qǐng)求;
(2)接收節(jié)點(diǎn)控制電臺(tái)響應(yīng)傳輸請(qǐng)求,檢測(cè)該節(jié)點(diǎn)傳輸電臺(tái)的空閑狀態(tài);若不空閑,接收節(jié)點(diǎn)控制電臺(tái)向發(fā)送節(jié)點(diǎn)反饋其傳輸電臺(tái)的狀態(tài),發(fā)送節(jié)點(diǎn)等待一定時(shí)間后再發(fā)送傳輸請(qǐng)求;若空閑,發(fā)送節(jié)點(diǎn)傳輸電臺(tái)修改其頻率,使之與接收節(jié)點(diǎn)傳輸電臺(tái)頻率一致,接收節(jié)點(diǎn)向發(fā)送節(jié)點(diǎn)反饋其傳輸電臺(tái)的狀態(tài);
(3)發(fā)送節(jié)點(diǎn)傳輸電臺(tái)創(chuàng)建數(shù)據(jù)幀,并利用AES加密算法對(duì)數(shù)據(jù)幀內(nèi)容字段進(jìn)行加密,發(fā)送節(jié)點(diǎn)傳輸電臺(tái)發(fā)送數(shù)據(jù)幀;
(4)接收節(jié)點(diǎn)傳輸電臺(tái)接收并校驗(yàn)數(shù)據(jù)幀,若有錯(cuò)幀,接收節(jié)點(diǎn)控制電臺(tái)將錯(cuò)幀索引號(hào)發(fā)回發(fā)送節(jié)點(diǎn);
(5)發(fā)送節(jié)點(diǎn)傳輸電臺(tái)重新發(fā)送出錯(cuò)的數(shù)據(jù)幀,并重復(fù)步驟(4)過程,直至無錯(cuò)幀;
(6)接收節(jié)點(diǎn)傳輸電臺(tái)利用AES加密算法對(duì)數(shù)據(jù)幀內(nèi)容字段進(jìn)行解密,獲得完整信息。
所述的轉(zhuǎn)信協(xié)議過程為:
(1)發(fā)送節(jié)點(diǎn)檢索其路由表中與接收節(jié)點(diǎn)相關(guān)的路由,將檢索到的各條路由初始化權(quán)值為1;
(2)分別按照相關(guān)路由回溯上一級(jí)路由,各條路由權(quán)值加1;
(3)在各條路由中查找是否存在發(fā)送節(jié)點(diǎn),若存在,則記錄此路由為轉(zhuǎn)信路由之一;若不存在,則重復(fù)步驟(2)過程;
(4)在各轉(zhuǎn)信路由中查找權(quán)值最小的作為轉(zhuǎn)信路由,封裝入狀態(tài)幀中;
(5)發(fā)送節(jié)點(diǎn)按照轉(zhuǎn)信路由發(fā)送狀態(tài)幀,并逐節(jié)點(diǎn)按照所述收發(fā)協(xié)議過程(1)-(5)進(jìn)行通信,直至轉(zhuǎn)信路由結(jié)束;
(6)接收節(jié)點(diǎn)傳輸電臺(tái)利用AES加密算法對(duì)數(shù)據(jù)幀內(nèi)容字段進(jìn)行解密,獲得完整信息。
進(jìn)一步,所述控制電臺(tái)和傳輸電臺(tái)均為數(shù)傳電臺(tái)。工作時(shí)所有節(jié)點(diǎn)控制電臺(tái)使用統(tǒng)一的廣播頻率,而每部傳輸電臺(tái)工作在指定收發(fā)頻率上。
上文所述狀態(tài)幀包括:
幀開始字段,用于存儲(chǔ)幀開始命令字;
幀操作字段,用于存儲(chǔ)幀操作命令字,使幀實(shí)現(xiàn)不同功能;
幀設(shè)備號(hào)字段,用于存儲(chǔ)發(fā)送設(shè)備識(shí)別ID;
幀轉(zhuǎn)信路由表字段,用于存儲(chǔ)轉(zhuǎn)信路由信息;
幀內(nèi)容字段,用于存儲(chǔ)數(shù)據(jù)信息;
幀校驗(yàn)字段,用于存儲(chǔ)校驗(yàn)碼,以便判斷該幀傳輸過程是否出錯(cuò);
幀結(jié)束字段,用于存儲(chǔ)幀結(jié)束命令字。
上文所述數(shù)據(jù)幀包括:
幀開始字段,用于存儲(chǔ)幀開始命令字;
幀操作字段,用于存儲(chǔ)幀操作命令字,使幀實(shí)現(xiàn)不同功能;
幀設(shè)備號(hào)字段,用于存儲(chǔ)發(fā)送設(shè)備識(shí)別ID;
幀總包長(zhǎng)度字段,用于存儲(chǔ)數(shù)據(jù)拆分為數(shù)據(jù)包后總包長(zhǎng)度;
幀索引號(hào)長(zhǎng)度字段,用于存儲(chǔ)索引號(hào)長(zhǎng)度;
幀索引號(hào)字段,用于存儲(chǔ)索引號(hào);
幀內(nèi)容字段,用于存儲(chǔ)數(shù)據(jù)包;
幀校驗(yàn)字段,用于存儲(chǔ)校驗(yàn)碼,以便判斷該幀傳輸過程是否出錯(cuò);
幀結(jié)束字段,用于存儲(chǔ)幀結(jié)束命令字。
上文所述路由幀包括:
幀開始字段,用于存儲(chǔ)幀開始命令字;
幀操作字段,用于存儲(chǔ)幀操作命令字,使幀實(shí)現(xiàn)不同功能;
幀設(shè)備號(hào)字段,用于存儲(chǔ)發(fā)送設(shè)備識(shí)別ID;
幀路由表字段,用于存儲(chǔ)發(fā)送設(shè)備路由表信息;
幀校驗(yàn)字段,用于存儲(chǔ)校驗(yàn)碼,以便判斷該幀傳輸過程是否出錯(cuò);幀結(jié)束字段,用于存儲(chǔ)幀結(jié)束命令字。
本發(fā)明通過設(shè)計(jì)轉(zhuǎn)信路由實(shí)現(xiàn)了自組網(wǎng)數(shù)傳電臺(tái)間的超遠(yuǎn)距離數(shù)據(jù)通信,并且對(duì)電臺(tái)的收發(fā)過程進(jìn)行有效控制,降低了數(shù)據(jù)傳輸?shù)腻e(cuò)誤率。本發(fā)明方法成本低、易實(shí)現(xiàn),通信效率高,且占用頻率資源少。
附圖說明
圖1是本發(fā)明方法的整體流程圖;
圖2是狀態(tài)幀結(jié)構(gòu)圖;
圖3是數(shù)據(jù)幀結(jié)構(gòu)圖;
圖4是路由幀結(jié)構(gòu)圖;
圖5是本發(fā)明實(shí)施例組網(wǎng)通信連接示意圖;
圖6是本發(fā)明實(shí)施例組網(wǎng)拓?fù)鋱D;
圖7是本發(fā)明實(shí)施例的轉(zhuǎn)信協(xié)議過程流程圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明的整體實(shí)施過程進(jìn)行詳細(xì)描述,并結(jié)合一實(shí)施例加以說明。以下描述和實(shí)施例僅為了使本發(fā)明的技術(shù)方案更清楚明確,便于本領(lǐng)域技術(shù)人員理解,但不能作為對(duì)本發(fā)明保護(hù)范圍的限制。
一種用于數(shù)傳電臺(tái)自組網(wǎng)超遠(yuǎn)程數(shù)據(jù)傳輸?shù)膽?zhàn)術(shù)通信方法,該方法所涉及系統(tǒng)包含多個(gè)通信節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)由兩部數(shù)傳電臺(tái)組成,一臺(tái)作為控制電臺(tái),用于收發(fā)控制信息,工作時(shí)所有節(jié)點(diǎn)控制電臺(tái)使用統(tǒng)一的廣播頻率;另一臺(tái)作為傳輸電臺(tái),用于收發(fā)數(shù)據(jù)信息,每部傳輸電臺(tái)工作在指定收發(fā)頻率上。各節(jié)點(diǎn)間利用幀傳輸控制信息、數(shù)據(jù)信息和路由信息,具體包括狀態(tài)幀、數(shù)據(jù)幀和路由幀,各類幀用特定格式封裝。狀態(tài)幀攜帶路由信息及轉(zhuǎn)信內(nèi)容,數(shù)據(jù)幀用于傳輸電臺(tái)之間通信,攜帶信息長(zhǎng)度、信息內(nèi)容等,路由幀用于自組網(wǎng)時(shí)構(gòu)建路由表。
圖2所示為狀態(tài)幀的結(jié)構(gòu)。開頭1個(gè)字節(jié)存放幀開始命令字;1個(gè)字節(jié)存放操作命令字;1個(gè)字節(jié)存放設(shè)備號(hào);n個(gè)字節(jié)存放轉(zhuǎn)信路由;32個(gè)字節(jié)存放信息;1個(gè)字節(jié)存放校驗(yàn)碼;1個(gè)字節(jié)存放幀結(jié)束命令字。幀總長(zhǎng)度不大于50字節(jié)。以下表1為操作字節(jié)各命令字的定義方法。
表1
圖3所示為數(shù)據(jù)幀的結(jié)構(gòu)。開頭1個(gè)字節(jié)存放幀開始命令字;1個(gè)字節(jié)存放操作命令字;1個(gè)字節(jié)存放設(shè)備號(hào);2個(gè)字節(jié)存放信息拆包后總長(zhǎng)度;2個(gè)字節(jié)存放索引號(hào)長(zhǎng)度;根據(jù)拆包總長(zhǎng)度生成相應(yīng)的n個(gè)字節(jié)的索引號(hào);32個(gè)字節(jié)存放信息包;1個(gè)字節(jié)存放校驗(yàn)碼;1個(gè)字節(jié)存放幀結(jié)束命令字。幀總長(zhǎng)度不大于50字節(jié)。
圖4所示為路由幀的結(jié)構(gòu),開頭開頭1個(gè)字節(jié)存放幀開始命令字;1個(gè)字節(jié)存放操作命令字;1個(gè)字節(jié)存放設(shè)備號(hào);使用n個(gè)字節(jié)存放路由表;1個(gè)字節(jié)存放校驗(yàn)碼;1個(gè)字節(jié)存放幀結(jié)束命令字。幀總長(zhǎng)度不大于50字節(jié)。
參照?qǐng)D1,該方法包括以下過程:
首先,各節(jié)點(diǎn)電臺(tái)開始工作時(shí)(或空閑超過規(guī)定時(shí)間時(shí),用戶可自行設(shè)定時(shí)間)按照自組網(wǎng)協(xié)議進(jìn)行自組網(wǎng),生成路由表:
1.1各節(jié)點(diǎn)控制電臺(tái)廣播路由幀,路由幀攜帶本節(jié)點(diǎn)路由表,在網(wǎng)內(nèi)廣播;
1.2各節(jié)點(diǎn)控制電臺(tái)收到路由幀后,識(shí)別設(shè)備號(hào),與本節(jié)點(diǎn)設(shè)備號(hào)形成路由,與當(dāng)前路由表對(duì)比,將未記錄的路由寫入路由表;同時(shí),識(shí)別收到的路由表內(nèi)容,將其與當(dāng)前路由表進(jìn)行對(duì)比,將未記錄的路由寫入路由表。
然后,發(fā)送節(jié)點(diǎn)判斷與網(wǎng)內(nèi)各節(jié)點(diǎn)的距離是否在最大通信距離內(nèi),對(duì)于在最大通信距離內(nèi)的節(jié)點(diǎn),其狀態(tài)標(biāo)為“在線”,對(duì)于在最大通信距離外的節(jié)點(diǎn),其狀態(tài)標(biāo)為“離線”。
之后,發(fā)送節(jié)點(diǎn)選擇狀態(tài)為“在線”的節(jié)點(diǎn)作為接收節(jié)點(diǎn),按照下述收發(fā)協(xié)議過程進(jìn)行通信,選擇狀態(tài)為“離線”的節(jié)點(diǎn)作為接收節(jié)點(diǎn),按照下述轉(zhuǎn)信協(xié)議過程進(jìn)行通信。
所述收發(fā)協(xié)議過程如下:
3.1發(fā)送節(jié)點(diǎn)控制電臺(tái)發(fā)送狀態(tài)幀;
3.2詢問接收節(jié)點(diǎn)傳輸電臺(tái)是否空閑;若不空閑,則向發(fā)送節(jié)點(diǎn)反饋其傳輸電臺(tái)的狀態(tài),發(fā)送節(jié)點(diǎn)等待一定時(shí)間后再發(fā)送狀態(tài)幀;若空閑,若空閑,發(fā)送節(jié)點(diǎn)傳輸電臺(tái)修改其頻率,使之與接收節(jié)點(diǎn)傳輸電臺(tái)頻率一致,接收節(jié)點(diǎn)并向發(fā)送節(jié)點(diǎn)反饋其傳輸電臺(tái)的狀態(tài);
3.3發(fā)送節(jié)點(diǎn)傳輸電臺(tái)創(chuàng)建數(shù)據(jù)幀,并利用AES加密算法對(duì)數(shù)據(jù)幀內(nèi)容字段進(jìn)行加密,發(fā)送節(jié)點(diǎn)傳輸電臺(tái)發(fā)送數(shù)據(jù)幀;
3.4接收節(jié)點(diǎn)傳輸電臺(tái)接收并校驗(yàn)數(shù)據(jù)幀,若有錯(cuò)幀,接收節(jié)點(diǎn)控制電臺(tái)將錯(cuò)幀索引號(hào)發(fā)回發(fā)送節(jié)點(diǎn);
3.5發(fā)送節(jié)點(diǎn)傳輸電臺(tái)重新發(fā)送出錯(cuò)的數(shù)據(jù)幀,并重復(fù)步驟3.4過程,直至無錯(cuò)幀,收發(fā)結(jié)束;
3.6接收節(jié)點(diǎn)傳輸電臺(tái)利用AES加密算法對(duì)數(shù)據(jù)幀內(nèi)容字段進(jìn)行解密,獲得完整信息。
所述轉(zhuǎn)信協(xié)議過程如下:
4.1發(fā)送節(jié)點(diǎn)檢索其路由表中與接收節(jié)點(diǎn)相關(guān)的路由,將檢索到的各條路由初始化權(quán)值為1;
4.2分別按照相關(guān)路由回溯上一級(jí)路由,各條路由權(quán)值加1;
4.3在各條路由中查找是否存在發(fā)送節(jié)點(diǎn),若存在,則記錄此路由為轉(zhuǎn)信路由之一;若不存在,則重復(fù)步驟4.2過程;
4.4在各轉(zhuǎn)信路由中查找權(quán)值最小的作為轉(zhuǎn)信路由,封裝入狀態(tài)幀中;
4.5發(fā)送節(jié)點(diǎn)控制電臺(tái)按照轉(zhuǎn)信路由發(fā)送狀態(tài)幀,詢問第一接收節(jié)點(diǎn)傳輸電臺(tái)是否空閑;若不空閑,則向發(fā)送節(jié)點(diǎn)反饋其傳輸電臺(tái)的狀態(tài),發(fā)送節(jié)點(diǎn)等待一定時(shí)間后再發(fā)送狀態(tài)幀;若空閑,發(fā)送節(jié)點(diǎn)傳輸電臺(tái)修改其頻率,使之與第一接收節(jié)點(diǎn)傳輸電臺(tái)頻率一致,第一接收節(jié)點(diǎn)向發(fā)送節(jié)點(diǎn)反饋其傳輸電臺(tái)的狀態(tài);
4.6發(fā)送節(jié)點(diǎn)傳輸電臺(tái)創(chuàng)建數(shù)據(jù)幀,并利用AES加密算法對(duì)數(shù)據(jù)幀內(nèi)容字段進(jìn)行加密,發(fā)送節(jié)點(diǎn)傳輸電臺(tái)發(fā)送數(shù)據(jù)幀;
4.7第一接收節(jié)點(diǎn)傳輸電臺(tái)接收并校驗(yàn)數(shù)據(jù)幀,若有錯(cuò)幀,第一接收節(jié)點(diǎn)控制電臺(tái)將錯(cuò)幀索引號(hào)發(fā)回發(fā)送節(jié)點(diǎn);
4.8發(fā)送節(jié)點(diǎn)傳輸電臺(tái)重新發(fā)送出錯(cuò)的數(shù)據(jù)幀,并重復(fù)步驟4.7過程,直至無錯(cuò)幀;
4.9檢查轉(zhuǎn)信路由是否結(jié)束;若未結(jié)束,則返回步驟4.5,按照轉(zhuǎn)信路由與下一接收節(jié)點(diǎn)進(jìn)行通信,直至轉(zhuǎn)信路由結(jié)束;
4.10最后的接收節(jié)點(diǎn)傳輸電臺(tái)利用AES加密算法對(duì)數(shù)據(jù)幀內(nèi)容
字段進(jìn)行解密,獲得完整信息。
下面以四個(gè)節(jié)點(diǎn)組網(wǎng)為例來說明本發(fā)明的具體實(shí)施過程。
圖5所示為四節(jié)點(diǎn)組網(wǎng)通信的連接示意圖,四個(gè)節(jié)點(diǎn)標(biāo)記為節(jié)點(diǎn)A、節(jié)點(diǎn)B、節(jié)點(diǎn)C、節(jié)點(diǎn)D,每個(gè)節(jié)點(diǎn)能夠在10公里以內(nèi)進(jìn)行無線通信。節(jié)點(diǎn)A與節(jié)點(diǎn)D、節(jié)點(diǎn)B與節(jié)點(diǎn)C之間進(jìn)行超傳輸距離通信時(shí),可分別利用節(jié)點(diǎn)B/C、節(jié)點(diǎn)A/D進(jìn)行轉(zhuǎn)信。即節(jié)點(diǎn)A將信息發(fā)送給節(jié)點(diǎn)B/C,節(jié)點(diǎn)B/C將信息發(fā)送給節(jié)點(diǎn)D;節(jié)點(diǎn)B同理。
圖6所示為四節(jié)點(diǎn)組網(wǎng)的范例,表2為圖6所示組網(wǎng)范例下各節(jié)點(diǎn)路由表的生成過程。其中節(jié)點(diǎn)A的路由表包含A-B、A-C、B-C、C-D。
表2
圖7展示了在圖6所示組網(wǎng)方式下,實(shí)現(xiàn)A與D通信的轉(zhuǎn)信協(xié)議工作過程。發(fā)送節(jié)點(diǎn)檢索路由表,找到節(jié)點(diǎn)D相關(guān)路由:C-D,同時(shí)權(quán)值初始化為1;判斷該路由上有無節(jié)點(diǎn)A;沒有,回溯C-D上一路由:A-C、B-C,同時(shí)兩條路由權(quán)值分別加1;判斷路由上有無節(jié)點(diǎn)A;有,確定轉(zhuǎn)信路由之一為A-C、C-D,權(quán)值為2;沒有,回溯B-C上一路由:A-B,同時(shí)權(quán)值加1;判斷路由上有無節(jié)點(diǎn)A;有,確定轉(zhuǎn)信路由之二為:A-B、B-C、C-D,權(quán)值為3;比較權(quán)值大小,選擇權(quán)值最小的路由為轉(zhuǎn)信路由,封裝入狀態(tài)幀,利用AES加密算法對(duì)狀態(tài)幀內(nèi)容字段進(jìn)行加密;節(jié)點(diǎn)A發(fā)送狀態(tài)幀,狀態(tài)幀按照路由表將信息轉(zhuǎn)信至節(jié)點(diǎn)D;節(jié)點(diǎn)D利用AES加密算法對(duì)狀態(tài)幀內(nèi)容字段進(jìn)行解密,完成轉(zhuǎn)信通信。其他組網(wǎng)方式下的轉(zhuǎn)信過程類比上述過程。