張文佳, 彭 成, 馬迎輝, 滿君豐
(湖南工業大學 計算機與通信學院,湖南 株洲 412007)
網絡化軟件異常行為可信性研究*
張文佳, 彭 成, 馬迎輝, 滿君豐
(湖南工業大學 計算機與通信學院,湖南 株洲 412007)
網絡化軟件系統中的漏洞不可避免,漏洞會引發網絡化軟件異常行為,異常行為的傳播會給系統造成無法彌補的損失。為了使損失盡可能減小,對異常行為的研究變得十分必要。本文對網絡化軟件異常行為可信性進行深入研究,并且從組建級和系統級兩方面對異常行為可信性進行全面分析,為人們今后采取措施提供一定理論依據。仿真實驗和實例分析證明,對異常行為可信性進行研究可以為人們評估系統穩定性、減小由異常行為帶來的損失提供一定幫助。
網絡化軟件;異常行為;軟件實體;系統穩定性
自從上世紀90年代互聯網進入商業應用以來,伴隨著計算機和通信技術的迅猛發展,互聯網已經滲透到人們工作和日常生活的各個方面。隨著云計算[1]、對等計算、普適計算等新興計算模式的不斷涌現,互聯網引發了軟件產業的一次革命——軟件網絡化[2],軟件技術未來發展的主導模式將會是網絡化應用,網絡化軟件也將成為未來軟件領域的主要形式之一。網絡化軟件是一類以網上信息/服務資源為元素,以Internet為媒介,以元素間的互操作與協同為構造方式,其行為和拓撲結構可以動態演變的密集型混合系統[3]。例如,全球最大的電子零售商店Amazon以其基礎設施和Webservices構建的Amazon.com就是網絡化軟件系統的應用典范。構成網絡化軟件中的組件實體一般內部結構和源代碼是不可見的,且網絡化軟件系統運行的平臺是十分復雜的Internet環境,因此對網絡化軟件系統進行可信評估就變得十分必要。本文從影響網絡化軟件系統可信性的其中一個因素——網絡化軟件異常行為為研究出發點,通過對異常行為可信性進行深入分析,揭示其對網絡化軟件整體穩定性的影響。
1972年J. P. Anderson提出建立可信系統 (Trusted System),在40多年的時間里可信計算技術得到了長足發展。在復雜的互聯網環境中,可信系統的運行面臨更大的威脅性與不確定性。傳統的軟件系統安全評估方法已不能很好地適應互聯網環境下軟件可信保證的需求,急需從安全機制的靈活性以及面向開放環境的軟件能力保障方面進行擴展[4]。在基于構建的軟件可靠性研究方面主要有以下三類方法:基于狀態的模型、基于路徑的模型和附加模型[5]。網絡化軟件系統可信性研究還不成熟,多是基于經典的Internet中實體間信任關系模型[6]。最近,梅宏等人在基于軟件體系結構技術方面,提出了面向構建、基于體系結構的ABC開發方法,并在可信性保障與度量等支撐技術方面取得進展[7-8]。徐鋒、呂建等人提出了兩個信任模型TEM和DTME,形成了一種適合于互聯網環境的框架體系,提出了一條建立基于Agent的網絡化軟件模型的技術途徑[9]。本文在前人研究的基礎上,綜合ISO/IEC9126及SJ/T11374—2007標準[10]對系統中的異常行為進行深入研究,建立一套合理的異常行為可信性評估體系,并以此探究網絡化軟件異常行為對系統穩定性產生的影響。
2.1 組件級可信性
所謂異常行為可信性是指異常行為對組件、系統產生負面影響的可信程度。異常行為可信度越高,其對組件、系統產生的消極作用越大,反之則越小。為了全面地對異常行為可信性進行分析,首先從組件級的角度進行考慮。組件Ci(1

圖1 組件結構圖
為了形象地表示組件內部各個節點之間的相互關系,將圖1簡化為圖2所示,其中Li(0

圖2 組件內部節點關系圖
在組件Ci中,只有含有異常的節點會影響組件的正常運轉。因此,用P(ai)(0
(1)
當節點ai與節點aj之間有調用關系時,aij=1;否則,aij=0。用O(ai)(1
(2)
所有異常節點的度之和為:
(3)
則有
(4)
例如,在圖2中異常節點V1、V2、V3、V4對組件產生的消極作用P(V1)、P(V2)、P(V3)、P(V4)分別為1/3、1/6、1/6/、1/3。
2.2 系統級可信性
在某時刻網絡化軟件系統含有M個組件,每一個組件由若干個類構成,類的實現中包含了各種功能的函數。函數間的調用、類與類之間的相互關聯、組件之間的消息傳遞均用有向邊表示,組件、類及函數為不同粒度的節點。前面從組件級的角度對異常行為進行了分析,但還不能準確反映異常節點給系統帶來的消極影響。下面從系統級的角度考慮異常行為可信性。某時刻組件間的調用關系用圖3表示,圖3中忽略了組件內部節點之間的關系,只考慮各組件之間的互相調用,其中Ci為組件,S為系統,黑色實心節點表示該組件含有異常行為,空心節點表示該組件正常。

圖3 組件間調用關系圖
經過實驗證明,異常節點的可信度不僅與其在組件中所處的位置有關,而且與該組件在系統中所處的位置密切相關。一個組件在系統內部越活躍,則其對系統的穩定性和可信性影響越大。組件活躍程度由其與其他組件之間的調用頻度決定,用P(Cj)表示組件Cj的活躍頻度,則P(Cj)與組件的度成正比。為了準確描述組件的活躍頻度,將組件之間的調用關系用矩陣表示,如果某時刻系統內部有M個組件,則矩陣大小為M×M。
(5)
當節點Ci與節點Cj之間有調用關系時,Cij=1;否則,Cij=0。用O(Cj)(1≤j≤M)表示含有異常的組件Cj的度,則有:
(6)
所有含有異常的組件的度之和:
(7)
則:
(8)
為了更準確描述異常行為對系統產生的影響,不僅要考慮組件內部異常節點的可信性,還要考慮每個組件在系統中的活躍頻度,只有將兩者結合起來綜合考慮才能更準確地刻畫異常行為對系統產生的消極作用。因此將異常節點對系統產生的消極作用如下公式(9)表示:
(9)
其中R(Vi)表示異常節點Vi對系統產生的消極作用,R(Vi)的值越大說明該異常節點對系統產生的消極影響越大,則該異常節點的異常行為可信度越高。
實驗基于MATLAB9.0平臺,通過前期工作開發的監測工具收集網絡化軟件系統運行時產生的行為日志,從中提取行為規律,構建行為模型。模型中包含10個組件,將組件進行排序處理,其中存在異常行為的組件及各組件中異常節點的可信度如表1所示。 包含有異常節點組件的相應活躍度如表2所示。實驗采用的數據包括10 000條行為日志記錄,實驗結果為100次運行的平均值。

表1 組件級異常節點可信度表

表2 組件活躍度表
為了合理地分析系統中異常行為的可信性,首先從組件級角度對異常節點的可信度進行考慮。相應的實驗結果如圖4所示。

圖4 組件級異常行為可信性
從圖4中可以看到,組件C4、C6中的異常行為可信度變化范圍較大,在組件C4中的異常節點V6對組件產生的消極影響最大,異常行為可信性度達到了所有異常行為可信度中最高的0.35,而組件C6中的異常節點的可信度多數徘徊在0.2左右。研究異常行為影響系統穩定性、可靠性的學者們往往將這些數據作為評判依據。但這僅僅是異常節點對組件產生的負面影響,并不能代表其對系統產生的消極作用。因此,本文對各個組件在系統中的位置進行合理分析,將組件中的異常節點權重化,從而更合理地得出異常節點對系統產生的消極作用。圖5反應了組件C1、C3、C4、C6、C9在系統中的活躍程度。

圖5 組件活躍度
對組件內異常行為可信度及相應組件在系統中的活躍度進行綜合考慮,得出異常節點對系統產生的消極影響,如圖6所示。從圖6中可以看到,對系統造成較大影響的異常節點主要存在于組件C6及組件C9中,其中對系統威脅最大的異常節點是組件C9中的V7節點。從圖6中反應的各異常行為的可信度與圖4中反應的各異常行為的可信度相差較大,但又有局部類似的性質。這是因為圖4只是在局部展示了異常行為的一些特性,而圖6則合理地表現了異常行為對系統造成影響的可信性,現實運行的程序也證實了圖6中各數據的合理性。

圖6 系統級異常行為可信度
本文通過對網絡化軟件系統進行建模分析,研究了系統中異常行為對系統穩定性及可靠性的影響。通過前面的實驗可以看出,本文給出的算法可以計算出異常行為給系統帶來的沖擊力度,因此人們可以據此來考慮對系統應采取的措施,對系統中嚴重的錯誤可以優先采取補救措施,從而減小由異常行為給系統帶來的損失。
[1] 徐忠勝,沈蘇彬. 一種云計算資源的多目標優化的調度方法[J].微型機與應用,2015,34(13):17-20.
[2] 王紅春. 網絡化軟件多粒度動態特性分析[D]. 武漢:武漢大學, 2010.
[3] 馬于濤, 何克清, 李兵,等. 網絡化軟件的復雜網絡特性實證[J]. 軟件學報, 2011,22(3):381-407.
[4] 王懷民,唐揚斌,尹剛,等. 互聯網軟件的可信機理[J]. 中國科學:信息科學,2006,10(10):1156-1169.
[5] 周娜琴. 基于構件的軟件可靠性分析[D]. 長沙:湖南師范大學, 2008.
[6] 王遠, 呂建, 徐鋒,等. 一個適用于網構軟件的信任度量及演化模型[J]. 軟件學報, 2006,17(4):682-690.
[7] MEI H, HUANG G, ZHAO H, et al. A software architecture centric engineering approach for internetware[J]. Science in China, 2006, 49(6):702-730.
[8] 梅宏, 陳鋒, 馮耀東,等. ABC:基于體系結構、面向構件的軟件開發方法[J]. 軟件學報, 2003,14(4):721-732.
[9] 徐鋒, 呂建, 鄭瑋,等. 一個軟件服務協同中信任評估模型的設計[J]. 軟件學報, 2003,14(6):1043-1051.
[10] CHIDAMBER S R, KEMERER C F. A metrics suite for object oriented design[J]. Software Engineering IEEE Transactions on, 1994, 20(6):476-493.
[11] 彭成, 楊路明, 滿君豐. 網絡化軟件異常行為傳播研究[J]. 電子學報, 2013(10):2074-2081.
Research the credibility of network software abnormal behavior
Zhang Wenjia, Peng Cheng, Ma Yinghui, Man Junfeng
(College of Computer and Communication, Hunan University of Technology, Zhuzhou 412007, China)
Bugs in the network software system is inevitable. Bugs may cause the networked software abnormal behavior and the spread of abnormal behavior can cause irreparable loss to the system. In order to reduce losses as much as possible, the study of abnormal behavior become very necessary. In this paper, we get an in-depth study of the credibility of network software abnormal behavior. Then we start a comprehensive analysis of the abnormal behavior credibility from the form level and system level. So we can provide certain theoretical basis for people to take measures in the future. The simulation experiment and example analysis proved the study of abnormal behavior credibility can provide certain help for people assessment of system stability reduce the damage caused by the abnormal behavior.
network software, abnormal behavior, software entities, system stability
國家自然科學基金項目(61350011, 61379058);湖南省自然科學基金項目(14JJ2115);湖南省教育廳項目(14C0323);湖南工業大學自然科學基金項目(2014HZX16)
TP301.6
A
1674- 7720(2016)03- 0008- 03
張文佳,彭成,馬迎輝,等.網絡化軟件異常行為可信性研究[J] .微型機與應用,2015,35(3):8- 10,14.
2015-11-06)
張文佳(1991-),男,碩士研究生,主要研究方向:網絡化軟件。
彭成(1982-),男,博士研究生,主要研究方向:網絡化軟件。
滿君豐(1976-),通信作者,男,教授,主要研究方向:網絡化軟件。E-mail: mjfok@qq.com。