新聞中心

EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 無線Ad-Hoc網(wǎng)絡(luò)中P2P文件搜索機(jī)制的研究

無線Ad-Hoc網(wǎng)絡(luò)中P2P文件搜索機(jī)制的研究

作者: 時(shí)間:2009-10-20 來源:網(wǎng)絡(luò) 收藏

3.1 WANET系統(tǒng)樹形拓?fù)涞慕?br /> 假設(shè)組建初期只有一個(gè)初始節(jié)點(diǎn)A,要建立一個(gè)如圖1d所示的7個(gè)節(jié)點(diǎn)的WANET共享,樹形拓?fù)涞慕⑦^程如下:
(1)節(jié)點(diǎn)A對自己的兩個(gè)共享α1、α2哈希后將值映射到整段共享哈希鏈上,如圖2a所示。

(2)節(jié)點(diǎn)B(共享文件β1、β2)發(fā)現(xiàn)節(jié)點(diǎn)A并向節(jié)點(diǎn)A發(fā)起接入請求,即B要加入A組成的網(wǎng)絡(luò)。節(jié)點(diǎn)A收到B的接入請求后,將自己所負(fù)責(zé)的哈希鏈分成兩段并分配一半給B,文件α2因此落入節(jié)點(diǎn)B負(fù)責(zé)的一段哈希鏈,A將文件α2的位置索引送至B(文件雖然還存放在節(jié)點(diǎn)A,但A上α2的位置信息置空)。因此,A成為B的雙親節(jié)點(diǎn)。B存放著文件α2的位置信息[α2,A]。
(3)B向網(wǎng)絡(luò)插入其共享文件β1和β2,β1映射到B節(jié)點(diǎn)所負(fù)責(zé)的哈希鏈段,β2映射到A節(jié)點(diǎn)所負(fù)責(zé)哈希鏈段。則B節(jié)點(diǎn)存儲位置信息[β1,B],A節(jié)點(diǎn)存儲位置信息[β2,B],即B為文件β1的PnodeA為文件β2的Pnode,如圖2b所示。
(4)另一個(gè)新節(jié)點(diǎn)C(存儲文件γ1、γ2)發(fā)現(xiàn)節(jié)點(diǎn)B并對其發(fā)出接入請求,節(jié)點(diǎn)C從B接入網(wǎng)絡(luò),B將自己的哈希鏈段分出一半給C。節(jié)點(diǎn)C上的文件γ1、 γ2哈希后映射到哈希鏈上,如圖2c。α2落入C所負(fù)責(zé)的哈希鏈段,B將α2的信息送至C,節(jié)點(diǎn)C不僅保留α2的位置信息,也保留從C到文件α2的路徑信息。C將B加到路徑上,同時(shí)保存[α2,BA]的索引項(xiàng)。表明文件α2存儲在節(jié)點(diǎn)A,并且從C到節(jié)點(diǎn)A的路徑是“C-B-A”。節(jié)點(diǎn)B成為C的雙親節(jié)點(diǎn)。
(5)C向網(wǎng)絡(luò)插入共享文件γ1、γ2,γ1映射到C負(fù)責(zé)的哈希鏈段,γ2映射到A負(fù)責(zé)的哈希鏈段。
(6)同理,節(jié)點(diǎn)E發(fā)現(xiàn)網(wǎng)絡(luò)并向節(jié)點(diǎn)B發(fā)出接入請求后,分擔(dān)了B負(fù)責(zé)的一半哈希鏈并插入文件σ1,B成為E的雙親節(jié)點(diǎn);節(jié)點(diǎn)D(存儲文件δ1和δ2)發(fā)現(xiàn)網(wǎng)絡(luò)并從節(jié)點(diǎn)E接入后分擔(dān)了E一半的哈希鏈,節(jié)點(diǎn)F(存儲了文件η1和η2)發(fā)現(xiàn)網(wǎng)絡(luò)并從E接入,叉分擔(dān)E剩下部分一半的哈希鏈:最后節(jié)點(diǎn)G(存儲共享文件ε1)也從E加入網(wǎng)絡(luò)又分擔(dān)了 E剩下哈希鏈的一半。這樣,E成為節(jié)點(diǎn)D、G、F的雙親節(jié)點(diǎn)。各個(gè)節(jié)點(diǎn)在加入的過程中向網(wǎng)絡(luò)插入自己提供的共享文件,如圖2d~圖2g中所示,相應(yīng)的共享文件被插入到網(wǎng)絡(luò)中各節(jié)點(diǎn)所負(fù)責(zé)的哈希鏈上,在此過程中,相應(yīng)的節(jié)點(diǎn)也存儲了文件名及到達(dá)文件存儲節(jié)點(diǎn)的路由信息。
該網(wǎng)絡(luò)結(jié)構(gòu)建立后,網(wǎng)絡(luò)中各共享文件的當(dāng)前位置和路由信息也被定位,各共享文件的路由可從訪問Pnode的請求消息中獲得,如圖2所示。網(wǎng)絡(luò)的樹形拓?fù)浣Y(jié)構(gòu)也同時(shí)建立,如圖1所示。
(7)恢復(fù)當(dāng)雙親節(jié)點(diǎn)的一個(gè)子節(jié)點(diǎn)斷網(wǎng)時(shí),雙親節(jié)點(diǎn)重新獲得子節(jié)點(diǎn)所負(fù)責(zé)的哈希鏈段?;蜃庸?jié)點(diǎn)與其雙親斷開時(shí),從子節(jié)點(diǎn)往下每個(gè)雙親與子節(jié)點(diǎn)哈希鏈重新分配。
(8)離開當(dāng)一個(gè)節(jié)點(diǎn)要離開WANET文件共享網(wǎng)絡(luò)時(shí),要先刪除所有共享文件,再將其索引信息刪除,如E將自己的哈希鏈交付雙親B,同時(shí)將離網(wǎng)消息通知其雙親B和子節(jié)點(diǎn)D、G、F,則節(jié)點(diǎn)B將D、G、F加為子節(jié)點(diǎn),節(jié)點(diǎn)D、G、F將B作為雙親節(jié)點(diǎn)。
綜上所述,在圖1d中,假設(shè)節(jié)點(diǎn)D要查找文件η1,則D為查詢節(jié)點(diǎn)Qnode,文件η1存儲在F節(jié)點(diǎn),則F節(jié)點(diǎn)就是文件節(jié)點(diǎn)Fnode,文件η1映射到哈希鏈上的H(η1)點(diǎn),而H(η1)點(diǎn)正好落在節(jié)點(diǎn)C負(fù)責(zé)的哈希鏈上,所以,節(jié)點(diǎn)C就是路徑節(jié)點(diǎn)Pnode,它存儲著由Pnode(節(jié)點(diǎn)C)到Fnode (節(jié)點(diǎn)F)的路由信息。

p2p機(jī)相關(guān)文章:p2p原理




評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