蔣 晶 余永紅 趙衛(wèi)濱
(南京郵電大學(xué)通達(dá)學(xué)院 揚州 225127)
云計算是近年來國內(nèi)外計算機業(yè)研究的熱點,是構(gòu)筑在因特網(wǎng)上的一種新興技術(shù),它可為計算機用戶提供更多的資源、功能和交互性。為了使云計算更安全、更具吸引力,用戶實體間的互信問題顯得格外重要。然而,在云計算環(huán)境中,采用認(rèn)證中心建立實體間的信任關(guān)系存在一定難度[1],因此,在云計算環(huán)境中建立一種新的分布式信任機制是十分必要的。
在社會網(wǎng)絡(luò)中,信任關(guān)系是人際關(guān)系的核心,個體間的信任度取決于其他個體的推薦,這種互相依賴的信任關(guān)系組成了一個信任網(wǎng)絡(luò)。在人類社會建立信任關(guān)系的過程中,存在許多不確定的因素,云計算環(huán)境中結(jié)點之間的信任關(guān)系也是如此,因此可以借鑒能夠描述證據(jù)信息中不確定因素的理論建立云計算環(huán)境下的信任模型。
本文借助社會學(xué)的人際關(guān)系推薦信任模型,構(gòu)造一個基于主觀邏輯理論的云計算環(huán)境結(jié)點之間信任模型,并給出該模型的表述和實現(xiàn)方法,最后通過分析和仿真實驗表明模型的有效性。
目前針對網(wǎng)絡(luò)環(huán)境下信任模型已經(jīng)開展了很多方面研究,信任模型涉及的評估指標(biāo)、評估方法選取是整個信任評估系統(tǒng)的核心,也是研究的熱點[2~4]。Azzedin.F.等認(rèn)為如果計算任務(wù)被分配到信任級別低的網(wǎng)格結(jié)點上執(zhí)行時,為了維護它們的順利執(zhí)行,必然會增加額外的安全開銷。因此他們提出了將安全信任模型集成到網(wǎng)格資源管理框架中的全局信任模型,在任務(wù)分配的同時考慮資源與任務(wù)之間安全信任關(guān)系[5~7];文獻[8]提出了一種感知安全的云體系結(jié)構(gòu),采用新人協(xié)商和數(shù)據(jù)著色技術(shù)保障云服務(wù)提供商安全,云服務(wù)用戶端安全則采用新人覆蓋網(wǎng)絡(luò),實現(xiàn)基于名譽的信任管理;文獻[9]提出了一種基于服務(wù)質(zhì)量參數(shù)的云服務(wù)信譽評估技術(shù),引入可信性評級/歷史評級以及個人評估經(jīng)驗作為評估度量策略。文獻[10]提出了一種基于服務(wù)等級協(xié)議的云計算信任模型,引入了系統(tǒng)信任,使得云服務(wù)商綜合信譽獲得更加全面和準(zhǔn)確。Wang.Y等提出了一種基于貝葉斯網(wǎng)絡(luò)的信任模型建立方法[11~12],認(rèn)為結(jié)點之間的信任關(guān)系與結(jié)點提供的服務(wù)類型有關(guān)。但是他們的信任模型都是基于P2P環(huán)境下的,在該環(huán)境下結(jié)點是無法保證服務(wù)質(zhì)量的,因此在建立信任模型過程中,都沒有考慮結(jié)點提供服務(wù)質(zhì)量屬性。當(dāng)前云計算服務(wù)信任評估模型大多是在所收集到的以往服務(wù)使用者對服務(wù)的反饋評價基礎(chǔ)上進行的信任評估,沒有考慮不確定的歷史信息而且云計算服務(wù)的動態(tài)性和反饋評價的時間滯后性增加了信任評估的難度,實際上,有些歷史信息并不能提供有價值的參考;另外,在融合不同結(jié)點推薦信息時,需要區(qū)分惡意結(jié)點,避免惡意推薦導(dǎo)致某些結(jié)點信任度計算偏高或偏低,影響最終的服務(wù)選擇結(jié)果。過去常見的方法是在服務(wù)失效后降低惡意推薦結(jié)點的信譽度以達(dá)到區(qū)分目的,但是這是以服務(wù)選擇的失敗為代價的,因此如果在服務(wù)選擇過程中區(qū)分惡意結(jié)點,保證正確的選擇服務(wù)提供方是一個關(guān)鍵問題。
主觀邏輯[14~15]描述了人類對世界的感知信任程度,它在部分概念上與證據(jù)理論相似,因為它們在判斷某件事情發(fā)生與否的時候,都引入了不確定(uncertain)的推理過程。它采用事實空間(option)定義人類對某件事情發(fā)生的主觀判斷,類似于人類社會中的意見評估系統(tǒng),它包含了對某件事情發(fā)生的不確定性判斷,并提供了一套主觀邏輯算子,用于信任度之間的運算。其主要的算子有合并(cojunction)、合意(consensus)和推薦(recommendation)。其中合并用于不同信任內(nèi)容的信任度綜合計算。合意根據(jù)參與運算的觀念(信任度)之間的關(guān)系分為獨立觀念間的合意、依賴觀念間的合意和部分依賴觀念間的合意類。所謂觀念依賴是指觀念是否部分或全部由觀察相同的事件所形成。合意主要用于對多個相同信任內(nèi)容的信任度綜合計算。但是該理論無法有效地消除惡意推薦帶來的影響;而且,建立在融合不同結(jié)點之間的推薦意見時,需要定義識別框架的基本可信度函數(shù)。下面將首先提出一種基于服務(wù)質(zhì)量的基本可信度函數(shù)建立方法,然后介紹如何借助三角模糊數(shù)消除惡意推薦結(jié)點。
本文假設(shè)云計算環(huán)境由多個可以提供有QoS保證的云計算結(jié)點和若干無法提供QoS保證的P2P服務(wù)結(jié)點構(gòu)成[10]。其中云計算結(jié)點通常是可信的高性能計算節(jié)點,擁有豐富的資源,能夠提供有QoS保障的計算服務(wù);而下層的服務(wù)提供者是普通的計算結(jié)點或其它服務(wù)提供者,由普通計算機構(gòu)成,無法保證服務(wù)的QoS。為了保證服務(wù)質(zhì)量,在選擇普通服務(wù)節(jié)點提供云計算服務(wù)時,需要對每個節(jié)點評定可信任度,選擇信任度相對較高的結(jié)點。在確定普通結(jié)點的信任度時,一方面需要借鑒自身與普通結(jié)點交互的直接經(jīng)驗,另一方面需要接收來自其他結(jié)點的推薦信任度,因此不可避免地接觸到一些不確定信息。如何合理地融合云計算結(jié)點之間的推薦信任度信息是十分關(guān)鍵的。本文假設(shè)服務(wù)提供方提供的服務(wù)質(zhì)量均能通過認(rèn)證中心量化[16]并為服務(wù)消費者所知,在已知應(yīng)用程序?qū)υ朴嬎闾峁┓?wù)的QoS請求的前提下,提出基于服務(wù)質(zhì)量約束關(guān)系建立基本可信度函數(shù),并基于主觀邏輯理論描述不確定的推薦信息,同時引入兩種邏輯算子:衰減算子和結(jié)合算子融合來自云計算結(jié)點的推薦信任度信息。由于主觀邏輯理論無法消除惡意推薦結(jié)點帶來的負(fù)面影響,因此本文提出基于三角模糊數(shù)對推薦結(jié)點分類,并采用信任衰減算子對不同分類中的結(jié)點進行“信任衰減”,以達(dá)到降低惡意結(jié)點負(fù)面影響的目的。
在選擇服務(wù)提供的結(jié)點時,需要考慮使用結(jié)點和服務(wù)結(jié)點之間交互的歷史經(jīng)驗。對于不同的應(yīng)用,所關(guān)心的服務(wù)質(zhì)量程度不同,對云計算服務(wù)會提出不同程度的服務(wù)質(zhì)量要求。因此需要區(qū)分不同的交互行為提出的質(zhì)量要求,并選擇有用的歷史經(jīng)驗作為下一次交互的信任評估的參考。本文提出在參考?xì)v史交互經(jīng)驗的同時引入約束關(guān)系。通過約束關(guān)系,將應(yīng)用提出的服務(wù)質(zhì)量請求與歷史交互記錄進行比較,判斷歷史交互記錄是否有參考價值。
3.1.1 約束關(guān)系
假設(shè)服務(wù)S可以提供n種QoS屬性,用向量S(p1,p2,…,pn)表示。當(dāng)應(yīng)用程序需要申請服務(wù)S時,會提出服務(wù)質(zhì)量要求,用向量 A(q1,q2,…,qn)表示。不同的應(yīng)用對服務(wù)S關(guān)注的服務(wù)質(zhì)量程度不同,因此對于不同的服務(wù)請求,其服務(wù)請求向量A不會完全一樣。如果該申請沒有對服務(wù)屬性 pi提供服務(wù)質(zhì)量要求,則規(guī)定該qi=0。
定義1 約束關(guān)系o(op1,op2)是一個二元關(guān)系符,表示op1受到op2的約束。規(guī)定約束關(guān)系有?(小于)、?(大于)和=(等于)。
如果實體A向服務(wù)S提出請求r1,其服務(wù)質(zhì)量請求向量為 r1(q11,q12,…,q1n)。假設(shè)集合R為GP結(jié)點A與P2P結(jié)點B直接交互的歷史記錄,令r2∈R ,并規(guī)定 r2的服務(wù)質(zhì)量向量為 r2(q21,q22,…,q2n)。設(shè)r1和r2對服務(wù)S提供的服務(wù)質(zhì)量屬性pi的請求分別為q1i和q2i,如果r1對屬性 pi的要求比r2低,則認(rèn)為服務(wù)屬性q1i和q2i存在約束關(guān)系,并記為 q1i?q2i。反之則為 q1i?q2i或者q1i=q2i。如果 ?pi,滿足 q1i?q2i,則認(rèn)為行為 r1與行為r2之間存在約束關(guān)系,記為r1?r2。
由約束關(guān)系的定義可以看出,如果行為r1與r2之間存在約束關(guān)系r1?r2,即使服務(wù)S成功滿足了r1的要求,當(dāng)r2申請服務(wù)S時,服務(wù)S也無法根據(jù)r1成功執(zhí)行的歷史經(jīng)驗判斷r2能成功執(zhí)行。也就是說,服務(wù)S成功滿足r1要求的歷史信息對服務(wù)S能否成功滿足r2的要求不能提供有價值的參考,即該歷史信息是不確定的參考信息。反之,當(dāng)r1?r2成立時,即使行為r1成功執(zhí)行服務(wù)S,當(dāng)r2申請服務(wù)S時,r1成功執(zhí)行說明服務(wù)S有能力滿足r2提出的服務(wù)質(zhì)量要求,即可以提供確定的成功信息。
前面介紹的信任評估方法中都是假設(shè)云計算服務(wù)處在理想情況下,所有云計算服務(wù)提供的服務(wù)質(zhì)量屬性完全相同。但是,兩個不同的云計算服務(wù)不可能提供完全相同的服務(wù)質(zhì)量,因此需要對不同服務(wù)之間的相似性進行比較,這樣可以將所有交互歷史記錄作為參考集合,豐富建立直接信任度時的參考信息。可以將不同服務(wù)請求的QoS屬性分為幾種關(guān)系:1)包容關(guān)系;2)交集關(guān)系;3)空集關(guān)系。假設(shè)存在服務(wù)S1和服務(wù)S2,如果S1和S2滿足包容關(guān)系,不妨設(shè)為S1包容S2,記為S1?S2,則說明S2所提供的QoS屬性集合是S1提供的QoS屬性集合的子集。如果S1和S2滿足交集關(guān)系,則說明兩個服務(wù)提供的服務(wù)質(zhì)量屬性之間存在共同的屬性,同時也存在不同的。如果S1和S2滿足空集關(guān)系,則說明兩個服務(wù)提供的服務(wù)質(zhì)量屬性集合相交為空集。如果兩個服務(wù)之間滿足包容關(guān)系,設(shè)為S1?S2,在計算關(guān)于服務(wù)S2的直接信任度時,對于該結(jié)點與服務(wù)S1的直接交互記錄可以充分考慮,反過來不成立。當(dāng)兩個服務(wù)之間滿足交集關(guān)系時,無法直接判斷與服務(wù)S1的交互記錄是否能夠?qū)Ψ?wù)S2的信任程度提供有價值的參考意見。為了衡量兩個服務(wù)之間相似度,可以用語義對不同的服務(wù)質(zhì)量屬性加以描述,并根據(jù)定義的語義相似度,使用Clard Distance計算方法。如果兩個服務(wù)屬性集合之間的的距離小,表明結(jié)點的相似性高,距離大說明相似性低,用距離大小描述服務(wù)之間的相似性。由于本文重點不是服務(wù)質(zhì)量屬性之間的相似性,因此不做重點介紹。下面假設(shè)所有請求的服務(wù)質(zhì)量屬性都相同。下面將介紹在建立基本信度函數(shù)時,如何引入約束關(guān)系。
3.1.2 基本可信度函數(shù)
設(shè)結(jié)點A和結(jié)點B,A與B的交互記錄記為HA,B,交互記錄 Ri∈HA,B,且 Ri的服務(wù)質(zhì)量請求為Ri(qi1,qi2,…,qin)。設(shè)結(jié)點A提出的服務(wù)請求質(zhì)量首先,根據(jù)A提出的服務(wù)質(zhì)量請求向量將歷史信息分為確定失敗、確定成功和不確定信息三類。分類方法如下:
1)確定成功記錄集合:BHA,B={Ri|Ri?Ra};
2)確定失敗記錄集合:DHA,B={Ri|Ri執(zhí)行失敗};
3)不確定記錄集合:UHA,B=HA,B-BHA,BDHA,B。
基于以上歷史交互記錄的三種分類,給出識別框架Θ={T,?T}上的基本可信度函數(shù)如下:

