胡 誠,邊馥苓
(武漢大學空間信息與數字工程研究中心,湖北武漢430079)
基于P2P和KML的地理空間信息服務
胡 誠,邊馥苓
(武漢大學空間信息與數字工程研究中心,湖北武漢430079)
針對傳統C/S架構下服務器性能和網絡傳輸限制等問題,分析了基于P2P技術和KML地理空間信息服務的特點及其協作方式,設計了兩者相結合的地理空間信息服務架構,結合數字城市項目應用對模型加速數據傳輸的有效性進行了驗證。
P2P;KML;混合P2P網絡;地理空間信息服務

隨著“數字地球”建設逐步深入,當前社會對于空間數據質量需求越來越苛刻。隨著用戶群體逐漸增多,即使在分布式環境下,傳統的基于 C/S的架構也使得大數據量的地理空間信息服務面臨服務節點不穩定、數據傳輸單點瓶頸、服務請求緩慢等問題。對等計算(P2P)技術區別于傳統的C/S模式,能使網絡環境中的節點之間相互通信從而實現資源共享,有利于降低對中央服務器資源的消耗需求[1]。KML格式是OGC宣布的開放地理資訊編碼標準,是基于XML標準使用含有嵌套元素和屬性的標記結構,它描述和保存了地理信息數據(如點、線、圖像、多邊形和模型等)。KML Service是一種將地理空間數據動態轉換為KML數據的地理信息網絡服務方式,類似于WFS[2]。目前,國內外關于P2P技術和地理空間信息服務相結合的研究才剛剛開始[3],應用于工程項目,尤其是結合KML服務方面的研究還較少。本文在借鑒前人經驗的基礎上,提出基于P2P和KML技術相結合的架構,解決傳統地理空間信息服務中數據傳輸的弱點。
P2P網絡服務和Web服務都是網絡共享服務。KML地理空間信息服務是Web服務的一種,它與P2P服務有著相同的特點,但是也存在很大差異。
1.1 P2P技術
P2P網絡執行P2P協議,通過P2P文件共享資源,提供基于內容的服務,部署靈活,節點組織松散,擴展性好,最大限度地利用網絡資源和負載均衡,可滿足“數字地球”和“數字城市”建設性的要求[3]。P2P采用多種傳輸協議解決不同的問題,但異構性、傳輸協議多樣性會導致通信難度增加,可以利用基于開放交互協議XML完善P2P服務。
1.2 KML地理空間信息服務
KML地理空間信息服務執行Web服務規范、OGC、KML標準協議等,通過KML文件發布服務;計算模式相對集中,容易控制;支持跨平臺兼容,異構系統之間可以互操作。KML文件加載速度快,但大范圍、大比例尺的地形、影像柵格、精細三維模型和圖形圖像等大數據加載較慢,集中式環境易發生單點故障導致整體故障。
1.3 協作方式
通過比較分析發現可以采用二者相結合的數據共享模式來實現功能互補。基于KML地理空間信息服務可以通過發布數據量小、結構簡單的KML文件方法解決數據互操作難題。利用P2P技術構建非集中式的對等網絡環境,對等節點之間相互提供服務也接收服務,共享資源,實現服務發布的離散化和網絡可擴展化,提高大數據量傳輸效率;同時,P2P網絡中節點采用XML定義來提高服務發現與數據交互,提升P2P節點之間查找效率與耦合度。
根據上述分析,結合實際應用項目建設需要,為了盡量減少對傳統KML地理空間信息服務結構影響,降低架構更新難度,本文提出了KML文件與P2P文件發布相結合的服務端架構,同時在客戶端采用P2P插件的方式實現與傳統KML地理空間信息服務之間的耦合。
2.1 網絡架構
本文采用混合P2P式網絡模型,主要優點是易于發現和管理節點,消除泛洪算法帶來的網絡阻塞和搜索延時[4],減少對地理空間信息服務質量影響,網絡架構圖如圖1所示。節點通過鄰近超級節點提供的索引目錄與其他節點連接,而不再僅僅依靠KML服務器接收大數據。超級節點具有普通節點所有特性,通過評估物理位置[5]、物理網絡帶寬、接入穩定程度、鄰近節點數量等綜合因素選取普通節點作為超級節點。超級節點類似于DNS服務器,存儲鄰近節點能夠提供的資源索引目錄,使P2P網絡具有自我管理功能,控制節點升降級。KML地理空間信息服務器作為最高級超級節點,生產、存儲并共享全部數據資源。
2.2 服務發布模式
在KML地理空間信息服務器端通過Web Service發布服務,節點客戶端請求經過動態處理后返回輕量的KMZ文件,該文件為KML和P2P文件的打包壓縮文件。KML通過標記語言描述矢量數據,通過等標記地址加載大數據量的本地資源文件(見圖2),包括柵格、多媒體數據、文檔文件,也包含其他KMZ文件等,P2P文件采用XML語言規范描述該資源文件目錄、文件類型、文件屬性和校驗等信息[6](見圖3)。

