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