由函數(shù)建立過程可知,b(T)、d(T)和u(T)三者滿足b(T)+d(T)+u(T)=1。
信任演算提供了計算信任路徑信任值的算子,描述用信任演算獲取信任路徑的信任值。主觀邏輯定義了許多算子,一些算子表示二元邏輯和概率演算的概括,而由于其他的一些算子依賴于信任,是信任理論特有的。我們只考慮折扣(discounting)和合意(consensus)算子。折扣算子用來從推薦云計算結(jié)點中獲取信任,合意算子用來綜合多個云計算結(jié)點的推薦信任度。
當(dāng)結(jié)點A向結(jié)點B申請服務(wù)時,除了考慮A和B之間的直接信任度外,A還可以從其他的實體獲取服務(wù)提供者B的推薦信任信息。當(dāng)A向其他GP結(jié)點C咨詢關(guān)于B的可信任程度時,必須考慮推薦結(jié)點C的可信任程度,這里用信譽度表示。信譽度表示了推薦結(jié)點C推薦的關(guān)于服務(wù)提供方的信任度的可信任程度,這里可以用偏好意見表示。這里定義一個推薦算子計算來自推薦結(jié)點C的推薦信息的可信度[15]。用符號“”表示推薦算子,定義,有下面的計算公式。
狀態(tài)x指結(jié)點B成功提供某種云計算服務(wù)的行為的可信度。由定義可以看出,可以理解為云計算結(jié)點A有選擇采納云計算結(jié)點B提供的關(guān)于狀態(tài)結(jié)點B成功提供服務(wù)的偏好意見,從而形成A對狀態(tài)集合x的偏好意見。
結(jié)點B對結(jié)點A的推薦信譽度可以通過兩者之間交互記錄確定,如果B結(jié)點推薦的服務(wù)結(jié)點均能成功滿足A的服務(wù)要求,則信譽度高;反之,則信譽度較低。由于偏好意見可以通過beta函數(shù)表示,因此ωAB可以采用beta函數(shù)計算。假設(shè)r為B向A成功提供偏好意見的次數(shù),s為失敗的次數(shù),則

