《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于存儲管理的北斗報文傳輸協(xié)議設計與應用
基于存儲管理的北斗報文傳輸協(xié)議設計與應用
2015年微型機與應用第24期
李文金,蘇凱雄
(福州大學 物理與信息工程學院,福建 福州 350002)
摘要: 針對特殊場景下需通過北斗短報文傳輸大量數(shù)據信息的需求,探討并設計了一種適合于北斗通信的長報文可靠傳輸協(xié)議框架。通過擴展北斗短報文傳輸協(xié)議,結合Redis應用,提出最大重傳次數(shù)和超時等待控制因子,建立北斗長報文傳輸差錯重傳機制,從而解決了大數(shù)據量報文在北斗通道的傳輸問題。實驗結果表明,該傳輸協(xié)議可實現(xiàn)對長報文丟包的差錯重傳功能,有效控制“盲目發(fā)送”現(xiàn)象,使得有效信息率得到提高。
Abstract:
Key words :

  摘  要: 針對特殊場景下需通過北斗短報文傳輸大量數(shù)據信息的需求,探討并設計了一種適合于北斗通信的長報文可靠傳輸協(xié)議框架。通過擴展北斗短報文傳輸協(xié)議,結合Redis應用,提出最大重傳次數(shù)和超時等待控制因子,建立北斗長報文傳輸差錯重傳機制,從而解決了大數(shù)據量報文在北斗通道的傳輸問題。實驗結果表明,該傳輸協(xié)議可實現(xiàn)對長報文丟包的差錯重傳功能,有效控制“盲目發(fā)送”現(xiàn)象,使得有效信息率得到提高。

  關鍵詞北斗衛(wèi)星;長報文;Redis;可靠傳輸

0 引言

  北斗衛(wèi)星導航系統(tǒng)所具備的短報文通信功能,可在我國領土區(qū)域內實現(xiàn)全覆蓋、全天候服務,具有傳送速度快、不受地形條件和環(huán)境氣候影響等優(yōu)勢,為解決遠海、沙漠、深山等無移動網絡信號覆蓋地區(qū)的信息獲取和發(fā)布提供了一種有效的解決途徑。

  北斗衛(wèi)星導航系統(tǒng)的信道資源有限,短報文通信受到北斗卡的通信頻度和通信報文長度方面的限制。同時,受環(huán)境及設備狀態(tài)等影響,通信過程存在數(shù)據丟包現(xiàn)象。這些問題很大程度上影響了短報文的應用效果[1]。實際應用中,傳輸報文長度往往又是不固定的,傳輸?shù)臄?shù)據量較大時,單次北斗短報文通信無法滿足需求。如何有效利用北斗短報文通信資源,豐富其傳輸內容并提高數(shù)據傳輸可靠性,成為北斗相關數(shù)據通信系統(tǒng)建設的一個重要課題。

  本文針對北斗報文傳輸應用的實際需求,結合北斗數(shù)據信息服務平臺應用,設計一種適合北斗長報文傳輸管理的方案。通過對傳輸數(shù)據進行協(xié)議約定,提出報文通信重傳控制因子和長報文信息補發(fā)請求機制,保證北斗終端與系統(tǒng)平臺之間報文的有效傳輸。

1 傳輸協(xié)議分析

  針對北斗短報文通信特點,結合信息服務平臺功能需求,設計基于存儲系統(tǒng)的長報文可靠傳輸框架協(xié)議,以解決數(shù)據信息服務系統(tǒng)的通信問題。

  1.1 系統(tǒng)組成


001.jpg


  本設計系統(tǒng)組成如圖1所示,主要包括:北斗通道端、數(shù)據處理中心、北斗終端、存儲系統(tǒng)和應用系統(tǒng)。

  根據北斗信息服務平臺設計需求,內存數(shù)據庫采用Redis系統(tǒng)。Redis是一款高性能的key-value存儲系統(tǒng),其讀寫效率高,可提高北斗短報文處理能力,降低響應時間長度。配合協(xié)議設置及數(shù)據管理算法,可為長報文分包處理提供一種有效的解決方案。

  1.2 協(xié)議規(guī)約

  北斗短報文功能支持的單次傳輸長度有效,需要對北斗數(shù)據傳輸格式進行協(xié)議拓展[2],如圖2所示。

