一種基于IPv6的電力線載波通信網絡擁塞控制方法
【專利摘要】本發明涉及一種基于IPv6的電力線載波通信網絡擁塞控制方法,屬于智能電網通信技術領域。該方法包括以下步驟:S1:載波網絡節點自行構建基于擁塞控制的IPv6層次轉發樹網絡拓撲結構,以減小節點擁塞幾率;S2:節點在發生擁塞時,通過組播擁塞通告報文重新進行父、子節點的流量分配,并結合IPv6協議,使被通告節點依據相應的冗余路由尋址方法進行消息傳遞,以將擁塞區域的流量轉移到其它負載較輕的區域從而避開該擁塞節點;S3:節點在擁塞解除后,組播擁塞解除報文使其父、子節點恢復為原來的流量分配模式。本方法能夠有效的提高網絡的吞吐量以及網絡的整體通信能力。
【專利說明】
一種基于I Pv6的電力線載波通信網絡擁塞控制方法
技術領域
[0001]本發明屬于智能電網通信技術領域,涉及一種基于IPv6的電力線載波通信網絡擁塞控制方法。
【背景技術】
[0002]隨著電力線通信應用場景的擴大,以及互聯網通信技術的發展,將下一代互聯網核心技術IPv6協議應用于電力線載波通信網絡中,實現電力通信設備IPv6資源分配,將使得電力線通信網絡更好的實現端到端的連接,優化繼承互聯網上新的服務和應用。
[0003]由于低壓電力線通信網絡具有多變的網絡結構,而在網絡節點資源和通信能力相同的情況下,最短路徑樹的拓撲結構通常具有轉發跳數少和傳輸延遲低的優點,在載波通信網絡中采用樹型網絡拓撲結構,其網絡結構清晰,組網效率高,但樹型網絡呈擴散式分布,距網關越近的上層節點對數據的轉發量較底層節點就越大。如果部分區域發生緊急情況,由于較多的節點將數據發送到一個轉發節點時,可能造成該轉發節點接收報文的速率加快,使得轉發隊列增加,甚至溢出,從而產生節點擁塞。在鏈路單一的樹型拓撲結構下,若節點擁塞得不到及時解決,不但增加了丟包率,影響傳輸可靠性,而且還降低了帶寬利用率,造成資源的浪費,甚至導致部分網絡癱瘓。
【發明內容】
[0004]有鑒于此,本發明的目的在于提供一種基于IPv6的電力線載波通信網絡擁塞控制方法,該方法在構建載波網絡IPv6層次接入樹模型的基礎上,結合流量均衡策略進行擁塞區域的流量轉移,在IPv6載波通信網絡中實現節點擁塞控制。
[0005]為達到上述目的,本發明提供如下技術方案:
[0006]一種基于IPv6的電力線載波通信網絡擁塞控制方法,該方法包括以下步驟:
[0007]S1:載波網絡節點自行構建基于擁塞控制的IPv6層次轉發樹網絡拓撲結構,以減小節點擁塞幾率;
[0008]S2:節點在發生擁塞時,通過組播擁塞通告報文重新進行父、子節點的流量分配,并結合IPv6協議,使被通告節點依據相應的冗余路由尋址方法進行消息傳遞,以將擁塞區域的流量轉移到其它負載較輕的區域從而避開該擁塞節點;
[0009]S3:節點在擁塞解除后,組播擁塞解除報文使其父、子節點恢復為原來的流量分配模式。
[0010]進一步,所述步驟SI具體包括以下步驟:
[0011]Sll:待入網節點通過廣播信標請求消息,獲取一跳范圍內已入網的鄰居節點信息,所述鄰居節點收到該請求消息后,回復信標響應消息給待入網節點;
[0012]S12:所述信標響應消息中包含了該鄰居節點自身的后代節點數,待入網節點在信標響應度量閥值時間T內對收到的信標響應消息進行更新,并依據后代節點數建立備用父節點集;隨后,節點從該集中選出一個后代節點數最少的節點作為直接父節點進行關聯,并將剩余節點作為備份父節點存于備份路由表中;
[0013]S13:直接父節點在收到待入網節點的關聯請求消息后為其分配16位的路由ID,并通過關聯響應消息將IPv6子網前綴、網絡PANID—并告知給該待入網節點;
[0014]S14:待入網節點收到關聯響應消息后,進行IPv6地址的無狀態自動配置,隨后該節點以樹路由方式向網關發送一次新節點入網消息,轉發路徑上的節點對其后代節點數字段OFFSPRINGS進行更新;待入網節點在收到網關的入網確認消息時表明入網成功,否則,重復上述步驟;
[0015]S15:節點在成功入網后,將自身備份路由表中的備份父節點地址以備份父節點注冊消息的形式告知其直接父節點,直接父節點在收到該注冊消息后,將該子節點的備份父節點地址添加到自身的路由表中,并與該子節點的地址形成映射關系,隨后,向該子節點回復注冊確認消息,完成注冊過程;
[0016]S16:節點在完成注冊后,通過周期性廣播鄰居請求消息對自身備用父節點集中各節點的擁塞狀態進行更新;若節點在本次父節點集擁塞度更新過程中對任意節點的擁塞度進行了變更,則節點需要將本次更新結果通過擁塞度更新消息告知給直接父節點,以使直接父節點對該子節點的備份父節點信息進行及時更新。
[0017]進一步,所述步驟S2具體包括以下步驟:
[0018]S21:各已入網節點以緩存空間占有率和擁塞因子周期性的進行自身擁塞檢測,當緩存空間占有率超過擁塞閥值β,且擁塞因子α>1時,標志著該節點出現擁塞,隨即該節點組播擁塞通告報文,該報文僅能夠被其直接父子節點所接受;
[0019]S22:收到上述擁塞通告報文的節點,若為子節點,則該子節點將自身的上行路由方式設置為冗余路由模式,若為父節點,則該父節點將自身的下行路由方式設置為冗余路由模式。
[0020]進一步,在步驟S22中所述的冗余路由模式具有以下特征:
[0021]S221:在上行冗余路由模式中,節點在傳輸上行數據時,直接從自身的備份父節點中選擇一個擁塞度最小的節點進行上行報文的傳輸;
[0022]S222:在下行冗余路由模式中,節點在收到下行報文后,首先判斷該報文的目的地址是否是自身擁塞子節點的后代節點,若是,則該節點以本次消息的mesh目的地址作為請求對象,向擁塞節點發送一次父節點集信息請求報文,收到該報文的擁塞節點將下一跳節點的注冊備份父節點信息以父節點集信息應答報文反饋給請求節點,請求節點從反饋回的備份父節點信息中選擇一個擁塞度最小的節點進行報文傳遞,從而避開將數據轉發給擁塞節點;
[0023]S223:具有IPv6報文傳輸能力的冗余路由方法通過在原適配層頭部中擴展一個冗余地址頭來進行路由轉發,擴展的冗余地址頭部類型標識符分派值定義為llOOlxxx,后續字段分別為mesh目的地址緩存域、源地址緩存域和冗余目的地址緩存域,mesh目的地址緩存域和源地址緩存域用于保存當前IPv6報文中的mesh目的地址和源地址,冗余目的地址緩存域存放待轉發的擁塞節點的子節點地址;分派值中的后3位分別表示后續各個地址域中地址類型,如最后I位若為1,則表示冗余目的地址緩存域中的地址采用的是16位的路由ID,若該位為O則采用EU1-64地址;冗余地址頭部在冗余路由模式下才被采用,當節點恢復為樹路由方式時,該頭部被自動取消。
[0024]進一步,所述步驟S3具體包括:當節點擁塞得到緩解時,即節點的緩存空間占有率〈即寸,節點組播擁塞解除報文,告知其父子節點取消相應的冗余路由模式,進而恢復為原有的樹型路由模式。
[0025]本發明的有益效果在于:本發明所述的方法首先基于擁塞策略構建具有IPv6報文傳輸能力的樹型載波網絡,具有轉發跳數少和傳輸延遲低的優點,在一定程度上可減小擁塞產生的幾率;節點進行周期性擁塞檢測,通過擁塞控制報文使擁塞區域附近的節點重新進行流量分配,以確保報文的可靠傳輸;結合IPv6報文格式設計的冗余路由模式,使得IPv6報文在傳輸過程中能夠避開擁塞區域以使擁塞節點盡快恢復;該發明有效的預防和緩解了IPv6載波網絡中的節點擁塞,提高了網絡吞吐量和IPv6報文的傳輸可靠性。
【附圖說明】
[0026]為了使本發明的目的、技術方案和有益效果更加清楚,本發明提供如下附圖進行說明:
[0027]圖1為待入網節點N對父節點的選取;
[0028]圖2為節點擁塞下報文的轉發控制;
[0029]圖3為冗余地址頭格式;
[0030]圖4為節點C處的冗余報文格式;
[0031]圖5為節點E處的報文格式;
[0032]圖6為本發明所述方法的流程圖。
【具體實施方式】
[0033]下面將結合附圖,對本發明的優選實施例進行詳細的描述。
[0034]圖6為本發明所述方法的流程圖,如圖所示,本方法包括以下步驟:S1:載波網絡節點自行構建基于擁塞控制的IPv6層次轉發樹網絡拓撲結構,以減小節點擁塞幾率;S2:節點在發生擁塞時,通過組播擁塞通告報文重新進行父、子節點的流量分配,并結合IPv6協議,使被通告節點依據相應的冗余路由尋址方法進行消息傳遞,以將擁塞區域的流量轉移到其它負載較輕的區域從而避開該擁塞節點;S3:節點在擁塞解除后,組播擁塞解除報文使其父、子節點恢復為原來的流量分配模式。
[0035]具體來說:圖1為一個非信標使能的載波網絡,該網絡包含一個網關節點A,13個已入網節點B?P和一個待入網節點N。網絡中的已入網節點采用分段式無狀態地址分配算法為其子節點動態分配一個子網路由ID,子節點結合自身路由ID和網絡前綴、PANID完成IPv6地址的無狀態自動配置。樹型路由根據待轉發消息中目的地址進行下一跳節點的選擇,在該路由模式控制下,任意節點只能在自己的父、子節點中進行下一跳節點的選取,而不能與一跳范圍內其它鄰居節點進行直接通信。
[0036]下面將對本申請的IPv6電力線載波通信網絡擁塞控制方法進行詳細闡述。
[0037]1、入網節點構建負載均衡下的層次轉發樹模型
[0038]在載波節點入網過程中,首先由網關節點進行IPv6子網的創建并生成64位的子網前綴,同時設置該子網的PANID。隨后,待入網節點進行網絡發現,并通過一系列關聯動作完成入網。在待入網節點N的入網過程中,節點N通過廣播信標請求消息進行已入網鄰居節點的發現,收到該請求消息的已入網節點C、節點D和節點G,通過CSMA/CA方式向請求節點N回復相應的信標響應消息,該消息中包含了響應節點的后代節點數量信息,分別為7、1、4,節點N在經過信標響應度量閥值時間T后,從已收到的信標響應消息中選取后代節點數最小的節點D為父節點,并向節點D發送關聯請求消息。節點D通過無狀態地址分配算法為該節點N分配路由ID,并將該路由ID和網絡前綴、PANID信息通過關聯響應消息告知節點N,節點從關聯響應消息中提出自己的路由ID和網絡信息完成IPv6地址的生成,同時將節點C、節點G作為備份節點即父節點集,并將集中節點地址存入自身的上行備份路由表中。
[0039]節點N在關聯成功后,通過父節點集注冊消息將備份節點的地址信息、擁塞度狀況告知父節點D,節點D從注冊消息中提取出子節點N的各備份節點地址、擁塞度信息存于自身的下行備份路由表中并與節點N的地址形成映射關系。隨后,節點D向網關發送一次新節點入網消息,包括節點D在內的樹型路徑上的節點收到該消息后將自身后代節點數OFFSPRINGS字段增加I。節點N在收到網關節點的確認消息后,完成入網過程。
[0040]節點N在成功入網后,開始周期性廣播鄰居請求消息,收到該請求消息的鄰居節點將自身節點擁塞情況通過鄰居響應消息廣播給該節點,隨后,節點N對自身父節點集中各節點的擁塞度狀態進行更新。若父節點集中任意節點的擁塞度進行了變更,則向節點D發送一次父節點集更新信息,否則,只檢查父節點集中節點的可達性。
[0041 ] 2、擁塞控制過程
[0042]已入網節點周期性的進行自身擁塞檢測,以緩存空間占有率(BSO)和擁塞因子(CF)作為擁塞度的綜合決策值,其中CF為接收報文的速率與處理報文的速率的比值,當BSO超過擁塞閥值β,且擁塞因子α>1時,標志著該節點出現擁塞,隨即該節點組播擁塞通告報文,該組播報文僅能夠被其直接父子節點所接受。如圖2所示,以擁塞節點G和其子節點K為例,節點G的直接父節點為C,節點K的上行備份路由表中有節點Ε、節點F,相應的,在節點G的下行備份路由表中也存有子節點K的父節點集信息。當節點G檢測到自身處于擁塞狀態時,組播擁塞通告報文,由于各節點在MAC層中采用了地址過濾策略(即節點只接受來自自身父、子節點的報文),因此該組播報文僅能被節點G的父節點C和子節點K、L所接受。父節點C收到該擁塞通告報文后,將通向子節點G的下行路由方式設置為冗余路由模式,S卩D0WN_R0UTING_FLAG(G) = I,對其它子節點仍采用樹型路由(D0WN_R0UTING_FLAG(F) = 0)。子節點K、L收到該擁塞通告報文后,將自身上行路由方式設置為冗余路由模式,在節點K中有UP_ROUTING_FLAG(G) = I,節點L中UP_R0UTING_FLAG(G) = 10D0ffN_R0UTING_FLAG(x)、UP_ROUT ING_FLAG (x)為本節點到節點x的路由方式,默認值為O,表示采用樹型路由模式,其值為I時,表示使用冗余路由模式。
[0043 ] 各節點依據MAC地址頭和Me sh地址頭進行路由尋址,其中MAC地址頭為節點通過路由算法計算得到的下一跳地址,Mesh地址頭中為最初源節點地址和最終目的節點地址。為了使樹型路由尋址支持冗余路由模式,在原適配層頭部中擴展了一個冗余地址頭,如圖3所示,該地址頭用來向備份父節點轉發數據。
[0044]在冗余路由下的上行通信過程中,如節點M向網關節點A匯報事件時,當消息傳遞至節點K時,由于節點K的父節點G處于擁塞,如果節點G再繼續接收數據將導致數據溢出丟失,因此,節點K需要選取一條非擁塞路徑將數據傳遞至目的節點。在節點K啟用上行冗余路由模式后,節點K首先從父節點集(E、F)中選取一個擁塞度最小的節點如E作為臨時的上行路徑,為了使節點K傳遞的數據能夠被節點E接受,節點K在判斷自身處于上行冗余路由模式后,直接指定MAC地址頭中的下一跳地址為節點E,Mesh地址頭不變,由非擁塞節點E完成擁塞節點G的上行數據分流。在下行通信過程中,如網關節點A需要向節點M發送數據,當數據傳至節點C時,此時節點C已經通過擁塞節點G組播的擁塞通告報文開啟了下行冗余路由模式,節點C首先根據報文中的Mesh目的地址判斷該報文的下一跳目的節點G是否正常,若正常,則直接將報文傳遞給子節點G;如果下一跳節點G處于擁塞狀態,則以Mesh目的地址為請求對象向節點G發送一次,向下一跳節點G發送一次父節點集信息請求報文,節點G收到該請求報文后,將自身傳輸該報文的下一跳節點K的父節點集信息(包括節點E、F的路由ID和擁塞度)告知節點C,請求節點C收到該報文后從該集中選取一個擁塞度最小的節點EHgSf點E較節點F的擁塞度小)作為轉發節點,將帶有冗余地址頭的消息轉發至節點E,節點E將該消息處理后直接傳遞給節點K,最終由節點K以樹路由方式完成消息的下行傳遞。
[0045]在節點C到節點E的消息轉發過程中,節點C采用擴展的冗余地址頭,該頭中的Mesh目的地址緩存域和源地址緩存域分別為節點M和節點A的IPv6地址,冗余目的地址緩存域為節點K的IPv6地址,同時將Mesh地址頭中的目的地址和源地址分別設置為節點E和節點C的IPv6地址,然后根據樹型路由算法自動進行下一跳地址的計算并進行路由轉發,節點C發出的冗余報文格式如圖4所示。當節點E收到該報文時,節點E將Mesh地址頭中的源地址和目的地址替換為冗余地址頭中的Mesh目的地址緩存域和源地址緩存域中的地址,并將MAC地址頭中的下一跳地址替換為冗余目的地址緩存域中的地址即節點K的IPv6地址,然后去掉冗余地址頭,并將該報文直接發送給下一跳節點K,節點E發出的報文格式如圖5所示。節點K收到該報文后,根據Mesh地址頭中的目的地址并結合樹路由將此消息轉發至目的節點,由此完成報文的傳遞。
[0046]3、擁塞控制類報文
[0047]當節點處于擁塞狀態時通過組播擁塞通告報文使其父子節點的路由模式動態調整,父節點下行路由方式D0WN_R0UTING_FLAG (x)和子節點的上行路由方式UP_R0UT ING_FLAG(x)被設置為冗余路由模式,而父節點上行路由方式和子節點的下行路由方式仍為樹路由模式,到相應節點的路由標志位為默認值O。由此使得傳向擁塞節點的數據流量得到重新分配,使擁塞節點能夠盡快恢復。當節點擁塞恢復后,通過組播擁塞解除報文恢復其父子節點的路由模式,提高轉發效率。
[0048]最后說明的是,以上優選實施例僅用以說明本發明的技術方案而非限制,盡管通過上述優選實施例已經對本發明進行了詳細的描述,但本領域技術人員應當理解,可以在形式上和細節上對其做出各種各樣的改變,而不偏離本發明權利要求書所限定的范圍。
【主權項】
1.一種基于IPv6的電力線載波通信網絡擁塞控制方法,其特征在于:該方法包括以下步驟: S1:載波網絡節點自行構建基于擁塞控制的IPv6層次轉發樹網絡拓撲結構,以減小節點擁塞幾率; S2:節點在發生擁塞時,通過組播擁塞通告報文重新進行父、子節點的流量分配,并結合IPv6協議,使被通告節點依據相應的冗余路由尋址方法進行消息傳遞,以將擁塞區域的流量轉移到其它負載較輕的區域從而避開該擁塞節點; S3:節點在擁塞解除后,組播擁塞解除報文使其父、子節點恢復為原來的流量分配模式。2.根據權利要求1所述的一種基于IPv6的電力線載波通信網絡擁塞控制方法,其特征在于:所述步驟SI具體包括以下步驟: Sll:待入網節點通過廣播信標請求消息,獲取一跳范圍內已入網的鄰居節點信息,所述鄰居節點收到該請求消息后,回復信標響應消息給待入網節點; S12:所述信標響應消息中包含了該鄰居節點自身的后代節點數,待入網節點在信標響應度量閥值時間T內對收到的信標響應消息進行更新,并依據后代節點數建立備用父節點集;隨后,節點從該集中選出一個后代節點數最少的節點作為直接父節點進行關聯,并將剩余節點作為備份父節點存于備份路由表中; S13:直接父節點在收到待入網節點的關聯請求消息后為其分配16位的路由ID,并通過關聯響應消息將IPv6子網前綴、網絡PANID—并告知給該待入網節點; S14:待入網節點收到關聯響應消息后,進行IPv6地址的無狀態自動配置,隨后該節點以樹路由方式向網關發送一次新節點入網消息,轉發路徑上的節點對其后代節點數字段OFFSPRINGS進行更新;待入網節點在收到網關的入網確認消息時表明入網成功,否則,重復上述步驟; S15:節點在成功入網后,將自身備份路由表中的備份父節點地址以備份父節點注冊消息的形式告知其直接父節點,直接父節點在收到該注冊消息后,將該子節點的備份父節點地址添加到自身的路由表中,并與該子節點的地址形成映射關系,隨后,向該子節點回復注冊確認消息,完成注冊過程; S16:節點在完成注冊后,通過周期性廣播鄰居請求消息對自身備用父節點集中各節點的擁塞狀態進行更新;若節點在本次父節點集擁塞度更新過程中對任意節點的擁塞度進行了變更,則節點需要將本次更新結果通過擁塞度更新消息告知給直接父節點,以使直接父節點對該子節點的備份父節點信息進行及時更新。3.根據權利要求1所述的一種基于IPv6的電力線載波通信網絡擁塞控制方法,其特征在于:所述步驟S2具體包括以下步驟: S21:各已入網節點以緩存空間占有率和擁塞因子周期性的進行自身擁塞檢測,當緩存空間占有率超過擁塞閥值β,且擁塞因子α>1時,標志著該節點出現擁塞,隨即該節點組播擁塞通告報文,該報文僅能夠被其直接父子節點所接受; S22:收到上述擁塞通告報文的節點,若為子節點,則該子節點將自身的上行路由方式設置為冗余路由模式,若為父節點,則該父節點將自身的下行路由方式設置為冗余路由模式。4.根據權利要求3所述的一種基于IPv6的電力線載波通信網絡擁塞控制方法,其特征在于:在步驟S22中所述的冗余路由模式具有以下特征: S221:在上行冗余路由模式中,節點在傳輸上行數據時,直接從自身的備份父節點中選擇一個擁塞度最小的節點進行上行報文的傳輸; S222:在下行冗余路由模式中,節點在收到下行報文后,首先判斷該報文的目的地址是否是自身擁塞子節點的后代節點,若是,則該節點以本次消息的mesh目的地址作為請求對象,向擁塞節點發送一次父節點集信息請求報文,收到該報文的擁塞節點將下一跳節點的注冊備份父節點信息以父節點集信息應答報文反饋給請求節點,請求節點從反饋回的備份父節點信息中選擇一個擁塞度最小的節點進行報文傳遞,從而避開將數據轉發給擁塞節占.V , S223:具有IPv6報文傳輸能力的冗余路由方法通過在原適配層頭部中擴展一個冗余地址頭來進行路由轉發,擴展的冗余地址頭部類型標識符分派值定義為llOOlxxx,后續字段分別為mesh目的地址緩存域、源地址緩存域和冗余目的地址緩存域,mesh目的地址緩存域和源地址緩存域用于保存當前IPv6報文中的mesh目的地址和源地址,冗余目的地址緩存域存放待轉發的擁塞節點的子節點地址;分派值中的后3位分別表示后續各個地址域中地址類型,如最后I位若為I,則表示冗余目的地址緩存域中的地址采用的是16位的路由ID,若該位為O則采用EU1-64地址;冗余地址頭部在冗余路由模式下才被采用,當節點恢復為樹路由方式時,該頭部被自動取消。5.根據權利要求1所述的一種基于IPv6的電力線載波通信網絡擁塞控制方法,其特征在于:所述步驟S3具體包括:當節點擁塞得到緩解時,即節點的緩存空間占有率<β時,節點組播擁塞解除報文,告知其父子節點取消相應的冗余路由模式,進而恢復為原有的樹型路由模式。
【文檔編號】H04L12/803GK105897605SQ201610216587
【公開日】2016年8月24日
【申請日】2016年4月8日
【發明人】向敏, 何金星, 王平, 唐亮, 胡向東, 杜延紅
【申請人】重慶郵電大學