當(dāng)交互次數(shù)越多時,不確信的因素就越少。初始條件下,r=1,s=0。
結(jié)點A通過衰減算子得到其他與結(jié)點B有過直接交互的結(jié)點的推薦偏好意見后,如何融合得到多個關(guān)于結(jié)點B的偏好意見ω是關(guān)鍵問題。常見的方法有證據(jù)理論中的Dempster法則。但是該法則對于融合的證據(jù)有限制,參與融合的偏好證據(jù)不能出現(xiàn)相互矛盾的現(xiàn)象,但是在實際的云計算環(huán)境中由于一些惡意結(jié)點的參與,出現(xiàn)矛盾的證據(jù)是無法可避免的,因此為了避免矛盾證據(jù)的影響,本文采用主觀邏輯中的偏好融合算子[14](consensus operator)可以有效地解決證據(jù)互相矛盾的問題。融合算子等價于靜態(tài)的貝葉斯更新。兩個有可能發(fā)生沖突的觀點的合意成為一個公平同等地反映兩個觀點的一個觀點。用符號“⊕”表示推薦算子,定義有下面的計算公式。
當(dāng)k≠0時

當(dāng)k=0時

通過采用融合算子,可以方便地綜合來自多個結(jié)點的推薦意見。融合后偏好意見的相對粒子度實際上是反映了意見融合雙方的原狀態(tài)空間和融合后狀態(tài)空間之間的關(guān)系。在實際的應(yīng)用中,由于來自不同云計算結(jié)點的偏好意見都是建立在二值識別框架Θ={T,?T}上,其a均為0.5,因此在進行計算融合后的偏好意見的相對粒子度可以簡化為
在云計算環(huán)境中,某些結(jié)點為了達(dá)到某種目的,虛報自己的信譽度或者直接信任經(jīng)驗,詆毀被推薦結(jié)點或者抬高被推薦結(jié)點,最終導(dǎo)致服務(wù)消費者選擇錯誤的服務(wù)提供方。以前的信任評估模型都沒有考慮到惡意推薦的現(xiàn)象,大都采用服務(wù)失敗后降低提供服務(wù)的結(jié)點的信任度,直到消費者不選擇為止,但是這實際上是以服務(wù)的失敗為代價的。如果在融合多個推薦信息的時候,對推薦信息進行預(yù)處理,盡可能地不考慮一些可疑的推薦信息,則可以有效地避免服務(wù)的選擇失敗。下面將介紹一種基于方差和三角模糊數(shù)的方法評判推薦信息可信度的方法。基本思想是首先計算每個結(jié)點推薦的信任度期望,并計算信任期望的均值和方差;然后計算每個結(jié)點推薦的信任期望與期望均值之間差值的絕對值,最后根據(jù)該差值和預(yù)先定義的三角模糊數(shù)計算每個結(jié)點屬于不同結(jié)點分類的隸屬度,選擇隸屬度最高的分類和相應(yīng)的信任衰減算子,最后通過衰減算子計算衰減后的信任空間。
3.3.1 結(jié)點分類
得到每個推薦結(jié)點推薦的推薦主觀意見后,首先計算每個推薦結(jié)點的推薦期望值;然后計算所有結(jié)點的平均推薦期望其中R(x)表示推薦結(jié)點的集合,最后計算結(jié)點信任期望的方差
對于正常的推薦結(jié)點,它們對同一個結(jié)點的評價一般不會相差過大;而對于惡意結(jié)點,由于它們出于自身利益,它們的評價信任空間信息會與大多數(shù)結(jié)點有較大偏差,因此可以通過每個結(jié)點的推薦期望與所有結(jié)點的平均期望值的差的絕對值判斷。如果該數(shù)值相差越大,則說明該推薦信息屬于惡意信息的可能性越大。而偏差的大或者小是一個模糊的概念,因此采用三角模糊函數(shù)對其進行評估。這里將推薦結(jié)點推薦的信息分成五類三角模糊數(shù):非常可信、比較可信、一般可信、比較不可信、非常不可信,對應(yīng)關(guān)系如圖1所示。