002.jpg

  本文為使短報文電文內容攜帶控制信息,并豐富數(shù)據類型,對協(xié)議二次封裝[3],具體定義如下:

 ?。?)協(xié)議頭部:為了兼容和區(qū)分標準的北斗數(shù)據格式及平臺擴展協(xié)議格式,電文開頭設置協(xié)議編碼部分,占用半個字節(jié)。

  (2)數(shù)據標識:占用半個字節(jié),每個比特字段分別代表一個標識,如標識是否壓縮、加密或補包數(shù)據等。

  (3)總包數(shù):占用1 B,長報文數(shù)據通過總包數(shù)大小字段來判斷數(shù)據是否需要進行數(shù)據緩存管理。

 ?。?)當前分包編號:占用1 B,標識當前報文屬于分包數(shù)據的第幾個分包。如果數(shù)據不需要分包時,該數(shù)據字段的值和總包數(shù)字段的值都為1。

 ?。?)應用協(xié)議編碼:占用1 B,標識系統(tǒng)通信過程中的不同業(yè)務編碼。如語言、圖像、導航位置等。

 ?。?)應用數(shù)據實體:為電文字段剩余可用部分,具體傳輸數(shù)據格式可由系統(tǒng)業(yè)務根據需要定義。

2 框架模型設計

  為解決報文發(fā)送的頻度和長度受限問題,本文采用北斗多卡機來處理報文收發(fā)工作,實現(xiàn)短報文的多卡工作模式[4],極大提高了短報文的發(fā)送頻度。

  數(shù)據處理整體流程結構如圖3所示。

003.jpg

  2.1 協(xié)議設計

 ?。?)北斗報文協(xié)議

  北斗通道接入層設備使用的北斗用戶機接口協(xié)議包括4.0版本和2.1版本。通過軟件設計一個通用數(shù)據接入實現(xiàn)層,解決北斗數(shù)據源差異性問題。

 ?。?)數(shù)據傳輸控制

  北斗通信主要以大量的小字節(jié)數(shù)據為主,傳輸控制除對長報文數(shù)據編解碼外,還配合存儲系統(tǒng)實現(xiàn)對分包數(shù)據的重傳管理。

  下發(fā)分包數(shù)據時,先將數(shù)據存入Redis并設置有效期,分包發(fā)送結束后更新發(fā)送狀態(tài)。若在數(shù)據有效期內收到重傳請求,則根據請求報文表明的編碼重發(fā)分包,并延長存儲數(shù)據的有效期,同時將重傳請求計數(shù)加1。若重傳超過N次,清除該存儲數(shù)據,結束本條長報文的緩存管理。N值由系統(tǒng)能力設定,默認為3。

  數(shù)據接收處理算法流程如圖4所示。

004.jpg

  2.2 緩存管理

  由于存儲的分包對象信息較多,本文采用Hash數(shù)據結構管理數(shù)據,并采用Redis默認的數(shù)據過期策略處理無效數(shù)據。同時,本文對緩存對象結構設置了數(shù)據發(fā)送標識及發(fā)送次數(shù)計數(shù),以便差錯重傳過程中能有效識別重傳數(shù)據狀態(tài)。

  2.3 自適應差錯重傳

  針對長報文數(shù)據傳輸過程中存在的丟包現(xiàn)象,參考文獻[5]中提出了反饋機制,但只有反饋機制的情況下,若通信成功率低,容易造成循環(huán)反饋或長時間等待反饋的現(xiàn)象,盲目請求重發(fā)嚴重浪費了北斗帶寬資源。參考文獻[6]提出了確認答復機制,但在需要緩沖的數(shù)據量大時沒有提出對應管理方式。本設計考慮北斗通信過程中實際通信流量限制等因素,差錯重傳方式參考并簡化TCP/IP傳輸機制。同時,為防止出現(xiàn)反復重復發(fā)送重傳請求或長時間等待補包數(shù)據帶來的資源開銷問題,引入了重傳控制因子,由請求計數(shù)N和補包等待時間T兩個因素共同組成。同時對重傳請求機制設定發(fā)送重傳請求次數(shù)的限制,并在接收補包數(shù)據過程中增設可動態(tài)調整等待長度機制。等待時間T=C×t,其中t為30 s的等待時間,C為丟包總數(shù)。若在N次的T時間內都沒有收到補包數(shù)據,則放棄請求重傳;若N次重傳請求中有收到補包數(shù)據,但還沒接收完整且N>1時,重新賦值N為N/2,并重新執(zhí)行請求重傳過程。

  以接收端的丟包請求重傳為例,控制因子自適應調整算法包含重傳請求控制和數(shù)據補包處理兩部分。重傳請求控制流程負責對Redis中存在的緩存數(shù)據進行重傳并管理控制因子參數(shù)N和T,具體流程如圖5所示。

