馮景瑜 張玉清
1西安電子科技大學計算機網(wǎng)絡與信息安全教育部重點實驗室 陜西 710071 2中國科學院研究生院國家計算機網(wǎng)絡入侵防范中心 北京 100043
P2P(Peer-to-Peer)是一種新興的不依賴中心實體的分布式網(wǎng)絡環(huán)境,在分布式計算、文件共享、電子市場等領域得到了廣泛的應用。目前,隨著移動終端處理能力的增強和無線技術的發(fā)展,P2P技術已經(jīng)擴展到移動計算領域。與傳統(tǒng)的P2P網(wǎng)絡相比,移動P2P環(huán)境中的網(wǎng)絡拓撲結構隨著節(jié)點的移動而動態(tài)變化,節(jié)點加入和退出網(wǎng)絡的頻繁性更加突出。移動P2P網(wǎng)絡的這種高度動態(tài)性,使其收益與風險并存,更容易滋生惡意節(jié)點的欺詐、濫用網(wǎng)絡資源行為。一種可行的方法是構造信任模型,對用戶評定信任等級,選擇信任等級高的節(jié)點進行交易。
現(xiàn)有的信任模型主要針對固定網(wǎng)絡,無法適應移動P2P網(wǎng)絡的高度動態(tài)性特征。典型的局部信任模型如 Cornelli,通過簡單的局部廣播手段,詢問有限的節(jié)點以獲取某個節(jié)點的可信性。這種方式的優(yōu)點是計算簡便、收斂快;不足處在于局部范圍內(nèi)的查詢,在節(jié)點頻繁加入和離開的移動P2P網(wǎng)絡中,容易出現(xiàn)評價數(shù)據(jù)的匱乏?;谌值男湃文P停儐柧W(wǎng)絡中的所有節(jié)點來獲取某個節(jié)點的可信性,容易對網(wǎng)絡產(chǎn)生較大的系統(tǒng)開銷,難以應用于節(jié)點能力有限的移動P2P網(wǎng)絡中。
文獻提出了一種移動 P2P網(wǎng)絡信任模型(Power Peer-Based Trust Model, PPTM)。該模型將移動P2P網(wǎng)絡劃分多個組,每個組都由一個Power節(jié)點管理組內(nèi)節(jié)點的評價查詢。當組內(nèi)節(jié)點發(fā)出查詢請求時,本組的Power節(jié)點與其余組的Power節(jié)點進行交涉,聚集評價數(shù)據(jù),計算出信任度。這種方案將計算量集中到Power節(jié)點處,但Power節(jié)點來源于普通的移動設備,同時應對多個組內(nèi)節(jié)點的信任計算需求時,移動設備計算能力的有限性會使其存在單點失效的問題。
本文從節(jié)點的報文轉發(fā)能力得到啟發(fā),提出了一種移動P2P環(huán)境下的分布式信任模MobTrust,使節(jié)點各自維護自己的信任計算需求。節(jié)點執(zhí)行轉發(fā)功能時,根據(jù)邏輯距離備份被轉發(fā)的評價數(shù)據(jù),使其分布式存儲于網(wǎng)絡中,提高了評價數(shù)據(jù)利用率。同時,設計雙反饋機制用于保障評價數(shù)據(jù)的可靠性,在此基礎上以輕量級地計算方式得出信任度,減輕了移動設備計算能力的消耗。
由于移動P2P網(wǎng)絡的高度動態(tài)性,僅依靠推薦節(jié)點獲取評價數(shù)據(jù),很容易造成評價數(shù)據(jù)在關鍵時刻的缺失。MobTrust引入K桶理論,設置檔案節(jié)點,使其基于邏輯距離存儲被轉發(fā)的評價數(shù)據(jù)。
定義1. 以二進制標示節(jié)點ID,則兩個節(jié)點x,y之間的邏輯距離定義為ID上的二進制異或運算,既d(x, y)= x⊕y。對應位相同時結果為0,不同時結果為1。例如:
顯然,這兩個節(jié)點的邏輯距離為27+20=129。
定義2. 對于0≦i≦K,每個檔案節(jié)點記錄距離其[2i, 2i+1)范圍內(nèi)的推薦節(jié)點所提交的評價數(shù)據(jù),并存儲在形如<IDs,IDc→IDd,R, TS >格式的列表中。這些列表構成了檔案節(jié)點的K桶,其結構如表1所示。
表1 K桶結構
其中,dis=2i+1-2i,表示每個列表的最大存儲量。IDs、IDc和IDd分別表示源節(jié)點、推薦節(jié)點、目標節(jié)點的ID;R為被記錄的評價數(shù)據(jù);TS為時間戳。
每個K桶的覆蓋范圍呈指數(shù)關系,且以推薦節(jié)點的ID為基準,這就形成了評價數(shù)據(jù)在推薦節(jié)點附近的分布,從而保證推薦節(jié)點離線時,網(wǎng)絡中仍有多個節(jié)點響應評價查詢請求。當檔案節(jié)點轉發(fā)一個評價時,依據(jù)推薦節(jié)點的 ID查詢和更新K 桶,執(zhí)行如下步驟:
Step 1. 計算自己和目標節(jié)點的邏輯距離d(x, y)= x⊕y。
Step 2. 判定0≦d(x, y)≦2K是否成立。若成立,繼續(xù)執(zhí)行Step 3,否則丟棄該評價。
Step 3. 如果K桶中已存有關于y的評價數(shù)據(jù),根據(jù)時間戳,覆蓋舊的數(shù)據(jù)。否則,跳轉到Step4。
Step 4. 定位到對應的列表中,存儲該評價。
Step 5. 如果x向某個源節(jié)點提供K桶中的評價數(shù)據(jù),則等待交易雙發(fā)的評價反饋。
由于移動設備處理能力弱、存儲能力有限,以及待機時間較短等諸多因素的存在,建立在復雜計算方式上的評價可信度,會嚴重增加移動設備的負荷。針對這一問題,本文設計雙反饋機制用于提高檔案節(jié)點所存儲數(shù)據(jù)的可靠性。在此基礎上,使用評價量化機制,以輕量級的計算方式得出評價可信度。
(1)雙反饋更新機制
作為對分布式存儲機制的補充,雙反饋機制要求源節(jié)點和目標節(jié)點反饋交易結果評價,并運用一致性函數(shù),更新推薦節(jié)點的K桶。
設Fs和Fd分別是源節(jié)點和目標節(jié)點在交易完成后反饋的評價,引入一致性函數(shù)ψ:
表示兩個反饋評價之間的距離,θ是給定的距離闕值。檔案節(jié)點收到反饋后,結合R進行一致性驗證處理:
① 當ψ==1時,雙方反饋一致。用Fs更新R。
② 當ψ==0時,一方?jīng)]有反饋。如果Fd== n ull,表明惡意節(jié)點妄圖通過不遞交反饋,掩飾其惡意行為,用min(Fs,R) 更新R。如果Fs==null,表明源節(jié)點不想更新目標節(jié)點的評價數(shù)據(jù),用min(Fd,R)更新R。
③ 當ψ= =-1時,雙方反饋不一致。表明一方提交了不真實的反饋,可能是源節(jié)點欺騙,也可能是惡意節(jié)點掩飾,用min(Fs,Fd,R) 更新R。
(2)評價量化機制
區(qū)別評價數(shù)據(jù)來源,在以源節(jié)點優(yōu)先考慮自身評價的原則下,計算評價可信度。
“自身評價最優(yōu)”原則. 節(jié)點總是認為自己是最可信的,若源節(jié)點自身具有目標節(jié)點的交易經(jīng)驗評價,則以此量化評價可信度。
設Φ={Rc-i|0≦i≦M}為推薦節(jié)點的評價數(shù)據(jù)集合,Ψ ={Ra-i|0≦i≦N}為檔案節(jié)點的評價數(shù)據(jù)集合,則推薦節(jié)點和檔案節(jié)點的評價可信度分別為
“大多數(shù)判決”原則. 若源節(jié)點自身缺乏交易經(jīng)驗評價,則寄希望于觀察大多數(shù)成員的意見。本文中,檔案節(jié)點在K桶中存儲評價數(shù)據(jù)時,要求源節(jié)點交易完成后反饋評價,通過雙反饋機制保證所存儲數(shù)據(jù)的真實性。此外,使用推薦節(jié)點的ID更新K桶中的數(shù)據(jù),使得檔案節(jié)點分散在網(wǎng)絡的不同位置,增加了相互合謀串聯(lián)的難度。基于此,檔案節(jié)點存儲的評價數(shù)據(jù)可成為“大多數(shù)判決”的依據(jù),則其中,為Ψ集合中的評價數(shù)據(jù)均值。
進行信任度量時,源節(jié)點首先考慮自身存儲的評價數(shù)據(jù)。若自身沒有,或評價數(shù)據(jù)不充分的情況下,則向網(wǎng)絡發(fā)出查詢請求。
定義 3.Txy表示源節(jié)點x對目標節(jié)點y的信任度量結果,既信任度。該值反映了目標節(jié)點的可信性,以數(shù)值的形式直觀表述出來,作為源節(jié)點的交易判定依據(jù)。則,Txy的計算如下:
其中DTxy和ITxy分別對應y相對于x的直接信任度和間接信任度,權重因子α表示x對DTxy的依賴程度。α的計算與x對自身經(jīng)驗評價的信心程度cof(confidence)成正比,而與時間衰減度總和成反比:
定義4. 直接信任度是源節(jié)點對目標節(jié)點信任程度的直接經(jīng)驗度量。
設x與y在時間段[tstart,tend]內(nèi)共進行n次交易,第k次交易結束后,x評價y的交易行為,得出評價Sk,于是
?k為時間衰減度,弱化源節(jié)點以往評價對當前信任度計算的影響。?k的計算如下:
定義5. 間接信任度ITxy是x綜合其它節(jié)點的評價得出對y的信任程度評估。假定x發(fā)出查詢請求后,M個推薦節(jié)點響應請求并提交評價。同時從N個檔案節(jié)點處獲得評價數(shù)據(jù)。則:
仿真以文件共享應用為場景,基于PeerSim實驗平臺,使用Java語言編程實現(xiàn)。仿真中,節(jié)點以一定概率在線,通過模擬節(jié)點任意加入和離開的過程考察 MobTrust對網(wǎng)絡動態(tài)性的適應能力。表2為仿真實驗的參數(shù)設置。
表2 仿真參數(shù)設置
(1)評價數(shù)據(jù)利用率
評價數(shù)據(jù)利用率是每輪循環(huán)中評價查詢請求的響應總次數(shù)與交易結果評價總次數(shù)的比值,反映評價數(shù)據(jù)的綜合利用情況。
如圖 1所示,使用分布式存儲機制(Distributed Storage Scheme, DSS)后,MobTrust的評價數(shù)據(jù)利用率得到了顯著提高。這是因為DSS擴展了存儲評價數(shù)據(jù)的存儲范圍,即使推薦節(jié)點離線,也會有檔案節(jié)點響應評價查詢請求。相反,未使用DSS前,由于節(jié)點動態(tài)地加入或離開網(wǎng)絡,造成一些評價數(shù)據(jù)在關鍵時刻丟失,評價數(shù)據(jù)利用率就低。
圖1 評價數(shù)據(jù)利用率
(2)交易成功率
交易成功率是節(jié)點的成功交易總次數(shù)占所有交易總次數(shù)的比率,反映信任模型的應用效果。
圖2 不同規(guī)模惡意節(jié)點存在時的交易成功率
由圖2所示,引入雙反饋機制 (Bi-feedback Scheme: BFS)后,檔案節(jié)點根據(jù)交易雙方的評價反饋,更新存儲數(shù)據(jù),保證了信任度量的準確性,以此達到提高成功交易總次數(shù)的目的。因此,隨著惡意節(jié)點比例的增加,BFS能使 MobTrust的交易成功率緩慢下降。對于未使用 BFS的 MobTrust,因為僅分析處理推薦節(jié)點提交的評價數(shù)據(jù),很容易受到虛假評價的欺騙,所以難以保證信任度量的準確性。
(3)系統(tǒng)開銷
在信任模型運行過程中的系統(tǒng)開銷以評價數(shù)據(jù)的聚集時間來計量,包括所有的評價查詢、響應處理、信任計算等。Eigentrust、PPTM和MobTrust的系統(tǒng)開銷如圖3所示。
隨著網(wǎng)絡規(guī)模的不斷增大,Eigentrust因為采取全局方式聚集評價數(shù)據(jù),其系統(tǒng)開銷迅速增加。相比而言,PPTM由Power節(jié)點負責信任計算,減輕了移動設備的負擔,所以系統(tǒng)開銷低于 Eigentrust。MobTrust要求每個檔案節(jié)點記錄距離其2K范圍內(nèi)的節(jié)點所提交的評價數(shù)據(jù),經(jīng)過多輪循環(huán),某些遠方推薦節(jié)點的評價數(shù)據(jù)被迭代存儲到源節(jié)點附近。即使源節(jié)點發(fā)出局部范圍內(nèi)的評價查詢請求,也會出現(xiàn)較多的節(jié)點響應。因而,MobTrust系統(tǒng)開銷的增加比較平緩。
圖3 系統(tǒng)開銷對比
本文針對移動P2P網(wǎng)絡的高度動態(tài)性,提出了一種新的信任模型MobTrust。該模型使用K桶技術,要求每個檔案節(jié)點記錄距離其2K范圍內(nèi)的節(jié)點所提交的評價數(shù)據(jù),使評價數(shù)據(jù)廣泛地分布式存儲于網(wǎng)絡中。同時,設計雙反饋機制,保證了信任度量的準確性。仿真結果表明,MobTrust相比傳統(tǒng)的信任模型,降低了系統(tǒng)開銷,并擁有較好的評價數(shù)據(jù)利用率和交易成功率。
[1]Granville Z, Rose M, Panisson A, et al. Managing computer networks using peer-to-peer technologies[J]. IEEE communications Magazine. 2005.
[2]歐中洪,宋美娜,戰(zhàn)曉蘇等.移動對等網(wǎng)絡關鍵技術[J].軟件學報.2008.
[3]Cornelli F, Damiani E, Vimercati S, et al. Choosing reputable servents in a P2P network[C]. In: Proc of of the 11 th International Conference on World Wide Web. New York.2002.
[4]Kamvar S, Schlosser M. The eigentrust algorithm for reputation management in P2P networks [C]. In: Proc of the 12th International World Wide Web Conference , Budapest, 2003.
[5]Wu X, He J S, Chang C H, Xu F. A Power Peer-Based Reputation Scheme for Mobile P2P Systems [C]. In: Proc of the 9th International Conference on Algorithms and Architectures for Parallel Processing. Taibei.2009.
[6]Maymounkov P, Mazieres D. Kademlia: A peer-to-peer information system based on the xor metric. In Proc of IPTPS02. Cambridge.2002.
[7]金瑜,古至民,班志杰.一種新的P2P系統(tǒng)中基于雙ratings的聲譽管理機制[J].計算機研究與發(fā)展.2008.