圖1 不同分類對應(yīng)的三角模糊數(shù)
3.3.2 三角模糊數(shù)
定義2 若A=(a,b,c),其中,0<a≤b≤c,稱A為一個三角模糊數(shù),如其特征函數(shù)(隸屬函數(shù))可表示為

其中,a表示最悲觀的估計,b表示最可能的估計,c表示最樂觀的估計。
在定義2中,前提條件是變量x滿足“越大越好”,因此結(jié)點的樂觀估計大于結(jié)點的悲觀估計;而在這里,實際上,每個結(jié)點的信任期望與信任期望均值的差值越小越好,結(jié)點的樂觀估計小于結(jié)點的悲觀估計,因此需要對式進行無量綱化,這里選擇的無量綱化函數(shù)為x′=1-arctgx;無量鋼化后計算每個結(jié)點的推薦信任期望值對不同三角模糊數(shù)中的隸屬度。其中x表示該結(jié)點的信任期望值。
3.3.3 信任意見衰減算子
在計算得到每個推薦結(jié)點的三角模糊隸屬值后,這里通過建立一個模糊評判標(biāo)準(zhǔn),對每個推薦結(jié)點的隸屬度進行分類,并根據(jù)評判規(guī)則得到一個衰減算子。衰減算子根據(jù)評判的結(jié)果對每個結(jié)點的推薦主觀信任度進行信任度的衰減處理,衰減算子也是一個主觀信任空間,由一個四元組構(gòu)成。對應(yīng)關(guān)系見表1。獲取每個推薦結(jié)點的對應(yīng)的衰減算子后,采用主觀邏輯理論中的推薦算子對每個推薦結(jié)點推薦的主觀信任度進行衰減處理,得到一個屏蔽惡意結(jié)點后的推薦意見。然后通過融合算子對所有推薦結(jié)點的推薦信任值綜合得到一個最終的信任期望,計算公式如下,其中表示結(jié)點A對應(yīng)的衰減算子,ωAR x表示經(jīng)過衰減后的結(jié)點A推薦的關(guān)于x的信任空間。得到每個結(jié)點衰減后的信任空間后,就可以采用式(3)或式(4)進行信任空間融合計算,得到最終的信任期望。

