專利名稱:基于樹狀拓撲地址分配的路由尋址方法
技術領域:
本發明涉及的是一種網絡技術領域的方法,具體是一種基于樹狀拓撲地址分配的
路由尋址方法。
背景技術:
當前常規的無線通信方法由于開銷較大,空氣中幀較長,冗余數據較多,在無線通 信速率不高的情況下,很難成功運行于大規模工業級傳感器網絡上;其次,現有的大多數通 信方法中為了滿足商業多應用的互操作性,網絡節點往往需要在通用性上耗費絕大部分處 理性能,在無線傳感器網絡環境下對節點的硬件要求較高;再次,常規方法設計考慮到節點 拓撲容易變化,通過調整數據傳輸路徑來保證數據傳輸質量,由于工業無線傳感器網絡中 無線鏈路通信網絡拓撲的穩定性相對較好,頻繁的變換網絡拓撲結構會對通信性能造成較 大的負面影響,甚至導致網絡崩潰;另外,現有無線方法的地址分配與路由方法具有一定的 復雜度,未能針對工業環境做進一步的優化,絕大多數地址未能有效利用,因此實際的網絡 規模非常小,遠遠未能達到理論值。針對于工業應用的無線傳感器網絡通信方法實施方案 必須解決上述技術難題,既要保證數據傳輸的成功率,同時還要滿足開銷少的要求。經對現有技術文獻的檢索發現,中國專利申請號為200810060070. 0,名稱為一 種新的形成匯聚梯度的無線傳感器網絡路由方法,該方法由形成近匯聚節點路由形成遠匯 聚節點路由,節點處理器回復這幾個步驟組成該路由請求方法大大減少了無線傳感器網 絡系統的控制開銷,延長了網絡的生存時間。中國專利申請號為=200910039496. 2,名稱為 一種無線傳感器網絡路由方法,該技術使得簇首所消耗的能量總量相應地減少,選擇主簇 首的策略能較少的均衡網絡能耗,從而高效地利用網絡中有限的能量。但是上述兩項技術, 僅僅延長了網絡的生存時間,沒有涉及網絡地址的分配和地址尋址方法。
發明內容
本發明的目的在于克服現有技術的上述不足,提供一種基于樹狀拓撲地址分配的 路由尋址方法。本發明可以根據實際情況靈活配置主干網絡深度與枝干網絡深度,在工業 生產現場要求主干網絡深度較大、枝干網絡深度有限且監測節點較多的情況下具有絕對的 優勢,在路由尋址的時候根據節點網絡深度的不同,屏蔽掉無用的地址域。本發明的是通過以下技術方案實現的,本發明包括以下步驟第一步,將無線網絡的地址分為根節點地址、主干路由地址和枝干路由地址,其 中根節點地址固定為0x0000 ;主干路由地址的從地址固定為0,主地址隨著主干網絡長度 的增加依次單增一;枝干路由地址按照地址分配位域表分配地址;當有新的節點要求加入該網絡時,執行第二步;當根節點要求尋址時,執行第三步;當主干路由節點要求尋址時,執行第四步;當枝干路由節點要求尋址時,執行第五步。
所述的地址分配位域表,是=AddrAssignTable口= {0x0100,0x0040,0x0010, 0x0004,0x0001};所述的主地址,是節點地址的高八位域;所述的從地址,是節點地址的低八位域。第二步,當新節點要求加入根節點時,根節點進行根地址分配處理;當新節點要求加入主干路由地址時,主干路由節點進行主干路由地址分配處理;當新節點要求加入枝干路由地址時,枝干路由節點進行枝干路由地址分配處理; 從而實現新節點的地址分配。所述的根地址分配處理,包括以下步驟A、當要求加入的新節點是主干路由節點時,且之前加入的主干路由節點的數目小 于根節點容納的主干路由節點最大數目時(1)當節點為第一個要求加入根節點的主干路由節點時,根節點將0x0100作為其 地址,并將地址發送給該節點;(2)當節點為第N個要求加入根節點的主干路由節點時,根節點將第N-I個加入的 主干路由節點的主地址加1后作為新節點的地址,并將該地址發送給該節點,N彡2 ;B、當要求加入的新節點是枝干路由節點,且之前加入的枝干路由節點的數目小于 根節點容納的枝干路由節點最大數目時(1)當節點為第一個要求加入根節點的枝干路由節點時,根節點將0x0040與要求 加入節點自身的地址進行邏輯或運算得到該節點的地址;(2)當節點為第N個要求加入根節點的枝干路由節點,根節點將0x0040與第N_1 個加入枝干路由的地址進行邏輯或運算得到該節點的地址,N > 2。所述的主干路由地址分配處理,包括以下步驟A、當要求加入的新節點是主干路由節點時,該節點將自己的主地址加1后作為新 節點的地址并將地址發送給要求加入的主干路由節點節點;B、當要求加入的新節點是枝干路由節點,且之前加入的枝干路由節點的數目小于 該節點容納的枝干路由節點最大數目時(1)當節點為第一個要求加入該節點的枝干路由節點時,該節點將0x0040與其本 身的地址進行邏輯或運算得到該節點的地址;(2)當節點為第N個要求加入該節點的枝干路由節點,該節點將0x0040與第N_1 個加入的枝干路由的地址進行邏輯或運算得到該節點的地址,N > 2。所述的枝干路由地址分配處理,包括以下步驟A、當要求加入的新節點是主干路由節點時,不予處理;B、當要求加入的新節點是枝干路由節點,且之前加入的枝干路由節點的數目小于 該節點容納的枝干路由節點最大數目時(1)當節點為第一個要求加入該節點的枝干路由節點時,該節點將地址分配位域 表中的第M個元素與其本身的地址進行邏輯或運算得到要求加入節點的地址,其中M為該 節點本身的網絡深度加1 ;(2)當節點為第N個要求加入該節點的枝干路由節點,該節點將地址分配位域表 中的第M個元素,與第N-I個枝干路由的地址進行邏輯或運算得到要求加入節點的地址,其中M為該節點本身的網絡深度加1,N > 2。所述的網絡深度,是根節點和主干路由節點的網絡深度為0,加入根節點或者主 干路由節點的枝干路由節點的網絡深度為1,加入網絡深度為1的枝干路由節點的枝干路 由節點的網絡深度為2,以此類推,加入網絡深度為N的節點的枝干節點的網絡深度為N+1,
N彡0。第三步,當根節點尋址的目的地址是根節點時,直接交由上層處理;當根節點尋址的目的地址是主干路由地址時,轉發給該根節點的主干路由子節占.
^ \\\ 當根節點尋址的目的地址是枝干路由地址時,(1)當目的地址為根節點的子節點時,轉發給該根節點的枝干路由子節點;(2)當目的地址為網絡中主干路由的子節點時,轉發給該根節點的主干路由子節
點ο所述的子節點,是當第N個節點加入了第N-I個節點,則第N個節點為第N-I個 節點的子節點,第N-I個節點為第N個節點的父節點,N ^ 1,此關系無節點類型限制。第四步,當主干路由節點尋址的目的地址是根節點時,轉發給該主干路由節點的 父節點;當主干路由節點尋址的目的地址是主干路由節點,且(1)當目的地址的主地址大于自己的主地址時,轉發給自己的主干路由子節點;(2)當目的地址的主地址小于自己的主地址時,轉發給自己的主干路由父節點。當主干路由節點尋址的目的地址是枝干路由節點,且(1)當目的地址的主地址大于自己的主地址時,轉發給自己的主干路由子節點;(2)當目的地址的主地址小于自己的主地址時,轉發給自己的主干路由父節點;(3)當目的地址的主地址等于自己的主地址時,轉發給自己的枝干路由子節點。第五步,當枝干路由節點尋址的目的地址是根節點時,轉發給該節點的父節點;當枝干路由節點尋址的目的地址是主干路由節點時,轉發給該節點的父節點;當枝干路由節點尋址的目的地址是枝干路由節點,且(1)當目的地址的主地址大于或小于自己的主地址時,轉發給自己的父節點;(2)當目的地址的主地址等于自己的主地址且目的地址為自己的子節點時,轉發 給自己的枝干路由子節點;否則,轉發給自己的父節點。與現有技術相比,本發明的有益效果是(1)高容量該方法一個主節點可管理254個子節點,4級枝網絡深度,并且這些參 數可以按照不同的具體應用而隨意配置,相比于ZigBee (紫蜂)技術而言,此方法更強調的 是可靠性與易用性。(2)低功耗該方法采用“先睡先醒”的策略,在保證高可靠的前提下使節點的功 耗達到最低。在低耗電待機模式下,采用電源管理模式的TRN(主干路由節點)或者BRN(枝 干路由節點)節點用2節5號干電池可支持節點工作6個月 24個月,甚至時間更長。(3)通訊距離可調傳輸范圍一般介于50m IOOm之間,在增加RF(射頻)發射 功率后,亦可增加到1 3km。這指的是相鄰節點間的距離。如果通過路由和節點間通信的 接力,傳輸距離可以更遠(支持255級路由),另外整個無線網絡還可以與現有的其它的各種網絡連接,實現多網數據融合。(4)低成本減少業務流量,充分有效的利用無線帶寬。通過大幅優化方法(不到 現有技術的1/10),降低了對通信控制器的要求,不需要保存龐大的路由表,鄰居列表,大大 減少了處理器內存的空間占用。
具體實施例方式以下對本發明的方法進一步描述本實施例在以本發明技術方案為前提下進行實 施,給出了詳細的實施方式和具體的操作過程,但本發明的保護范圍不限于下述的實施例。實施例1本實施例中主干路由節點要求加入根節點,且新加入的主干路由節點要求尋址, 具體包括以下步驟第一步,地址劃分將無線網絡的地址分為根節點地址、主干路由地址和枝干路由 地址,其中根節點地址固定為0x0000 ;主干路由地址的從地址固定為0,主地址隨著主干 網絡長度的增加依次單增一;枝干路由地址按照地址分配位域表分配地址;當有新的節點要求加入該網絡時,執行第二步;當主干路由節點要求尋址時,執行第三步。所述的地址分配位域表,是=AddrAssignTable口= {0x0100,0x0040,0x0010, 0x0004,0x0001};所述的主地址,是節點地址的高八位域;所述的從地址,是節點地址的低八位域。第二步,地址分配本實施例中上一個加入根節點的主干路由節點地址為0x0200,其中0x02為節點 的主地址,當有新節點要求加入根節點時,根節點首先判斷之前加入的主干路由節點數目 是否小于自己可以容納的最大數目,當大于或者等于最大節點數,根節點發送一個通知給 要求加入的節點,指示它無法接受加入請求;反之,根節點將上一個主干路由節點的主地 址加1后作為新節點的地址,在這里為0x02加1,所得結果為0x03,所以新節點的地址為 0x0300。第三步,路由尋址新加入的主干路由節點要求尋址的目的地址為0x0200,該節點首先判斷目的地址 的主地址是否大于自己的主地址,此處目的地址的主地址0x02小于自己的主地址0x03,所 以將數據轉發給自己的父節點。在本實施例中,網絡節點不需要消耗很多能量用于監聽鄰居節點發送的報文,僅 僅在加入網絡時發送相應的請求幀,在無線傳感器網絡環境下延長了各節點和整個網絡的 運行壽命。本方法采用優化的地址路由方法,使網絡最大支持255跳主網絡深度,4級枝網 絡深度,并且這些參數可以按照不同的具體應用而隨意配置。實施例2本實施例中主干路由點要求加入主干路由節點,且新加入的主干路由節點要求尋 址,具體包括以下步驟第一步,地址劃分將無線網絡的地址分為根節點地址、主干路由地址和枝干路由
7地址,其中根節點地址固定為0x0000 ;主干路由地址的從地址固定為0,主地址隨著主干 網絡長度的增加依次單增一;枝干路由地址按照地址分配位域表分配地址;當有新的節點要求加入該網絡時,執行第二步;當主干路由節點要求尋址時,執行第三步。所述的地址分配位域表,是=AddrAssignTable口= {0x0100,0x0040,0x0010, 0x0004,0x0001};所述的主地址,是節點地址的高八位域;所述的從地址,是節點地址的低八位域。第二步,地址分配新節點要加入的主干路由節點地址為0x0300,其中0x03為節點的主地址,當有新 節點要求加入主干節點時,主干路由節點首先判斷之前加入的主干路由節點數目是否小于 自己可以容納的最大數目,當大于或者等于最大節點數,主干路由節點發送一個通知給要 求加入的節點,指示它無法接受加入請求;反之,主干路由節點將自己的主地址加1后作為 新節點的地址,在這里為0x03加1,所得結果為0x04,所以新節點的地址為0x0400。第三步,路由尋址新加入的主干路由節點要求尋址的目的地址為0x0200,該節點首先判斷目的地址 的主地址是否大于自己的主地址,此處目的地址的主地址0x02小于自己的主地址0x04,所 以將數據轉發給自己的父節點,本實施例中要求尋址的目的地址為根節點,該節點直接將 數據轉發給自己的父節點。在本實施例中,無線傳感器網絡中的各個節點無需保存大量的鄰居列表,路由表 等信息,減少了方法對網絡節點硬件的要求,該方法充分利用有效地址,不需考慮網絡地址 回收的問題,使網絡規模真正達到千級數量。本方法能減少業務流量,充分有效的利用無 線帶寬。通過大幅優化方法(不到現有技術的1/10),降低了對通信控制器的要求,按預測 分析,以AVR單片機的8位微控制器測算,全功能的主節點需要16KB代碼,子功能節點少至 8KB代碼。實施例3本實施例中枝干路由點要求加入主干路由節點,且新加入的枝干路由節點要求尋 址,具體包括以下步驟第一步,地址劃分將無線網絡的地址分為根節點地址、主干路由地址和枝干路由 地址,其中根節點地址固定為0x0000 ;主干路由地址的從地址固定為0,主地址隨著主干 網絡長度的增加依次單增一;枝干路由地址按照地址分配位域表分配地址;當有新的節點要求加入該網絡時,執行第二步;當枝干路由節點要求尋址時,執行第三步。所述的地址分配位域表,是=AddrAssignTable口= {0x0100,0x0040,0x0010, 0x0004,0x0001};所述的主地址,是節點地址的高八位域;所述的從地址,是節點地址的低八位域。第二步,地址分配新節點要加入的主干路由節點地址為0x0300,其中0x03為節點的主地址,當有新節點要求加入主干節點時,主干路由節點首先判斷之前加入的枝干路由節點數目是否小于 自己可以容納的最大數目,當大于或者等于最大節點數,主干路由節點發送一個通知給要 求加入的節點,指示它無法接受加入請求;反之,主干路由節點根據已經加入的節點為請求 加入的節點分配地址,本實施例中請求加入的節點為第一個枝干路由節點,該節點將地址 分配位域表中的第二個元素,即0x0040,與本身的地址進行邏輯或運算得到該節點的地址, 所得結果為0x0340,所以新節點的地址為0x0340。第三步,路由尋址新加入的枝干路由節點要求尋址的目的地址為0x0200,該節點首先判斷目的地址 的主地址是否大于自己的主地址,此處目的地址的主地址0x02小于自己的主地址0x03,所 以將數據轉發給自己的父節點,本實施例中要求尋址的目的地址為根節點,該節點直接將 數據轉發給自己的父節點;要求尋址的目的地址為0x03C0,此處的目的地址的主地址等于 自己的主地址,利用屏蔽列表,判斷0x03C0為父節點的子節點,將數據轉發給自己的父節 點ο本實施例方法中節點無需保存龐大的路由表,鄰居列表,不存在節點路由表資源 有限的情況下,請求傳輸的路徑上無法建立新路由的問題。此方法采用“先睡先醒”的策略, 在保證高可靠的前提下使節點的功耗達到最低。免去復雜的網絡配置,只要在現場打開節 點,節點就會自動加入網絡,并進行數據傳輸,完全不需要人為干預,實現網絡的自配置。
權利要求
一種基于樹狀拓撲地址分配的路由尋址方法,其特征在于,包括以下步驟第一步,將無線網絡的地址分為根節點地址、主干路由地址和枝干路由地址,其中根節點地址固定為0x0000;主干路由地址的從地址固定為0,主地址隨著主干網絡長度的增加依次單增一;枝干路由地址按照地址分配位域表分配地址;當有新的節點要求加入該網絡時,執行第二步;當根節點要求尋址時,執行第三步;當主干路由節點要求尋址時,執行第四步;當枝干路由節點要求尋址時,執行第五步;第二步,當新節點要求加入根節點時,根節點進行根地址分配處理;當新節點要求加入主干路由地址時,主干路由節點進行主干路由地址分配處理;當新節點要求加入枝干路由地址時,枝干路由節點進行枝干路由地址分配處理;從而實現新節點的地址分配;第三步,當根節點尋址的目的地址是根節點時,直接交由上層處理;當根節點尋址的目的地址是主干路由地址時,轉發給該根節點的主干路由子節點;當根節點尋址的目的地址是枝干路由地址時,(1)當目的地址為根節點的子節點時,轉發給該根節點的枝干路由子節點;(2)當目的地址為網絡中主干路由的子節點時,轉發給該根節點的主干路由子節點;第四步,當主干路由節點尋址的目的地址是根節點時,轉發給該主干路由節點的父節點;當主干路由節點尋址的目的地址是主干路由節點,且(1)當目的地址的主地址大于自己的主地址時,轉發給自己的主干路由子節點;(2)當目的地址的主地址小于自己的主地址時,轉發給自己的主干路由父節點;當主干路由節點尋址的目的地址是枝干路由節點,且(1)當目的地址的主地址大于自己的主地址時,轉發給自己的主干路由子節點;(2)當目的地址的主地址小于自己的主地址時,轉發給自己的主干路由父節點;(3)當目的地址的主地址等于自己的主地址時,轉發給自己的枝干路由子節點;第五步,當枝干路由節點尋址的目的地址是根節點時,轉發給該節點的父節點;當枝干路由節點尋址的目的地址是主干路由節點時,轉發給該節點的父節點;當枝干路由節點尋址的目的地址是枝干路由節點,且(1)當目的地址的主地址大于或小于自己的主地址時,轉發給自己的父節點;(2)當目的地址的主地址等于自己的主地址且目的地址為自己的子節點時,轉發給自己的枝干路由子節點;否則,轉發給自己的父節點。
2.根據權利要求1所述的基于樹狀拓撲地址分配的路由尋址方法,其特征是,第一步 中所述的地址分配位域表,是=AddrAssignTable口 = {0x0100,0x0040,0x0010,0x0004, 0x0001}。
3.根據權利要求1所述的基于樹狀拓撲地址分配的路由尋址方法,其特征是,第二步 中所述的根地址分配處理,包括以下步驟A、當要求加入的新節點是主干路由節點時,且之前加入的主干路由節點的數目小于根 節點容納的主干路由節點最大數目時(1)當節點為第一個要求加入根節點的主干路由節點時,根節點將0x0100作為其地 址,并將地址發送給該節點;(2)當節點為第N個要求加入根節點的主干路由節點時,根節點將第N-I個加入的主干 路由節點的主地址加1后作為新節點的地址,并將該地址發送給該節點,N彡2 ;B、當要求加入的新節點是枝干路由節點,且之前加入的枝干路由節點的數目小于根節 點容納的枝干路由節點最大數目時(1)當節點為第一個要求加入根節點的枝干路由節點時,根節點將0x0040與要求加入 節點自身的地址進行邏輯或運算得到該節點的地址;(2)當節點為第N個要求加入根節點的枝干路由節點,根節點將0x0040與第N-I個加 入枝干路由的地址進行邏輯或運算得到該節點的地址,N > 2。
4.根據權利要求1所述的基于樹狀拓撲地址分配的路由尋址方法,其特征是,第二步 中所述的主干路由地址分配處理,包括以下步驟A、當要求加入的新節點是主干路由節點時,該節點將自己的主地址加1后作為新節點 的地址并將地址發送給要求加入的主干路由節點節點;B、當要求加入的新節點是枝干路由節點,且之前加入的枝干路由節點的數目小于該節 點容納的枝干路由節點最大數目時(1)當節點為第一個要求加入該節點的枝干路由節點時,該節點將0x0040與其本身的 地址進行邏輯或運算得到該節點的地址;(2)當節點為第N個要求加入該節點的枝干路由節點,該節點將0x0040與第N-I個加 入的枝干路由的地址進行邏輯或運算得到該節點的地址,N > 2。
5.根據權利要求1所述的基于樹狀拓撲地址分配的路由尋址方法,其特征是,第二步 中所述的枝干路由地址分配處理,包括以下步驟A、當要求加入的新節點是主干路由節點時,不予處理;B、當要求加入的新節點是枝干路由節點,且之前加入的枝干路由節點的數目小于該節 點容納的枝干路由節點最大數目時(1)當節點為第一個要求加入該節點的枝干路由節點時,該節點將地址分配位域表中 的第M個元素與其本身的地址進行邏輯或運算得到要求加入節點的地址,其中M為該節點 本身的網絡深度加1 ;(2)當節點為第N個要求加入該節點的枝干路由節點,該節點將地址分配位域表中的 第M個元素,與第N-I個枝干路由的地址進行邏輯或運算得到要求加入節點的地址,其中 M為該節點本身的網絡深度加1,N彡2。
6.根據權利要求5所述的基于樹狀拓撲地址分配的路由尋址方法,其特征是,所述的 網絡深度,是根節點和主干路由節點的網絡深度為0,加入根節點或者主干路由節點的枝 干路由節點的網絡深度為1,加入網絡深度為1的枝干路由節點的枝干路由節點的網絡深 度為2,以此類推,加入網絡深度為N的節點的枝干節點的網絡深度為N+l,N彡0。
全文摘要
一種網絡技術領域的基于樹狀拓撲地址分配的路由尋址方法,將無線網絡的地址分為根節點地址、主干路由地址和枝干路由地址,分別對根節點、主干路由節點和枝干路由地址進行地址分配和路由尋址處理,且在路由尋址時根據節點的網絡深度不同,屏蔽掉無用的地址域。本發明容量高,功耗低,通訊距離可調,且成本低,大大減少了處理器內存的空間占用,實現了多網數據融合,該方法可以根據實際情況靈活配置主干網絡深度與枝干網絡深度,在工業生產現場要求主干網絡深度較大、枝網絡深度有限且監測節點較多的情況下具有絕對的優勢。
文檔編號H04L29/12GK101895592SQ20101026770
公開日2010年11月24日 申請日期2010年8月31日 優先權日2010年8月31日
發明者關新平, 梁振虎, 袁亞洲, 陳彩蓮 申請人:上海交通大學