一種基于節(jié)點移動特性的移動p2p網(wǎng)絡(luò)分簇方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及移動P2P網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種基于節(jié)點移動特性的移動P2P網(wǎng) 絡(luò)分簇方法。
【背景技術(shù)】
[0002] 近年來,隨著無線通信技術(shù)的快速發(fā)展、移動設(shè)備性能的不斷提升與普及,移動用 戶已經(jīng)可以實現(xiàn)隨時隨地交換和處理數(shù)據(jù)。伴隨著P2P網(wǎng)絡(luò)在Inertnet上獲得的巨大成功, 結(jié)合無線通信技術(shù)和對等計算的移動P2P網(wǎng)絡(luò)(Mobile Peer-t〇-Peer Networks,MP2P)也 已經(jīng)成為當(dāng)前研究熱點。作為一種新興的移動數(shù)據(jù)通信方式,移動P2P網(wǎng)絡(luò)以其具有的無中 心、自組織等特性,為人們提供了一種在無基礎(chǔ)設(shè)施支持的無線環(huán)境下進行數(shù)據(jù)傳輸?shù)慕?決方案,在軍事戰(zhàn)場、搶險救災(zāi)以及用戶信息共享等領(lǐng)域有著廣闊的應(yīng)用前景和重要的實 用價值。
[0003] 然而,由于節(jié)點的移動性使得移動P2P網(wǎng)絡(luò)的覆蓋層拓撲經(jīng)常發(fā)生變化,造成覆蓋 層與底層物理網(wǎng)絡(luò)拓撲的不一致,這就可能出現(xiàn)覆蓋網(wǎng)中的"邏輯"鄰居在物理網(wǎng)絡(luò)中可能 相距甚遠,產(chǎn)生拓撲結(jié)構(gòu)不匹配問題,不僅會造成覆蓋層數(shù)據(jù)傳輸和資源定位低效,同時會 產(chǎn)生大量的冗余信息流量,對底層物理網(wǎng)絡(luò)造成巨大的帶寬壓力,降低網(wǎng)絡(luò)整體工作性能。
[0004] 具有拓撲感知的分簇方法能有效解決拓撲不一致性問題,但已有的分簇方法存在 網(wǎng)絡(luò)開銷大、缺乏對節(jié)點移動特性的考量,而實際上移動P2P網(wǎng)絡(luò)中節(jié)點對等關(guān)系和網(wǎng)絡(luò)拓 撲結(jié)構(gòu)的動態(tài)變化與現(xiàn)實社會存在著一定的映射關(guān)系,通過對節(jié)點移動特性、社會特性研 究發(fā)現(xiàn),移動節(jié)點的行為通常不是隨機的,而是呈現(xiàn)分組活動的特性。因此,重視節(jié)點移動 特性,充分利用這種潛在關(guān)系,構(gòu)建具有穩(wěn)定性高的移動P2P網(wǎng)絡(luò)覆蓋網(wǎng),對提高移動P2P網(wǎng) 絡(luò)整體工作效率具有重要的意義。
【發(fā)明內(nèi)容】
[0005] 有鑒于此,本發(fā)明提供一種基于節(jié)點移動特性的移動P2P網(wǎng)絡(luò)分簇方法,用以解決 現(xiàn)有的分簇方法對節(jié)點移動特性考慮不足的問題,達到降低網(wǎng)絡(luò)拓撲維護開銷、提高移動 P2P網(wǎng)絡(luò)穩(wěn)定性,提高網(wǎng)絡(luò)整體工作效率的目的。
[0006] 本發(fā)明公開了一種基于節(jié)點移動特性的移動P2P網(wǎng)絡(luò)分簇方法,根據(jù)節(jié)點的位置 變化來研究節(jié)點的運動特征,將物理位置鄰近且具有相同運動特征的節(jié)點劃分到一個簇 內(nèi),并在每一個簇內(nèi)選取一個能力強的節(jié)點作為本簇的簇首節(jié)點,使得簇內(nèi)節(jié)點能夠最大 程度地保持網(wǎng)絡(luò)結(jié)構(gòu)的穩(wěn)定性,有效解決移動P2P網(wǎng)絡(luò)拓撲不一致性問題,網(wǎng)絡(luò)可擴展性較 尚。
[0007] 本發(fā)明的具體技術(shù)方案如下:
[0008] -種基于節(jié)點移動特性的移動P2P網(wǎng)絡(luò)分簇方法,包括以下步驟:
[0009] 步驟S100,為加入到移動P2P網(wǎng)絡(luò)中的節(jié)點分配唯一的覆蓋網(wǎng)標識;
[0010] 步驟S200,節(jié)點計算自身的能力值;
[0011] 步驟S300,計算節(jié)點與其鄰居節(jié)點的距離;
[0012] 步驟S400,根據(jù)節(jié)點移動特性,節(jié)點建立自己的朋友節(jié)點列表以及建立朋友簇節(jié) 點列表;
[0013] 步驟S500,根據(jù)節(jié)點的移動特性,選取朋友簇的簇首節(jié)點,并建立朋友簇。
[0014] -種基于節(jié)點移動特性的移動P2P網(wǎng)絡(luò)分簇方法,所述步驟S100,為移動P2P網(wǎng)絡(luò) 中所有節(jié)點分配唯一的覆蓋網(wǎng)標識,具體方法為:當(dāng)節(jié)點加入到移動P2P網(wǎng)絡(luò)中時,通過安 全散列函數(shù)對移動設(shè)備的屬性進行哈希運算獲得一個全網(wǎng)唯一的覆蓋網(wǎng)節(jié)點標識。
[0015] 所述步驟S200,計算節(jié)點能力值,能力值獲取公式為:
[0016]
[0017]其中,Ability [u]為節(jié)點u的能力值,B[u]為節(jié)點u的有效帶寬,C[u]為節(jié)點u的CPU 處理速度,S[u]為節(jié)點u的內(nèi)存容量,T[u]為節(jié)點u的在線時間,P[u]為節(jié)點u的剩余電量。 6^,/幻/,/!.,|^為各因素所占的權(quán)重,且0; +為+廠+又_+妒=10
[0018]所述步驟S300,計算節(jié)點u與其鄰居節(jié)點間的距離,具體方法為:節(jié)點周期性向周 圍鄰居節(jié)點發(fā)送查詢消息,鄰居節(jié)點通過接收到的查詢消息信號的強度計算出與發(fā)送節(jié)點 之間的距離,距離計算公式為:
[0020]其中,| |uv| |表示節(jié)點u和節(jié)點v之間的距離,PR表示接收的功率大小,Ρτ表示傳輸 的功率大小,GT表示發(fā)送方天線功率的增益,Gr表示接收方天線功率的增益,λ表示波長。 [0021 ]所述步驟S400,節(jié)點u建立自己的朋友節(jié)點列表,并與它的朋友節(jié)點交換彼此的朋 友節(jié)點列表,從而獲得組成朋友簇的節(jié)點信息,進一步包括以下步驟:
[0022] 步驟S410,節(jié)點u通過與周圍每個鄰居節(jié)點進行η次距離測量,并對測量結(jié)果進行 去噪聲處理,具體方法為:假設(shè)節(jié)點u與鄰居節(jié)點ν之間進行了 η次距離測量,則這η次測量結(jié) 果的平均值.Pi的計算公式為:
[0024]其中,η為測量次數(shù),| |uv| U為節(jié)點u和節(jié)點ν之間的第i次測量距離值,當(dāng)| |uv| 超過系統(tǒng)第一閾值λ,那么則認為是有噪聲干擾,表明所測量的結(jié)果不可靠,應(yīng)丟棄掉該次 測量結(jié)果:
[0025]步驟S420,建立節(jié)點u的朋友節(jié)點列表,具體方法為:如果節(jié)點u和節(jié)點V之間的平 均距離|wv||<r且滿足5〈5max,貝lj節(jié)點u將節(jié)點ν加入到自己的朋友節(jié)點列表中,其中,r是節(jié)點 無線信號的有效傳輸距離,S max為系統(tǒng)第二閾值,δ計算公式為:
[0026]
[0027] 步驟S430,節(jié)點u周期性的與它的所有朋友節(jié)點交換彼此的朋友節(jié)點列表,并建立 朋友簇節(jié)點列表,具體方法為:假設(shè)節(jié)點U從節(jié)點V處收到的節(jié)點V的朋友列表,若節(jié)點W是節(jié) 點V的朋友節(jié)點,但節(jié)點W不在節(jié)點U的朋友簇列表中,則將節(jié)點W加入到節(jié)點U的朋友簇列表 中;若節(jié)點W已經(jīng)在節(jié)點U的朋友簇列表中,但在新收到的全部朋友節(jié)點發(fā)來的它們的朋友 節(jié)點列表中,已經(jīng)沒有節(jié)點W,則節(jié)點U將節(jié)點W從朋友簇列表中刪除;
[0028] 所述步驟S500,根據(jù)節(jié)點的移動特性,選取朋友簇的簇首節(jié)點,并建立朋友簇,進 一步包括以下步驟:
[0029]步驟S510,節(jié)點u比較自身的能力值與朋友簇列表中節(jié)點的能力值,若節(jié)點u的能 力值最大,則節(jié)點u升級成為簇首節(jié)點,并向它的朋友節(jié)點廣播消息,聲稱自己為簇首節(jié)點, 同時邀請朋友節(jié)點加入以該節(jié)點為簇首的簇;若節(jié)點u的能力值不是最大,貝lj申請加入朋友 簇中具有最大能力值的節(jié)點作為簇首的朋友簇中。
[0030] 步驟S520,重復(fù)步驟S200-步驟S500,直到網(wǎng)絡(luò)中所有節(jié)點或成為簇首節(jié)點,或從 屬于某一個朋友簇內(nèi)。
[0031] 本發(fā)明公開的一種基于節(jié)點移動特性的移動P2P網(wǎng)絡(luò)分簇方法,其特點在于,不但 考慮了節(jié)點物理位置的鄰近關(guān)系,而且還考慮了節(jié)點的移動特性,將物理位置鄰近且具有 相同運動特征的朋友節(jié)點劃分到一個簇內(nèi),從而使得簇內(nèi)的網(wǎng)絡(luò)拓撲結(jié)構(gòu)能夠保證最大程 度的相對穩(wěn)定,有效解決了移動P2P網(wǎng)絡(luò)拓撲結(jié)構(gòu)不一致性問題,減少網(wǎng)絡(luò)拓撲維護開銷, 提高網(wǎng)絡(luò)數(shù)據(jù)傳輸效率,提高網(wǎng)絡(luò)可擴展性,同時,具有方法設(shè)計簡單,適用于節(jié)點計算能 力和電池電量受限的移動P2P網(wǎng)絡(luò)。
[0032] 下面通過附圖和具體實施例,對本發(fā)明的技術(shù)方案做進一步的詳細描述。
【附圖說明】
[0033]圖1是本發(fā)明的分簇方法流程圖。
[0034] 圖2是本發(fā)明與其它兩種分簇方法在節(jié)點平均駐留簇內(nèi)時間的性能對比圖。
【具體實施方式】
[0035] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面通過具體實施例對本發(fā)明的 技術(shù)方案做進一步地描述。顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實 施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得 的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0036] 移動P2P網(wǎng)絡(luò)中移動節(jié)點通常傳輸范圍有限,且移動頻繁,造成網(wǎng)絡(luò)拓撲結(jié)構(gòu)不斷 變化,使覆蓋網(wǎng)與物理網(wǎng)絡(luò)層拓撲結(jié)構(gòu)出現(xiàn)不一致性問題,導(dǎo)致數(shù)據(jù)傳輸效率低下。通過對 節(jié)點移動特性研究發(fā)現(xiàn),在實際應(yīng)用環(huán)境中,節(jié)點不是完全隨機的運動,而是根據(jù)節(jié)點的興 趣、運動規(guī)律等顯示出一定的移動一致性,本發(fā)明所述的一種基于節(jié)點移動特性的移動P2P 網(wǎng)絡(luò)分簇方法的核心思想是:從節(jié)點移動特性出發(fā),將具有相同運動特性的節(jié)點聚集成簇, 形成朋友簇,使得朋友簇中的節(jié)點由于具有相同運動特性,從而能夠最大程度地保持了簇 結(jié)構(gòu)的穩(wěn)定性,解決覆蓋網(wǎng)與物理網(wǎng)絡(luò)拓撲不一致問題,并減少網(wǎng)絡(luò)拓撲維護開銷。
[0037] 本發(fā)明實施例提供了一種基于節(jié)點移動特性的移動P2P網(wǎng)絡(luò)分簇方法,如圖1所 示,包括以下步驟:
[0038] 步驟S100,為移動P2P網(wǎng)絡(luò)中的節(jié)點分配唯一的覆蓋網(wǎng)標識。
[0039]需要說明的是,本發(fā)明實施例中使用的術(shù)語"節(jié)點"、"移動節(jié)點"、"移動終端"、"移 動設(shè)備"是指各種類型的移動設(shè)備,例如,智能手機、個人數(shù)字助理(PDA)、平板電腦(PAD)、 筆記本電腦等,其中每個設(shè)備能夠相互獨立地操作,彼此間以無線(例如藍牙、UMB、LTE、4G 等)的方式進行數(shù)據(jù)通信。"對等節(jié)點"、"移動對等節(jié)點"是指各種移動設(shè)備在移動P2P覆蓋 網(wǎng)絡(luò)上的映射。
[0040]在本發(fā)明實施例中,當(dāng)移動節(jié)點加入到移動P2P網(wǎng)絡(luò)中時,首先要獲得一個全網(wǎng)唯 一的覆蓋網(wǎng)節(jié)點標識,節(jié)點的覆蓋網(wǎng)標識可以通過安全散列函數(shù)(如SHA-1)對移動設(shè)備的 屬性進行哈希運算所獲得,這些屬性可以是移動節(jié)點的IP地址、MAC地址、端口地址、公鑰等 或者是它們中幾項的組合。SHA系列散列函數(shù)的哈希值長度通常大于160位,如此長的位數(shù) 能夠保證移動節(jié)點的覆蓋網(wǎng)標識幾乎不可能出現(xiàn)重復(fù),因此,可以認為是唯一的。
[0041]步驟S200,計算節(jié)點能力值,能力值計算公式