表1 隸屬函數(shù)-衰減信任空間對應(yīng)關(guān)系
下面通過一個局域網(wǎng)內(nèi)的云計算環(huán)境下載服務(wù)驗證本模型,包括兩個提供文件下載服務(wù)的云計算結(jié)點,其中一個是有帶寬限制,最大為10M,記為結(jié)點A。另一個則沒有帶寬限制,最大可達(dá)到100M,記為結(jié)點B。我們在客戶端調(diào)用文件下載服務(wù)。初始條件下,兩個云計算文件服務(wù)器的信任度相等。為了驗證基于QoS信任模型的有效性,提高結(jié)點A的信任度,首先應(yīng)用層使結(jié)點A成功滿足100次帶寬為[1M,5M]之間的文件下載服務(wù)請求。然后開始向兩個結(jié)點同時申請文件下載服務(wù),這里分別采用基于貝葉斯模型的信任模型[9]和本文基于服務(wù)質(zhì)量的信任模型計算兩個結(jié)點的信任度。由于每次應(yīng)用層請求的服務(wù)質(zhì)量均為帶寬,因此貝葉斯模型將會考慮所有的交互記錄,并根據(jù)成功下載次數(shù)計算結(jié)點的信任度。而本文的服務(wù)質(zhì)量模型將區(qū)分不同服務(wù)質(zhì)量請求計算結(jié)點的信任度。圖2、3給出了當(dāng)請求帶寬均小于10M時,根據(jù)兩個不同模型計算得到的兩個結(jié)點的信任期望曲線,而圖4、5給出了當(dāng)請求帶寬大于50M時,根據(jù)兩個不同模型計算得到的兩個結(jié)點的信任期望曲線。由圖2、3中可以看出,當(dāng)下載請求對服務(wù)質(zhì)量要求不高時,兩種模型都會選擇A類結(jié)點,這是因為請求帶寬均小于10M,A類結(jié)點與B類結(jié)點都能提供相同的確定信息,而由于初始條件下A類結(jié)點信任期望較大,因此會選擇它,最終它的信任期望也隨著服務(wù)成功而遞增。而當(dāng)帶寬請求大于10M時,采用貝葉斯模型計算得到的A點信任期望依然高于B結(jié)點,但是由于A點無法滿足下載的帶寬要求,因此服務(wù)失敗,反而降低其信任期望,直到其信任期望小于B結(jié)點時,才會選擇B結(jié)點,這是以服務(wù)失敗為代價的;如果采用本文模型,如圖5,由于A類結(jié)點開始的下載請求均小于10M,因此都是一些不確定信息,而B類結(jié)點由于它們能夠提供較高的下載帶寬,因此它們都是確定信息,盡管它們初始信任度較低,但是根據(jù)本文模型得到的信任期望仍高于A類結(jié)點。

