無線Ad-Hoc網絡中P2P文件搜索機制的研究
4 WANET網絡中共享文件搜索和下載過程
在圖1d中,假設D作為查詢節點搜索文件η2,D不知道η2的位置,甚至不知道這個文件是否存在,但由H(η2)的可以知道文件存儲在某個節點中。共享文件η2文件的搜索和下載過程如圖4所示。本文引用地址:http://www.j9360.com/article/157807.htm
(1)節點D對文件η2哈希,得到H(η2),D發現H(η2)不在自己負責的哈希鏈內,而D本身又沒有子節點,D就將查詢傳遞給其唯一的鄰居節點E(E這里也是D的雙親節點)。
(2)節點E收到節點D查詢η2的請求[η2,D],但節點E的3個鄰居節點B、G和F都不包含文件η2的路由信息H(η2),E就將查詢送至其雙親節點B。
(3)由于節點B所負責的哈希鏈也不包含H(η2),但是因為節點B知道它的一個子節點(這里指節點C)負責的哈希鏈上包含所請求的文件名的哈希值,按照H(η2)值和文件哈希鏈狀態,B將查詢向前傳送到節點C(否則節點B將查詢送給其雙親節點A)。
節點B將查詢送到節點C后并不能保證能收到C的應答。節點C除和節點B相連外可能還與其他節點相連,因此,確定節點所在的哈希鏈后,C可能將查詢送給它的一個子節點。但是無論節點C還是其子節點響應查詢請求都對節點B無影響。節點B只知道將查詢送至節點C。在拓撲結構圖中,節點C沒有子節點并且擁有文件 η2的位置信息。從源節點發起查詢的路徑都被標識為查詢。
(1)C節點收到查詢消息[η2,BED],表示節點D經節點E、B查詢文件η2,于是C對D產生查詢響應消息ACK[η2,EBC](包含位置信息),沿著路徑[η2,EBC]返回給節點D。
(2)從節點C獲得文件節點Fnode的路由信息FED沿查詢節點的路由回送節點D,節點C將響應傳送給路徑上的下一個節點B。
(3)節點B查看響應中的路由后,將消息送至路徑的下一個節點E。
(4)E查看路由后再將消息送至路徑中文件節點F(文件η2的存儲節點)。
(5)節點D收到查詢響應,響應消息中包含文件η2的位置信息[η2,DEF]。現在,節點D不僅知道了文件η2存在節點F中,也知道了兩個路徑從D到C (含η2文件位置信息)和從C到F(η2文件存儲節點)。節點D將路徑鏈接成D-E-B-C-B-E-F,然后刪除不需要的路徑E-B-C-B,最后形成從D到η2的路徑D-E-F,即從查詢發起節點D到文件η2的存儲節點F的路徑,通過它能直接從節點F找到并下載文件η2。
5 與洪泛的比較系統的通信開銷
WANET通常用于P2P文件共享,且一般采用洪泛查詢。假定洪泛模型無選擇轉發功能,因此,假定洪泛查詢一旦在網絡中啟動,網絡中所有節點都能收到查詢。該查詢產生的系統開銷O=(n-1)m,其中m表示查詢次數,n表示節點數量。該WANET共享系統中P2P文件搜索和下載模型(圖4)組建網絡拓撲時形成的樹形結構使得即便所查文件不存在,也不會像洪泛一樣造成過多無用的查詢消息,該結構幾乎能發現和訪問網絡中的所有共享文件。
所以。一旦網絡建立。系統開銷與洪泛相比,單個查詢的成本效益明顯合算。
另一方面,由于恢復操作和網絡接入操作產生的系統開銷較大,當每次斷網和網絡接入發生時,會帶來額外開銷(在執行恢復操作中斷開的子節點變為根節點,哈希鏈在整個子網絡中重新分配;網絡接入時,每個接入的節點要對全網絡中的共享文件執行插入請求,產生很大通信流量),而洪泛不會帶來這樣的開銷。
6 結論
同樣大小的網絡中,在低移動性、需要頻繁搜索文件的WANET上,提出方案的帶寬效率比洪泛高,文件搜索更有效。如果WANET網絡成員移動頻繁且搜索文件不頻繁,則采用洪泛會更好。為避免洪泛和通過單播方式訪問文件,我們盡量保持分布式位置信息的一致性。保持位置信息一致性的開銷通過大量減少后續文件搜索的開銷來補償。
當一個消息不存在時,網絡中每個節點的每個文件都被洪泛就會導致擁塞。WANET文件共享系統允許成員的低移動性,重新哈希運算后更完善的網絡結構可抵消移動性造成的查詢開銷的增加。
p2p機相關文章:p2p原理
評論