005.jpg

  數(shù)據補包處理負責對補包報文進行處理,更新緩存數(shù)據,并根據實際補包情況動態(tài)調整控制因子,具體流程如圖6所示。

006.jpg

3 測試分析

  測試協(xié)議框架過程采用北斗終端上報海洋漁業(yè)數(shù)據信息,測試設備均采用北斗多卡機設備,每個設備接入16張北斗卡。測試過程以發(fā)送230個漢字的長報文進行多組對比通信,部分測試數(shù)據如表1所示。

001.jpg

  從表1可看出,引入控制因子后,通信出現(xiàn)丟包時,平臺能夠自動完成補包請求報文,雖然會損耗報文用于發(fā)送重發(fā)請求,但通過控制因子的調整,避免了盲目發(fā)送請求的現(xiàn)象,提高了整體通信有效率。第二組數(shù)據有效通信率沒有得到有效提高,這是實際通信中受到環(huán)境影響,導致請求重發(fā)過程沒有得到有效的響應。測試結果表明,本文的北斗報文可靠傳輸協(xié)議框架設計合理,能夠有效解決大數(shù)據量報文信息在北斗短報文傳輸過程中存在的丟包重傳問題,驗證了本方案的準確性和可行性。

  4 結論

  隨著北斗衛(wèi)星導航系統(tǒng)建設力度的不斷加大,基于北斗短報文通信的應用也越來越多。本文在分析北斗衛(wèi)星導航短報文通信功能的特點基礎上,結合實際應用需求,探討了基于存儲系統(tǒng)的報文可靠傳輸框架方案設計及實現(xiàn),對將北斗短報文通信更廣泛而深入地應用在航空航海運輸、物聯(lián)網及地理監(jiān)測等方面具有一定的借鑒和參考意義,有助于北斗在信息化應用中發(fā)揮更大作用。

  參考文獻

  [1] 史向陽.北斗系統(tǒng)在海上多媒體數(shù)據傳輸中的應用研究[D].大連:大連海事大學,2014.

  [2] 楊濤,黃森,鐘戎強,等.基于本體的北斗信息采集系統(tǒng)研究[J].電腦編程技巧與維護,2012(24):45-46,116.

  [3] Mao  Xia, Liu Xiang, Feng Tao, et al. A communication protocol of man overboard system based on BeiDou[C]. 2014 IEEE 17th International Conference on Intelligent Transportation Systems(ITSC), Qingdao, China, 2014: 1910-1911.

  [4] 繆袁泉,丁琪,胡知斌,等.基于北斗短報文功能的疏浚船舶數(shù)據傳輸系統(tǒng)設計[J].中國港灣建設,2014(10):53-56.

  [5] 姚作新.基于北斗衛(wèi)星短信通信方式的無人值守自動氣象站網[J].氣象科技,2012,40(3):340-344.

  [6] 張維杰,陳歡,羅靜,等.基于北斗衛(wèi)星的機動衛(wèi)星通信地球站遠端技術支援系統(tǒng)研究[J].微型機與應用,2015,34(4):58-60,63.


此內容為AET網站原創(chuàng),未經授權禁止轉載。