圖2 10M條件下貝葉斯模型計算信任度

圖4 高帶寬條件下貝葉斯信任模型

圖5 高帶寬條件下本文信任模型
我們通過仿真實驗比較了基于三角模糊數(shù)區(qū)分惡意結(jié)點和不區(qū)分惡意結(jié)點的影響。假定云計算環(huán)境中有100個結(jié)點,其中包括10個GP結(jié)點和100普通的P2P結(jié)點。P2P結(jié)點分為兩類,一類能夠提供服務(wù)質(zhì)量較好的下載服務(wù),另一類只能提供帶寬有限的文件下載服務(wù)。假設(shè)GP結(jié)點之間的信任路徑已知,且在GP結(jié)點中存在惡意推薦結(jié)點。這里將惡意推薦節(jié)點進一步分為以下兩類:1)詆毀節(jié)點。這類節(jié)點詆毀所有與之交易過其他P2P結(jié)點。2)夸大節(jié)點。這類節(jié)點夸大同伙的惡意節(jié)點。
規(guī)定GP結(jié)點有意詆毀服務(wù)質(zhì)量高的P2P結(jié)點,夸大服務(wù)質(zhì)量低的P2P結(jié)點。我們同時假定文件共享網(wǎng)絡(luò)是理想的,任意用戶可以找到任意文件并從所有聲稱擁有其所需文件的節(jié)點中選擇可信度最高的節(jié)點下載文件。每次假設(shè)至少存在結(jié)點A、B同時滿足提供云計算服務(wù)時,且結(jié)點A提供的服務(wù)質(zhì)量較高,但是會存在一定比例的惡意GP結(jié)點抬高結(jié)點B和貶低結(jié)點A。我們進行了100次實驗,分別采用基于三角模糊數(shù)和不采用三角模糊數(shù)的方法計算兩個結(jié)點的信任期望。計算結(jié)果如圖6和圖7所示,如果不采用三角模糊數(shù)對結(jié)點進行分類,則在100次實驗中,會多次選擇錯誤的結(jié)點B。而如果采用基于三角模糊數(shù)對結(jié)點進行分類,則都可以成功地選擇正確的結(jié)點A。

