王歡,閆東明,趙建平,陳占芳,劉丹,趙巍
(1.長春理工大學信息化中心,長春 130022;2.長春理工大學計算機科學技術(shù)學院,長春 130022)
基于IPv6和P2P的網(wǎng)絡資源共享機制研究
王歡1,2,閆東明1,趙建平2,陳占芳2,劉丹2,趙巍1
(1.長春理工大學信息化中心,長春130022;2.長春理工大學計算機科學技術(shù)學院,長春130022)
在Internet飛速發(fā)展的現(xiàn)狀下,人們對各類資源種類和訪問速度的要求越來越高,為此如何提供高質(zhì)量的網(wǎng)絡資源,滿足廣大人民的網(wǎng)絡文化需求成為當今社會的熱點問題。針對網(wǎng)絡資源的共享問題,本文設計了一種基于IPv6和P2P的網(wǎng)絡資源共享模型。模型采用分簇網(wǎng)絡進行節(jié)點間數(shù)據(jù)通信,減少因節(jié)點頻繁進出的網(wǎng)絡抖動發(fā)生。采用Kademlia算法對DHT分布式哈希優(yōu)化,提高節(jié)點的識別準確率。利用TRCBC模型進行系統(tǒng)數(shù)據(jù)的訪問控制,保證系統(tǒng)數(shù)據(jù)的完整性。模型已于2011年開始在長春理工大學的極光BT平臺上應用,實踐證明是一種有效的資源共享模型。
P2P;IPv6;資源共享
隨著科技的發(fā)展Internet愈發(fā)普及。Peer-to-Peer(P2P)因其分布式信息或資源共享、協(xié)同工作、大規(guī)模并行計算等特點成為發(fā)展新熱點。這種技術(shù)的出現(xiàn)解決了單點失效問題,掙脫了傳統(tǒng)C/S網(wǎng)絡應用模式下服務器性能方面的瓶頸,滿足了更多的分布式應用的需求,使端系統(tǒng)資源得到了充分利用。
P2P是對等實體之間數(shù)據(jù)的雙向交換和傳輸,每一個對等實體擁有對等的義務、權(quán)利,同時也扮演著資源提供者和資源消費者兩個角色。P2P技術(shù)因其可擴展性、負載均衡、中心化、健壯性和內(nèi)容豐富等特點得到了廣泛的應用。目前P2P系統(tǒng)為上千萬用戶提供VoIP、文件共享、視頻流等網(wǎng)絡應用,加快推動了P2P的發(fā)展[1]。
與IPv4相比,IPv6具有包頭簡化、自動配置、靈活的選項、龐大的地址空間等特點。所以為P2P技術(shù)的應用提供了基本條件,相對地P2P技術(shù)的發(fā)展也加快了IPv4到IPv6的轉(zhuǎn)型,二者共同發(fā)展。
1.1IPv6對P2P網(wǎng)絡技術(shù)的支持
(1)IPv6支持所有設備上網(wǎng)
由于IPv6的128位編制方式使得P2P網(wǎng)絡的每個用戶可獲得唯一的IP,實現(xiàn)每個用戶的對等性并可進行節(jié)點到節(jié)點的對等通信。同時IPv6不存在網(wǎng)絡地址和死心地址之間的轉(zhuǎn)換限制,P2P可簡化網(wǎng)絡設計和網(wǎng)絡功能的邏輯結(jié)構(gòu),降低運營成本。
(2)IPv6對服務質(zhì)量QoS的支持
P2P的重要特征就是實時媒體業(yè)務、文件共享、高質(zhì)量通信服務。在IPv6環(huán)境下通過提供報文分組和流標簽機制來保證服務的質(zhì)量。
(3)IPv6的安全性
IPv6支持IPSec協(xié)議的加密和認證這兩種安全機制。加密機制的原理是通過對待傳輸數(shù)據(jù)編碼來增強數(shù)據(jù)的機密性,減小數(shù)據(jù)在傳輸過程中被未授權(quán)用戶破解或竊取的威脅;認證機制的原理是在數(shù)據(jù)達到傳輸目的地時,接收方可確認數(shù)據(jù)來源的身份的可靠性和數(shù)據(jù)在發(fā)出之后是否被篡改。
(4)IPv6增強組播技術(shù)及對流媒體的支持
IPv6較IPv4相比有著較為完善的地址管理方案,減小了組播和廣播的局限性。目前P2P組播技術(shù)廣泛應用于應用層,相信在在不就的將來可實現(xiàn)應用于IP層[2,3]。
1.2基于IPv6的P2P網(wǎng)絡共享模型
目前P2P網(wǎng)絡模型有兩個缺點:節(jié)點異構(gòu)性考慮不足、物理拓撲和邏輯拓撲適配。
而IPv6可通過自身特有的地理布局的層次化這一特點,利用簇來減少因節(jié)點頻繁進出的網(wǎng)絡抖動問題。利用這種特性,本文提出的分簇網(wǎng)絡模型如圖1所示。網(wǎng)絡模型中存在兩種節(jié)點:普通節(jié)點和超級節(jié)點。超級節(jié)點是性能較為優(yōu)異,承擔更多的任務,參與主干網(wǎng)絡的交互,將前綴相同的節(jié)點聚成一簇;普通節(jié)點為性能一般的節(jié)點,跟隨超級節(jié)點形成簇。
每個簇可以存在一個或多個超級節(jié)點,各個簇的超級節(jié)點可以通過P2P的方式來交互。簇中的超級節(jié)點擔當簇的管理員的角色,負責簇的路由和組織等工作,發(fā)現(xiàn)路由服務和資源等的控制和協(xié)調(diào),管理簇中各個普通節(jié)點的認證、訪問控制、注冊和授權(quán)等,維護簇中普通節(jié)點的信息。一個簇的建立的標志是一個超級節(jié)點的加入,當還有其他超級節(jié)點加入后,它們之間要每隔一段時間交互一次信息以保證簇內(nèi)信息的一致性。而作為普通節(jié)點只需要從其中的一個超級節(jié)點知道相關信息即可。超級節(jié)點負責的普通節(jié)點的閾值為η,當超過η時需要增加超級節(jié)點來分擔路由任務和查詢?nèi)蝿?。當然,η要根?jù)P2P節(jié)點的性能的實際情況決定。
圖1 分簇網(wǎng)絡模型
候選超節(jié)點也是簇的重要組成部分,它們是超級節(jié)點的備用節(jié)點,數(shù)量等于超級節(jié)點的數(shù)量,且關系一一對應不可重復[4,5]。
1.3模型節(jié)點數(shù)據(jù)結(jié)構(gòu)
簇中的每一個普通節(jié)點都用自己擁有的資源表來統(tǒng)計可共享的資源。資源表結(jié)構(gòu)如表1所示。
表1節(jié)點資源表結(jié)構(gòu)字段Key Value含義共享資源的共享資源的值
與普通節(jié)點不同的是超級節(jié)點需要維持兩張資源表:內(nèi)部資源位置表、外部資源位置表。外部資源位置表將該節(jié)點近期查詢的不在同一子網(wǎng)中的所有目的節(jié)點的信息。內(nèi)部資源位置表則存放自己簇內(nèi)每個節(jié)點的資源的位置信息。資源表結(jié)構(gòu)如表2、3所示。
表2超級節(jié)點內(nèi)部資源位置表結(jié)構(gòu)字段Key Address含義本簇內(nèi)資源的資源所在的位置
表3超級節(jié)點外部資源位置表結(jié)構(gòu)字段Key Address含義簇外資源的資源所在的位置
為了提高查找效率、節(jié)省查找時間、減輕網(wǎng)絡負擔,在設計方面只有超級節(jié)點負責路由功能。當查找數(shù)次后,超級節(jié)點的外部資源位置表的資源信息基本固定,接下來的工作可直接在原節(jié)點或同簇內(nèi)相鄰超級節(jié)點內(nèi)進行交互而不是始終如一地在網(wǎng)上遍歷查找。
對于某個要離開的節(jié)點P來講,若是超級節(jié)點,則從候選超級節(jié)點中挑選一個來替換離開的超級節(jié)點,同時從簇內(nèi)普通節(jié)點中挑選出一個標記為候選超級節(jié)點。若此節(jié)點是普通節(jié)點,則將其負責的資源回收并刪除與其相關的信息。
Kademlia原理是以異或算法作為度量單位而行程的DHT算法,較其他DHT算法而言能進行較快的路由查找。
但是在IPv6環(huán)境中并沒有與Kademlia相匹配的協(xié)議,降低了基于Kademlia的P2P網(wǎng)絡結(jié)構(gòu)的性能,減少了可用節(jié)點的數(shù)量,某些情況甚至需要通過NAT設備將網(wǎng)絡地址轉(zhuǎn)換為適合的格式。目前肯多P2P系統(tǒng)都是通過直接改造IPv6的協(xié)議來解決地址轉(zhuǎn)換問題的[6]。
2.1Kademlia系統(tǒng)結(jié)構(gòu)
將DHT網(wǎng)絡中各個節(jié)點id共160bit分成m位、n位兩部分,分別記為m_id、n_id。兩部分分別作為節(jié)點的組間標識、組內(nèi)標識。若干個節(jié)點組成若干個簇,在不同的簇之間再組成級別更高的DHT網(wǎng)絡,這樣網(wǎng)絡中的每一個節(jié)點都有由m_id和n_id組成的唯一標識。同樣,每個節(jié)點中的資源標識符Key也由兩部分組成:Kh(m比特,高位)、Kl(n比特,低位)。系統(tǒng)結(jié)構(gòu)如圖2所示,大圈所組織的簇網(wǎng)絡是根據(jù)Kh和m_id交互的,小圈區(qū)域內(nèi)各節(jié)點是通過Kl和n_id聯(lián)系后組建的Kademlia簇。在這個系統(tǒng)結(jié)構(gòu)中,各個簇的物理網(wǎng)絡和分布情況不需要進行嚴格的匹配,只需將簇內(nèi)的節(jié)點的覆蓋范圍控制在某個合理的物理網(wǎng)絡上即可,達到降低數(shù)據(jù)的平均延時。
Kademlia網(wǎng)絡的層次化網(wǎng)絡結(jié)構(gòu)如圖2所示。在Kademlia網(wǎng)絡中,插入資源信息的鍵值對(k,v)需要分為兩步:首先,找到該節(jié)點所屬的簇kl和該節(jié)點的標識nl,然后插入。然后,找到kh路由控制的區(qū)域m,在m中找到該簇負責的kl的節(jié)點,然后插入。每個鍵值對都需要分兩步存放到系統(tǒng)中,每次存放都將更改Kademlia的布局。
圖2 Kademlia網(wǎng)絡的層次化結(jié)構(gòu)
2.2節(jié)點查詢和請求
在簇內(nèi)和簇間查詢的原理為通過維護簇內(nèi)K桶和簇間K桶來在尋路。當節(jié)點對資源查詢時,首先在所屬的簇內(nèi)查找關聯(lián)Kl節(jié)點,若滿足(K,V)則查詢結(jié)束,否則向負責Kh的簇的超級節(jié)點發(fā)送查詢報文,若滿足(K,V)則查詢結(jié)束,否則重復查詢超級節(jié)點。在此期間每查詢一個簇都必須向該簇的負責Kl的超級節(jié)點發(fā)送報文,并依次傳遞下去,或者傳遞到上一級負責Kh的簇中的超級節(jié)點,知道最后取得需求的(K,V)。
3.1IPv6下TRCBC系統(tǒng)結(jié)構(gòu)及思路
基于IPv6下的P2P資源通過分簇來進行訪問控制模型,如圖3所示。
圖3 TRCBC系統(tǒng)結(jié)構(gòu)圖
模型訪問控制的設計如下:
(1)超級節(jié)點作為TRCBC模塊對簇內(nèi)的所有節(jié)點進行注冊,為需要保護的服務和資源配置統(tǒng)一的URI的注冊和描述,即抽象為URI??沙橄蟮馁Y源包括動態(tài)頁面、靜態(tài)頁面、多媒體服務、多媒體數(shù)據(jù)等。
(2)統(tǒng)一使用基于XACML的訪問控制策略。所策略的管理和使用統(tǒng)一使用XACML標準進行操作,以便于系統(tǒng)的統(tǒng)一性管理。
(3)簇內(nèi)的超級節(jié)點負責其他節(jié)點的訪問資源的驗證。如果是簇外節(jié)點與簇內(nèi)節(jié)點之間的通信,需要通過兩個簇的超級節(jié)點的交互驗證,驗證成功后不同簇的節(jié)點通過建立P2P直接通信來實現(xiàn)對資源的訪問控制;如果是簇內(nèi)節(jié)點之間的訪問可在簇內(nèi)超級節(jié)點驗證成功后建立簇內(nèi)節(jié)點之間的P2P直接通信。通信之前各個簇的超級節(jié)點之間已通過事先定義的基于角色、信任機制、上下文策略的規(guī)則相互協(xié)作來完成交互,建立最基本的訪問控制[7,8]。
3.2訪問控制流程
在請求資源時資源請求節(jié)點如何獲取傳遞授權(quán)策略、自身授權(quán)策略、訪問權(quán)限等,步驟如圖4所示。
TRCBC模型的處理過程:
(1)首先TRCBC模塊授予資源請求節(jié)點對應的訪問權(quán)限,并把相關權(quán)限屬性證書發(fā)布在LDAP上。證書包含角色ID、信任值、節(jié)點身份信息、證書有效日期。
(2)資源請求節(jié)點將請求信息發(fā)送到認證服務,資源請求節(jié)點身份認證通過后可進行下一步訪問。
(3)PEP接收認證服務發(fā)送的資源請求節(jié)點的證書信息。
(4)PEP將包括行為、資源、主題、環(huán)境的屬性的訪問請求轉(zhuǎn)發(fā)到上下文處理器進行下一步驗證。
(5)上下文處理器將訪問請求以XACML的格式發(fā)送給PDP。
(6)PDP在收到XACML請求要求進一步認證,要求上下文處理器提供角色標識、上下文信息、資源、信任值、屬性證書等。
(7)上下文處理器收到后向PIP提出相同的屬性請求。
(8)PIP獲取對應的屬性值。
(9)PIP將上下文處理器請求的屬性值傳回。
(10)上下文處理器再次處理傳回的屬性值并向PDP提出決策請求。
(11)PDP作出判斷并返回角色結(jié)果。
(12)上下文處理器將結(jié)果以PEP需求格式返回給PEP。
(13)PEP按決策結(jié)果做出響應。
(14)兩個節(jié)點之間建立P2P直接通信,資源請求節(jié)點取得請求的資源。
(15)TRCBC模塊對交互情況進行跟蹤和監(jiān)控并記錄交互結(jié)果。
圖4 TRCBC實施框架圖
本文設計和實現(xiàn)了一種基于IPv6和P2P的網(wǎng)絡資源共享模型。討論了IPv6網(wǎng)絡下的P2P網(wǎng)絡結(jié)構(gòu),利用分簇網(wǎng)絡進行節(jié)點間數(shù)據(jù)通信,防止網(wǎng)絡抖動發(fā)生;提出了基于Kademlia的DHT分布式哈希優(yōu)化算法,提高了節(jié)點識別準確率;設計了TRCBC數(shù)據(jù)訪問控制模型。該成果已于2011年開始在長春理工大學的極光BT平臺上應用,對網(wǎng)絡資源共享機制的研究與應用具有一定的現(xiàn)實意義。
[1]Marcus Goncalves,Kitty Niles.IPv6 Networks[M].北京:人民郵電出版社,2004.
[2]Thanh V V,F(xiàn)ukuda K,Chan H N,et al.A study ofP2Ptrafficcharacteristicsevaluationinthe WIDE backbone[C].Proc.6th International ConferenceonInformationTechnologyandApplication(ICITA2009),Hanoi,Vietnam,November,2009.
[3]吳家皋,葉曉國,姜愛全.異構(gòu)環(huán)境下覆蓋組播網(wǎng)絡路由算法的研究[J].軟件學報,2005,16(6):1112-1120.
[4]Kong J,Zerfos P,Luo H,et al.Providing robust and ubiquitous security support for mobile Ad Hoc networks[C]//International Conference on Network Protocols ICNP.Washington:IEEE Computer Society,2001:251-260
[5]曹慧,董健全.基于IPv6、簇和超節(jié)點的P2P路由模型研究[J].計算機工程,2008,34(20):115-117.
[6]張有為,李津生,洪佩琳,等.StratoNet:一種基于DHT的P2內(nèi)容定位系統(tǒng)[J].計算機工程,32(24),2005:53-56.
[7]鄭文曉.IPv6環(huán)境下基于DHT的P2P媒體共享系統(tǒng)的研究與實現(xiàn)[D].北京:北京郵電大學,2013.
[8]陳占芳,王歡,畢琳,等.基于OA系統(tǒng)的即時通訊平臺關鍵技術(shù)研究與實現(xiàn)[J].長春理工大學學報:自然科學版,2012,5(4):125-129.
Research on Network Resource Sharing Mechanism Based on IPv6 and P2P
WANG Huan1,2,YAN Dongming2,ZHAO Jianping2,CHEN Zhanfang2,LIU Dan2,ZHAO Wei1
(1.Information Center,Changchun University of Science and Technology,Changchun 130022;
2.School of Computer Science and Technology,Changchun University of Science and Technology,Changchun 130022)
Under the current situation of the rapid development of Internet,people are getting more and more requests for resources kinds and access speed.To this end,how to provide high quality network resources to meet the cultural needs of the broad masses of the people has become a hot issue in today’s society.For the sharing of network resources,this paper designs a network resource sharing model based on IPv6 and P2P.In the model,the data communication between nodes is adopted in the cluster network,and reduce the network jitter due to frequent access of nodes. The Kademlia algorithm is used to optimize the DHT distributed hash,which improves the recognition accuracy of the node,and using TRCBC model for system data access control,to ensure the integrity of the system data.The model has been applied to the Aurora BT platform of Changchun University of Science and Technology in 2011 and has been proved to be an effective model of resource sharing.
P2P;IPv6;resource sharing
TP399
A
1672-9870(2016)04-0125-05
2016-03-07
賽爾網(wǎng)絡下一代互聯(lián)網(wǎng)技術(shù)創(chuàng)新項目(NGII20150504)
王歡(1987-),男,碩士,工程師,E-mail:wanghuan@cust.edu.cn
趙建平(1964-),男,教授,博士生導師,E-mail:zhaojpin@aliyun.com