本發(fā)明涉及無線網(wǎng)絡通信技術(shù)領域,特別涉及一種移動自組織網(wǎng)絡分簇方法。
背景技術(shù):
車輛自組織網(wǎng)絡(vehicularadhocnetwork,vanet)是一種特殊的移動自組織網(wǎng)絡(mobileadhocnetwork,manet),也是智能交通系統(tǒng)的一種實際應用。它的應用主要分為兩大類:一類是解決道路安全行駛及交通通行效率問題,包括防止車輛碰撞、優(yōu)化車輛行駛路徑、避免交通擁堵、協(xié)助駕駛等;另一類主要提供業(yè)務增值服務,如娛樂、推送信息等。這些應用的實現(xiàn)主要以行駛在路網(wǎng)上的車輛以及固定基站(rsu),即分散在路網(wǎng)中的基礎設施為節(jié)點,通過車與車通信(vehicletovehiclecommunication,v2v)、車與路邊基礎設施之間的通信(vehicletoinfrastructurecommunication,v2i)進行信息的交換,整個路網(wǎng)中的車輛都是通過無線網(wǎng)絡通信技術(shù)進行相互間的信息傳輸。
vanet網(wǎng)絡中,由于車輛的高速移動特性,導致vanet的拓撲結(jié)構(gòu)動態(tài)變化,造成車輛間的通信鏈路頻繁中斷。又由于vanet中的通信是依據(jù)無線網(wǎng)絡通信技術(shù)進行的,而無線信道質(zhì)量的不穩(wěn)定性,加上路網(wǎng)旁側(cè)的建筑物以及多普勒平移等因素的影響,降低了車與車之間的通信效率。而vanet的各種應用對網(wǎng)絡的穩(wěn)定性也提出了很高的要求。
vanet網(wǎng)絡雖是一種特殊manet網(wǎng)絡,且分簇方法在manet中也已經(jīng)得到了廣泛的研究,但在vanet網(wǎng)絡中,由于節(jié)點的高速移動性、網(wǎng)絡拓撲結(jié)構(gòu)的動態(tài)變化等都使得vanet有別于manet,因此manet中的分簇方法不能完全適應vanet。
為了解決上述提到的問題,目前已經(jīng)研究出一些vanet分簇算法(如近鄰傳播聚類算法、多跳分簇算法等),但這些方法要么忽略了對鏈路服務質(zhì)量的要求,要么未充分考慮車輛的高速移動性,甚至忽略了車輛到達終點所剩的時間。車輛動態(tài)分布在整個路網(wǎng)當中,簇的拓撲結(jié)構(gòu)會因簇內(nèi)成員的離開和外界成員的申請加入而不斷發(fā)生改變,簇的重構(gòu)以及簇頭的改變都會影響簇的穩(wěn)定性,簇的穩(wěn)定性直接決定了網(wǎng)絡中消息傳輸?shù)目煽啃浴?/p>
因此,需要設計一種提高簇的穩(wěn)定性的移動自組織網(wǎng)絡分簇方法。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種移動自組織網(wǎng)絡分簇方法,以解決現(xiàn)有的分簇方法所建立的簇不夠穩(wěn)定的問題。
為解決上述技術(shù)問題,本發(fā)明提供一種移動自組織網(wǎng)絡分簇方法,所述移動自組織網(wǎng)絡分簇方法包括:
若干個節(jié)點建立初始簇;
設置成簇距離閾值和成簇速度閾值,剔除初始簇中不符合成簇要求的節(jié)點;
剩下的各節(jié)點成為簇成員,簇成員判斷周圍是否有固定基站,若有則選擇固定基站作為簇頭,若周圍沒有固定基站則根據(jù)簇成員的綜合屬性值選出簇頭;
更新簇成員的綜合屬性值和簇頭。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,若干個節(jié)點建立初始簇之前,所述移動自組織網(wǎng)絡分簇方法還包括:
第一節(jié)點為未成簇節(jié)點,第一節(jié)點申請加簇,發(fā)送加簇申請報文;
若周圍有可利用的簇,則加入已有的簇;
若周圍沒有可利用的簇,則發(fā)送建簇申請報文;周圍若干節(jié)點收到建簇申請報文后發(fā)送反饋信息報文;
第一節(jié)點偵聽并收到周圍節(jié)點發(fā)送的反饋信息報文后,初始簇建立完成。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,所述設置成簇距離閾值和成簇速度閾值,剔除初始簇中不符合成簇要求的節(jié)點包括:
初始簇中的第一節(jié)點根據(jù)收到的反饋信息報文計算簇內(nèi)所有節(jié)點與第一節(jié)點的相對距離和相對速度,并計算得到成簇距離閾值和成簇速度閾值;
判斷簇內(nèi)各節(jié)點與第一節(jié)點的相對速度是否大于成簇速度閾值,若簇內(nèi)某個節(jié)點與第一節(jié)點的相對速度大于成簇速度閾值,則丟棄該節(jié)點;
判斷簇內(nèi)各節(jié)點與第一節(jié)點的相對距離是否大于成簇距離閾值,若簇內(nèi)某個節(jié)點與第一節(jié)點的相對距離大于成簇距離閾值,則丟棄該節(jié)點;
判斷剩下的節(jié)點是否少于3個,若少于,則不成簇。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,所述成簇速度閾值為簇內(nèi)各節(jié)點與第一節(jié)點的平均相對速度,所述成簇距離閾值為簇內(nèi)各節(jié)點與第一節(jié)點的平均相對距離。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,所述根據(jù)簇成員的綜合屬性值選出簇頭包括:
簇成員將各自的綜合屬性值向周圍進行廣播,簇成員收到其他簇成員廣播的綜合屬性值后與自身的綜合屬性值進行比較,若自身的綜合屬性值小于其他簇成員的綜合屬性值,則自己不符合成為簇頭的條件。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,所述更新簇成員的綜合屬性值和簇頭包括:
簇頭周期性更新簇成員的反饋信息報文;
簇頭對反饋信息報文中的簇成員的綜合屬性值進行判斷;
若超過三分之二簇成員的綜合屬性值小于簇頭,則保持原簇頭不變;若超過三分之一簇成員的綜合屬性值大于簇頭,則重新選出綜合屬性值最大的節(jié)點成為新簇頭。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,所述簇成員的綜合屬性值是根據(jù)節(jié)點的相對移動速度、節(jié)點到達終點所剩時間、節(jié)點當前位置和節(jié)點通信鏈路的可利用帶寬評估得到。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,所述移動自組織網(wǎng)絡分簇方法還包括:
簇頭連續(xù)三個周期沒有偵聽到某個節(jié)點的反饋信息報文,則將該節(jié)點丟棄。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,所述移動自組織網(wǎng)絡分簇方法還包括:
當簇頭收到簇外節(jié)點的加簇申請報文,簇頭判斷簇外節(jié)點與簇頭的相對速度是否小于成簇速度閾值,若小于則接受申請,若大于則忽略申請。
可選的,在所述的移動自組織網(wǎng)絡分簇方法中,所述移動自組織網(wǎng)絡分簇方法還包括:
簇頭將簇成員加入到成員名單中,并周期性更新成員名單,判斷簇成員是否少于3個,若少于,則解散簇。
在本發(fā)明提供的移動自組織網(wǎng)絡分簇方法中,通過設置成簇距離閾值和成簇速度閾值,考慮了節(jié)點的相對移動速度,設置成簇的速度閾值來提高簇的穩(wěn)定性,延長了簇的持續(xù)時間。進一步的,通過將固定基站作為簇頭或根據(jù)簇成員的綜合屬性值選出簇頭,也將車輛離終點所剩的時間作為選舉簇頭的一個重要參考標準,防止綜合屬性較差的車輛節(jié)點充當簇頭。本發(fā)明提高了簇的穩(wěn)定性,考慮到了建簇后簇成員的離開以及外界節(jié)點加入等情況,并采取了應對措施,避免簇成員的改變而重新建簇;同時采用了設置成簇的速度閾值與距離閾值的方法建簇。
進一步的,在提高簇頭的持續(xù)時間和簇的穩(wěn)定性的基礎上,本發(fā)明通過將節(jié)點通信鏈路的可利用帶寬作為形成綜合屬性值的因素之一,提高了信息傳輸?shù)目煽啃浴?/p>
本發(fā)明通過將固定基站作為簇頭,減小了能量消耗,在選舉簇頭時考慮到了動態(tài)簇頭和靜態(tài)簇頭的情況,在固定基站通信范圍內(nèi)的車輛都默認固定基站充當簇頭,不需要重新選舉新的動態(tài)簇頭,避免了不必要的能量消耗。
本發(fā)明通過更新簇成員信息和簇頭,保證了簇的質(zhì)量,簇頭定期更新成員名單信息,并檢測簇頭綜合屬性值與簇成員的綜合屬性值,簇中如果有超過三分之一數(shù)量節(jié)點的綜合屬性值大于簇頭的綜合屬性值,則更換簇頭但不重新分簇,避免了重新分簇所造成的額外能量消耗;簇成員數(shù)量小于一定值,則重新分簇,保證簇的質(zhì)量。
本發(fā)明建立穩(wěn)定簇后,不僅可以提高簇內(nèi)的信息有效搜集與傳輸,同時還保證了整個vanet中簇與簇之間消息的高效傳遞。
附圖說明
圖1是本發(fā)明車輛建立移動自組織網(wǎng)絡系統(tǒng)場景圖;
圖2是本發(fā)明發(fā)送加簇申請報文示意圖;
圖3是本發(fā)明發(fā)起建簇申請報文示意圖;
圖4是本發(fā)明移動自組織網(wǎng)絡分簇方法流程圖。
具體實施方式
以下結(jié)合附圖和具體實施例對本發(fā)明提出的移動自組織網(wǎng)絡分簇方法作進一步詳細說明。根據(jù)下面說明和權(quán)利要求書,本發(fā)明的優(yōu)點和特征將更清楚。需說明的是,附圖均采用非常簡化的形式且均使用非精準的比例,僅用以方便、明晰地輔助說明本發(fā)明實施例的目的。
本發(fā)明的核心思想在于提供一種穩(wěn)定性高的移動自組織網(wǎng)絡分簇方法。
為實現(xiàn)上述思想,本發(fā)明提供了一種移動自組織網(wǎng)絡分簇方法,移動自組織網(wǎng)絡分簇方法包括:若干個節(jié)點建立初始簇;設置成簇距離閾值和成簇速度閾值,剔除不符合成簇要求的節(jié)點;所述剩下的各節(jié)點成為簇成員,簇成員判斷周圍是否有固定基站,若有則選擇固定基站作為簇頭,若周圍沒有固定基站則根據(jù)簇成員的綜合屬性值選出簇頭;更新簇成員的綜合屬性值和簇頭。
進一步的,所述移動自組織網(wǎng)絡分簇方法還包括:第一節(jié)點為未成簇節(jié)點,第一節(jié)點申請加簇,發(fā)送加簇申請報文;若周圍有可利用的簇,則加入已有的簇;若周圍沒有可利用的簇,則發(fā)送建簇申請報文;周圍若干節(jié)點收到建簇申請報文后發(fā)送反饋信息報文;第一節(jié)點偵聽并收到周圍節(jié)點發(fā)送的反饋信息報文后,初始簇建立完成。
更進一步的,所述移動自組織網(wǎng)絡分簇方法還包括:初始簇中的第一節(jié)點根據(jù)收到的反饋信息報文計算簇內(nèi)所有節(jié)點與第一節(jié)點的相對距離和相對速度,并計算得到成簇距離閾值和成簇速度閾值;判斷簇內(nèi)各節(jié)點與第一節(jié)點的相對速度是否大于成簇速度閾值,若簇內(nèi)某個節(jié)點與第一節(jié)點的相對速度大于成簇速度閾值,則丟棄該節(jié)點;判斷簇內(nèi)各節(jié)點與第一節(jié)點的相對距離是否大于成簇距離閾值,若簇內(nèi)某個節(jié)點與第一節(jié)點的相對距離大于成簇距離閾值,則丟棄該節(jié)點;判斷剩下的節(jié)點是否少于3個,若少于,則不成簇。所述成簇速度閾值為簇內(nèi)各節(jié)點與第一節(jié)點的平均相對速度,所述成簇距離閾值為簇內(nèi)各節(jié)點與第一節(jié)點的平均相對距離。
具體的,簇成員將各自的綜合屬性值向周圍進行廣播,簇成員收到其他簇成員廣播的綜合屬性值后與自身的綜合屬性值進行比較,若自身的綜合屬性值小于其他簇成員的綜合屬性值,則自己不符合成為簇頭的條件。所述簇成員的綜合屬性值是根據(jù)節(jié)點的相對移動速度、節(jié)點到達終點所剩時間、節(jié)點當前位置和節(jié)點通信鏈路的可利用帶寬評估得到。所述更新簇成員的綜合屬性值和簇頭是指:簇頭周期性更新簇成員的反饋信息報文;簇頭對反饋信息報文中的簇成員的綜合屬性值進行判斷;若超過三分之二簇成員的綜合屬性值小于簇頭,則保持原簇頭不變;若超過三分之一簇成員的綜合屬性值大于簇頭,則重新選出綜合屬性值最大的節(jié)點成為新簇頭。
另外,所述移動自組織網(wǎng)絡分簇方法還包括:簇頭連續(xù)三個周期沒有偵聽到某個節(jié)點的反饋信息報文,則將該節(jié)點丟棄。當簇頭收到簇外節(jié)點的加簇申請報文,簇頭判斷簇外節(jié)點與簇頭的相對速度是否小于成簇速度閾值,若小于則接受申請,若大于則忽略申請。簇頭將簇成員加入到成員名單中,并周期性更新成員名單,判斷簇成員是否少于3個,若少于,則解散簇。
本發(fā)明中的移動自組織網(wǎng)絡分簇方法中,建立一個穩(wěn)定的簇的過程主要分為三個階段,分別是:確定鄰居節(jié)點并建立初始簇、簇頭的選取以及動態(tài)簇的維護。首先根據(jù)n個數(shù)據(jù)點之間的相似度進行初步聚類,使用歐氏距離來計算所有的點與點之間的相似度,基于距離進行初步建簇。初始簇建立完成之后,設置成簇的距離閾值以及速度閾值,剔除不符合成簇要求的節(jié)點。綜合考慮車輛節(jié)點間的相對移動速度、車輛到達終點所剩時間、車輛的當前地理位置以及通信鏈路的可利用帶寬等來計算簇內(nèi)每個車輛節(jié)點的綜合屬性值,并依據(jù)該綜合屬性值選出簇頭(固定基站通信范圍內(nèi)的車輛默認固定基站充當靜態(tài)簇頭)。簇頭選取完成之后,考慮到簇內(nèi)成員的離開以及簇外成員的加入等因素,采取簇頭周期性更新簇內(nèi)成員相關信息來進行動態(tài)簇的維護。路網(wǎng)中車輛建立自組織網(wǎng)絡的系統(tǒng)圖如圖1所示。
圖4是本發(fā)明移動自組織網(wǎng)絡分簇方法流程圖,如圖4所示,未成簇的車輛vi向周圍廣播加簇申請報文req,探測周圍是否有可利用的簇,并等待時間t。如果有可利用的簇,相應的簇頭收到req后并發(fā)送回復報文res,vi在時間t內(nèi)收到res,則將自身的車輛id號等信息嵌入到確認加入報文ack中并發(fā)送出去;如果t段時間內(nèi)沒有收到回復報文res,則向周圍廣播建簇報文buc。發(fā)送加簇申請報文和發(fā)起建簇申請報文的示意圖分別如圖2和圖3所示。
車輛vi廣播建簇報文buc后,開始偵聽周圍車輛發(fā)送回來的反饋信息報文。在車輛vi通信范圍內(nèi)的車輛收到vi廣播的建簇報文buc后,將自己的id號、當前行駛方向、行駛速度、到達終點還剩的時間等數(shù)據(jù)信息嵌入到信息包rbuc中,并發(fā)送給vi。
vi收到其通信范圍內(nèi)的車輛發(fā)送來的反饋信息報文rbuc后進行解析,根據(jù)解析后的rbuc計算出vi與其通信范圍內(nèi)車輛的相對速度,取絕對值并進行加權(quán)平均,加權(quán)平均得到的值作為該簇成簇的速度閾值sth_re(i)。與vi的相對速度的絕對值大于sth_re(i)車輛的信息被丟棄,小于sth_re(i)的車輛的相關信息被記錄在成員名單lm上。
車輛vi收到其通信范圍內(nèi)的車輛發(fā)送來的信息包rbuc后進行解析,并算出vi與其通信范圍內(nèi)車輛的相對距離的平均值dth。
根據(jù)得到的簇成員名單lm上的信息并計算出vi與lm上車輛的相對距離。若相對距離小于平均值dth,則保留車輛信息;若相對距離大于平均值dth,則將相應的車輛信息從成員名單上剔除。
車輛vi判斷簇成員名單lm中的成員數(shù)量,少于3個,則不成簇。
每個節(jié)點根據(jù)上文提到的多種因素計算自身的綜合屬性值,并將綜合屬性值嵌入到消息包hello-message中,隨后向周圍廣播出去。如果節(jié)點探測到周圍有固定基站發(fā)送的信號,則默認該固定基站為靜態(tài)簇頭。每個節(jié)點收到鄰居節(jié)點發(fā)送的hello-message消息包后,進行解析,再與自身的綜合屬性值做比較,如果發(fā)現(xiàn)自己的綜合屬性值最大,則充當簇頭,并向周圍鄰居節(jié)點廣播確認報文mack公布自己的簇頭身份,如果小于則放棄成為簇頭的機會。鄰居車輛收到mack消息后更新簇頭id號,新的動態(tài)簇頭選舉完成,隨后進入簇的維護階段。
進一步的,簇頭根據(jù)最終得到的簇成員名單計算出當前簇內(nèi)簇成員的數(shù)量,并將該數(shù)值嵌入到簇頭廣播消息中廣播給各個成員節(jié)點,作為后續(xù)其他簇的簇頭與本簇的簇頭通信時選取合適的中繼節(jié)點時考慮的一個因素。
在簇維護階段,首先簇頭連續(xù)三個周期沒有偵聽到某個節(jié)點的信息,則刪除該節(jié)點信息,若沒有則跳過進行下一步,簇頭通過周期性偵聽簇成員的反饋信息來判斷簇成員是否依舊在其通信范圍,如果連續(xù)三個周期沒有偵聽到相應簇成員的反饋信息,則認為該成員已經(jīng)離開了本簇,并將其從成員名單里剔除;簇頭判斷是否有外界節(jié)點申請加簇,當簇頭偵測到有外界車輛申請加簇時,簇頭檢驗申請加簇的車輛的速度信息,判斷其與該車的相對速度是否符合成簇閾值sth_re(i),在閾值之內(nèi),接受申請,并將該車輛的id號加入簇成員名單中,然后向該申請車輛發(fā)送反饋信息通知其加簇成功,否則不予理會。
進一步的,簇頭周期性更新簇成員列表,若發(fā)現(xiàn)更新后的成員列表中有三分之一數(shù)量的車輛的綜合屬性值大于當前簇頭的綜合屬性值,則簇內(nèi)最大的綜合屬性值替換原來的簇頭,并進行信息交接。同時簇成員的數(shù)量若小于某一閾值(一般取3),解散該簇,并觸發(fā)重新分簇機制。
分簇將整個網(wǎng)絡分成若干個小簇,在建簇過程中通過綜合考慮車輛的移動特性、可利用帶寬以及連通性等因素可以有效地改善簇的性能??紤]可利用帶寬用以確保信息傳輸?shù)目煽啃?,考慮連通性是為了增強簇的覆蓋范圍,考慮移動性用以維護簇的穩(wěn)定性。其中移動因素包括:車輛的移動速度、當前位置、移動方向、簇成員之間的相對速度以及離終點的剩余距離等。
本發(fā)明提出的多因素動態(tài)簇的分簇方法能夠解決由于車輛的高速移動性、外界成員的加入和內(nèi)部成員的離開造成的網(wǎng)絡的拓撲結(jié)構(gòu)變化而引起的車輛間的通信鏈路頻繁中斷的問題,同時也可解決因簇頭的選取不當使得因簇頭的離開導致整個簇的解體而引起的簇的不穩(wěn)定性等問題。
本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。上述描述僅是對本發(fā)明較佳實施例的描述,并非對本發(fā)明范圍的任何限定,本發(fā)明領域的普通技術(shù)人員根據(jù)上述揭示內(nèi)容做的任何變更、修飾,均屬于權(quán)利要求書的保護范圍。