圖6 沒有采用三角模糊數(shù)計算得到的信任度

圖7 采用三角模糊數(shù)計算得到的信任度
本文針對云計算環(huán)境中服務(wù)選擇時的結(jié)點實體間的信任問題,提出了基于QoS約束和偏序關(guān)系建立基本可信度函數(shù)的方法,引入服務(wù)提供的質(zhì)量之間的約束關(guān)系,將歷史交互記錄分為三類。并參考人類社會的活動規(guī)律,采用基于主觀邏輯理論的方法建立GP結(jié)點和P2P結(jié)點之間信任關(guān)系模型。為了解決服務(wù)選擇時可能發(fā)生的熱點現(xiàn)象,采用遺傳算法中常用的輪盤賭方法在若干個合適的服務(wù)提供方選擇,既避免了服務(wù)的過分集中,又保證信任度高的結(jié)點有更高的優(yōu)先權(quán)提供服務(wù)。
在本文中,對于一個服務(wù),在建立服務(wù)質(zhì)量約束關(guān)系的時候沒有考慮屬性之間的關(guān)聯(lián),實際上對于一些服務(wù)質(zhì)量屬性是存在因果關(guān)系的,因此在以后的研究工作中深入。另一方面,本文假設(shè)結(jié)點交互的歷史記錄權(quán)值相等,而實際上,時間相對較近的記錄反映了兩個結(jié)點近期的服務(wù)情況,應(yīng)當(dāng)賦予更高的權(quán)值,在以后的研究中考慮。