陳中良,李留青
(1.黃淮學(xué)院網(wǎng)絡(luò)信息管理中心,河南駐馬店463000; 2.黃淮學(xué)院經(jīng)濟管理系,河南駐馬店463000)
海上導(dǎo)航系統(tǒng)的可擴展性及分布式算法架構(gòu)研究
陳中良1,李留青2
(1.黃淮學(xué)院網(wǎng)絡(luò)信息管理中心,河南駐馬店463000; 2.黃淮學(xué)院經(jīng)濟管理系,河南駐馬店463000)
摘要:現(xiàn)代海上各種基于導(dǎo)航定位系統(tǒng)的應(yīng)用越來越多,如基于導(dǎo)航定位系統(tǒng)的航運業(yè)務(wù)﹑目標(biāo)物跟蹤系統(tǒng)等?,F(xiàn)有海上導(dǎo)航系統(tǒng)大多基于特定用戶及服務(wù),信息平臺大多基于B/S,不能支持大規(guī)模的數(shù)據(jù)并發(fā)訪問。而隨著應(yīng)用業(yè)務(wù)及用戶的增多,其性能已經(jīng)越來越不能滿足要求,并且系統(tǒng)的可擴展性較差。本文重點研究了現(xiàn)有的基于物聯(lián)網(wǎng)及云計算的架構(gòu),利用云端服務(wù)器給導(dǎo)航的應(yīng)用服務(wù)進行邏輯劃分,提出一種可擴展的基于物聯(lián)網(wǎng)與云計算的海上導(dǎo)航系統(tǒng)。
關(guān)鍵詞:導(dǎo)航系統(tǒng);云平臺;分布式架構(gòu)
Research on the scalable and distributed algorithm of maritime navigation system
CHEN Zhong-liang1,LI Liu-qing2
(1.Network Information Management Center,Huanghuai University,Zhumadian 463000,China; 2.School of Economics and Management,Huanghuai University,Zhumadian 463000,China)
Abstract:The application of modern marine navigation positioning system increase quickly,for example shipping activity and target tracking system.Most of the existing maritime navigation system is based on B/S architecture,can not support large-scale data access.This paper analyzes the cloud computing architecture,use cloud server to classify the navigation application service,proposed the scalable and distributed algorithm of maritime navigation system.
Key words:navigation system; cloud station;distributed architecture
現(xiàn)有的海上導(dǎo)航系統(tǒng)大多是基于B/S、C/S[1]架構(gòu),其擴展性能較差。隨著海上導(dǎo)航信息的應(yīng)用服務(wù)及用戶越來越多,其性能越來越不能滿足要求。而基于物聯(lián)網(wǎng)及云計算的平臺架構(gòu),能夠?qū)⒑I蠈?dǎo)航綜合系統(tǒng)平臺按照服務(wù)進行劃分,進行分布式的計算﹑存儲及處理。用戶對導(dǎo)航服務(wù)平臺的請求響應(yīng)通過不同接口發(fā)送至云端服務(wù)器平臺,請求服務(wù)器根據(jù)請求的類型發(fā)送至各分布式處理器進行處理,并把結(jié)果返回給客戶。
基于此的架構(gòu)能夠有效的減少海上導(dǎo)航系統(tǒng)信息處理中心的總負荷,并且能夠?qū)Ω鞣N類型的用戶請求進行分類,利用負載均衡的原理把信息處理算法分布在不同的計算節(jié)點,提高了整體架構(gòu)各硬件處理器的運行效率,能夠滿足現(xiàn)代化的海上導(dǎo)航通信系統(tǒng)實時性能要求。
本文重點研究現(xiàn)有基于物聯(lián)網(wǎng)及云計算的架構(gòu),利用云端服務(wù)器給導(dǎo)航的應(yīng)用服務(wù)功能進行劃分,提出一種可擴展的基于物聯(lián)網(wǎng)與云計算的海上導(dǎo)航系統(tǒng)。
1.1導(dǎo)航系統(tǒng)架構(gòu)
目前海上導(dǎo)航系統(tǒng)的架構(gòu)大多是基于B/S,具
體由以下幾部分組成:
1)大型信息處理器:如計算機設(shè)備等,用來對導(dǎo)航算法進行處理。
2)數(shù)據(jù)庫系統(tǒng):對用戶的需求信息及導(dǎo)航信息進行存儲。
3)監(jiān)控系統(tǒng):用來對導(dǎo)航系統(tǒng)的軟硬件進行監(jiān)控,發(fā)下異常情況并記錄。
4)用戶端軟件:用來進行導(dǎo)航數(shù)據(jù)請求。
基于B/S架構(gòu)[2]的導(dǎo)航系統(tǒng)架構(gòu)如圖1所示。
圖1 基于B/S架構(gòu)的導(dǎo)航系統(tǒng)架構(gòu)Fig.1 The navigation system architecture based on B/S
此架構(gòu)把所有的導(dǎo)航定位系統(tǒng)的信息處理功能集中于一臺高性能計算機進行運算,當(dāng)海上導(dǎo)航系統(tǒng)用戶較少時,能滿足實時性要求?,F(xiàn)有的海上基于導(dǎo)航定位的應(yīng)用越來越多,對于集中式的信息處理已經(jīng)越來越不能滿足要求。
1.2云平臺模型
云計算機服務(wù)平臺是基于分布式架構(gòu)的系統(tǒng),對系統(tǒng)功能按照邏輯劃分為管理及核心通信棧兩部分。
管理部分是對整個系統(tǒng)進行配置﹑作業(yè)調(diào)度及監(jiān)控等,負責(zé)整個平臺的性能管理及計費功能,屬于外圍功能。
核心棧是整個云平臺的最重要部分,其中又可以分為3層結(jié)構(gòu)[3]:
1)硬件資源層:由具體的計算資源﹑存儲資源以及通信資源組成,通過虛擬化劃分為一個個邏輯資源單元,這些具體資源可以處于同一物理位置,也可以分散在不同地方。
2)平臺層:主要是對按照邏輯劃分后的資源進行控制,如計算資源層負責(zé)整個云服務(wù)器計算資源的管理,并對作業(yè)的分配﹑調(diào)度進行控制,以保證系統(tǒng)資源的最大利用率,并可以對資源進行擴展。而存儲子層則對云端服務(wù)器的并行文件系統(tǒng)進行管理,同時能夠進行數(shù)據(jù)備份等功能。
3)應(yīng)用層:負責(zé)對外部的應(yīng)用及客戶提供統(tǒng)一的接口,并進行分類管理。
圖2 云計算平臺架構(gòu)Fig.2 The cloud computing platform architecture
2.1架構(gòu)的設(shè)計原理
由于海上基于導(dǎo)航應(yīng)用系統(tǒng)及用戶越來越多,平臺基于以下幾個原則:
1)采用虛擬化技術(shù),將物理虛擬化為邏輯單元,以實行資源的邏輯及有序管理。
2)采用并行存儲文件系統(tǒng),對所有導(dǎo)航應(yīng)用數(shù)據(jù)方位采用并行文件系統(tǒng)進行存儲,可以實現(xiàn)對數(shù)據(jù)的統(tǒng)一管理。
3)采用面向?qū)ο缶幊碳夹g(shù),將針對不同應(yīng)用的服務(wù)獨立為一個對象,這樣可以利用面向?qū)ο笤?,對行為及事?wù)進行抽象化處理。
4)對硬件資源進行分層架構(gòu)處理,各個計算節(jié)點資源之間相互獨立,由統(tǒng)一的管理服務(wù)器進行管理,節(jié)點之間通過并行文件系統(tǒng)進行數(shù)據(jù)交互。
5)支持不同操作系統(tǒng)的客戶端程序,并提供統(tǒng)一的接口處理。
針對海上導(dǎo)航系統(tǒng)的各種不同的應(yīng)用需求,提出基于私有云的導(dǎo)航綜合集成平臺架構(gòu)[4],具體架構(gòu)如圖3所示。
2.2導(dǎo)航集成系統(tǒng)的邏輯模塊
根據(jù)海上導(dǎo)航服務(wù)的需求的擴展性特性,把導(dǎo)航系統(tǒng)按照邏輯劃分為以下功能模塊:服務(wù)識別模塊、數(shù)據(jù)存儲模塊、導(dǎo)航算法功能模塊及支撐模塊等。
圖3 基于私有云的導(dǎo)航綜合集成平臺Fig.3 The integrated navigation platform based on private cloud
服務(wù)識別模塊是對各種不同用戶的服務(wù)需求進行識別,并進行區(qū)別細化的管理,如軍用導(dǎo)航需求和民用導(dǎo)航需求對最終的導(dǎo)航結(jié)果的精度要求不同,服務(wù)識別模塊根據(jù)用戶發(fā)送的導(dǎo)航服務(wù)識別碼級別來調(diào)用不同的導(dǎo)航數(shù)據(jù),進行區(qū)別化對待。
數(shù)據(jù)存儲模塊是整個海上導(dǎo)航系統(tǒng)的核心模塊,主要對地理信息數(shù)據(jù)、衛(wèi)星導(dǎo)航數(shù)據(jù)以及導(dǎo)航雷達數(shù)據(jù)按照不同的功能進行保存,同時不同用戶的管理信息以及最終的導(dǎo)航定位數(shù)據(jù)也保存在數(shù)據(jù)存儲模塊。它不僅僅對數(shù)據(jù)進行保存,還包括數(shù)據(jù)加密、數(shù)據(jù)備份以及容災(zāi)處理。
導(dǎo)航算法功能模塊[5]調(diào)用不同功能以及精度的導(dǎo)航算法,并將導(dǎo)航算法按照功能分布在云平臺中的不同計算節(jié)點,同時通過負載均衡算法來選擇不同的計算節(jié)點。
平臺的邏輯功能劃分如圖4所示。
圖4 平臺邏輯功能模型Fig.4 The platform logic function model
2.3導(dǎo)航集成系統(tǒng)存儲實現(xiàn)
此平臺的實現(xiàn)是基于云計算,把各種不同的海上應(yīng)用服務(wù)分布在不同的計算節(jié)點,同時在并行文件系統(tǒng)中設(shè)計全局數(shù)據(jù)庫。用戶在任何地點可以通過導(dǎo)航集成網(wǎng)絡(luò),根據(jù)自身的權(quán)限訪問導(dǎo)航集成系統(tǒng)中的權(quán)限內(nèi)的服務(wù)以及與全局數(shù)據(jù)庫交互得到所需要的導(dǎo)航信息,從而實現(xiàn)應(yīng)用的擴展性以及給大量的用戶提供服務(wù)。在基于云平臺的導(dǎo)航集成系統(tǒng)中,最重要即為云平臺全局數(shù)據(jù)庫系統(tǒng)。
整個基于云平臺的海上導(dǎo)航集成系統(tǒng)的文件存儲模型如圖5所示。
圖5 云平臺存儲系統(tǒng)架構(gòu)Fig.5 The cloud storage system architecture
本文數(shù)據(jù)存儲系統(tǒng)是基于云平臺中的并行全局數(shù)據(jù)庫進行設(shè)計,云儲存并不是一個統(tǒng)一的存儲設(shè)備,而是通過軟件控制的方式將分布式的不同存儲設(shè)備進行統(tǒng)一管理的一個集合。不同存儲設(shè)備之間通過并行文件系統(tǒng)管理軟件進行管理。這樣,分布在不同位置的存儲設(shè)備能通過統(tǒng)一的接口對外提供數(shù)據(jù)訪問。
上節(jié)介紹了船艦多業(yè)務(wù)導(dǎo)航系統(tǒng)的擴展架構(gòu)及技術(shù)實現(xiàn)。在云平臺中,對不同導(dǎo)航業(yè)務(wù)的預(yù)測分析也是海上導(dǎo)航云平臺高效運行的關(guān)鍵要素。通過對業(yè)務(wù)的預(yù)測來控制對海上不同導(dǎo)航服務(wù)請求的處理,以保障云平臺不會出現(xiàn)資源枯竭的狀態(tài)。
海上導(dǎo)航業(yè)務(wù)系統(tǒng)預(yù)測分為云平臺資源預(yù)測及導(dǎo)航請求服務(wù)預(yù)測。
1)資源預(yù)測對云平臺中的硬件及虛擬邏輯資源的監(jiān)測及歷史數(shù)據(jù)進行分析,通過統(tǒng)計學(xué)的純數(shù)學(xué)分析把得到的動態(tài)數(shù)據(jù)和歷史數(shù)據(jù)轉(zhuǎn)化為時間連續(xù)的觀測數(shù)據(jù),并繪制未來的資源數(shù)據(jù),具體步驟如下:
①選擇監(jiān)控的資源,如存儲、計算節(jié)點及內(nèi)存等。
②對歷史數(shù)據(jù)、當(dāng)前數(shù)據(jù)及未來預(yù)測時間范圍進行定義。
③描述當(dāng)前檢測的瞬間資源動態(tài)數(shù)據(jù)及歷史數(shù)據(jù)。
④利用統(tǒng)計數(shù)學(xué)模型對時間段內(nèi)的未來資源進行預(yù)測。
2)海上導(dǎo)航業(yè)務(wù)預(yù)測
①對所有業(yè)務(wù)按照需求及對導(dǎo)航數(shù)據(jù)精度要求進行劃分,并規(guī)定預(yù)測時間段。
②由邏輯資源映射表統(tǒng)計正在運行導(dǎo)航業(yè)務(wù)的計算節(jié)點。
③監(jiān)測海上導(dǎo)航用戶的請求信息,如正在使用的資源用戶數(shù)、排隊等待用戶以及所有在線用戶。
④根據(jù)用戶請求的時間段及算法要求合理的預(yù)估未來資源占比。
⑤預(yù)設(shè)擬合模擬參數(shù),通過對歷史檢測數(shù)據(jù)及當(dāng)前數(shù)據(jù)計算未來擬合數(shù)據(jù)。
⑥預(yù)測模擬的業(yè)務(wù)數(shù)據(jù)。
⑦以圖形化方式把預(yù)測的資源數(shù)據(jù)及業(yè)務(wù)數(shù)據(jù)展現(xiàn)給用戶,已對用戶請求進行約束。
預(yù)測數(shù)據(jù)分析流程如圖6所示。
圖6 導(dǎo)航業(yè)務(wù)預(yù)測流程圖Fig.6 Flow chart of navigation business forecast
隨著海上船舶數(shù)量及活動的增多,對海上導(dǎo)航定位系統(tǒng)的應(yīng)用也越來越多,并且各種業(yè)務(wù)對不同種類的導(dǎo)航業(yè)務(wù)及導(dǎo)航精度要求不同?,F(xiàn)有的基于單一導(dǎo)航業(yè)務(wù)的B/S架構(gòu)已經(jīng)越來越不能滿足海上導(dǎo)航業(yè)務(wù)多樣化及大并發(fā)的需求。
本文研究了現(xiàn)有的基于物聯(lián)網(wǎng)及云計算架構(gòu),利用云端服務(wù)器給導(dǎo)航的應(yīng)用服務(wù)功能進行邏輯劃分,提出了一種可擴展的基于物聯(lián)網(wǎng)與云計算的海上導(dǎo)航系統(tǒng)。
參考文獻:
[1]ROY T F.Principled design of the modern Web architecture [J].ACM Transactions on Internet Technology,2002,2 (2) :115-150.
[2]CASTRO V.DE,MARCOS E,SANZ M L.Service composition modeling: a case study[C]/ /The Seventh Mexican International Conference on Computer Science,San Luis Potosi,Mexico,2006:101-108.
[3]TEMUJIN G,DANILO P M.A different entropy based method for determining the embedding parameters of a signal[J].IEEE,2003(6) :29-32.
[4]楊瑞.基于NiosⅡ的導(dǎo)航計算系統(tǒng)設(shè)計[J].艦船科學(xué)技術(shù),2014,36(12) :132-135.YANG Rui.The design of navigation system based on Nios [J].Ship Science and Technology,2014,36 (12) : 132 -135.
[5]汪湛清,汪順亭.水下運載體集群定位導(dǎo)航信息生成技術(shù)研究[J].艦船科學(xué)技術(shù),2010,32(2) :3-6.WANG Zhan-qing,WANG Shun-ting.Generation of the fixing and navigation information of the multiple-object of the underwater vehiclespgroup[J].Ship Science and Technology,2010,32(2) :3-6.
作者簡介:陳中良(1980-),男,碩士,實驗師,研究方向為軟件工程和計算機應(yīng)用。
基金項目:河南省科技廳發(fā)展計劃資助項目(142102110088)
收稿日期:2015-02-28;修回日期: 2015-04-16
文章編號:1672-7649(2015) 07-0168-04doi:10.3404/j.issn.1672-7649.2015.07.039
中圖分類號:U666
文獻標(biāo)識碼:A