一種分布式的負載平衡路由方法和裝置制造方法
【專利摘要】本發(fā)明實施例提供一種分布式的負載平衡路由方法和裝置。其中,所述裝置包括網關和多跳網絡中的節(jié)點。所述網關包括:廣播單元,其用于發(fā)送廣播消息,以便于接收到該廣播消息的節(jié)點將自身狀態(tài)修改為已標記狀態(tài)。所述節(jié)點包括:掛載單元,其用于在接收到多個未標記鄰居節(jié)點發(fā)送的應答消息后,根據各個未標記鄰居節(jié)點的負載、生長空間以及鏈路質量,選擇一個未標記鄰居節(jié)點進行掛載。根據本發(fā)明實施例的方法和裝置,每個節(jié)點設計自己的路由,由此達到了負載平衡的目的,且避免了某些節(jié)點較其他節(jié)點流量負載大(負載不均)的問題。
【專利說明】一種分布式的負載平衡路由方法和裝置
【技術領域】
[0001]本發(fā)明涉及通信【技術領域】,尤其涉及一種分布式的負載平衡路由方法和裝置。
【背景技術】
[0002]在ad-hoc (點對點)網絡和無線傳感器網絡中,不均勻的負載分布導致了能量消耗的不平衡。如圖1所示,在該多跳網絡中,由于每個節(jié)點必須存儲各種信息,例如所有節(jié)點的地址等,由此增加了存儲容量的負擔,并且,距離網關越近的節(jié)點,流量負載的負擔越重,并且存儲容量的負載也越重。因此,對于ad-hoc網絡和無線傳感器網絡等多跳網絡,負載平衡技術非常重要。
[0003]如圖2a所示,網關(GW) 21具有兩條支路,其中一條支路除了一跳節(jié)點211以外,還有6個其他節(jié)點,另一條支路除了一跳節(jié)點212以外,還有4個其他節(jié)點,這就造成了負載不平衡。通過負載平衡技術,可以實現圖2b所示的效果,也即,一跳節(jié)點211和一跳節(jié)點212分別連接5個其他節(jié)點。
[0004]在負載平衡技術中,有一個突出的算法,稱為節(jié)點中心負載平衡算法(參考文獻為:A Node-Centric Load Balancing Algorithm for Wireless Sensor Networks,作者Hui Dai,Richard Han)。它從基站根節(jié)點向外反復地生長出負載平衡樹。然而,由于節(jié)點中心負載平衡算法是集中式的,這就意味著負載平衡路由必須由網關構造,由此導致了非常高的通信開銷,與ad-hoc網絡和無線傳感器網絡等多跳網絡的有限的能量特征背道而馳。
[0005]應該注意,上面對技術背景的介紹只是為了方便對本發(fā)明的技術方案進行清楚、完整的說明,并方便本領域技術人員的理解而闡述的。不能僅僅因為這些方案在本發(fā)明的【背景技術】部分進行了闡述而認為上述技術方案為本領域技術人員所公知。
【發(fā)明內容】
[0006]本發(fā)明實施例提供了一種分布式的負載平衡路由方法和裝置,以實現負載平衡。
[0007]根據本發(fā)明實施例的第一方面,提供了一種網關,其中,所述網關包括:
[0008]廣播單元,其用于發(fā)送廣播消息,以便于接收到該廣播消息的節(jié)點將自身狀態(tài)修改為已標記狀態(tài)。
[0009]根據本發(fā)明實施例的第二方面,提供了一種節(jié)點,其中,所述節(jié)點包括:
[0010]初始化單元,其在接收到網關發(fā)送的廣播消息后,將自身狀態(tài)更改為已標記狀態(tài);發(fā)送包含所述節(jié)點的自身狀態(tài)的廣播消息,并根據接收到的未標記鄰居節(jié)點返回的消息計算未標記鄰居節(jié)點數;廣播所述未標記鄰居節(jié)點數,并根據接收到的未標記鄰居節(jié)點返回的消息計算初始生長空間;
[0011]掛載單元,其用于在接收到多個未標記鄰居節(jié)點發(fā)送的應答消息后,根據各個未標記鄰居節(jié)點的負載、生長空間以及鏈路質量,選擇一個未標記鄰居節(jié)點進行掛載。
[0012]根據本發(fā)明實施例的第三方面,提供了一種節(jié)點,其中,所述節(jié)點包括:
[0013]初始化單元,其發(fā)送包含所述節(jié)點的自身狀態(tài)的廣播消息,并根據接收到的未標記節(jié)點返回的消息計算未標記鄰居節(jié)點數;廣播所述未標記鄰居節(jié)點數,并根據接收到的未標記節(jié)點返回的消息計算初始生長空間;
[0014]掛載單元,其用于在接收到多個已標記鄰居節(jié)點發(fā)送的廣播消息后,根據各個已標記鄰居節(jié)點的負載、生長空間和/或鏈路質量,選擇一個已標記鄰居節(jié)點,在接收到一個已標記鄰居節(jié)點返回的確認消息后,掛載到返回確認消息的已標記鄰居節(jié)點。
[0015]根據本發(fā)明實施例的第四方面,提供了一種節(jié)點,其中,所述節(jié)點包括:
[0016]廣播單元,其發(fā)送包含所述節(jié)點的未標記狀態(tài)的廣播消息,以便接收到該廣播消息的鄰居節(jié)點更改各自的未標記鄰居節(jié)點數,并根據所述未標記鄰居節(jié)點數進行分布式路由處理。
[0017]根據本發(fā)明實施例的第五方面,提供了一種分布式的負載平衡路由方法,其中,所述方法包括:
[0018]通過網關發(fā)送廣播消息,以便于接收到該廣播消息的節(jié)點將自身狀態(tài)修改為已標記狀態(tài)。
[0019]根據本發(fā)明實施例的第六方面,提供了一種分布式的負載平衡路由方法,其中,所述方法包括:
[0020]在接收到網關發(fā)送的廣播消息后,將自身狀態(tài)更改為已標記狀態(tài);
[0021]發(fā)送包含所述節(jié)點的自身狀態(tài)的廣播消息;
[0022]根據接收到的未標記鄰居節(jié)點返回的消息計算未標記鄰居節(jié)點數;
[0023]廣播所述未標記鄰居節(jié)點數;
[0024]根據接收到的未標記鄰居節(jié)點返回的消息計算初始生長空間;
[0025]在接收到多個未標記鄰居節(jié)點發(fā)送的應答消息后,根據各個未標記鄰居節(jié)點的負載、生長空間以及鏈路質量,選擇一個未標記鄰居節(jié)點進行掛載。
[0026]根據本發(fā)明實施例的第七方面,提供了一種分布式的負載平衡路由方法,其中,所述方法包括:
[0027]發(fā)送包含所述節(jié)點的自身狀態(tài)的廣播消息;
[0028]根據接收到的未標記節(jié)點返回的消息計算未標記鄰居節(jié)點數;
[0029]廣播所述未標記鄰居節(jié)點數;
[0030]根據接收到的未標記節(jié)點返回的消息計算初始生長空間;
[0031]在接收到多個已標記鄰居節(jié)點發(fā)送的廣播消息后,根據各個已標記鄰居節(jié)點的負載、生長空間和/或鏈路質量,選擇一個已標記鄰居節(jié)點;
[0032]在接收到一個已標記鄰居節(jié)點返回的確認消息后,掛載到返回確認消息的已標記鄰居節(jié)點。
[0033]根據本發(fā)明實施例的第八方面,提供了一種分布式的負載平衡路由方法,其中,所述方法包括:
[0034]發(fā)送包含自身的未標記狀態(tài)的廣播消息,以便接收到該廣播消息的鄰居節(jié)點更改各自的未標記鄰居節(jié)點數,并根據所述未標記鄰居節(jié)點數進行分布式路由處理。
[0035]本發(fā)明實施例的有益效果在于,通過每個節(jié)點設計自己的路由,達到了負載平衡的目的,且避免了某些節(jié)點較其他節(jié)點的流量負載大(負載不均)的問題。
[0036]參照后文的說明和附圖,詳細公開了本發(fā)明的特定實施方式,指明了本發(fā)明的原理可以被采用的方式。應該理解,本發(fā)明的實施方式在范圍上并不因而受到限制。在所附權利要求的精神和條款的范圍內,本發(fā)明的實施方式包括許多改變、修改和等同。
[0037]針對一種實施方式描述和/或示出的特征可以以相同或類似的方式在一個或更多個其它實施方式中使用,與其它實施方式中的特征相組合,或替代其它實施方式中的特征。
[0038]應該強調,術語“包括/包含”在本文使用時指特征、整件、步驟或組件的存在,但并不排除一個或更多個其它特征、整件、步驟或組件的存在或附加。
【專利附圖】
【附圖說明】
[0039]參照以下的附圖可以更好地理解本發(fā)明的很多方面。附圖中的部件不是成比例繪制的,而只是為了示出本發(fā)明的原理。為了便于示出和描述本發(fā)明的一些部分,附圖中對應部分可能被放大或縮小。在本發(fā)明的一個附圖或一種實施方式中描述的元素和特征可以與一個或更多個其它附圖或實施方式中示出的元素和特征相結合。此外,在附圖中,類似的標號表示幾個附圖中對應的部件,并可用于指示多于一種實施方式中使用的對應部件。
[0040]在附圖中:
[0041]圖1是一個多跳網絡的樹狀拓撲結構示意圖;
[0042]圖2a和圖2b是通過負載平衡技術進行負載平衡的網絡拓撲不意圖;
[0043]圖3是本發(fā)明實施例的網關的組成示意圖;
[0044]圖4是本發(fā)明實施例的已標記節(jié)點的組成示意圖;
[0045]圖5是初始化處理流程圖;
[0046]圖6是本發(fā)明實施例的未標記節(jié)點的組成示意圖;
[0047]圖7是本發(fā)明實施例的新增節(jié)點的組成示意圖;
[0048]圖8是用于網關的本發(fā)明實施例的分布式的負載平衡路由方法流程圖;
[0049]圖9是用于已標記節(jié)點的本發(fā)明實施例的分布式的負載平衡路由方法流程圖;
[0050]圖10是用于未標記節(jié)點的本發(fā)明實施例的分布式的負載平衡路由方法流程圖;
[0051]圖11是應用于新增節(jié)點的本發(fā)明實施例的分布式的負載平衡路由方法流程圖;
[0052]圖12a和圖12b是根據本發(fā)明實施例的方法和裝置的仿真結果示意圖。
【具體實施方式】
[0053]參照附圖,通過下面的說明書,本發(fā)明實施例的前述以及其它特征將變得明顯。這些實施方式只是示例性的,不是對本發(fā)明的限制。為了使本領域的技術人員能夠容易地理解本發(fā)明的原理和實施方式,本發(fā)明實施例以圖1所示的多跳網絡為例進行說明,但可以理解,本發(fā)明實施例并不限于圖1所示的多跳網絡,例如,本發(fā)明實施例提供的方法和裝置也適用于Ad-hoc網絡和傳感器網絡等。
[0054]為了使本發(fā)明實施例的方法和裝置更加清楚易懂,以下通過圖1所示的網絡拓撲結構示意圖,對本發(fā)明實施例的應用環(huán)境以及涉及到的一些術語進行簡單說明。
[0055]請參照圖1,在該多跳網絡中,包括一個根節(jié)點(網關)和多個葉節(jié)點,其中,直接與網關連接的葉節(jié)點稱為一跳節(jié)點。在本實施例中,該多跳網絡的所有葉節(jié)點分為兩種狀態(tài),即未標記狀態(tài)和已標記狀態(tài)。其中,沒有建立到達網關的路徑的節(jié)點稱為未標記節(jié)點,其狀態(tài)稱為未標記狀態(tài);已經建立到達網關的路徑的節(jié)點稱為已標記節(jié)點,其狀態(tài)稱為已標記狀態(tài)。在本實施例中,已標記節(jié)點在樹狀拓撲的一個分支上,未標記節(jié)點掛載在一個已標記節(jié)點上后,即建立了到網關的路徑,其狀態(tài)從未標記狀態(tài)更改為已標記狀態(tài)。
[0056]在以下的說明中,“負載”是指隊列中數據長度、數據預計發(fā)送時間長度等,“生長空間”是指未標記鄰居節(jié)點的未標記鄰居節(jié)點數之和減去公共鏈路數量,“公共鏈路”是指計算生長空間的未標記節(jié)點與其未標記鄰居節(jié)點間的鏈路。節(jié)點與某鄰居節(jié)點的鏈路質量可以定義為接收到該鄰居節(jié)點的信號強度、與該鄰居節(jié)點成功通信的平均發(fā)送延遲、平均發(fā)送次數等。下面參照附圖對本發(fā)明的優(yōu)選實施方式進行說明。
[0057]實施例1
[0058]圖3是本發(fā)明實施例的網關的組成示意圖。請參照圖3,該網關包括:廣播單元31、接收單元32以及計算單元33,其中:
[0059]廣播單元31用于發(fā)送廣播消息,以便于接收到該廣播消息的節(jié)點將自身狀態(tài)修改為已標記狀態(tài)。
[0060]其中,由于一跳節(jié)點都是網關的鄰居節(jié)點,因此,接收到網關發(fā)送的廣播消息的節(jié)點都是一跳節(jié)點。由于這些一跳節(jié)點與網關直接相連,故其已經建立了到達網關的路徑。因此,這些一跳節(jié)點在接收到該廣播消息后,將自身狀態(tài)修改為已標記狀態(tài)。
[0061]其中,一跳節(jié)點在更改了自身的狀態(tài)后,該多跳網絡的所有節(jié)點會廣播自身的狀態(tài);并根據接收到的其他節(jié)點廣播的各自的狀態(tài),計算自身的未標記鄰居節(jié)點數并廣播;之后,所有的節(jié)點會計算自身的初始生長空間,以便該多跳網絡的所有未標記節(jié)點建立到網關的路由,也即掛載到一個已標記節(jié)點上。該內容將在以下的實施例中進行詳細說明。
[0062]通過本發(fā)明實施例的網關,確定了一跳節(jié)點的狀態(tài),為本發(fā)明實施例的負載平衡奠定了基礎。
[0063]實施例2
[0064]本發(fā)明實施例還提供了一種多跳網絡中的節(jié)點(葉節(jié)點)。該實施例從已標記節(jié)點在路由過程中的角度闡述了該已標記節(jié)點的組成和功能,但本實施例并不以此作為限制,例如,該節(jié)點原有的組成和功能也都包含于本發(fā)明的保護范圍。
[0065]圖4是該節(jié)點的組成示意圖,請參照圖4,該節(jié)點包括:
[0066]掛載單元41,其在接收到多個未標記鄰居節(jié)點發(fā)送的應答消息后,根據各個未標記鄰居節(jié)點的負載、生長空間以及鏈路質量,選擇一個未標記鄰居節(jié)點進行掛載。
[0067]在本實施例中,可以將整個路由過程分為多個回合(round),每個回合又分為多個周期(period),在每一個周期中,該節(jié)點通過其掛載單元41選擇一個未標記節(jié)點進行掛載,掛載到一個已標記節(jié)點的未標記節(jié)點,將其狀態(tài)更改為已標記狀態(tài),再通過發(fā)送廣播消息,使得其鄰居節(jié)點更改各自的未標記鄰居節(jié)點數,以便重新計算生長空間和/或未標記鄰居節(jié)點數。
[0068]其中,當在一個回合的一個周期中,已標記節(jié)點未掛載上預定數量的未標記節(jié)點時,進入該回合的下一個周期,該節(jié)點繼續(xù)通過其掛載單元41執(zhí)行上述過程,在此不再贅述。其中,所述預定數量為一個大于或等于I的整數值,對于各個節(jié)點,可以使用相同的預定數量的值也可以使用不同的預定數量的值。
[0069]其中,已標記節(jié)點在一個回合可掛載等量的未標記鄰居節(jié)點,其中具體掛載數量可以根據實際情況設定,本實施例并不以此作為限制。
[0070]在一個實施例中,該掛載單元41包括:發(fā)送模塊411、接收模塊412、選擇模塊413以及確認模塊414,其中:
[0071]發(fā)送模塊411用于發(fā)送包括所述節(jié)點的負載和生長空間的廣播消息。
[0072]其中,該已標記節(jié)點通過發(fā)送模塊411廣播一個消息,該消息包含了該已標記節(jié)點的自身負載和生長空間。該已標記節(jié)點的所有鄰居節(jié)點(包括已標記鄰居節(jié)點和未標記鄰居節(jié)點)可以接收到該消息,其中,未標記鄰居節(jié)點可以根據該消息將該已標記節(jié)點作為其掛載對象的一個候選。對于未標記節(jié)點的處理,將在以下的實施例中進行說明。
[0073]其中,該廣播消息可以通過下表所示的格式來表示,但本實施例并不以此作為限
制:
[0074]
【權利要求】
1.一種網關,其中,所述網關包括: 廣播單元,其用于發(fā)送廣播消息,以便于接收到該廣播消息的節(jié)點將自身狀態(tài)修改為已標記狀態(tài)。
2.一種節(jié)點,其中,所述節(jié)點包括: 初始化單元,其在接收到網關發(fā)送的廣播消息后,將自身狀態(tài)更改為已標記狀態(tài);發(fā)送包含所述節(jié)點的自身狀態(tài)的廣播消息,并根據接收到的未標記鄰居節(jié)點返回的消息計算未標記鄰居節(jié)點數;廣播所述未標記鄰居節(jié)點數,并根據接收到的未標記鄰居節(jié)點返回的消息計算初始生長空間; 掛載單元,其用于在接收到多個未標記鄰居節(jié)點發(fā)送的應答消息后,根據各個未標記鄰居節(jié)點的負載、生長空間以及鏈路質量,選擇一個未標記鄰居節(jié)點進行掛載。
3.根據權利要求2所述的節(jié)點,其中,所述掛載單元包括: 發(fā)送模塊,其用于發(fā)送包括所述節(jié)點的自身負載和生長空間的廣播消息; 接收模塊,其用于接收未標記鄰居節(jié)點返回的應答消息; 選擇模塊,其在所述接收模塊接收到多個未標記鄰居節(jié)點返回的應答消息時,根據各個未標記鄰居節(jié)點的負載、生長空間和/或鏈路質量,選擇其中一個未標記鄰居節(jié)點; 確認模塊,其向所述選擇模塊所選擇的未標記鄰居節(jié)點發(fā)送確認消息,以便所述選擇模塊所選擇的未標記鄰居節(jié)點根據所述確認消息將其自身狀態(tài)更改為已標記狀態(tài)。
4.根據權利要求3所述的節(jié)點,其中,所述選擇模塊包括: 比較模塊,其用于比較所述多個未標記鄰居節(jié)點的負載、生長空間和/或鏈路質量; 選擇模塊,其根據所述比較模塊的比較結果,選擇負載最大的未標記鄰居節(jié)點;在負載最大的未標記鄰居節(jié)點為多個時,選擇生長空間最大的未標記鄰居節(jié)點;在生長空間最大的未標記鄰居節(jié)點為多個時,選擇鏈路質量最好的未標記鄰居節(jié)點。
5.根據權利要求3所述的節(jié)點,其中,所述掛載單元還包括: 更新模塊,其在所述接收模塊接收到鄰居節(jié)點發(fā)送的狀態(tài)改變消息時,更新未標記鄰居節(jié)點數; 廣播模塊,其用于發(fā)送包含所述未標記鄰居節(jié)點數的廣播消息; 計算模塊,其在接收到包含未標記鄰居節(jié)點數的廣播消息后,重新計算所述節(jié)點的生長空間。
6.根據權利要求3所述的節(jié)點,其中,所述掛載單元還包括: 判斷模塊,其用于判斷所述節(jié)點在當前回合內是否掛載了預定數量的未標記鄰居節(jié)點,以及所述節(jié)點的未標記鄰居節(jié)點數是否為O ; 所述發(fā)送模塊在所述判斷模塊的判斷結果為沒有掛載到預訂數量的未標記鄰居節(jié)點且所述節(jié)點的未標 記鄰居節(jié)點數不為O時,在當前回合的下一個周期再次發(fā)送所述廣播消息; 其中,所述預定數量為一個大于或等于I的整數值。
7.一種節(jié)點,其中,所述節(jié)點包括: 初始化單元,其發(fā)送包含所述節(jié)點的自身狀態(tài)的廣播消息,并根據接收到的未標記節(jié)點返回的消息計算未標記鄰居節(jié)點數;廣播所述未標記鄰居節(jié)點數,并根據接收到的未標記節(jié)點返回的消息計算初始生長空間;掛載單元,其用于在接收到多個已標記鄰居節(jié)點發(fā)送的廣播消息后,根據各個已標記鄰居節(jié)點的負載、生長空間和/或鏈路質量,選擇一個已標記鄰居節(jié)點,在接收到一個已標記鄰居節(jié)點返回的確認消息后,掛載到返回確認消息的已標記鄰居節(jié)點。
8.根據權利要求7所述的節(jié)點,其中,所述掛載單元包括: 接收模塊,其用于接收已標記鄰居節(jié)點發(fā)送的廣播消息,所述廣播消息包括所述已標記鄰居節(jié)點的自身負載和生長空間; 選擇模塊,其在所述接收模塊接收到多個已標記鄰居節(jié)點發(fā)送的廣播消息時,根據各個已標記鄰居節(jié)點的負載、生長空間和/或鏈路質量,選擇其中一個已標記鄰居節(jié)點; 發(fā)送模塊,其向所述選擇模塊所選擇的已標記鄰居節(jié)點發(fā)送應答消息; 處理模塊,其在接收到所述選擇模塊所選擇的已標記鄰居節(jié)點發(fā)送的確認消息后,將自身狀態(tài)更改為標記狀態(tài),并通過所述發(fā)送模塊向所有鄰居節(jié)點發(fā)送狀態(tài)改變消息。
9.根據權利要求8所述的節(jié)點,其中,所述選擇模塊包括: 比較模塊,其用于比較所述多個已標記鄰居節(jié)點的負載、生長空間和/或鏈路質量; 選擇模塊,其根據所述比較模塊的比較結果,選擇負載最小的已標記鄰居節(jié)點;在負載最小的已標記鄰居節(jié)點為多個時,選擇生長空間最小的已標記鄰居節(jié)點;在生長空間最小的已標記鄰居節(jié)點為多個時,選擇鏈路質量最好的已標記鄰居節(jié)點。
10.根據權利要求8所述的節(jié)點,其中,所述掛載單元還包括: 更新模塊, 其在所述接收模塊接收到鄰居節(jié)點發(fā)送的狀態(tài)改變消息時,更新未標記鄰居節(jié)點數; 廣播模塊,其用于發(fā)送包含所述未標記鄰居節(jié)點數的廣播消息; 計算模塊,其在接收到包含未標記鄰居節(jié)點數的廣播消息后,重新計算所述節(jié)點的生長空間。
11.一種節(jié)點,其中,所述節(jié)點包括: 廣播單元,其發(fā)送包含所述節(jié)點的未標記狀態(tài)的廣播消息,以便接收到該廣播消息的鄰居節(jié)點更改各自的未標記鄰居節(jié)點數,并根據所述未標記鄰居節(jié)點數進行分布式路由處理。
12.—種分布式的負載平衡路由方法,其中,所述方法包括: 通過網關發(fā)送廣播消息,以便于接收到該廣播消息的節(jié)點將自身狀態(tài)修改為已標記狀態(tài)。
13.一種分布式的負載平衡路由方法,其中,所述方法包括: 在接收到網關發(fā)送的廣播消息后,將自身狀態(tài)更改為已標記狀態(tài); 發(fā)送包含所述節(jié)點的自身狀態(tài)的廣播消息; 根據接收到的未標記鄰居節(jié)點返回的消息計算未標記鄰居節(jié)點數; 廣播所述未標記鄰居節(jié)點數; 根據接收到的未標記鄰居節(jié)點返回的消息計算初始生長空間; 在接收到多個未標記鄰居節(jié)點發(fā)送的應答消息后,根據各個未標記鄰居節(jié)點的負載、生長空間以及鏈路質量,選擇一個未標記鄰居節(jié)點進行掛載。
14.根據權利要求13所述的方法,其中,所述方法具體包括: 發(fā)送包括自身負載和生長空間的廣播消息;在接收到多個未標記鄰居節(jié)點返回的應答消息時,根據各個未標記鄰居節(jié)點的負載、生長空間和/或鏈路質量,選擇其中一個未標記鄰居節(jié)點; 向所選擇的未標記鄰居節(jié)點發(fā)送確認消息,以便所述選擇模塊所選擇的未標記鄰居節(jié)點根據所述確認消息將其自身狀態(tài)更改為已標記狀態(tài)。
15.根據權利要求14所述的方法,其中,所述選擇其中一個未標記鄰居節(jié)點的步驟包括: 比較所述多個未標記鄰居節(jié)點的負載、生長空間和/或鏈路質量; 根據比較結果,選擇負載最大的未標記鄰居節(jié)點;在負載最大的未標記鄰居節(jié)點為多個時,選擇生長空間最大的未標記鄰居節(jié)點;在生長空間最大的未標記鄰居節(jié)點為多個時,選擇鏈路質量最好的未標記鄰居節(jié)點。
16.根據權利要求14所述的方法,其中,所述方法還包括: 在接收到鄰居節(jié)點發(fā)送的狀態(tài)改變消息時,更新未標記鄰居節(jié)點數; 發(fā)送包含所述未標記鄰居節(jié)點數的廣播消息; 在接收到包含未標記鄰居節(jié)點數的廣播消息后,重新計算生長空間。
17.根據權利要求14所述的方法,其中,所述方法還包括: 判斷在當前回合內是否掛載了預定數量的未標記鄰居節(jié)點,以及未標記鄰居節(jié)點數是否為O ; 在判斷結果為沒有掛載到預訂數量的未標記鄰居節(jié)點且所述節(jié)點的未標記鄰居節(jié)點數不為O時,在當前回合的下一個周期再次發(fā)送所述廣播消息。
18.一種分布式的負載平衡路由方法,其中,所述方法包括: 發(fā)送包含所述節(jié)點的自身狀態(tài)的廣播消息; 根據接收到的未標記節(jié)點返回的消息計算未標記鄰居節(jié)點數; 廣播所述未標記鄰居節(jié)點數; 根據接收到的未標記節(jié)點返回的消息計算初始生長空間; 在接收到多個已標記鄰居節(jié)點發(fā)送的廣播消息后,根據各個已標記鄰居節(jié)點的負載、生長空間和/或鏈路質量,選擇一個已標記鄰居節(jié)點; 在接收到一個已標記鄰居節(jié)點返回的確認消息后,掛載到返回確認消息的已標記鄰居節(jié)點。
19.根據權利要求18所述的方法,其中,所述方法具體包括: 在接收到多個已標記鄰居節(jié)點發(fā)送的廣播消息時,根據各個已標記鄰居節(jié)點的負載、生長空間和/或鏈路質量,選擇其中一個已標記鄰居節(jié)點,所述廣播消息包括所述已標記鄰居節(jié)點的自身負載和生長空間; 向所選擇的已標記鄰居節(jié)點發(fā)送應答消息; 在接收到所選擇的已標記鄰居節(jié)點發(fā)送的確認消息后,將自身狀態(tài)更改為標記狀態(tài),并向所有鄰居節(jié)點發(fā)送狀態(tài)改變消息。
20.根據權利要求19所述的方法,其中,所述選擇其中一個已標記鄰居節(jié)點的步驟包括: 比較所述多個已標記鄰居節(jié)點的負載、生長空間和/或鏈路質量; 根據比較結果,選擇負載最小的已標記鄰居節(jié)點;在負載最小的已標記鄰居節(jié)點為多個時,選擇生長空間最小的已標記鄰居節(jié)點;在生長空間最小的已標記鄰居節(jié)點為多個時,選擇鏈路質量最好的已標記鄰居節(jié)點。
21.根據權利要求19所述的方法,其中,所述方法還包括: 在接收到鄰居節(jié)點發(fā)送的狀態(tài)改變消息時,更新未標記鄰居節(jié)點數; 發(fā)送包含所述未標記鄰居節(jié)點數的廣播消息; 在接收到包含未標記鄰居節(jié)點數的廣播消息后,重新計算生長空間。
22.—種分布式的負載平衡路由方法,其中,所述方法包括: 發(fā)送包含自身的未標記狀態(tài)的廣播消息,以便接收到該廣播消息的鄰居節(jié)點更改各自的未標記鄰居節(jié)點數,并根據所述未標記鄰居節(jié)點數進行分布式路由處理。
【文檔編號】H04W40/12GK103716838SQ201210370767
【公開日】2014年4月9日 申請日期:2012年9月28日 優(yōu)先權日:2012年9月28日
【發(fā)明者】底欣, 奧琛, 張兆宇, 溫允, 尾崎一幸, 藤田裕志 申請人:富士通株式會社