專利名稱:一種基于溫度的無線網(wǎng)狀網(wǎng)路由方法和無線網(wǎng)狀網(wǎng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)通信領(lǐng)域,具體涉及一種基于溫度的無線網(wǎng)狀網(wǎng)路由方法和無線網(wǎng)狀網(wǎng)。
背景技術(shù):
WMN(Wireless Mesh Network,無線網(wǎng)狀網(wǎng)絡(luò))是一種新型的寬帶無線網(wǎng)絡(luò)結(jié)構(gòu), 它不同于傳統(tǒng)的無線網(wǎng)絡(luò),可以看成是WLAN(Wireless Local Area Network,無線局域網(wǎng)) 和Ad-hoc網(wǎng)絡(luò)的融合。由于WMN繼承了 Ad-hoc的許多特性,通常用于移動自組網(wǎng)的路由協(xié)議被拿來使用。目前,比較流行的路由協(xié)議是 AODV(Ad hoc On-demand Distance Vector Routing,自組網(wǎng)按需距離矢量路由)協(xié)議,是數(shù)據(jù)驅(qū)動的距離矢量協(xié)議。在無線網(wǎng)狀網(wǎng)中,在路由的建立和維護(hù)的過程中會產(chǎn)生大量的路由開銷。如果不對這些開銷進(jìn)行控制,擴(kuò)散到外網(wǎng),不僅浪費了網(wǎng)絡(luò)資源,而且會對外網(wǎng)產(chǎn)生一些不必要的干擾。
發(fā)明內(nèi)容
本發(fā)明目的是提出一種基于溫度的無線網(wǎng)狀網(wǎng)路由方法,可以控制無線網(wǎng)狀網(wǎng)的開銷,防止聲明消息的過度廣播,節(jié)約網(wǎng)絡(luò)資源,減少對外網(wǎng)的干擾?;谏鲜瞿康?,采用的技術(shù)方案是一種基于溫度的無線網(wǎng)狀網(wǎng)路由方法,包括步驟(1)給MPP節(jié)點分配MPP節(jié)點溫度值;給網(wǎng)狀網(wǎng)內(nèi)部除MPP節(jié)點外的節(jié)點分配相同的初始溫度;所述MPP節(jié)點溫度值低于所述初始溫度;(2)所述MPP節(jié)點向網(wǎng)狀網(wǎng)內(nèi)部廣播表明MPP節(jié)點為端口節(jié)點的聲明消息;所述聲明消息包括第一跳數(shù)值、MPP節(jié)點地址以及第一本節(jié)點溫度值;其中,MPP節(jié)點廣播聲明消息時,以MPP節(jié)點溫度為所述第一本節(jié)點溫度值;(3)接收聲明消息的節(jié)點,判斷第一本節(jié)點溫度值是否比該接收聲明消息的節(jié)點自身的溫度值低,若是,則將所述第一本節(jié)點溫度值加1以及將所述第一跳數(shù)值減1后,向其他節(jié)點廣播聲明消息,并將所述第一本節(jié)點溫度值加1后的值作為其自身的節(jié)點溫度值;(4)重復(fù)步驟(3),直至第一跳數(shù)值為0時,不再廣播聲明消息;(5)接收聲明消息的節(jié)點單播返回路由回復(fù)消息給向其發(fā)送聲明消息的節(jié)點; 所述路由回復(fù)消息包括第二本節(jié)點地址、向第二本節(jié)點發(fā)送聲明消息的節(jié)點地址和所述 MPP節(jié)點地址;(6)由步驟⑴至(5)建立起各節(jié)點的路由表;(7)接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址是否為網(wǎng)狀網(wǎng)內(nèi)部地址,若否,則通過所述MPP節(jié)點將所述數(shù)據(jù)包發(fā)送至外網(wǎng);若是,則根據(jù)路由表將所述數(shù)據(jù)包送至目的地。
本發(fā)明方法給無線網(wǎng)狀網(wǎng)內(nèi)除MPP節(jié)點外的節(jié)點分配相同的初始溫度,由MPP節(jié)點向與其無線連接的其他節(jié)點廣播MPP節(jié)點為端口節(jié)點的聲明消息,聲明消息中包括節(jié)點溫度值、MPP節(jié)點地址和第一跳數(shù)值;其他節(jié)點,判斷聲明消息中第一本節(jié)點的溫度值是否比自身溫度值低,若是,則接收聲明消息;并將該聲明消息中的節(jié)點溫度加1、第一跳數(shù)值減1后形成新的聲明消息;各個接收到MPP節(jié)點的聲明消息的節(jié)點都會再次廣播新的聲明消息;每次接收聲明消息后,該接收節(jié)點將聲明消息中的節(jié)點溫度值加1后作為自身的節(jié)點溫度;直至第一跳數(shù)值為0時,停止廣播;所有接收聲明消息的節(jié)點單播返回路由回復(fù)消息給向其發(fā)送聲明消息的節(jié)點;從而建立起各節(jié)點的路由表;當(dāng)接收到數(shù)據(jù)包時,判斷數(shù)據(jù)包要達(dá)到的目的節(jié)點是在網(wǎng)狀網(wǎng)內(nèi)部,還是網(wǎng)外,若是在網(wǎng)外直接通過MPP節(jié)點發(fā)送到外網(wǎng),若是在網(wǎng)內(nèi)則通過建立的樹狀路由查找所需路徑,將數(shù)據(jù)包發(fā)送到目的節(jié)點;由此可以實現(xiàn)控制無線網(wǎng)狀網(wǎng)的開銷,防止聲明消息的過度廣播,節(jié)約網(wǎng)絡(luò)資源,減少對外網(wǎng)的干擾的目的。本發(fā)明目的是提出一種無線網(wǎng)狀網(wǎng),可以控制無線網(wǎng)狀網(wǎng)的開銷,防止聲明消息的過度廣播,節(jié)約網(wǎng)絡(luò)資源,減少對外網(wǎng)的干擾?;谏鲜瞿康?,采用的技術(shù)方案是一種無線網(wǎng)狀網(wǎng),包括多個節(jié)點,其中至少一個節(jié)點是作為端口節(jié)點的MPP節(jié)點;其中,在組網(wǎng)時給MPP節(jié)點分配MPP節(jié)點溫度值;給網(wǎng)狀網(wǎng)內(nèi)部除MPP節(jié)點外的節(jié)點分配相同的初始溫度;所述MPP節(jié)點溫度值低于所述初始溫度;所述MPP節(jié)點,向第一節(jié)點廣播表明MPP節(jié)點為端口節(jié)點的聲明消息;聲明消息包括第一跳數(shù)值、MPP節(jié)點地址以及第一本節(jié)點溫度值;其中,MPP節(jié)點廣播聲明消息時,以 MPP節(jié)點溫度為所述第一本節(jié)點溫度值;第一節(jié)點,接收聲明消息后,判斷第一本節(jié)點溫度值是否比該接收聲明消息的節(jié)點自身的溫度值低,若是,則將所述第一本節(jié)點溫度值加1、將所述第一跳數(shù)值減1 ;若第一跳數(shù)值減1后不等于0,則向第二節(jié)點廣播聲明消息,并將所述第一本節(jié)點溫度值加1后的值作為其自身的節(jié)點溫度值;若第一跳數(shù)值減1后等于0,則停止發(fā)送聲明消息;以及單播返回第一路由回復(fù)消息給所述MPP節(jié)點;所述第一路由回復(fù)消息包括第一本節(jié)點地址和所述MPP節(jié)點地址;第二節(jié)點,接收所述第一節(jié)點發(fā)送的聲明消息后,單播返回第二路由回復(fù)消息給所述第一節(jié)點;所述第二路由回復(fù)消息包括第二本節(jié)點地址、第一節(jié)點地址和所述MPP節(jié)點地址;各節(jié)點建立自身的路由表;任意節(jié)點接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址是否為網(wǎng)狀網(wǎng)內(nèi)部地址,若否, 則通過所述MPP節(jié)點將所述數(shù)據(jù)包發(fā)送至外網(wǎng);若是,則根據(jù)路由表將所述數(shù)據(jù)包送至目的地。本發(fā)明提出的無線網(wǎng)狀網(wǎng),通過給無線網(wǎng)狀網(wǎng)內(nèi)除MPP節(jié)點外的節(jié)點分配相同的初始溫度,由MPP節(jié)點向與其無線連接的其他節(jié)點廣播MPP節(jié)點為端口節(jié)點的聲明消息,聲明消息中包括節(jié)點溫度值、MPP節(jié)點地址和第一跳數(shù)值;準(zhǔn)備接收聲明消息的節(jié)點,判斷第一本節(jié)點聲明消息中溫度值是否比自身的溫度值低,若是,則接收聲明消息;并將該聲明消息中的節(jié)點溫度加1、第一跳數(shù)值減1后形成新的聲明消息;各個接收到MPP節(jié)點的聲明消息的節(jié)點都會再次廣播新的聲明消息;每次接收聲明消息后,該接收節(jié)點將聲明消息中的節(jié)點溫度值加1后作為自身的節(jié)點溫度;直至第一跳數(shù)值為0時,停止廣播;所有接收聲明消息的節(jié)點單播返回路由回復(fù)消息給向其發(fā)送聲明消息的節(jié)點;從而建立起各節(jié)點的路由表;當(dāng)接收到數(shù)據(jù)包時,判斷數(shù)據(jù)包要達(dá)到的目的節(jié)點是在網(wǎng)狀網(wǎng)內(nèi)部,還是網(wǎng)外,若是在網(wǎng)外直接通過MPP節(jié)點發(fā)送到外網(wǎng),若是在網(wǎng)內(nèi)則通過建立的樹狀路由查找所需路徑,將數(shù)據(jù)包發(fā)送到目的節(jié)點;由此可以實現(xiàn)控制無線網(wǎng)狀網(wǎng)的開銷,防止聲明消息的過度廣播, 節(jié)約網(wǎng)絡(luò)資源,減少對外網(wǎng)的干擾的目的。
圖1是本發(fā)明提出的基于溫度的無線網(wǎng)狀網(wǎng)路由方法的一個優(yōu)選實施例流程圖;圖2是本發(fā)明提出的無線網(wǎng)狀網(wǎng)的一個優(yōu)選實施例示意圖;圖3是本發(fā)明的一個具體實施例示意圖。
具體實施例方式為便于理解,下面將結(jié)合附圖進(jìn)行闡述。請參考圖1,本發(fā)明提出的基于溫度的無線網(wǎng)狀網(wǎng)路由方法,包括步驟101、網(wǎng)絡(luò)節(jié)點初始化;給MPP節(jié)點分配MPP節(jié)點溫度值;給網(wǎng)狀網(wǎng)內(nèi)部除MPP節(jié)點外的節(jié)點分配相同的初始溫度;MPP節(jié)點溫度值低于初始溫度。102、MPP節(jié)點廣播聲明消息,包括第一本節(jié)點溫度值、第一跳數(shù)值;MPP節(jié)點向網(wǎng)狀網(wǎng)內(nèi)部廣播表明MPP節(jié)點為端口節(jié)點的聲明消息;聲明消息包括 第一跳數(shù)值、MPP節(jié)點地址以及第一本節(jié)點溫度值;其中,MPP節(jié)點廣播聲明消息時,以MPP 節(jié)點溫度為第一本節(jié)點溫度值。103、接收聲明消息;104、第一本節(jié)點溫度值是否比接收節(jié)點的溫度值低;判斷第一本節(jié)點溫度值是否比該接收聲明消息的節(jié)點自身的溫度值低,若否,則進(jìn)行步驟105 ;若是,則進(jìn)行步驟106。105、丟棄聲明消息;106、將第一本節(jié)點溫度值加1,跳數(shù)值減1 ;并調(diào)整自身的溫度值;將第一本節(jié)點溫度值加1以及將第一跳數(shù)值減1,并將第一本節(jié)點溫度值加1后的值作為其自身的節(jié)點溫度值。107、跳數(shù)值是否為0 ;判斷當(dāng)前接收聲明消息的節(jié)點將第一跳數(shù)值減1后的值是否為0,若是,則進(jìn)行步驟108;若否,則進(jìn)行步驟109。108、停止廣播聲明消息;109、廣播聲明消息;向其他節(jié)點廣播聲明消息。110、接收節(jié)點向發(fā)送節(jié)點返回路由回復(fù)消息;接收聲明消息的節(jié)點單播返回路由回復(fù)消息給向其發(fā)送聲明消息的節(jié)點;路由回復(fù)消息包括第二本節(jié)點地址、向第二本節(jié)點發(fā)送聲明消息的節(jié)點地址和MPP節(jié)點地址。111、建立各節(jié)點路由表;由上述步驟建立起各節(jié)點的路由表。112、接收數(shù)據(jù)包;113、數(shù)據(jù)是否發(fā)到網(wǎng)內(nèi);判斷接收的數(shù)據(jù)包是否發(fā)到網(wǎng)狀網(wǎng)內(nèi)部,若是,則進(jìn)行步驟115,若否,則進(jìn)行步驟 114.114、由MPP節(jié)點轉(zhuǎn)發(fā)到外網(wǎng);115、根據(jù)路由表發(fā)到目的節(jié)點。根據(jù)路由表將數(shù)據(jù)包送至目的地。本發(fā)明方法給無線網(wǎng)狀網(wǎng)內(nèi)除MPP節(jié)點外的節(jié)點分配相同的初始溫度,由MPP節(jié)點向與其無線連接的其他節(jié)點廣播MPP節(jié)點為端口節(jié)點的聲明消息,聲明消息中包括節(jié)點溫度值、MPP節(jié)點地址和第一跳數(shù)值;其他節(jié)點,判斷聲明消息中的第一本節(jié)點溫度值是否比自身溫度值低,若是,則接收聲明消息;并將該聲明消息中的節(jié)點溫度加1、第一跳數(shù)值減1后形成新的聲明消息;各個接收到MPP節(jié)點的聲明消息的節(jié)點都會再次廣播新的聲明消息;每次接收聲明消息后,該接收節(jié)點將聲明消息中的節(jié)點溫度值加1后作為自身的節(jié)點溫度;直至第一跳數(shù)值為0時,停止廣播;所有接收聲明消息的節(jié)點單播返回路由回復(fù)消息給向其發(fā)送聲明消息的節(jié)點;從而建立起各節(jié)點的路由表;當(dāng)接收到數(shù)據(jù)包時,判斷數(shù)據(jù)包要達(dá)到的目的節(jié)點是在網(wǎng)狀網(wǎng)內(nèi)部,還是網(wǎng)外,若是在網(wǎng)外直接通過MPP節(jié)點發(fā)送到外網(wǎng),若是在網(wǎng)內(nèi)則通過建立的樹狀路由查找所需路徑,將數(shù)據(jù)包發(fā)送到目的節(jié)點;由此可以實現(xiàn)控制無線網(wǎng)狀網(wǎng)的開銷,防止聲明消息的過度廣播,節(jié)約網(wǎng)絡(luò)資源,減少對外網(wǎng)的干擾的目的。其中,在步驟110之后包括步驟接收路由回復(fù)消息的節(jié)點提取向第二本節(jié)點發(fā)送聲明消息的節(jié)點地址,與自身的節(jié)點地址比較,如果一致,則保存該路由回復(fù)消息;若不一致,則丟棄該路由回復(fù)消息。優(yōu)選地,在接收聲明消息之后或者建立好路由表后,各節(jié)點向相鄰節(jié)點廣播溫度消息幀,收集相鄰節(jié)點的溫度值。溫度消息幀包括各節(jié)點自身的溫度值、各節(jié)點自身的地址和第二跳數(shù)值;溫度消息幀的跳數(shù)值設(shè)為1,節(jié)點接收到溫度消息巾貞,提取該消息幀中的溫度值和地址,保存于本節(jié)點;同時返回一個確認(rèn)消息,該確認(rèn)消息包含的內(nèi)容本節(jié)點的地址和本節(jié)點的溫度值。然后銷毀該溫度消息幀。由此,各節(jié)點可獲取自身周圍一跳相鄰節(jié)點的溫度值和地址;其中,上述步驟114具體包括接收數(shù)據(jù)包的節(jié)點判斷自己是否為MPP節(jié)點,若不是,則向周圍溫度值低的相鄰節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù)包,直至MPP節(jié)點接收到數(shù)據(jù)包;MPP節(jié)點將數(shù)據(jù)包發(fā)送到外網(wǎng)。上述步驟115具體包括接收數(shù)據(jù)包的節(jié)點在自身的路由表中查找,若未找到發(fā)送數(shù)據(jù)的所需路由,則向周圍溫度值低的相鄰節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù)包,直至找到發(fā)送數(shù)據(jù)的所需路由。優(yōu)選地,MPP節(jié)點周期性地廣播表明其為根節(jié)點的聲明消息。可以避免在某個網(wǎng)絡(luò)節(jié)點出現(xiàn)故障時,導(dǎo)致工作不能或者工作延遲的情況。優(yōu)選地,當(dāng)有除MPP節(jié)點外的網(wǎng)絡(luò)節(jié)點加入或者退出無線網(wǎng)狀網(wǎng)時,再次廣播表明MPP節(jié)點為根節(jié)點的聲明消息。由于在有網(wǎng)絡(luò)節(jié)點退出時,可能會造成原先建立的網(wǎng)內(nèi)路由路徑中斷,或者在有網(wǎng)絡(luò)節(jié)點新加入時,在原有路由表中沒有存儲原有網(wǎng)絡(luò)節(jié)點到該新增節(jié)點的路由路徑。通過該聲明消息更新網(wǎng)狀網(wǎng)內(nèi)節(jié)點的路由表。新加入的節(jié)點溫度默認(rèn)值也設(shè)置為一個足夠大的正整數(shù)(如100°或1000° ),根據(jù)MPP發(fā)送來的端口聲明消息和相鄰節(jié)點發(fā)來的溫度消息幀,修改本節(jié)點的溫度值,并建立本節(jié)點的路由表。下面介紹本發(fā)明提出的無線網(wǎng)狀網(wǎng),包括多個節(jié)點,其中至少一個節(jié)點是作為端口節(jié)點的MPP節(jié)點;請參考圖2,在本實施例中以一個MPP節(jié)點為例,除MPP節(jié)點外,還包括 6個其他網(wǎng)絡(luò)節(jié)點(1、2、3、4、5和6);首先在組網(wǎng)時對網(wǎng)狀網(wǎng)內(nèi)部節(jié)點進(jìn)行初始化;給MPP 節(jié)點分配MPP節(jié)點溫度值,本實施例中給MPP節(jié)點分配的溫度為1° ;給網(wǎng)狀網(wǎng)內(nèi)部除MPP 節(jié)點外的節(jié)點分配的初始溫度都為100° ;MPP節(jié)點廣播表明MPP節(jié)點為端口節(jié)點的聲明消息;聲明消息包括第一跳數(shù)值 (此處設(shè)為6)、MPP節(jié)點地址以及第一本節(jié)點溫度值(MPP節(jié)點廣播聲明消息時,MPP節(jié)點溫度即為第一本節(jié)點溫度值);在MPP節(jié)點覆蓋范圍內(nèi)的節(jié)點(1、3、4、5、6)將會收到MPP節(jié)點廣播的聲明消息;節(jié)點(1、3、4、5、6)接收聲明消息后,判斷第一本節(jié)點溫度值是否比該接收聲明消息的節(jié)點自身的溫度值低,若是,則將第一本節(jié)點溫度值加1、將第一跳數(shù)值減1 ; 若第一跳數(shù)值減1后不等于0,則向第二節(jié)點廣播聲明消息,并將第一本節(jié)點溫度值加1后的值作為其自身的節(jié)點溫度值;若第一跳數(shù)值減1后等于0,則停止發(fā)送聲明消息;以及單播返回第一路由回復(fù)消息給MPP節(jié)點;第一路由回復(fù)消息包括第一本節(jié)點地址和MPP節(jié)點地址;在此以節(jié)點1為例,當(dāng)節(jié)點1收到MPP節(jié)點的聲明消息后,判斷節(jié)點1自身的溫度是否比聲明消息中的第一本節(jié)點溫度低,由于節(jié)點1的初始溫度為100°,而節(jié)點1接收的聲明消息中的第一本節(jié)點溫度為1° ;因此節(jié)點1接收該聲明消息后,將聲明消息中的第一本節(jié)點溫度值加1,將第一跳數(shù)值減1,節(jié)點1將聲明消息中的第一本節(jié)點溫度值加1后的溫度作為自身節(jié)點的溫度值;然后廣播聲明消息,該聲明消息包括:MPP節(jié)點地址、跳數(shù)值5 和第一本節(jié)點溫度值2° ;同時節(jié)點1還向MPP節(jié)點返回路由回復(fù)消息,該路由恢復(fù)消息包括節(jié)點1的地址、MPP節(jié)點地址。如圖所示,節(jié)點1的覆蓋范圍內(nèi)包括節(jié)點0、3、6和MPP),這些節(jié)點收到節(jié)點1的聲明消息后,同樣進(jìn)行溫度比較,只接收溫度值比自身溫度值低的聲明消息;最后,在節(jié)點 1的覆蓋范圍內(nèi),只有節(jié)點2接收節(jié)點1的聲明消息,接收聲明消息后,類似節(jié)點1的操作, 修改聲明消息中的溫度值和跳數(shù)值,然后廣播修改后的聲明消息;以及節(jié)點2向節(jié)點1返回路由回復(fù)消息,該路由回復(fù)消息包括節(jié)點2的地址、節(jié)點1的地址以及MPP節(jié)點的地址;收到節(jié)點2廣播的聲明消息的節(jié)點,類似節(jié)點1和節(jié)點2的操作,直至跳數(shù)值為0時,則停止廣播聲明消息。經(jīng)過上述步驟就建立了各節(jié)點自身的路由表;任意節(jié)點接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址是否為網(wǎng)狀網(wǎng)內(nèi)部地址,若否, 則通過MPP節(jié)點將數(shù)據(jù)包發(fā)送至外網(wǎng);若是,則根據(jù)路由表將數(shù)據(jù)包送至目的地。
其中,在廣播聲明消息過程中,或者是在建立好路由表之后,各節(jié)點向周圍一跳相鄰節(jié)點廣播溫度消息幀,溫度消息幀包括各節(jié)點自身的溫度值、各節(jié)點的地址和第二跳數(shù)值;所述第二跳數(shù)值設(shè)為1 ;節(jié)點接收到消息巾貞,保存溫度消息幀中的溫度值和地址;同時返回一個確認(rèn)消息, 該確認(rèn)消息包括第三本節(jié)點的地址和第三本節(jié)點的溫度值;然后,銷毀該溫度消息幀。任意節(jié)點接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址為網(wǎng)狀網(wǎng)外部地址時,再判斷自己是否為MPP節(jié)點,若不是,則向周圍溫度值低的相鄰節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù)包,直至MPP節(jié)點接收到數(shù)據(jù)包;MPP節(jié)點將數(shù)據(jù)包發(fā)送到外網(wǎng)。下面介紹本發(fā)明的一個具體實施例,請參見圖3,網(wǎng)狀網(wǎng)內(nèi)部包括MPP節(jié)點和其他節(jié)點(1、2、3、4、5和6);網(wǎng)狀網(wǎng)通過hternet/^G與外部網(wǎng)絡(luò)進(jìn)行通訊;在網(wǎng)狀網(wǎng)組網(wǎng)完成后,進(jìn)行節(jié)點初始化,MPP節(jié)點溫度為1°,其他節(jié)點(1、2、3、4、5和6)初始溫度為100°以及設(shè)置跳數(shù)值;MPP節(jié)點廣播聲明消息,在MPP節(jié)點覆蓋范圍內(nèi)的節(jié)點1和節(jié)點6收到聲明消息,將自身的節(jié)點溫度設(shè)置為2°,修改聲明消息后,廣播修改后的聲明消息;節(jié)點1和節(jié)點6分別向MPP節(jié)點返回各自的路由回復(fù)消息;在節(jié)點1的覆蓋范圍內(nèi),節(jié)點2和節(jié)點5收到節(jié)點1的聲明消息,修改自身的節(jié)點溫度為3°,節(jié)點2和節(jié)點5分別向節(jié)點1返回各自的路由回復(fù)消息;以及修改聲明消息后, 分別廣播最新修改的聲明消息;在節(jié)點2的覆蓋范圍內(nèi),節(jié)點1和5丟棄收到的節(jié)點2廣播的聲明消息,節(jié)點3接收節(jié)點2廣播的聲明消息,修改節(jié)點3自身的節(jié)點溫度值為4° ;節(jié)點4接收節(jié)點2廣播的聲明消息,修改節(jié)點4自身的節(jié)點溫度值為4° ;節(jié)點3和節(jié)點4分別向節(jié)點2返回路由回復(fù)消息。各節(jié)點向周圍一跳相鄰節(jié)點發(fā)送溫度消息幀,該溫度消息幀包括發(fā)送節(jié)點的溫度值和地址;MPP節(jié)點向周圍一跳相鄰節(jié)點發(fā)送溫度消息幀包括MPP節(jié)點的溫度值、地址和第二跳數(shù)值1 ;節(jié)點2向周圍一跳相鄰節(jié)點發(fā)送溫度消息幀,該溫度消息幀包括節(jié)點2 的溫度值和地址、第二跳數(shù)值1 ;其他節(jié)點類似。節(jié)點接收到所述溫度消息幀,提取該溫度消息幀中的溫度值和地址,保存于本節(jié)點。同時返回一個確認(rèn)消息,該確認(rèn)消息包含的內(nèi)容本節(jié)點的地址和本節(jié)點的溫度值。然后銷毀該溫度消息幀。例如,節(jié)點2廣播溫度消息幀,節(jié)點1收到后向節(jié)點2返回確認(rèn)消息, 該確認(rèn)消息包括節(jié)點1的溫度值和地址。由此,各節(jié)點可獲取自身周圍一跳相鄰節(jié)點的溫度值和地址;此時若節(jié)點4收到數(shù)據(jù)包,經(jīng)檢測該數(shù)據(jù)包需發(fā)送至網(wǎng)外節(jié)點X,節(jié)點4向周圍溫度比自己低的相鄰節(jié)點轉(zhuǎn)發(fā)該數(shù)據(jù)包,如圖所示,節(jié)點4可向節(jié)點2轉(zhuǎn)發(fā),也可向節(jié)點5轉(zhuǎn)發(fā);直至轉(zhuǎn)發(fā)到MPP節(jié)點,有MPP節(jié)點轉(zhuǎn)發(fā)到因特網(wǎng)/3G,再轉(zhuǎn)送至節(jié)點X ;若節(jié)點3收到數(shù)據(jù)包,經(jīng)檢測需轉(zhuǎn)發(fā)到節(jié)點6,在節(jié)點3自身的路由表中未找到到達(dá)節(jié)點6的路由,則向其周圍溫度比自己低的節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù)包;如圖所示,節(jié)點3可向節(jié)點 2轉(zhuǎn)發(fā);若節(jié)點1在節(jié)點3的覆蓋范圍內(nèi),還可以向節(jié)點1轉(zhuǎn)發(fā)數(shù)據(jù)包;直至找到送達(dá)節(jié)點 6的路由。當(dāng)有除所述MPP節(jié)點外的網(wǎng)絡(luò)節(jié)點加入或者退出無線網(wǎng)狀網(wǎng)時,MPP節(jié)點再次廣播表明MPP節(jié)點為端口節(jié)點的聲明消息。新加入的節(jié)點溫度默認(rèn)值也設(shè)置為一個足夠大的正整數(shù)(如100°或1000° ),通過MPP發(fā)送來的端口聲明消息和相鄰節(jié)點發(fā)來的溫度消息幀,修改本節(jié)點的溫度值,并更新本節(jié)點的路由表。以上本發(fā)明實施方式,并不構(gòu)成對本發(fā)明保護(hù)范圍的限定。任何在本發(fā)明的精神和原則之內(nèi)所作的修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的權(quán)利要求保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種基于溫度的無線網(wǎng)狀網(wǎng)路由方法,其特征是,包括步驟(1)給MPP節(jié)點分配溫度值;給網(wǎng)狀網(wǎng)內(nèi)部除MPP節(jié)點外的節(jié)點分配相同的初始溫度; 所述MPP節(jié)點溫度值低于所述初始溫度;(2)所述MPP節(jié)點向網(wǎng)狀網(wǎng)內(nèi)部廣播表明MPP節(jié)點為端口節(jié)點的聲明消息;所述聲明消息包括第一跳數(shù)值、MPP節(jié)點地址以及第一本節(jié)點溫度值;其中,MPP節(jié)點廣播聲明消息時,以MPP節(jié)點溫度為所述第一本節(jié)點溫度值;(3)接收聲明消息的節(jié)點,判斷第一本節(jié)點溫度值是否比該接收聲明消息的節(jié)點自身的溫度值低,若是,則將所述第一本節(jié)點溫度值加1以及將所述第一跳數(shù)值減1后,向其他節(jié)點廣播聲明消息,并將所述第一本節(jié)點溫度值加1后的值作為其自身的節(jié)點溫度值;(4)重復(fù)步驟(3),直至第一跳數(shù)值為0時,不再廣播聲明消息;(5)接收聲明消息的節(jié)點單播返回路由回復(fù)消息給向其發(fā)送聲明消息的節(jié)點;所述路由回復(fù)消息包括第二本節(jié)點地址、向第二本節(jié)點發(fā)送聲明消息的節(jié)點地址和所述MPP節(jié)點地址;(6)由步驟(1)至(5)建立起各節(jié)點的路由表;(7)接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址是否為網(wǎng)狀網(wǎng)內(nèi)部地址,若否,則通過所述MPP節(jié)點將所述數(shù)據(jù)包發(fā)送至外網(wǎng);若是,則根據(jù)路由表將所述數(shù)據(jù)包送至目的地。
2.根據(jù)權(quán)利要求1所述的基于溫度的無線網(wǎng)狀網(wǎng)路由方法,其特征是, 在所述步驟( 之后包括步驟接收路由回復(fù)消息的節(jié)點提取所述向第二本節(jié)點發(fā)送聲明消息的節(jié)點地址,與自身的節(jié)點地址比較,如果一致,則保存該路由回復(fù)消息;若不一致,則丟棄該路由回復(fù)消息。
3.根據(jù)權(quán)利要求1所述的基于溫度的無線網(wǎng)狀網(wǎng)路由方法,其特征是,在所述步驟( 之后,各節(jié)點周圍一跳的相鄰節(jié)點廣播溫度消息幀,所述溫度消息幀包括各節(jié)點自身的溫度值、各節(jié)點的地址和第二跳數(shù)值;所述第二跳數(shù)值設(shè)為1 ;節(jié)點接收到溫度消息幀,保存消息幀中的溫度值和地址;同時返回一個確認(rèn)消息,該確認(rèn)消息包括第三本節(jié)點的地址和第三本節(jié)點的溫度值;在所述步驟(7)中,判斷數(shù)據(jù)包的目的地址為網(wǎng)狀網(wǎng)內(nèi)部地址時,通過所述MPP節(jié)點將所述數(shù)據(jù)包發(fā)送至外網(wǎng)的步驟包括接收數(shù)據(jù)包的節(jié)點判斷自己是否為MPP節(jié)點,若不是,則根據(jù)溫度消息幀向周圍溫度值低的節(jié)點轉(zhuǎn)發(fā)所述數(shù)據(jù)包,直至所述MPP節(jié)點接收到所述數(shù)據(jù)包;所述MPP節(jié)點將所述數(shù)據(jù)包發(fā)送到外網(wǎng)。
4.根據(jù)權(quán)利要求3所述的基于溫度的無線網(wǎng)狀網(wǎng)路由方法,其特征是,在所述步驟(7)中,判斷數(shù)據(jù)包的目的地址為網(wǎng)狀網(wǎng)外部地址時,根據(jù)路由表將所述數(shù)據(jù)包送至目的地的步驟包括接收所述數(shù)據(jù)包的節(jié)點在自身的路由表中查找,若未找到發(fā)送所述數(shù)據(jù)的所需路由, 則向周圍溫度值低的相鄰節(jié)點轉(zhuǎn)發(fā)所述數(shù)據(jù)包,直至找到發(fā)送所述數(shù)據(jù)的所需路由。
5.根據(jù)權(quán)利要求1所述的基于溫度的無線網(wǎng)狀網(wǎng)路由方法,其特征是, 周期性地廣播表明所述MPP節(jié)點為端口節(jié)點的聲明消息。
6.根據(jù)權(quán)利要求1至5任一項所述的基于溫度的無線網(wǎng)狀網(wǎng)路由方法,其特征是, 當(dāng)有除所述MPP節(jié)點外的網(wǎng)絡(luò)節(jié)點加入或者退出無線網(wǎng)狀網(wǎng)時,再次廣播表明所述MPP節(jié)點為端口節(jié)點的聲明消息。
7.一種無線網(wǎng)狀網(wǎng),其特征是,包括多個節(jié)點,其中至少一個節(jié)點是作為端口節(jié)點的 MPP節(jié)點;其中,在組網(wǎng)時給MPP節(jié)點分配MPP節(jié)點溫度值;給網(wǎng)狀網(wǎng)內(nèi)部除MPP節(jié)點外的節(jié)點分配相同的初始溫度;所述MPP節(jié)點溫度值低于所述初始溫度;所述MPP節(jié)點,向第一節(jié)點廣播表明MPP節(jié)點為端口節(jié)點的聲明消息;聲明消息包括 第一跳數(shù)值、MPP節(jié)點地址以及第一本節(jié)點溫度值;其中,MPP節(jié)點廣播聲明消息時,以MPP 節(jié)點溫度為所述第一本節(jié)點溫度值;第一節(jié)點,接收聲明消息后,判斷第一本節(jié)點溫度值是否比該接收聲明消息的節(jié)點自身的溫度值低,若是,則將所述第一本節(jié)點溫度值加1、將所述第一跳數(shù)值減1 ;若第一跳數(shù)值減1后不等于0,則向第二節(jié)點廣播聲明消息,并將所述第一本節(jié)點溫度值加1后的值作為其自身的節(jié)點溫度值;若第一跳數(shù)值減1后等于0,則停止轉(zhuǎn)發(fā)聲明消息;以及單播返回第一路由回復(fù)消息給所述MPP節(jié)點;所述第一路由回復(fù)消息包括第一本節(jié)點地址和所述 MPP節(jié)點地址;第二節(jié)點,接收所述第一節(jié)點發(fā)送的聲明消息后,單播返回第二路由回復(fù)消息給所述第一節(jié)點;所述第二路由回復(fù)消息包括第二本節(jié)點地址、第一節(jié)點地址和所述MPP節(jié)點地址;各節(jié)點建立自身的路由表;任意節(jié)點接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址是否為網(wǎng)狀網(wǎng)內(nèi)部地址,若否,則通過所述MPP節(jié)點將所述數(shù)據(jù)包發(fā)送至外網(wǎng);若是,則根據(jù)路由表將所述數(shù)據(jù)包送至目的地。
8.根據(jù)權(quán)利要求7所述的無線網(wǎng)狀網(wǎng),其特征是,各節(jié)點向網(wǎng)狀網(wǎng)內(nèi)部的周圍相鄰節(jié)點廣播溫度消息幀,所述溫度消息幀包括各節(jié)點自身的溫度值、各節(jié)點的地址和第二跳數(shù)值;所述第二跳數(shù)值設(shè)為1 ;節(jié)點接收到消息幀,保存溫度消息幀中的溫度值和地址;同時返回一個確認(rèn)消息,該確認(rèn)消息包括第三本節(jié)點的地址和第三本節(jié)點的溫度值;任意節(jié)點接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址為網(wǎng)狀網(wǎng)外部地址時,再判斷自己是否為MPP節(jié)點,若不是,則根據(jù)溫度消息幀向周圍溫度值低的相鄰節(jié)點轉(zhuǎn)發(fā)所述數(shù)據(jù)包, 直至所述MPP節(jié)點接收到所述數(shù)據(jù)包;所述MPP節(jié)點將所述數(shù)據(jù)包發(fā)送到外網(wǎng)。
9.根據(jù)權(quán)利要求8所述的無線網(wǎng)狀網(wǎng),其特征是,任意節(jié)點接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址為網(wǎng)狀網(wǎng)內(nèi)部地址時,在自身的路由表中查找,若未找到發(fā)送所述數(shù)據(jù)的所需路由,則根據(jù)溫度消息幀向周圍溫度值低的節(jié)點轉(zhuǎn)發(fā)所述數(shù)據(jù)包,直至找到發(fā)送所述數(shù)據(jù)的所需路由。
10.根據(jù)權(quán)利要求7至9任一項所述的無線網(wǎng)狀網(wǎng),其特征是,當(dāng)有除所述MPP節(jié)點外的網(wǎng)絡(luò)節(jié)點加入或者退出無線網(wǎng)狀網(wǎng)時,所述MPP節(jié)點再次廣播表明所述MPP節(jié)點為端口節(jié)點的聲明消息。
全文摘要
本發(fā)明提出一種基于溫度的無線網(wǎng)狀網(wǎng)路由方法,包括步驟給MPP節(jié)點分配MPP節(jié)點溫度值;其他節(jié)點分配相同的初始溫度;MPP節(jié)點向網(wǎng)狀網(wǎng)內(nèi)部廣播表明MPP節(jié)點為端口節(jié)點的聲明消息;接收聲明消息的節(jié)點,廣播修改后的聲明消息和修改自身節(jié)點溫度;直至第一跳數(shù)值為0時,不再廣播聲明消息;接收節(jié)點返回路由回復(fù)消息給發(fā)送節(jié)點;建立起各節(jié)點的路由表;接收到數(shù)據(jù)包后,判斷數(shù)據(jù)包的目的地址是否為網(wǎng)狀網(wǎng)內(nèi)部地址,若否,則通過MPP節(jié)點將數(shù)據(jù)包發(fā)送至外網(wǎng);若是,則根據(jù)路由表將數(shù)據(jù)包送至目的地。本發(fā)明還提出一種無線網(wǎng)狀網(wǎng),可以控制無線網(wǎng)狀網(wǎng)的開銷,防止聲明消息的過度廣播,節(jié)約網(wǎng)絡(luò)資源,減少對外網(wǎng)的干擾。
文檔編號H04W40/24GK102387562SQ201110380409
公開日2012年3月21日 申請日期2011年11月25日 優(yōu)先權(quán)日2011年11月25日
發(fā)明者張越, 楊峰, 陳康先 申請人:廣州杰賽科技股份有限公司