李海浩 費琪 盧重陽



摘 要:
在全艦計算環境中,針對應用需求變更,應用服務高效的進行自適應演化才能夠充分的利用好各種有限資源。在服務變量定義的基礎上,提出了影響服務質量的相關指標;對服務組合的結構路徑進行了說明,給出不同結構路徑形式下服務質量的計算方法,并提出了組合服務質量模型;對服務變更實例情況進行了分析,最終提出了服務自適應模型算法。
關鍵詞:
全艦計算環境; 組合服務; 自適應
中圖分類號: TP 311
文獻標志碼: A
Research on Self-adaptation Method of Services in Total Ship Computing Environment
LI Laihao1,? FEI Qi2,? LU Chongyang2
(1. No. 91404 Troops of PLA, Hebei Qinhuangdao 066000, China;
2. Jiangsu Automation Research Institute, Lianyungang, Jiangsu 222061, China)
Abstract:
In the total ship computing environment, for the changes of application requirements, the efficient self-adaptive evolution of application services can make full use of various effective resources. Based on the definition of service variables, this paper proposed the related indexes affecting service quality; explained the structural path of service composition, gave the calculation method of services quality under different structural path forms. It also put forward the composite service quality model; analyzed the service change instance. Finally gave the service self-adaptive model algorithm.
Key words:
total ship computing environment; composite service; self-adaptation
0 引言
全艦計算環境是將艦艇裝備研發的關鍵技術,具有標準性、通用性、可裁剪、可移植等特點[1]。全艦計算環境向應用系統以服務的形式提供各類支撐,針對用戶需求,支撐服務怎樣能夠合理、快速、高質量的進行有效組合、重組甚至自適應演化,是公用計算環境應用的重點難點。針對服務各類屬性,對服務變量進行了定義,明確了影響服務質量的各類指標;通過組合服務結構的分析和質量計算方法的研究,提出了組合服務自適應優選方法,該方法可為全艦計算環境各類服務的高效組合提供借鑒。
1 服務屬性
1.1 服務變量的定義
在全艦計算環境下,功能的實現過程可以總結為三步,首先用戶向計算環境提出需求,其次計算環境選擇對應用戶需求的服務,通過算法將服務調用的順序、邏輯結構進行組合,最后將組合服務進行執行,并將結果返給用戶。當計算環境進行服務選擇或組合過程中,用戶的需求發生變化,改變原功能需求,針對新需求,會進行服務重組,為量化優化重組的優劣,給出影響服務組合質量的變量因子。
服務S(Service),在全艦計算環境中,由各類計算資源通過虛擬化而成的服務,比如:存儲服務、分布式計算服務、通信服務[2]等。通過對服務自適應方法存影響因素的總結和分析[3],得出S={ID,Function,In/out,State,Qos}。
其中:ID為服務的唯一標示;Function為服務的功能描述;In/out為服務的輸入輸出;State為服務的狀態,使用-1、0和1分別表示服務不存在,服務異常、無法啟用和服務正常、可正常使用[4]。
2.2 服務質量的定義
衡量服務質量的優劣是一個復雜且不易量化的問題,很少有規范性的標準[5]。這里提出的Qos只是針對有限的評價指標嘗試對服務質量進行量化,根據服務特性,本文給出評價服務質量的7個指標,即Qos={T,Ar,Ad,Ev,Re,Rur,Sa},其中各參數含義如下。
①時間(T):從用戶提出需求到收到響應結果之間的時間。該時間越長,說明服務代價越高。T由兩部分組成,即服務請求識別時間Treq和響應時間Tresp,T=Treq+Tresp。Treq為用戶提交請求后,計算環境查找到歷史記錄是否存在相同或類似的服務請求所花費時間;Tresp為計算環境執行服務所花費時間,包括服務查找、服務組合、服務響應和網絡傳輸等時間。
②可用率(Ar):服務成功訪問率,某服務成功訪問次數n與總訪問次數N的比值,即Ar=n/N。
③調整性(Ad):服務由于不同原因無法完成任務時,能夠被其他服務替代的能力。某服務因異常被掛起,是否有其他服務替代該服務。該調整參數Ad為有替代服務的數量m與服務總數量M的比值,即Ad=m/M。
④評價值(Ev):用戶對服務的評價,數值可根據需求進行確定,并對未評價的服務設置默認值。評價值是長期累計的結果,會在使用過程中趨于穩定,計算方法為:Ev=1n∑ni=1Ev(i)。
⑤效率(Re):單個服務工作時間Tsi與組合服務工作總時間Tto的比值,即Re=Tsi/Tto。
⑥資源利用率(Rur):服務執行所利用的資源主要與環境的CPU和內存有關,為了更加明了的說明過程,這里以CPU的利用率為例進行說明。CPU利用率為服務執行時所占CPU資源的比值,數值可通過性能監視等工具獲取。
⑦安全性(Sa):服務的安全性直接關系上層應用是否能夠正確實現,對武器裝備的戰技指標影響至關重要。全艦計算環境下服務安全值可參考云服務的保密性、完整性、可控性和不可抵賴性等因素[6]設置。
2 服務自適應優選方法研究
服務優選就是在完成用戶需求的情況下,綜合服務的時間消耗、成功訪問率、替代調整能力、評價效果、資源占用率和安全性等方面,得出優化的組合服務的過程。
2.1 組合服務結構分析
根據服務變量定義,組合服務模型為:
F= f(Si)= f{ID(Si),Function(Si),In/out(Si),State(Si),Qos(Si)};
根據服務質量定義,組合服務中任意服務的質量評價模型為:
Q=g(Qos(F))=g{T(F),Ar(F),Ad(F),Ev(F),Re(F),Rur(F),Sa(F)}
通過路徑結構分析,任何組合服務的執行路徑都可由多個服務根據順序結構、并行結構、選擇結構和循環結構組成[7],組合服務的執行路徑示意圖如圖1所示。
2.2 組合服務質量計算方法
為分析組合服務質量模型方便,現假設組合服務只由順序、并行、選擇和循環4個單一結構組成,參與四個結構的服務數量分別為:a、b、c、d,現分別對組合服務質量模型中各變量進行計算,結果如表1所示。
組合服務的實現結構往往由多種結構形式組成,且較為復雜,根據表1中計算方法,可將組合服務分解成多級結構,分別迭代對應公式,可最終計算出組合服務質量評價表達式。
其中:a1…a7分別表示服務質量各指標參數的權重。
3 組合服務自適應優選方法
3.1 服務變更實例
用戶需求發生變更后,簡單的對服務進行刪除或替換操作,可能會引發一系列問題。為便于說明,現用S(a/b)表示服務S的輸入為a,輸出為b,服務變更問題如表2所示。
為保障組合服務變更后的延續性,在服務進行刪除或替換操作時,應考慮有效迭代關系,進行關聯服務的刪除和添加,具體過程如表3所示。
3.2 服務自適應方法
當組合服務接收到用戶新需求后,服務自適應算法會對原組合服務進行異常判斷,分析出那些服務需要進行修改,并根據服務Qos制定新的組合服務,服務自適應方法分析過程如圖2所示。
自適應算法概述如下:
(1) 針對①、②和③,由于能夠滿足用戶需求的服務往往不唯一,算法采用“組合服務質量計算方法”,選取相關服務進行最優組合。
(2) 針對④,分析用戶新需求,在原組合服務中確定不滿足用戶新需求的服務S↓。
(3) 如果S↓是單服務或后續關聯服務刪除需求,直接將相關服務進行刪除操作;如果S↓是單服務替換需求,將S↓確定為被替換服務;如果S↓是后續關聯服務替換需求,將S↓及后續關聯服務一并確定位被替換服務集S↓i。為了方便后續計算,這里將被替換服務集統一為S↓i,當i=1時,即為單服務替換。
(4) 選擇替換服務集CS,將滿足新需求的組合服務S↑j添加到CS中。S↓i和S↑j中i和j的值并非完全相同,根據用戶新需求確定替換和被替換需求的對應數量。
(5) 若CS為空,在組合服務中向前增加被替換服務變更S↓i,重新調用步驟(1)-(4)。若CS不為空,采用“組合服務質量計算方法”,在CS中選取Q最優的S↑j替換S↓i。
(6) 進行服務異常監控,對運行服務狀態進行監控,防止服務異常造成用戶響應中斷。當監測都某服務異常后,記錄發生服務名稱、異常發生時間和原因等信息,將異常服務掛起,調用步驟(1)-(5)。
4 總結
全艦計算環境技術的應用,一定程度上提升了裝備的戰技指標和資源利用率,針對裝備用戶需求的變更,應用服務自適應組合方法可以有效保障裝備的實用性[8]。在全艦計算環境中服務的有效組合在功能屬性的基礎上,需重點考慮服務質量特性。同時,服務的實時自適應動態演化,可以在一定程度減少人工干預,保證服務能夠高質量、高效率的完成用戶提交的各類任務請求。
參考文獻
[1] 董曉明, 石朝明, 黃坤, 等. 美海軍DDG-1000全艦計算環境體系結構探析[J]. 中國艦船研究, 2012, 7(6): 7-15.
[2] 劉衛寧, 李一鳴, 劉波. 基于自適應粒子群算法的制造云服務組合研究[J], 計算機應用, 2012,32(10): 2868-2869.
[3] Bezdek J C. Pattren Recognition With Fuzzy Objective Function Algorithms[J]. Advanced Applications in Pattrern Recognition, 1981.
[4] 張明衛, 朱志良, 張斌,等. 一種基于EQ規則的組合服務運行時自適應方法[J]. 軟件學報, 2015,36(4): 849-866.
[5] 張偉. 美國海軍全艦計算環境發展及關鍵技術[J]. 艦船科學技術, 2016(4): 149-152.
[6] 丁滟, 王懷民, 史佩昌, 等. 可信云服務[J]. 計算機學報, 2015(1): 133-149.
[7] Cardoso, Jorge, et al. Quality of service for workflows and web service processes[J]. Web Semantics Science Services&Agents on the World Wide Web, 2004, 1(3): 281-308.
[8] 朱銳, 王懷民, 馮大為. 基于偏好推薦的可信服務選擇[J]. 軟件學報, 2011,22(5): 852-864.
(收稿日期: 2019.12.23)