張楠 趙國生 盛琳陽
摘 要:首先,提出一個具有多層感知功能的可生存系統(tǒng)認知模型;然后,在介紹了高階多型π演算的語法和操作語義的基礎上,對可生存系統(tǒng)認知模型進行形式化描述;最后,實現(xiàn)對可生存系統(tǒng)在不同攻擊下的系統(tǒng)可用性試驗,仿真結果驗證了該形式化描述與分析方法的有效性和可行性。
關鍵字:可生存系統(tǒng);認知模型;形式化描述;量化分析
中圖分類號:TP302 文獻標識號:A 文章編號:2095-2163(2014)06-
Abstract:Firstly, proposed a cognitive model for survivable system with a multilayer cognitive ability; then, based on the introduction of the syntax and operational semantics of high-order multi-type π calculus, took formal modeling of cognitive model for survivable system; finally, achieved the tests about system availability in different attacks of survivable system, simulation results proved that the formal description and analysis method was is feasible and effective.
Keywords:Survivable System; Cognitive Model; Formal Modeling; Quantitative Analysis
0 引 言
可生存性[1]致力于網(wǎng)絡系統(tǒng)關鍵服務的保障研究,旨在系統(tǒng)遭受故障、攻擊和意外事件的情況下,網(wǎng)絡系統(tǒng)仍能完成語氣任務??缮嫘缘暮诵乃枷朐诖苏n可表征為自適應的“容”,即使系統(tǒng)在非正常情況下仍能繼續(xù)工作,為用戶提供網(wǎng)絡系統(tǒng)的關鍵任務功能,也就是當系統(tǒng)遭遇入侵,甚至其重要組件發(fā)生損毀時,系統(tǒng)只要仍然具備在結構上合理配置資源,在攻擊下合理重組資源的能力,就能夠及時修復已損的關鍵服務,并可保證各種關鍵服務的實時完成。同時,認知計算[2]是認知網(wǎng)絡[3]中的一項計算技術,而該計算作為下一代網(wǎng)絡的核心理念,自提出以來就吸引了研究各界的高度關注,其研究目標即是使網(wǎng)絡系統(tǒng)能夠具備推理、學習、交互和自感知能力。為此,本文通過將認知計算中的認知特性引入到可生存系統(tǒng)認知能力的研究中,并基于高生存、高性能的應用需求,重點對可生存系統(tǒng)認知模型開展了全面您的探索和論述。
1 可生存系統(tǒng)認知模型
現(xiàn)有網(wǎng)絡系統(tǒng)存在諸多復雜性問題,如無法有效抵御非善意攻擊,缺乏自適應能力,同時需要過多的人工干預,以及管制效力較弱等,系統(tǒng)的安全性、可靠性、集成性和適應性等方面的內在缺陷也陸續(xù)暴露,已經(jīng)難于適應以無線、寬帶、移動和IP化為其基本特征的新一代網(wǎng)絡系統(tǒng)的發(fā)展需求,時下亟需開展有關新方法、新理論和新技術的探索性研究,以尋獲如上問題的有效解決?;诖耍疚募刺岢隽艘粋€具有多層認知功能的可生存系統(tǒng)認知模型。
認知單元是可生存系統(tǒng)實現(xiàn)其自主認知能力的前提條件,即為可生存系統(tǒng)自主認知過程提供基本元素和現(xiàn)實載體。認知單元具備完善的認知處理功能,可以指導被控元素實現(xiàn)自我感知、上下文感知、自我配置、自我優(yōu)化、自我適應和自我保護等特性。可生存系統(tǒng)認知單元由自主認知策略庫驅動,主要包括認知環(huán)MDE(Monitor-Decide-Execute)和相對應的調用行為接口,具體結構如圖1所示。MDE包含監(jiān)測(Monitor)、決策(Decide)和執(zhí)行(Execute)等構件,經(jīng)由系統(tǒng)感知器收集特定網(wǎng)絡域內的元素信息,進行分析并推理,生成相應的操縱指令序列,再經(jīng)過“自我管理”行為調用接口進一步指導網(wǎng)絡實現(xiàn)自我容忍、自我恢復、自我配置、自我優(yōu)化和自我適應等特征。
如圖2所示,圖2左側的接入認知子層負責對各種不同類型傳輸信道的認知,可稱之為在通信能力上的認知。此框架可支持接入多種傳輸信道,通過協(xié)議轉換將眾多通信資源進行抽象、統(tǒng)一,而且在此抽象統(tǒng)一的通信資源基礎上經(jīng)過通信能力的自主認知來實現(xiàn)高生存、高性能、高可信和高適應的通信。可生存系統(tǒng)除了具備傳統(tǒng)網(wǎng)絡所具有的通信能力等眾多特點外,還能夠感知網(wǎng)絡系統(tǒng)當前的生存狀態(tài),并根據(jù)用戶不同的應用需求為使用者做出當前狀態(tài)下的有利判斷或最優(yōu)判斷。此判斷是多個目標決策的過程,即對于不同的應用需求,可以進行多網(wǎng)選擇,也就是在現(xiàn)有連接基礎上,對用戶的需求進行分析,并決定是選用電話網(wǎng)、無線網(wǎng)絡、專用網(wǎng)絡或是其他的通信方式進行信息傳輸,同事盡可能地滿足用戶需求;即使在同一網(wǎng)絡中,也會存在多目標決策的過程。這個決策條件是由使用者預設確定的,一旦決策條件設定完成后,用戶在信息傳輸前依據(jù)本次的傳輸需要,選擇一種或者多種目標屬性,如,高生存、高性能或高集成,可生存系統(tǒng)就會自動地對路由、信道或服務等做出最優(yōu)選擇,不再需要人為干涉,由此而降低了用戶的勞動量,信息選擇和傳輸過程也得以簡化,并且服務質量相應提高,從而使得用戶能夠快捷方便地選擇自己所傾向或需要的傳輸方式。
位于接入認知子層和服務認知子層之間的即是服務代理認知子層,可以有效抵御惡意攻擊,特別是分布式拒絕服務攻擊;同時,也可以隱藏服務器的有關信息,例如服務群的位置、服務器的軟件版本等,從而減少服務器面臨安全威脅的可能;而且,對服務器的狀態(tài)進行監(jiān)控,對用戶透明的服務漂移進行引導;另外,還可為服務器提供均衡服務等關鍵服務。服務代理認知子層主要有以下關鍵模塊:
(1)服務引導。一般情況下,該模塊擔任類似服務注冊中心的角色,引導用戶達到需要服務并綜合服務狀態(tài)。依據(jù)應用性需求,該模塊的擴展功能會對客戶端執(zhí)行驗證的功能,驗證通過的客戶端則將會引導至可用服務。
(2)服務協(xié)同。代理認知子層的服務協(xié)同設計包括多個方面。重點即在代理節(jié)點間進行均衡負載協(xié)同,就是依據(jù)服務器狀態(tài)來執(zhí)行服務器的均衡負載調度;而且,還可依據(jù)代理節(jié)點的無效信息,安裝預先定義的策略進行服務漂移,以保證服務不會間斷。
(3)服務隱藏。服務代理節(jié)點對相關信息進行修改,隱藏服務器的對應生存性狀況,例如服務群位置、服務器軟件版本等,有效降低服務器面臨安全威脅的可能性。
(4)拒絕服務攻擊防御。拒絕服務攻擊嚴重威脅開放型服務。服務代理認知子層可以規(guī)劃并設計拒絕服務攻擊防御模塊,通過識別將大部分拒絕性服務攻擊實現(xiàn)過濾;而且還可通過服務代理認知子層的服務協(xié)同,使得服務代理認知子層在大量分布拒絕服務攻擊下能夠保證較強健的生存能力。
(5)服務監(jiān)控和響應。監(jiān)控服務代理節(jié)點、服務節(jié)點的狀態(tài),發(fā)現(xiàn)并定位故障,依據(jù)預先定義的策略來執(zhí)行安全響應。支持自適應的資源動態(tài)分配模型,正常狀態(tài)下根據(jù)網(wǎng)絡負載或者代理節(jié)點的計算調整資源分配狀態(tài),而在應急狀態(tài)下則可以提高關鍵服務的資源數(shù)量以增強可生存性。
圖2右側的服務認知子層則多個服務節(jié)點構成。各個服務節(jié)點在互相協(xié)同下完成服務,自適應地執(zhí)行負載均衡。同時服務節(jié)點能夠執(zhí)行置信機制、服務多樣化、生存性評估等操作,確保服務不會間斷。并且對資源分配可進行動態(tài)調整,以此確保關鍵服務最大限度的可持續(xù)性。服務認知子層主要有以下幾個模塊:
(1)服務漂移。包括在故障狀態(tài)下進行的服務應急漂移和在健康狀態(tài)下進行的服務主動漂移。其中,服務主動漂移下是根據(jù)預先定義的策略,隨機或定期地在服務節(jié)點間執(zhí)行漂移,以確保惡意攻擊目標的機動性。而應急漂移則是當檢測到有服務發(fā)生故障時,即依據(jù)生存性策略,將服務遷移到當前狀態(tài)下可用并且在未來生存概率最高的節(jié)點之上。
(2)服務多樣化。將服務進行多樣化,以防攻擊下產(chǎn)生的多米諾骨牌效用。對服務的多樣化距離進行定量計算,再選得最優(yōu)的遷移順序和服務組合,如此即可完成多樣化的服務部署。
(3)服務恢復。即是對發(fā)生故障的服務執(zhí)行各種恢復動作。面對SOA風格的應用可以重構方式來執(zhí)行恢復。
(4)置信機制。即是在節(jié)點間建立信任關系管理,力求將遭受入侵節(jié)點區(qū)分開來。
(5)生存性評估。將網(wǎng)絡系統(tǒng)的生存狀態(tài)進行量化評估,并將評估后的結果輸入到安全管理中心,以此影響和制約生存性的策略制定及執(zhí)行。
2 可生存系統(tǒng)認知模型形式化描述
π演算是20世紀90年代并行計算機理論研究領域中高端重要的一種并發(fā)計算模型,由Milner等人擴充CCS(calculus of communicating systems)而得到。高階多型π演算[5]是由Sangiorgi等人在一階π演算的基礎上發(fā)展得來,主要可用于針對系統(tǒng)行為和系統(tǒng)結構都不間斷變化的并發(fā)系統(tǒng)的有關描述。π演算主要有三個關鍵實體:名(name)、抽象(abstraction)和進程(process)。其中,進程作為并發(fā)運行實體的基本單位,可用名來定義通道(channel)及在通道中傳送的各個對象(object);每一個進程均有若干個與其他的進程相互聯(lián)系的通道,進程間的交互即是通過這些共享通道進行和完成的。一階π演算和高階多型π演算至為關鍵的不同之處則在于高階多型π演算的對象名也可以是一個進程,這就使得在交互中互相通信的數(shù)據(jù)也可以是進程,即進程均可以獲得傳遞。而抽象則是建立在進程基礎上的,也就是帶有參數(shù)的進程。將抽象的參數(shù)具體化,便得到一般進程。在高階多型π演算中,通道中傳送的對象和參數(shù)都是具有類型的,具體化抽象的參數(shù)時以及進程交互時要特別注意類型兼容性。
定義1 設N表示名(name)的集合,名由小寫字母表示,,,P,Q表示高階π演算進程,則高階多型π演算進程可定義為:
。
鑒于可生存系統(tǒng)具有的結構復雜、服務多樣以及規(guī)??蓴U展等特性,若對其進行分析,即需首先抽象和簡化可生存系統(tǒng),并將有用信息由實際系統(tǒng)中抽取出來,從而建立形式化模型用以精確描述系統(tǒng)性質和行為。對已建立的可生存系統(tǒng)認知模型的形式化應做到能在抽象程度和描述能力間取得平衡,既有利于推理,又能準確直觀地刻畫并反映系統(tǒng)的屬性,以此而實現(xiàn)對可生存系統(tǒng)認知模型的功能分析。為明確可生存系統(tǒng)認知模型同層中的行為變化和演化過程以及各層之間的交互行為,可運用高階多型π演算,將認知元素和系統(tǒng)元素抽象成一系列的進程,并將元素間的各種關聯(lián)關系抽象成為進程間的消息交互,再運用推理、演算規(guī)則模擬系統(tǒng)的認知過程與演化過程。引入層間映射模型,可以便于抽象且形式化地描述可生存系統(tǒng)的內部結構,如圖3所示。此時,可生存系統(tǒng)認知模型可以做形式化地整體描述如下:
由圖4中我們看出,當h減小時,圖中的三條曲線均呈上升趨勢,如此即說明系統(tǒng)抵抗攻擊的能力越強,隨之系統(tǒng)的可用性也就越高。其中,cocurrent attacks所對應曲線在最下方,而single point attacks所對應曲線在最上方,這就說明攻擊的嚴重性直接影響系統(tǒng)的性能。三者中cocurrent attacks的攻擊強度最大,系統(tǒng)可用性卻最低;而single point attacks 的攻擊強度最弱,系統(tǒng)可用性即最高;同時,sequential attacks 的攻擊強度居中,其系統(tǒng)可用性也就位于三者之中。
通過以上試驗可得到如下結論:本文所提出的可生存系統(tǒng)認知模型的形式化描述方法可以正確地反映出可生存系統(tǒng)的性能強度;系統(tǒng)性能不僅與其所受攻擊的攻擊強度、攻擊嚴重性有關,還與系統(tǒng)對攻擊的檢測、抵抗以及恢復等指標密切相關,是一個整體性的綜合評估值;該方法簡單、并且實用。
4 結束語
高階多型π演算為可生存系統(tǒng)認知模型的形式化描述和性能分析提供了一個強有力的形式化工具,從形式化描述到分析可生存系統(tǒng)性能參數(shù),如此則有助于對系統(tǒng)的可生存能力進行準確的定性與定量分析,從而為后續(xù)的可生存系統(tǒng)評估提供合理的判斷依據(jù)。未來的研究工作將通過深入理解可生存系統(tǒng)的各種特性,并以此為基礎進一步完善提出的形式化模型。
參考文獻:
[1] WANG T, DAI H, XIANG K, et al. Network system survivability survey: An evolution approach[C]//Future Computer and Communication (ICFCC), 2010 2nd International Conference on. IEEE, 2010, 1: V1-339-V1-342.
[2] MODHA D S, ANANTHANARAYANAN R, ESSER S K, et al. Cognitive computing[J]. Communications of the ACM, 2011, 54(8): 62-71.
[3] 王慧強,徐俊波,馮光升,等.認知網(wǎng)絡體系結構研究新進展.計算機科學,2011,38(8):9-16.
[4] 陳海濤,盧宇彤,黃遵國.一種新型多層可生存信息服務架構[J].計算機工程與應用,2008,44(15): 15-17.
[5] 李長云,李贛生,何頻捷.一種形式化的動態(tài)體系結構描述語言[J].軟件學報,2006,17(6): 1349-1359.