黃繼海,張 文,李海濤
(1.中州大學 信息工程學院,河南 鄭州 450044;2.國家數(shù)字交換系統(tǒng)工程技術(shù)中心,河南 鄭州 450002)
目前,眾多學者對P2P信任模型已經(jīng)進行了深入的研究,文獻[1-2]給出了證據(jù)理論的模型,文獻[3]給出了角色的模型等。綜合當前P2P信任模型的研究成果[4]如下:文獻[5]基于社會屬性建立信任模型,是較早建立信任模型的文獻,但模型形式復雜,很難實現(xiàn);文獻[6]在文獻[5]的基礎(chǔ)上提出了在對等網(wǎng)絡(luò)系統(tǒng)中實現(xiàn)信任模型的方法,但是需要設(shè)計和維護一個復雜的數(shù)據(jù)結(jié)構(gòu),有較高的時間復雜度;文獻[7]的模型的信任度既采用來自其提供的服務(wù)又來自別人的推薦,而且信任度可以通過和其他節(jié)點交換信息來更新;文獻[8]給出了一個基于二進制的模型,通過查詢節(jié)點以往的交易行為取得節(jié)點的不信任度,節(jié)點只存儲與其交易的不值得信任的節(jié)點信息。
在P2P媒體點播系統(tǒng)中,Peer可以自主地選擇媒體流的交易對象,如何進行交易對象的選擇決定了媒體流交換的可靠性。如果Peer選擇的交易對象僅有較小的上傳帶寬,那么該Peer從該交易間傳輸媒體流將消耗較長的時間,而且傳輸過程中還可能出現(xiàn)中斷的情況,尤其是若從惡意節(jié)點處下載了含有惡意內(nèi)容的文件,則還可能破壞Peer的安全。筆者基于P2P媒體點播系統(tǒng)的體系結(jié)構(gòu)給出了信任模型的總體結(jié)構(gòu)設(shè)計,介紹了各個模塊在模型中的具體實現(xiàn),最后對信任模型在P2P媒體點播系統(tǒng)實現(xiàn)的性能進行了測試。
媒體點播系統(tǒng)的體系結(jié)構(gòu)分為3層(見圖1),從上到下依次為應(yīng)用層、接口層和通信層。
應(yīng)用層提供媒體點播過程中的各種服務(wù):媒體流點播、管理和通信安全服務(wù)等。接口層主要為應(yīng)用層提供相關(guān)的接口,包括媒體流的分發(fā)、搜索、傳輸、內(nèi)容管理、安全和用戶管理模塊。通信層主要實現(xiàn)底層的選路功能,并為上面兩層提供透明的網(wǎng)絡(luò)連接和數(shù)據(jù)傳輸服務(wù)。本文主要對接口層中的安全管理模塊——信任模型在媒體點播系統(tǒng)中的具體實現(xiàn)進行論述,解決系統(tǒng)中用戶通信的安全問題。
該P2P媒體點播系統(tǒng)中的信任模型的總體結(jié)構(gòu)如圖2所示。
模型中包含3類節(jié)點:
1)Peer。媒體點播系統(tǒng)的普通終端用戶,Peer在進行交易的節(jié)點的信任度可以從智能節(jié)點處獲得,根據(jù)信任度大小決定是否進行交易的能力。Peer本地記錄歷史交易結(jié)果,可以向交易節(jié)點的檔案點發(fā)送評價信息。
2)智能節(jié)點。保存其下所有興趣組內(nèi)的用戶列表;對任意節(jié)點i,向其檔案點j請求獲得其他節(jié)點對i的信任評價信息;并根據(jù)本地保存的各評價節(jié)點的全局信任信息,計算各個節(jié)點的全局信任度。
3)評價檔案點。是終端用戶用來存儲其他節(jié)點對檔案節(jié)點上的評價節(jié)點的交易評價信息,有一定的存儲空間,并響應(yīng)智能節(jié)點的信任評價信息請求。檔案點對上面存儲的評價節(jié)點信息處于透明狀態(tài),以防止檔案點對評價節(jié)點信息進行惡意的修改。
根據(jù)3類節(jié)點的具體功能,在P2P媒體點播系統(tǒng)中的信任模型程序主要包括:節(jié)點加入管理、信任請求管理、信任評價管理、檔案點信任更新管理和信任度計算管理等模塊。此外,P2P媒體點播系統(tǒng)中智能節(jié)點需要維護一個用來存放興趣組內(nèi)各節(jié)點的組內(nèi)全局信任度信息的信任度數(shù)據(jù)庫,同時Peer和檔案點維護本地交易記錄(含歷史交易記錄)和用戶的評價信息。
信任請求管理的主要功能包括:通過發(fā)送請求從智能節(jié)點獲得用戶列表信息及用戶對應(yīng)的信任度;結(jié)合本節(jié)點歷史交易根據(jù)記錄信任度大小選擇交易對象。
用戶加入節(jié)目組后就可以根據(jù)其需求下載和共享相關(guān)的媒體流了。在下載媒體數(shù)據(jù)時,Peer先向智能節(jié)點發(fā)送資源查詢請求(包括節(jié)目名稱、類型或關(guān)鍵字等)。
圖3展示了信任請求管理過程:1)用戶發(fā)送資源查詢請求消息,智能節(jié)點返回相關(guān)資源信息。2)用戶根據(jù)資源信息,向智能節(jié)點發(fā)送用戶列表請求消息。3)智能節(jié)點收到用戶列表請求消息,在擁有同一資源的用戶中隨機選擇部分用戶(用戶數(shù)的大小可以通過系統(tǒng)設(shè)定,其中默認值為40,最大值為80,最小值為20)。同時,智能節(jié)點根據(jù)信任度返回最大時間間隔,觸發(fā)用戶的信任度更新管理模塊的運行。4)智能節(jié)點發(fā)送用戶列表及對應(yīng)的新的信任度返回給請求用戶。5)用戶根據(jù)返回的信任度大小、歷史交易信息以及系統(tǒng)設(shè)定的交互所需的信任度閾值,選擇要進行交易的用戶。
檔案點信任更新模塊的主要功能是:接收其他節(jié)點對檔案點上存儲節(jié)點的評價信息,驗證其有效性。存儲的該評價信息作用有:1)評價信息在易于交易雙方的節(jié)點存放,保證了評價信息存放的安全性;2)評價信息集中存放,便于智能節(jié)點在計算信任度時一次請求即可獲取所有評價信息,減少了請求消息開銷。
信任更新的流程描述如下:1)檔案點接收其他節(jié)點的評價信息。2)提取評價節(jié)點的ID信息,并查找二叉樹,若不存在則創(chuàng)建新的二叉樹節(jié)點,轉(zhuǎn)入步驟4),否則,轉(zhuǎn)入步驟3)。3)檢查評價節(jié)點的評價更新間隔是否大于程序設(shè)定的最小評價間隔,大于則轉(zhuǎn)入步驟4),否則結(jié)束。4)驗證本次提交的評價信息中的總交易次數(shù)與上次提交的交易次數(shù)之差是否大于1,若大于1則更新過程結(jié)束,否則進入步驟5)。5)更新提交的評價信息。
信任度計算是整個模型設(shè)計比較重要的一環(huán),負責計算興趣組內(nèi)每個節(jié)點的信任度,信任度是系統(tǒng)中用戶交易的信任依據(jù)。信任度是在智能節(jié)點上進行計算的,通過這種方式既能保證信任計算的安全,又能減少信任度計算時的請求消息數(shù)量,從而降低了系統(tǒng)的開銷。
交易節(jié)點j的計算信任度的過程如下:1)智能節(jié)點判斷節(jié)點j的信任度信息中的計算間隔字段是否超時,如果超時轉(zhuǎn)入步驟2);否則,直接返回節(jié)點j的信任度。2)查詢節(jié)點j的檔案點信息,并發(fā)送獲得信任評價信息的請求給該節(jié)點。3)如果沒有有效評價就返回j當下的信任值;否則,轉(zhuǎn)入步驟4)。4)根據(jù)返回的信任評價信息計算其他節(jié)點對節(jié)點j的推薦度。5)從智能節(jié)點信任度庫表中取得每個評價節(jié)點的全局信任度。6)通過計算獲取j的全局信任度。7)把節(jié)點j的全局信任度通過消息方式發(fā)送給請求交易的節(jié)點。
在清華大學、中國傳媒大學和北京交通大學的校園網(wǎng)(IPv6)上部署該P2P點播系統(tǒng)。在中國傳媒大學校園網(wǎng)上設(shè)置10個智能節(jié)點和240個客戶端;在清華大學校園網(wǎng)上設(shè)置1個智能節(jié)點和60個客戶端;在北京交通大學校園網(wǎng)上設(shè)置1個智能節(jié)點和60個用戶端。這樣共計12個智能節(jié)點和360個客戶端。
本文對該模型的性能按照如下方法進行測試:首先,在媒體點播系統(tǒng)中不使用信任模型,測試1個用戶同時下載8個文件(文件大小為2 kbyte~1 Mbyte)時,分別統(tǒng)計在不同的情況下(惡意節(jié)點的比例不同)下載完成8個文件的成功和失敗次數(shù),從而計算平均成功下載率。平均成功下載率是指成功下載的次數(shù)占總下載次數(shù)的比率。然后,在上述同樣的條件下在該P2P點播系統(tǒng)中采用信任模型,在不同的情況下(惡意節(jié)點的比例不同)下載完成8個文件的成功和失敗次數(shù),計算平均成功下載率。圖4是兩組實驗的測試數(shù)據(jù)。
通過對比測試數(shù)據(jù)發(fā)現(xiàn),惡意節(jié)點比例小于0.2時,是否采用信任模型的P2P媒體點播系統(tǒng)的平均成功下載率變化不大。但惡意節(jié)點比例超過0.2時,隨著惡意節(jié)點比例的提高,采用信任模型的媒體點播系統(tǒng)的成功下載率比不采用信任模型的差別越來越大。由此可知,本文提出的信任模型在P2P媒體點播系統(tǒng)中的用戶交易中安全性能的保證起到了良好的作用。
本文把信任模型應(yīng)用到了P2P媒體點播系統(tǒng)。提出并介紹了媒體點播系統(tǒng)的體系結(jié)構(gòu)和信任模型的總體結(jié)構(gòu),對該信任模型進行了性能測試,測試結(jié)果完全達到了預期的設(shè)計需求。信任模型在P2P媒體點播系統(tǒng)中的實現(xiàn),不但能夠保證系統(tǒng)中媒體流的傳輸效率,而且大大提高了P2P媒體點播系統(tǒng)的安全性,具有較好的實用和推廣價值。
[1]YU B,SINGH M P.An evidential model of distributed reputation management[C]//Proc.First International Joint Conference on Autonomous Agents and Multi-Agent Systems.Bologna:ACM Press,2002:294-301.
[2]TENG Y,PHOHA V V,CHOI B.Design of trust metrics based on dempster-shafer theory[C]//Proc.39th Annual ACM Southeast Conference.Athens:ACM Press,2001:121-128.
[3]PARK J,SANDHU R,AHN G.Role-based access control on the web[J].ACM Transaction on Information and System Security,2001(4):37-71.
[4]侯孟書,盧顯良,周旭,等.P2P系統(tǒng)的信任研究[J].計算機科學,2005,32(4):113-115.
[5]MARSH S.Formalising trust as a computational concept[D].Scotland,UK:University of Stiring,1994.
[6]ABDUL R A,HAILES S.Supporting trust in virtual communities[C]//Proc.the 33rd Hawaii International Conference on System Sciences.[S.l.]:IEEE Computer Society,2000:6007.
[7]YU B,SINGH M P.A social mechanism of reputation management in electronic communities[C]//Proc.the 4th International Workshop on Cooperative Information Agents.[S.l.]:Springer-Verlag,2000:154-165.
[8]ABERER K,DESPOTOVIC Z.Managing Trust in a peer-2-peer information system[C]//Proc.10th International Conference on Information and Knowledge Management(ACM CIKM).New York:[s.n.],2001:310-317.