雷鳳君 柳保燕
摘 要:隨著移動互聯(lián)網(wǎng)和科學技術的發(fā)展,以及移動終端的普及和自身能力的增強,使得在移動環(huán)境下開展P2P技術成為一種必要,根據(jù)移動互聯(lián)網(wǎng)及移動P2P的特點,本文結合多目標規(guī)劃策略,針對在移動環(huán)境下如何有效地維護資源搜索表進行研究。
關鍵詞:移動P2P 資源索引表 多目標規(guī)劃
中圖分類號:TP393.03 文獻標識碼:A 文章編號:1672-3791(2013)03(a)-0012-02
移動環(huán)境下P2P網(wǎng)絡的主要特點就是節(jié)點的動態(tài)性[1~3],包括節(jié)點的移動、加入與退出。節(jié)點的這些動態(tài)性都將對資源的搜索及資源索引表的維護造成一定的影響。目前的研究主要是從數(shù)據(jù)層、路由層、節(jié)點層和查找層來應對節(jié)點動態(tài)性所造成的影響,在數(shù)據(jù)層采用數(shù)據(jù)冗余策略;在路由層采用路由維護策略;在節(jié)點層采用節(jié)點選擇策略;在查找層設定合適的查找超時以及采用并行查找算法[3~5]。
本文在分析移動網(wǎng)絡本身的特點及移動環(huán)境下P2P系統(tǒng)的特點的基礎上,通過網(wǎng)絡性能測量方法[6]獲得影響P2P系統(tǒng)性能的因素,如傳輸時延、數(shù)據(jù)傳輸率、丟包率等,綜合考慮這些因素,然后找到一種合理可行的方案維護有效的資源索引表。與此同時,還要考慮節(jié)點加入、移動、節(jié)點在線、離線、失效[7~8]這幾種情況下,如何調(diào)整算法維護資源索引表,使得索引表持續(xù)保持有效狀態(tài)。
1 移動P2P下資源索引表的維護
1.1 資源索引表的生成與維護
通過對移動終端、移動互聯(lián)網(wǎng)及移動環(huán)境下P2P網(wǎng)絡自身特性的研究[9~11],影響資源索引表有效性的因素主要有:節(jié)點暫時離線,節(jié)點退出網(wǎng)絡,節(jié)點上的資源因某些其它原因如帶寬減小等變得不如以前高效,節(jié)點的移動,新的節(jié)點的加入。在考慮這些因素的前提下提出一種有效的方法對資源索引表進行維護。
1.1.1 資源索引表的生成
首先建立資源索引表,主要通過以下步驟。
(1)利用有效的資源搜索算法搜索資源,記錄資源的邏輯位置。
(2)利用有效的網(wǎng)絡性能測量方法獲取影響P2P服務的因素,在此主要考慮傳輸時延、數(shù)據(jù)傳輸率、路由跳數(shù)、丟包率。每一個因素作為資源的一個屬性。
(3)將資源的每一個屬性作為參數(shù),設計一種方案,在綜合考慮這幾個因素的前提下進行相關評估,資源因此獲取一個權重值,依據(jù)權重值對資源的進行劃分。用戶請求下載資源時,優(yōu)先選擇權重相對大的節(jié)點作為下載源。
(4)通過以上方法節(jié)點可擁有一個資源索引表,接下來主要考慮當節(jié)點離線、失效、移動時如何維護此索引表,使得其繼續(xù)有效的前提下,能夠依然保持資源按權重進行排列。依上所述生成相對較優(yōu)的資源索引表的步驟如圖1所示。
1.1.2 資源索引表的維護
節(jié)點移動或節(jié)點狀態(tài)發(fā)生變化時對索引表的維護:在索引表建立起來的基礎上,不斷發(fā)送探測報文獲取資源的有效性及資源相關屬性值。
(1)如果資源不可用,則從索引表中刪除。
(2)如果節(jié)點暫時離線導致資源不可用,則將其對應的權重值賦為0。
(3)如果依據(jù)探測到的屬性值發(fā)現(xiàn)一定時間內(nèi)不再高效,則依據(jù)算法重新計算權重值。
(4)如果發(fā)生節(jié)點移動或者節(jié)點添加的情況,則重復1中的操作。
影響共享資源的效率的因素有很多種,在此僅考慮數(shù)據(jù)傳輸率、時延、跳數(shù)和丟包率。如何在保證數(shù)據(jù)傳輸率高、時延低、跳數(shù)少、丟包率低的前提下,選擇出相對較優(yōu)的節(jié)點作為下載源涉及到多目標規(guī)劃問題。求解多目標規(guī)劃方法[15~16]大體上有三種方法:化多為少的方法;分層序列法;層次分析法。分別對這三種主要的方法進行分析,根據(jù)移動P2P的特點,可知對于高度動態(tài)性的移動P2P網(wǎng)絡,維護有效的資源索引表,采用層次分析法比較合適。
2 基于層次分析法優(yōu)化資源索引表
針對數(shù)據(jù)傳輸率、時延、路數(shù)和丟包率這三個準則,采用層次分析法獲取資源索引表中,各資源對應節(jié)點的權重,更新資源索引表,使得每次共享資源時都優(yōu)先選擇權重大的節(jié)點,從而提高共享效率。
Step1:分別用Rate、Delay、TTL、Lost表示數(shù)據(jù)傳輸率、時延、路數(shù)和丟包率;N表示結點;m取為自然數(shù),作為節(jié)點下標,用于區(qū)分不同的節(jié)點;1<=k<=m。
Step2:建立層次結構模型,如圖2所示:
Step3:依據(jù)準則層不同因素的重要性,構造判斷矩陣,記為Matrix,維數(shù)記為Dim;
Step4:計算Matrix的最大特征值,記為,然后依據(jù)判斷Matrix的一致性,如果矩陣不滿足一致性,則返回step3,重新構造判斷矩陣;否則繼續(xù);
Step5:記對應的最大特征向量為U=[Rate_v,TTL_v,Delay_v,Lost_v],將其標準化得到向量U=[Rate_v,TTL_v,Delay_v,Lost_v];
Step5:構造各個因素的成對比較矩陣,獲取其各自的重要度及其權向量,依次記為:Rate_U=[Ni_r,Nj_r,Nk_r,…,Nm_r],TTL_U=[Ni_t,Nj_t,Nk_t,…,Nm_t],
Delay_U=[Ni_d,Nj_d,Nk_d,…,Nm_d],Lost_U=[Ni_l,Nj_l,Nk_l,…,Nm_l];
Step6:依據(jù)U及Rate_U、TLL_U、Delay_U和Lost_U,計算方案層各個節(jié)點的權重值,如Ni的權重值記為Ni_value:
Ni_value=(Ni_r*Rate_v+Ni_t*TTL_v +Ni_d*Delay_v+Ni_l*Lost_v)/Dim;
Step7:最后依據(jù)節(jié)點的權重值進行排序,得到依此權重值排序的資源搜索表。
如此以來,每當用戶共享資源時,都會從資源索引表中取出權重值相對大的節(jié)點進行下載,保證了下載的可靠性和速度。
3 結論
本文給出了移動環(huán)境下P2P的特點及其面臨的問題,研究了在動態(tài)網(wǎng)絡環(huán)境下資源索引表的維護及多目標規(guī)劃技術,給出了應用層次分析法維護資源索引表的一種策略。如果不對資源索引表進行相關的維護,在用戶共享資源時勢必引發(fā)多個連接,消耗較多的網(wǎng)絡資源,同時要求移動終端擁有更強的處理能力;通過對資源索引表中的信息進行優(yōu)化,用戶共享資源時,總是選擇相對較優(yōu)的節(jié)點進行下載,這在一定程度上緩解了以上問題。
參考文獻
[1] 蔡康.P2P對等網(wǎng)絡原理與應用[M].北京:科技出版社,2011.
[2] 張春紅.P2P技術全面解析[M].北京:人民郵電出版社,2010.
[3] Frank H.P.Fitzek,Hassan Charaf.Mobile Peer to Peer(P2P)[M].美國:Wiley,2009.
[4] Daniel Brookshier.Jxta:Java P2P Programming[M].美國:Sams,2011.
[5] Gradecki.Mastering Jxta:Building Java Peer-to-Peer Applications[M].美國:John Wiley & Sons,2011.
[6] 許斌.JXTA-JavaP2P網(wǎng)絡編程技術[M].北京:清華大學出版社,2003.
[7] RobertFlenner.JavaP2P技術內(nèi)幕[M].高嶺,譯.北京:人民郵電出版社,2003.
[8] 管磊.P2P技術揭密:P2P網(wǎng)絡技術原理與典型技術開發(fā)[M].北京:清華大學出版社,2011.
[9] 中國互聯(lián)網(wǎng)絡信息中心[EB/OL].中國互聯(lián)網(wǎng)絡發(fā)展狀況統(tǒng)計報告,2009.
[10] 崔勇.無線移動互聯(lián)網(wǎng):原理、技術與應用[M].北京:機械工業(yè)出版社,2012.
[11] 鄭蘭,程鵬.移動互聯(lián)網(wǎng)[M].北京:清華大學出版社,2011.
[12] J Fu,H xiong.Perform trust:Trust integrated past and current performance in P2P file sharing systems[A].Proceedings of the IEEE/ACS International Conference on Computer Systems and Applications[C].Piscalaway:IEEE Press,2008:718-725.
[13] Chen K,Hwang K.Heuristic discovery of role-based trust chains in peer-to-peer networks[J].IEEE Transactions on Parallel and Distributed Systems,2009.
[14] 歐中洪,宋美娜.移動對等網(wǎng)絡關鍵技術.Journal of Software,2008.
[15] Tahsin T,Choudhury L.F.,Rahman L.Peer-to-Peer mobile applications using JXTA/JXME.Computer and Information Technology,2008.
[16] 劉淳安.動態(tài)多目標優(yōu)化進化算法及其應用[M].北京:科學出版社,2011.