圖2 KML文件結構實例示范
2.3 獲取服務流程
節點客戶端連接P2P網絡后先讀取本地資源目錄并更新資源索引目錄,讀取P2P文件后獲取鄰近超級節點資源索引目錄,同時也向上級節點和其他超級節點轉發請求,收到資源地址后與連接效率較好的節點連接接收數據,而不需完全依靠中心服務器連接。當該資源文件全部下載完畢后通知客戶端異步加載,更新資源索引目錄,提供資源共享(見圖4)。

圖3 P2P文件結構實例示范

圖4 客戶端獲取服務流程圖
在江西省“數字宜春”地理空間框架與應用項目建設中,公共服務平臺[7,8]的三維數據服務對數據質量要求較高,需要發布海量大范圍、高分辨率影像圖和精細三維模型等。當并發用戶數較大時,傳統分布式C/S架構采用HTTP方式經常導致中心服務器癱瘓?!皵底忠舜骸比S可視化規劃系統(見圖5),采用基于P2P和 KML的地理空間信息服務架構后,服務器響應時間、IO負載和客戶端三維場景文件傳輸速度等得到了很大改善。圖6以測試環境下三維場景加載速度為例對2種傳輸方式效率進行了對比。

圖5 “數字宜春”三維可視化規劃系統運行圖

圖6 基于P2P和HTTP方式連接的三維場景加載速度對比
本文采用P2P與KML相結合的技術有效擴展了地理空間信息服務網絡連通途徑,豐富了 KML技術與P2P環境下地理空間信息服務應用的技術體系。隨著研究深入,后期方向為優化P2P環境下KML數據分割與重建算法,優化節點查找與資源共享策略,擴大P2P應用范圍和加大應用深度等。
[1] 周文莉,吳曉非.P2P技術綜述[J].計算機工程與設計,2006,27(1):76-79
[2] 孫偉,馬照亭,張成成,等.一種基于MapServer的KML地理信息網絡服務實現方法[J].測繪通報,2009(12):53-56
[3] 李春華,張瑋.一種基于P2P網絡的WebGIS體系結構[J].地理空間信息,2007(02):21-24
[4] 楊宗亮.基于P2P的地理空間信息服務架構及相關算法[D].武漢:武漢大學,2010
[5] 郭良敏,楊壽保,郭磊濤,等.P2P網絡中基于區域劃分的超級節點選取機制[J].小型微型計算機系統,2008,29(2):208-212
[6] 謝富平.基于XML/Web Services的P2P文件共享系統的實現[J].電子科技,2005(06):43-46
[7] CH/T 9003-2009.地理空間框架基本規定[S].
[8] CH/T 9004-2009.地理信息公共平臺基本規定[S].
Research on P2P and KML Based on Geospatial Information Services
by HU Cheng
This paper aimed the problems of limited performance of servers and network in traditional C/S mode,analyzed the characteristic and combination between P2P and KML geospatial information services,and designed new cooperated architecture.The test from practical application in digital city project approved the model can improve date transmission.
P2P,KML,hybrid P2P,Geospatial Information Service
2011-09-23
項目來源:地理空間信息工程國家測繪局重點實驗室經費資助項目(200905)。
P208
B
1672-4623(2012)02-0001-03
胡誠,博士,研究方向為數字城市、三維可視化。