李金鳳



【摘 要】為了解決民用服務總線技術在Ad Hoc網絡環境的局限性問題,采用結合終端呈現能力的寬帶服務緩存與離線服務、自適應內容分發與數據自適應壓縮技術,提出了適用于Ad Hoc網絡環境自適應的服務總線架構方案,并通過實驗驗證了設計的有效性。
【關鍵詞】Ad Hoc網絡 服務總線 數據內容自適應
doi:10.3969/j.issn.1006-1010.2016.20.007 中圖分類號:TP393 文獻標志碼:A 文章編號:1006-1010(2016)20-0036-05
1 引言
針對日益增長的信息共享和業務整合的需求,基于SOA(Service Oriented Architecture,面向服務的體系架構)的企業應用集成已是大勢所趨。基于SOA的ESB(Enterprise Service Bus,企業服務總線)可屏蔽各類異構網絡環境、操作系統、編程語言的差異,在固定網絡環境得以有效應用。若將其應用于Ad Hoc網絡,則需考慮其適應性。現有的SOA關鍵技術XML(Extensible Markup Language,可擴展標記語言)、Web Service等均建立在具備可靠通信、高帶寬能力的TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協議/因特網互聯協議)網絡之上,而Ad Hoc網絡具有通信不穩定、帶寬受限、終端性能低下等特點[1],如果無線用戶想要獲取固定網絡的服務資源,必然受到無線環境的約束,無法忍受固定網絡服務技術帶來的負荷影響。因此,需要對目前現有的服務技術進行改進,以解決無線環境的適應性難題,提高無線用戶訪問固定網絡服務的可行性和效率,從而實現Ad Hoc網絡環境的信息共享和業務整合需求。
鑒于國外的研究經驗以及國內的技術基礎[2-3],本文提出一種適用于Ad Hoc網絡的環境自適應服務總線架構,通過數據內容自適應技術來解決Ad Hoc網絡環境的約束。
2 系統結構
在Ad Hoc網絡環境中搭建基于SOA的系統框架,實現服務共享與協作,需要增加適應于無線受限環境的設計技術,以減輕其約束影響,如圖1所示。可以從兩個角度來考慮設計方法:
(1)與服務相關的:將設計方法作為服務的一部分,直接在服務中增加對環境的適應性處理;
(2)獨立于服務的:將設計置于服務總線之中,既減輕服務的復雜性,也便于重用[4-6]。
本文選用方法(2),提出一種適用于Ad Hoc網絡的環境自適應服務總線架構。
本文提出的Ad Hoc網絡環境自適應服務總線包括兩大組件:業務邏輯組件和數據訪問組件。其系統結構如圖2所示:
2.1 業務邏輯組件
業務邏輯組件由四大功能部件組成,包括:Ad Hoc網絡接口、固定網絡接口、服務代理和數據內容自適應。數據內容自適應作為核心功能部件,可進一步分解為:寬帶服務緩存、離線服務、自適應內容分發、數據自適應壓縮和協議轉換。
◆Ad Hoc網絡接口:為服務總線提供與Ad Hoc網絡的通信接口,實現無線環境消息的接收和發送功能。考慮到帶寬有限,根據終端呈現能力的不同,本系統選擇靈活、標準、輕量級的消息格式,包括VMF(Variable Message Format,二進制消息格式)、經過高效壓縮的SOAP(Simple Object Access Protocol,簡單對象訪問協議)消息,為無線用戶提供高效的傳輸服務。在國內外Ad Hoc網絡研究中,VMF協議已在無線終端得以有效推廣使用。
◆固定網絡接口:為服務總線提供與固定網絡的通信接口,實現固定網絡消息的接收和發送功能。使用XML/SOAP/Web Service技術,實現面向服務架構。
◆服務代理:服務總線為各服務提供代理功能,它通過UDDI(Universal Description Discovery and Integration,通用描述、發現和集成)目錄服務器獲取待訪問服務的屬性(包括服務地址、接口等信息),代理客戶端訪問服務以獲取服務應答,并向客戶端轉發服務應答。
◆數據內容自適應:根據Ad Hoc網絡環境特點,以減輕網絡帶寬占用和終端處理負荷為目標,開展針對性設計。包括:
寬帶服務緩存:將遠端的固定網絡服務(簡稱寬帶服務)前端化,提供服務數據的臨時緩存,以提高訪問效率。在有效期內,當用戶重復請求該服務或服務器離線時,對用戶返回本地緩存的服務數據。
離線服務:為無線用戶的不穩定連接提供服務保證。若無線用戶請求服務時發生連接中斷,則服務總線為其保存服務應答,并在用戶恢復連接時向其推送服務應答。
自適應內容分發:根據接收方無線終端的設備能力(如屏幕大小、計算能力、內存、存儲容量、操作系統、瀏覽器和網絡帶寬等),自適應調整傳輸內容。接收終端能力越差,送達的數據內容將越少,以減小終端處理負荷。
數據自適應壓縮:根據用戶終端呈現能力,對服務數據進行自適應的數據壓縮,以實現Web服務的輕量化。
協議轉換:提供消息翻譯功能,實現Ad Hoc網絡與固定網絡之間消息的協議格式轉換。例如,無線終端選用輕量級二進制協議VMF技術,服務總線通過對VMF消息與SOAP/XML消息協議轉換,支持無線用戶對固定網絡服務的訪問。
(1)寬帶服務緩存與離線服務
Ad Hoc網絡服務總線通過將固定網絡服務(簡稱寬帶服務)如氣象、地圖服務等的服務數據在本地緩存,為無線用戶訪問寬帶服務提供網關功能,如圖3所示:
◆當無線用戶初次成功獲取固定網絡服務(如氣象服務)時,將服務數據寫入服務總線的本地緩存,則有效期內當用戶再次訪問該服務時,直接通過本地緩存提供服務應答而無需訪問網絡,以提高訪問效率。
◆當服務器離線或擁塞時,對用戶返回本地緩存,以提高服務成功率。
◆服務總線為離線用戶保存服務數據,并在用戶恢復連接時向其推送服務應答。
(2)自適應內容分發
Ad Hoc網絡服務總線結合呈現服務,根據接收方無線終端的設備能力(如屏幕分辨率、CPU類型、內存、存儲容量、系統軟件特性和網絡帶寬等特征),自適應調整傳輸內容。接收終端能力越差,送達終端的數據內容將越少,以減小終端處理負荷,提高服務應答效率。以訪問氣象服務為例,實現流程如圖4所示:
◆無線終端定期向呈現服務器上報自身的設備能力,呈現服務定期更新終端能力的數據信息。
◆當用戶請求氣象服務時,服務代理結合呈現服務提供的終端設備能力信息,根據預設規則選擇適合的數據內容調整方法,將服務應答數據(氣象信息)轉換為適用于當前用戶接收的數據格式后再行分發,從而實現自適應內容分發。
◆數據內容調整方法包括內容分頁顯示、分層顯示、多媒體格式轉換與調整技術等。
(3)數據自適應壓縮
根據客戶端接入帶寬能力和服務應答數據類型,本系統提供一種數據自適應壓縮的機制,實現Web服務的輕量化。該策略可以降低數據傳輸量與響應時間,有效地改善Web服務性能。
◆根據“呈現服務”提供的客戶端接入帶寬信息,服務總線決定是否對SOAP應答消息進行壓縮。當客戶端為窄帶接入時,則對應答消息進行壓縮;當客戶端為寬帶接入時,則不予壓縮處理,以減少由壓縮、解壓縮帶來的處理性能負荷。
◆參考文獻[7]至文獻[13]對SOAP/XML壓縮算法的研究,本系統選擇XMill和Gzip壓縮算法。對典型結構的SOAP/XML文本消息,XMill算法能實現至少20%的壓縮率;Gzip對小于20 kB的文本具有良好的壓縮性能,可以對攜帶圖片、聲音等二進制附件的SOAP消息進行壓縮。經過權衡這2種算法的優缺點,服務總線根據SOAP應答消息的大小和攜帶的附件類型動態來選擇壓縮算法。
2.2 數據訪問組件
數據訪問組件包括寬帶服務數據庫和離線服務數據庫兩部分,具體如下:
(1)寬帶服務數據庫:用于保存固定網絡的服務數據,由“寬帶服務緩存”部件負責建立與維護;
(2)離線服務數據庫:用于保存用戶因離線無法接收到的服務數據,由“離線服務”部件負責建立與維護。
3 實驗分析
下面將通過實驗具體分析在無線帶寬、鏈路穩定性受限因素影響下,該軟件設計方案中服務運行的有效性。
3.1 實驗環境
實驗環境如圖5所示。Ad Hoc網絡服務總線、UDDI目錄服務器、Web服務器(呈現服務、氣象服務)和無線終端共同搭建形成SOA平臺,硬件/軟件運行環境如表1所示。
3.2 實驗結果
無線終端通過SOAP協議接入服務總線,發起氣象預報服務請求。服務應答初始大小4.5 MB,其中攜帶圖片大小2.3 MB。通過Linux系統工具設置網絡鏈路帶寬、時延和丟包率,以模擬無線鏈路。服務總線設備分別啟用民用服務總線、Ad Hoc網絡服務總線,開展測試100次,比較在接入側無線鏈路不同帶寬、時延、丟包率環境下,獲取服務的成功率、響應平均時延和服務應答大小。實驗結果如表2所示。
由表2可見,在無線網絡環境下,通過寬帶服務緩存與離線推送、數據壓縮技術、圖片內容自適應分發技術的應用,本文提出的適用于Ad Hoc網絡的服務總線明顯優于民用傳統服務總線,服務成功率高且服務響應平均時延、服務應答占用帶寬明顯減小。
4 結束語
本文在民用企業服務總線的基礎上,結合無線受限環境特點,提出一種適用于Ad Hoc網絡環境自適應的服務總線架構并進行研究。在Ad Hoc網絡中,通信的不穩定性和帶寬有限是實現SOA架構的主要障礙。實驗結果表明,通過結合終端的呈現能力,本系統提供的寬帶服務緩存與離線服務、自適應內容分發與數據自適應壓縮技術,可減少對網絡帶寬的占用,實現服務輕量化,并提高了服務訪問效率。由此可見,本文提出的適用于Ad Hoc網絡的服務總線技術可降低無線受限環境的約束影響,加速實現服務共享的進程。
參考文獻:
[1] THALES Group. Tactical Service Bus: The flexibility of service oriented architectures in constrained theater environments[R]. 2008.
[2] 付建川,吳正午,朱恩成. 柵格服務總線在戰術級信息系統中的應用研究[A]. 2013中國指揮控制大會論文集[C]. 北京: 國防工業出版社, 2013: 1317-1320.
[3] 王均波,郭雷平,王建斌,等. 移動戰術信息柵格的一種消息服務總線設計方法[J]. 火力與指揮控制, 2013,38(12): 79-82.
[4] DISA. Tactical Edge Service: Design Principles and Patterns[R]. 2011.
[5] Johnathan G, Peter G, Brent R, et al. Tactical Service-Oriented Architecture[R]. Defense Transformation and Net-Centric Systems, 2008.
[6] Fatma D. Tactical Edge Characterization Framework Volume 2: Design Patterns for Tactical Environments[R]. MITRE Technical Report, 2007.
[7] 張勝,包曉玲,舒堅,等. XML壓縮方法的比較分析[J]. 計算機工程, 2009,35(11): 26-28.
[8] 郭荷清,劉正喜. 使用壓縮技術改善Web Service的傳輸性能[J]. 計算機應用與軟件, 2006,23(6): 102-104.
[9] 楊容. XML壓縮算法的分析與比較[J]. 電腦知識與技術, 2007(7): 32-35.
[10] 熊靜,魏建,張旭,等. 移動計算環境下Web服務性能的動態優化策略研究[J]. 寧夏大學學報: 自然科學版, 2008,29(1): 52-55.
[11] 余九峰. 差分解析SOAP消息優化Web服務性能關鍵技術研究[D]. 濟南: 山東經濟學院, 2011.
[12] Sherif Sakr. 調查最先進的XML壓縮技術[EB/OL]. (2011-09-05). http://www.ibm.com/developerworks/cn/xml/x-datacompression/.
[13] Hartmut L, Dan S. XMill: an efficient compressor for XML data[R]. AT&T Labs-Research, 2004.