具有多個分布式回歸代理的移動IPv6網絡及其負載平衡方法
2023-06-26 03:45:26 6
專利名稱:具有多個分布式回歸代理的移動IPv6網絡及其負載平衡方法
技術領域:
本發明涉及移動IPv6通訊技術,更具體地,涉及到一種具有多個分布式回歸代理的移動IPv6網絡以及其多個回歸代理的負載平衡方法。它主要是在移動IPv6中利用註冊移動節點的信息和流量信息來分擔回歸代理的流量負載。
背景技術:
近來很多研究工作都是如何把無線通訊和網際網路結合起來。D.B.Johnson,C.Perkins,和J.Arkko在IETF推出移動IPv6(Mobilitysupport in IPv6Draft-ietf-mobileip-ipv6-23,2003)標準被認為是實現集成無線通訊和有線網絡無縫通訊的一個重要技術。在移動IPv6中,當移動節點離開回歸網絡的時候,應該有一個回歸代理來維護移動節點的註冊信息。這個回歸代理代表移動節點截取發送給註冊移動節點的IP數據包,並打包發送給移動節點。當它所服務的移動節點數明顯增加的時候,數據包就會在回歸代理處排隊,這就會導致很長的延時和註冊過程。在一定的流量情況下,比如在有很多移動節點的支持多媒體應用的移動IPv6網絡中,回歸代理由於要承擔很多封裝隧道數據包,因此就成為流量的瓶頸,一般情況下會導致延遲,嚴重的情況下會導致回歸代理癱瘓。
在移動IPv4中,雖然已經有一些提出的方法來解決上述問題。但是,他們研究的目的只是使用他們分析模型的數值結果而不是聯繫實際的移動IPv6的實現技術,因此有很大的局限性和限制,同時這些結果對不重要參數的改變也不是很敏感,這些方法也無法提前預防流量負載瓶頸現象的發生。
所有上述方法都忽略了事先預防流量負載瓶頸的發生,以及如何和IETF(International Engineering Technology Force)移動IP標準結合起來實現(也就是說,這些方法只是一些分析模型,並且遠離實際情況),最後他們很少有考慮移動IPv6的情況。
發明內容
本發明的目的就是要提供了一種具有多個分布式回歸代理的移動IPv6網絡及其多個回歸代理的負載平衡方法。
按照本發明的一種具有多個分布式回歸代理的移動IPv6網絡,它包括多個移動子網和網際網路,所述多個移動子網通過網際網路互相聯接;其特徵在於每個移動子網包括一個接入路由器、多個移動節點以及多個回歸代理;所述回歸代理是按分布式拓撲結構排列的;所述回歸代理之間依靠互相間進行流量負載信息(表)的廣播而互相交換信息;並且,每個回歸代理都有一個流量負載表,並以此為根據來進行負載平衡操作。
按照上述的具有多個分布式回歸代理的移動IPv6網絡,其進一步的特徵在於所述流量負載表記錄著回歸網絡中所有回歸代理的流量負載程度,它包括回歸代理地址、流量負載和註冊的移動節點數的信息。各回歸代理時刻監視其流量負載和註冊的移動節點數。每個回歸代理將定期廣播流量負載消息給其他的回歸代理,該流量負載消息和回歸代理中的流量負載表表項一致;一旦收到從其他回歸代理中廣播的流量負載消息,回歸代理及時更新自己的流量負載表。在每個回歸代理中,當註冊一個移動節點時,其中相應的計時器就開始計時,而且,本次註冊的綁定時間被存入綁定更新緩衝區;當計時器超過所述綁定時間後,即相應的移動節點的計時器到期,則對該移動節點進行回歸代理的重新設置。在確定重新分配回歸代理時,通過使用在移動IPv6中定義的動態回歸代理地址發現機制DHAAD,回歸代理主動發送ICMP響應消息包給該移動節點,上述的ICMP響應消息包與標準的ICMP響應數據包不相同,這個ICMP響應消息包可只包含新選擇的回歸代理信息,而不包含回歸代理的列表信息。當移動節點接收上述ICMP響應消息後,上述移動節點比較新的回歸代理和其舊的回歸代理,如果新的回歸代理與舊的回歸代理不同,移動節點將修改其的回歸代理,同時發送綁定更新請求消息給這個新回歸代理。根據Ipv6協議,所述廣播的流量負載消息是基於IETF鄰居發現協議中的未請求的路由器廣播消息的,即通過設置一個新的選項-流量負載,而將該流量負載消息嵌入到未請求的路由器廣播消息中的選項位中。
按照本發明的一種多個回歸代理的負載平衡方法,其特徵在於它包括如下步驟步驟S1判斷其負載是否大於閾值?如果判斷結果為「是」,則執行步驟S2,如果判斷結果為「否」,則執行步驟S3;步驟S2判斷是否有「輕」回歸代理?如果判斷結果為「是」,則執行步驟S4,如果判斷結果為「否」,則執行步驟S5;步驟S3 判斷在所有「輕」回歸代理中其註冊移動節點數是否處於前10%?如果判斷結果為「是」,則執行步驟S8,如果判斷結果為「否」,則執行步驟S7;步驟S4在所有「輕」回歸代理中隨機選擇一個,並返回;步驟S5判斷其是否在非「輕」回歸代理中處於前10%?如果判斷結果為「是」,則執行步驟S6,如果判斷結果為「否」,則執行步驟S7;步驟S6在非「輕」回歸代理中隨機選擇一個後10%的回歸代理,並返回;步驟S7不進行回歸代理的切換操作,並返回;步驟S8在所有「輕」回歸代理中隨機選擇一個後10%的回歸代理,並返回。
通過參考附圖對最佳實施例的詳細描述,本發明的上述目的和優點將變的更清楚,其中圖1是按照本發明的具有多個分布式回歸代理的移動IPv6網絡的示意圖,其中顯示了三角路由通信情況。
圖2是按照本發明的具有多個分布式回歸代理的移動IPv6網絡的示意圖,其中顯示了多個回歸代理之間進行流量負載廣播的情況。
圖3是一個例子,它顯示了圖2所示網絡中所述分布式回歸代理拓撲結構和流量負載表。
圖4是按照本發明的多個回歸代理的負載平衡方法的流程圖。
圖5是對按照本發明的多個回歸代理的負載平衡方法進行測試的仿真結果。
具體實施例方式
圖1是按照本發明的具有多個分布式回歸代理的移動IPv6網絡的示意圖。其中,在該移動IPv6網絡中,多個移動子網(1、2和3)通過網際網路(5)互相聯接。假設,移動子網(1)是移動節點(8)的本地移動子網,則移動子網(1)就是移動節點(8)的回歸網絡。通常,一個移動子網包括一個接入路由器、一個代理伺服器和多個移動節點。而按照本發明的移動IPv6網絡,每個移動子網都包括一個接入路由器、多個代理伺服器和多個移動節點。例如,在回歸網絡(8)中,有多個回歸代理(HA1、HA2、…n)。這些回歸代理(HA1、HA2、…n)是按分布式拓撲結構排列的,即它們之間是互相平等的。當移動節點(8)剛離開回歸網絡(8)的時候,呼叫移動節點(8)的通訊節點(4)與該移動節點(8)之間經過回歸網絡(8)由三角路由進行通訊。
圖2是按照本發明的具有多個分布式回歸代理的移動IPv6網絡的示意圖,其中顯示了多個回歸代理之間進行流量負載廣播的情況。由於上述回歸代理(HA1、HA2、…n)是按分布式拓撲結構排列的,為了合理有效地進行負載分配,這些回歸代理(HA1、HA2、…n)之間必須有機地聯接起來,而形成一個高效、互相協調的有機體。為此,各個回歸代理之間互相進行流量負載信息(表)的廣播,即互相交換信息,各個回歸代理可根據這些流量負載信息來進行負載平衡操作。
為了獲得和維護流量信息,每個回歸代理維護一個所謂的流量負載表(參見圖3)。流量表記錄著回歸網絡中所有回歸代理的流量程度。
圖3是顯示了一個流量負載表的實際例子。其中,回歸代理的回歸代理IP位址信息,回歸代理的負載,和註冊在回歸代理上的移動節點的數目都是流量負載表的表項。該表顯示了某一時刻,各個回歸代理(HA1-HAn)的負載和註冊的移動節點數。
下面將詳細說明流量負載表中的各個表項1.代理地址回歸代理地址是回歸代理的IP位址。
2.隊列尺寸流量負載指示回歸代理的緩衝區尺寸。當回歸代理的緩衝區尺寸低於閥值,緩衝區的尺寸認為是「輕」的。
3.回歸代理上註冊的移動節點數目。
回歸代理應該監視隊列尺寸和註冊的移動節點數。每個回歸代理將定期廣播流量負載廣播消息給回歸網絡中的所有其他回歸代理。流量負載廣播消息和流量負載表有著相同的表項。
根據Ipv6協議,這個廣播消息基於IETF鄰居發現協議中的未請求的路由器廣播消息。通過設置一個新的選項-稱為流量負載-可以嵌入到未請求的路由器廣播消息中的選項位中,這個選項位如下所示隊列大小(1個字節)路由器TLT中的隊列大小的大概參數;註冊的移動節點數(1個字節)如果超過256個移動節點在其上面註冊,該位將是路由器TLT中的一個大概的參數。
未請求路由器廣播消息應該以根據IETF RFC 2461中定義的時間間隔參數[MinRtrAdvInterval,MaxRtrAdvInterval]區間進行廣播。為了讓流量信息及時得到更新,帶有流量負載信息的未請求的路由廣播消息Unsolicited Router Advertisement message應該定義在時間區間[MinRtrAdvInterval,MinRtrAdvInterval+IntervalTLTExtention]進行發送比較合適。
其中IntervalTLTExtention=2*MinRtrAdvInterval。
一旦從其他回歸代理中收到流量負載廣播消息,回歸代理應該記錄這些信息到流量負載表中。回歸代理在流量負載表按降序排列流量負載信息,回歸代理表中主要以降序排列,流量負載是「輕」的除外。對於「輕」的回歸代理,流量負載表根據所註冊的移動節點數以降序排列。
在本發明中,隊列尺寸將用來決定重新設置回歸代理,註冊的移動節點數可以用來防止流量負載瓶頸的形成。
圖4是按照本發明的多個回歸代理的負載平衡方法的流程圖。按照該方法來確定是否選擇新回歸代理,從而達到負載平衡的目的。
下面將詳細敘述按照本發明的多個回歸代理的負載平衡方法,即在按照本發明的具有多個分布式回歸代理的移動IPv6網絡中,多個回歸代理之間如何進行負載平衡。
按照本發明的多個回歸代理的負載平衡方法主要解決多個回歸代理之間的負載平衡分配的問題,通過考慮隧道流量信息和每個回歸代理上註冊的移動節點數信息來考慮如何解決和預防流量瓶頸問題發生。本發明所提方法通過嵌入移動IPv6標準中定義的DHAAD得以實現。它可以提前防止流量負載瓶頸的發生。
因為按照本發明的具有多個分布式回歸代理的移動IPv6網絡中,多個回歸代理是分布式排列的,因此,所有的回歸代理都可以決定是否發生切換。而在現有技術中,只有中央調度系統才能做決定是否能切換,因此它們不適合回歸代理的引用。由於中央調度系統要處理所有的移動節點的信息,隨著移動節點數目的大大的增加,它很可能就成為流量的瓶頸。
在按照本發明的具有多個分布式回歸代理的移動IPv6網絡中,回歸網絡有多個移動IPv6的回歸代理和多個移動節點組成。當移動節點呆在回歸網絡的時候,回歸代理並不執行任何回歸代理的任務。在初始化回歸網絡時,回歸網絡中回歸代理的註冊移動節點數可以被平均設置,也可以不被平均設置。是否平均設置回歸代理與否將既不會影響到最初的流量負載,也不會影響所提負載平衡方法的性能。
在每個回歸代理中,計時器和綁定更新(binding update)緩衝區聯合起來。當註冊一個移動節點時,計時器就開始計時,而且,本次註冊的綁定時間被存入綁定更新緩衝區。當計時器超過所述綁定時間後,即相應的移動節點的計時器到期,則對該移動節點進行回歸代理的重新設置。回歸代理按照本發明的多個回歸代理的負載平衡方法來進行上述的回歸代理的重新設置,即回歸代理從流量負載列表中重新選擇一個新的回歸代理。如果一個新的回歸代理設置給上述到期的移動節點,回歸代理主動發送ICMP響應消息包給該移動節點,而不需要移動節點發送ICMP請求消息。上述的ICMP響應消息包與標準的ICMP響應數據包不相同,這個ICMP響應消息包可只包含新選擇的回歸代理,而不必包含回歸代理的列表,因此減少了網絡中的數據傳輸量。一旦接收到這個ICMP消息,上述到期的移動節點比較這個收到的回歸代理和其舊的回歸代理。如果在上述ICMP響應消息包裡指示的回歸代理與舊的回歸代理不同,移動節點將修改其的回歸代理,同時發送綁定更新請求消息給這個新回歸代理。通過使用DHAAD中定義的ICMP消息,本發明可以與IETF MobileIPv6標準一起實現,而不用對協議做任何修改。
對於移動節點來說,修改新回歸代理的頻率是回歸代理越區切換次數和負載平衡性能之間的一個折衷。回歸代理不應該頻繁的給註冊的移動節點選擇一個新的回歸代理。因為回歸的切換會給移動節點的正常的流量通訊帶來額外的流量控制和延遲,所以只有很忙的移動節點,或者有潛力將很忙的節點才進行回歸代理的切換。
如果要選擇新的回歸代理,這個回歸代理應該是在流量負載表中最閒置的。在流量負載表中有兩個域可以用來進行回歸代理的選擇算法。一個是隊列大小,它用來指示現在流量負載。另一個是註冊的移動節點數,這用來表明未來流量負載的潛力。回歸代理應該防止有過多的註冊移動節點數,這樣可以防止未來隧道流量負載瓶頸的形成。
參見圖4,按照本發明的多個回歸代理的負載平衡方法具體實現如下一旦某個移動節點相對應的計時器超過綁定時間,該移動節點相對應的回歸代理即進行下列步驟的操作。
步驟S1判斷其負載是否大於閾值?如果判斷結果為「是」,則執行步驟S2,如果判斷結果為「否」,則執行步驟S3;步驟S2判斷是否有「輕」回歸代理?如果判斷結果為「是」,則執行步驟S4,如果判斷結果為「否」,則執行步驟S5;步驟S3判斷在所有「輕」回歸代理中其註冊移動節點數是否處於前10%?如果判斷結果為「是」,則執行步驟S8,如果判斷結果為「否」,則執行步驟S7;步驟S4在所有「輕」回歸代理中隨機選擇一個,並返回。
步驟S5判斷其是否在非「輕」回歸代理中處於前10%?如果判斷結果為「是」,則執行步驟S6,如果判斷結果為「否」,則執行步驟S7;
步驟S6在非「輕」回歸代理中隨機選擇一個後10%的回歸代理,並返回;步驟S7不進行回歸代理的切換操作,並返回;步驟S8在所有「輕」回歸代理中隨機選擇一個後10%的回歸代理,並返回。
上面詳細描述了按照本發明的具有多個分布式回歸代理的移動IPv6網絡以及其多個回歸代理的負載平衡方法。值得注意的是在回歸代理重新選擇算法中,只有最忙的回歸代理可以給他註冊的移動節點選擇新的回歸代理。因此新的回歸代理的重新設置不是經常發生。當移動節點從一個網絡移到另一個網絡的時候,在IETF Mobile IPv6中,移動節點要回歸代理在通信節點綁定註冊以前為其承擔隧道數據流量的工作。因此一個有很多註冊節點的回歸代理有可能會有大量的三角路由隧道數據。本發明的方法可以讓回歸代理在還沒有造成大量的流量堵塞的情況下就進行回歸代理重新選擇的操作,以至於可以事先防止將來流量負載瓶頸現象的發生。
本發明的仿真結果表明,本發明可以顯著減少流量延遲和緩衝區要求在三角路由隧道傳送數據的時候。圖5表明了每個回歸代理在有與沒有流量負載平衡方法下的過程隊列的隊列大小。結果表明當回歸代理已經達到飽和的流量的情況下,本發明可以根據隊列尺寸的大小和註冊移動節點數目,利用多個回歸代理來分擔這些流量負載。
權利要求
1.一種具有多個分布式回歸代理的移動IPv6網絡,它包括多個移動子網(1、2和3)和網際網路(5),所述多個移動子網(1、2和3)通過網際網路(5)互相聯接;其特徵在於每個移動子網包括一個接入路由器、多個移動節點(6、8)以及多個回歸代理(HA1、HA2、…n);所述回歸代理(HA1、HA2、…n)是按分布式拓撲結構排列的;所述回歸代理(HA1、HA2、…n)之間依靠互相間進行流量負載信息(表)的廣播而互相交換信息;並且,每個回歸代理(HA1、HA2、…n)都有一個流量負載表,並以此為根據來進行負載平衡操作。
2.按照權利要求1的具有多個分布式回歸代理的移動IPv6網絡,其進一步的特徵在於所述流量負載表記錄著回歸網絡中所有回歸代理(HA1-HAn)的流量負載程度,它包括回歸代理地址、流量負載和註冊的移動節點數的信息。
3.按照權利要求1、2的具有多個分布式回歸代理的移動IPv6網絡,其進一步的特徵在於各回歸代理(HA1-HAn)時刻監視其流量負載和註冊的移動節點數。
4.按照權利要求1、2的具有多個分布式回歸代理的移動IPv6網絡,其進一步的特徵在於每個回歸代理將定期廣播流量負載消息給其他的回歸代理,該流量負載消息和回歸代理中的流量負載表表項一致;一旦收到從其他回歸代理中廣播的流量負載消息,回歸代理及時更新自己的流量負載表。
5.按照權利要求4的具有多個分布式回歸代理的移動IPv6網絡,其進一步的特徵在於在每個回歸代理中,當註冊一個移動節點時,其中相應的計時器就開始計時,而且,本次註冊的綁定時間被存入綁定更新緩衝區;當計時器超過所述綁定時間後,即相應的移動節點的計時器到期,則對該移動節點進行回歸代理的重新設置。
6.按照權利要求4的具有多個分布式回歸代理的移動IPv6網絡,其進一步的特徵在於在確定重新分配回歸代理時,通過使用在移動IPv6中定義的動態回歸代理地址發現機制DHAAD,回歸代理主動發送ICMP響應消息包給該移動節點,上述的ICMP響應消息包與標準的ICMP響應數據包不相同,這個ICMP響應消息包可只包含新選擇的回歸代理信息,而不包含回歸代理的列表信息。
7.按照權利要求6的具有多個分布式回歸代理的移動IPv6網絡,其進一步的特徵在於當移動節點接收上述ICMP響應消息後,上述移動節點比較新的回歸代理和其舊的回歸代理,如果新的回歸代理與舊的回歸代理不同,移動節點將修改其的回歸代理,同時發送綁定更新消息給這個新回歸代理。
8.按照權利要求4的具有多個分布式回歸代理的移動IPv6網絡,其進一步的特徵在於根據Ipv6協議,所述廣播的流量負載消息是基於IETF鄰居發現協議中的未請求的路由器廣播消息的,即通過設置一個新的選項-流量負載,而將該流量負載消息嵌入到未請求的路由器廣播消息中的選項位中。
9.一種多個回歸代理的負載平衡方法,其特徵在於它包括如下步驟步驟S1判斷其負載是否大於閾值?如果判斷結果為「是」,則執行步驟S2,如果判斷結果為「否」,則執行步驟S3;步驟S2判斷是否有「輕」回歸代理?如果判斷結果為「是」,則執行步驟S4,如果判斷結果為「否」,則執行步驟S5;步驟S3判斷在所有「輕」回歸代理中其註冊移動節點數是否處於前10%?如果判斷結果為「是」,則執行步驟S8,如果判斷結果為「否」,則執行步驟S7;步驟S4在所有「輕」回歸代理中隨機選擇一個,並返回;步驟S5判斷其是否在非「輕」回歸代理中處於前10%?如果判斷結果為「是」,則執行步驟S6,如果判斷結果為「否」,則執行步驟S7;步驟S6在非「輕」回歸代理中隨機選擇一個後10%的回歸代理,並返回;步驟S7不進行回歸代理的切換操作,並返回;步驟S8在所有「輕」回歸代理中隨機選擇一個後10%的回歸代理,並返回。
全文摘要
一種具有多個分布式回歸代理的移動IPv6網絡及其多個回歸代理的負載平衡方法,所述網絡包括通過網際網路(5)互相聯接的多個移動子網(1、2和3),每個移動子網包括一個接入路由器、多個移動節點(6、8)以及多個回歸代理(HA1、HA2、…n);所述回歸代理(HA1、HA2、…n)是按分布式拓撲結構排列的;所述回歸代理(HA1、HA2、…n)之間依靠互相間進行流量負載信息(表)的廣播而互相交換信息;並且,每個回歸代理(HA3)都有一個流量負載表,並以此為根據用上述來負載平衡方法進行負載平衡操作。
文檔編號H04L12/56GK1567899SQ0314574
公開日2005年1月19日 申請日期2003年7月1日 優先權日2003年7月1日
發明者鄧輝, 牛志升, 張凱, 田辺史朗, 黃嘯龍 申請人:株式會社日立製作所, 清華大學