一種多通道傳輸負載均衡方法及裝置的製作方法
2023-06-09 07:33:46 1
專利名稱:一種多通道傳輸負載均衡方法及裝置的製作方法
技術領域:
本發明涉及通信技術領域,尤其涉及一種多通道傳輸負載均衡方法及裝置。
背景技術:
目前的網絡數據傳輸和處理過程中,經常會將多個低速通道捆綁成一個高速通道使用,這就涉及到如何向這幾個低速通道均勻的分發報文,以確保各個通道的負載均衡(Load balance)。如果出現各個通道負載不均,嚴重時會導致後續處理環節阻塞,導致丟包。 現有技術採用輪循遍歷方式向各個通道分發報文。這種分發報文方式,在流量中報文長度是隨機變化的情況下,各通道的實際負載是均衡的;但是在流量中報文長度是規律變化的情況下,就會出現負載不均的情況,導致部分通道負載較重,甚至超出通道處理能力而出現報文丟棄。
發明內容
本發明的實施例提供一種多通道傳輸負載均衡方法及裝置,在流量中報文長度規
律變化的情況下也能夠均勻地向各個通道分發報文。 為達到上述目的,本發明的實施例採用如下技術方案 —種多通道傳輸負載均衡方法,包括根據成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道排列信息是唯一的;從所有的序列元素中選擇全部或部分序列元素組建仲裁模板;遍歷所述仲裁模板確定各個通道的發送序列。 —種多通道傳輸負載均衡裝置,包括序列元素確定單元,用於根據成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道排列信息是唯一的;仲裁模板組建單元,用於從所有的序列元素中選擇全部或部分序列元素組建仲裁模板;發送序列確定單元,用於遍歷所述仲裁模板確定各個通道的發送序列。 本發明實施例提供的多通道傳輸負載均衡方法及裝置,由成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道排列信息是唯一的,通過從所有的序列元素中選擇全部或部分序列元素組建仲裁模板,然後遍歷所述仲裁模板確定各個通道的發送序列,從而打破了現有的採用輪詢遍歷方式分發報文的規律,做到隨機地向各個通道分發報文,保證了各個通道的實際負載均衡,解決了現有技術在流量中報文長度規律變化的情況下會出現負載分配不均的問題,達到在流量中報文長度規律變化的情況下也能夠均勻地向各個通道分發報文的目的;並且,對於在流量中報文長度是隨機變化的情況下,也保證了各個通道分配機率均等,性能與現有技術保持一致。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明實施例提供的一種多通道傳輸負載均衡方法的流程 圖2為本發明實施例提供的一個包括3個成員通道的傳輸所確定的所有序列元素的示意圖,其中,圖2-a為一個三通道系統模型,圖2-b為確定的所有序列元素的示意 圖3為本發明實施例提供的一個包括4個成員通道的傳輸所確定的部分序列元素的示意圖,其中,圖3-a為一個四通道系統模型,圖3-b為確定的部分序列元素的示意 圖4為本發明實施例提供的一個選擇部分序列元素構建仲裁模板的示例 圖5為遍歷圖4中的仲裁模板得到各個通道的發送序列的示例 圖6為發明實施例提供的一種通道傳輸負載均衡裝置的結構示意圖。
具體實施例方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。 如圖1所示,本發明實施例提供的一種多通道傳輸負載均衡方法,包括 ll,根據成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道
排列信息是唯一的。 為了在多個通道之間仲裁,序列元素(seed)的縱軸和成員通道數目應該一致;同時,為了保證每個通道在seed中選中一次,seed的橫軸也應和成員通道數目 一致,所以如果成員通道數目為N,則seed是一個NXN的矩陣。 假設有n個成員通道,由於所有成員通道在每個seed中排列的方式總計有
K =^("-1)、."",即成員通道數目階乘個數種方式。 —旦seed數量確定,就可以通過嵌套循環計算出所有的seed。 為此,假設成員通道數目為n,則本步驟ll可以首先構造出一個nXn的二維矩
陣,然後根據所有成員通道在所述二維矩陣中的不同排列方式,確定所有的序列元素,即成
員通道數目階乘個數的序列元素,並且每個序列元素為一個每行與每列中只有一個單元為
真,其餘單元為假的nXn 二維矩陣。 例如,對於包括3個成員通道的傳輸而言,可以確定3X2X1 =6個序列元素,參見附圖2-a和2-b,附圖2-a是一個三通道系統模型,其對應的所有的seed如附圖2_b所示。對於包括4個成員通道的傳輸而言,可以確定4X3X2X1 = 24個序列元素,參見附圖3-a和3-b,附圖3-a是一個四通道系統模型,其對應的部分的seed如附圖3-b所示。其中,每個seed的縱軸方格代表不同的通道,每個seed的橫軸方格代表時間順序,帶陰影的方格表示被選中的通道。 12,從所有的序列元素中選擇全部或部分序列元素組建仲裁模板。
仲裁模板由若干個seed組成,例如對一個成員通道數目為N所確定的seed而言,從所有的seed中選擇出M個(1《M《N),則組建的仲裁模板為一個(MXN) XN的二維矩陣。M個數的選擇主要依據硬體的實現,一般說來,選擇的seed個數越多對硬體的要求越
5高。 由選擇的seed組建仲裁模板,可以採用隨機因子的方式從所有的seed中選擇全部或部分seed,按選擇時間順序排列來組建仲裁模板;或者,使用配置數組的方式從所有的seed中選擇全部或部分seed,確定使用編號和順序來組建仲裁模板。
例如,對於由4個成員通道確定的4X 3 X 2 X 1 = 24個seed,如果採用隨機因子的方式選擇seed,在隨機因子二 0.3時,選擇出的seed個數={24X0.3} =7,其中{}表示取值,然後按選擇時間順序排列這些選擇出的seed來組建仲裁模板。 參見附圖4,附圖4為一個選擇部分seed構建仲裁模板的示例,從所有的seed中隨機選擇一定數量的seed,然後按選擇時間順序排列到一起得到仲裁模板。
13,遍歷所述仲裁模板確定各個通道的發送序列。 如上所述,組建的仲裁模板為一個(MXN) XN的二維矩陣,其中橫軸為時間軸,決定發送順序;縱軸為空間軸,決定發送通道,由此遍歷該仲裁模板的二維矩陣可以確定各個通道的發送序列。 以附圖4構建的仲裁模板為例,參見附圖5,由右向左遍歷該仲裁模板得到各個通道的發送序列為 0,3,2, 1,3,2,0, 1,0,3, 1,2, 1,0,3,2。 由此可見,該發送序列是隨機變化的,打破了現有的輪詢遍歷通道的發送序列的
規律,做到了隨機地向各個通道分發報文,從而能夠保證各個通道的實際負載均衡。 因此,本發明實施例提供的多通道傳輸負載均衡方法,首先由成員通道數目確定
所有的序列元素,然後從所有的序列元素中隨機選擇一定數量的序列元素組建仲裁模板,
最後遍歷所述仲裁模板確定各個通道的發送序列,從而做到隨機地向各個通道分發報文,
保證了各個通道的實際負載均衡,解決了現有技術在流量中報文長度規律變化的情況下會
出現負載分配不均的問題,達到在流量中報文長度規律變化的情況下也能夠均勻地向各個
通道分發報文的目的;並且,對於在流量中報文長度是隨機變化的情況下,也保證了各個通
道分配機率均等,性能可以與現有技術保持一致。 基於本發明實施例提供的方法,參見附圖6,本發明實施例提供了一種多通道傳輸負載均衡裝置,包括 序列元素確定單元61,用於根據成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道排列信息是唯一的; 仲裁模板組建單元62,用於從所有的序列元素中隨機選擇一定數量的序列元素組建仲裁模板; 發送序列確定單元63,用於遍歷所述仲裁模板確定各個通道的發送序列。 具體地,序列元素確定單元61用於構造一個成員通道數目X成員通道數目的二
維矩陣,根據所有成員通道在所述二維矩陣中的不同排列方式,確定階乘個成員通道數目
的所有的序列元素,並且每個序列元素為一個每行與每列中只有一個單元為真,其餘單元
為假的所述二維矩陣。 仲裁模板組建單元62用於採用隨機因子的方式從所有的序列元素中隨機選擇一定數量的序列元素,按選擇時間順序排列組建仲裁模板;或者,使用配置數組的方式從所有的序列元素中隨機選擇一定數量的序列元素,確定使用編號和順序組建仲裁模板;其中,所述組建的仲裁模板是由所述隨機選擇的序列元素組成的二維矩陣。 發送序列確定單元63用於遍歷所述仲裁模板的二維矩陣,所述二維矩陣的橫軸 決定發送順序,所述二維矩陣的縱軸決定發送通道。 可以理解,本發明實施例提供的多通道傳輸負載均衡裝置可以由硬體邏輯或軟體
實現,對於在流量中長度規律變化的報文做到向各個通道均衡分配;對於在流量中長度隨
機變化的報文,仍能夠保證各個通道分配機率均等,性能與現有技術保持一致。 最後需要說明是,本發明實施例提供的多通道傳輸負載均衡方法及裝置,可以應
用在任何需要向多個埠按數量均分報文的場景中。 本領域普通技術人員可以理解實現上述實施例方法中的全部或部分步驟是可以 通過程序來指令相關的硬體完成,所述的程序可以存儲於一計算機可讀存儲介質中,如 R0M/RAM、磁碟或光碟等。 以上所述,僅為本發明的具體實施方式
,但本發明的保護範圍並不局限於此,任何 熟悉本技術領域的技術人員在本發明揭露的技術範圍內,可輕易想到變化或替換,都應涵 蓋在本發明的保護範圍之內。因此,本發明的保護範圍應所述以權利要求的保護範圍為準。
權利要求
一種多通道傳輸負載均衡方法,其特徵在於,包括根據成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道排列信息是唯一的;從所有的序列元素中選擇全部或部分序列元素組建仲裁模板;遍歷所述仲裁模板確定各個通道的發送序列。
2. 根據權利要求1所述的方法,其特徵在於,所述根據成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道排列信息是唯一的包括構造一個成員通道數目X成員通道數目的二維矩陣;根據所有成員通道在所述二維矩陣中的不同排列方式,確定成員通道數目階乘個數的序列元素,並且每個序列元素為一個每行與每列中只有一個單元為真,其餘單元為假的所述二維矩陣。
3. 根據權利要求2所述的方法,其特徵在於,所述從所有的序列元素中選擇全部或部分序列元素組建仲裁模板包括採用隨機因子的方式從所有的序列元素中選擇全部或部分序列元素,按選擇時間順序排列組建仲裁模板;或者,使用配置數組的方式從所有的序列元素中選擇全部或部分序列元素,確定使用編號和順序組建仲裁模板;其中,所述組建的仲裁模板是由所述選擇的序列元素組成的二維矩陣。
4. 根據權利要求3所述的方法,其特徵在於,所述遍歷所述仲裁模板確定各個通道的發送序列包括遍歷所述仲裁模板的二維矩陣,所述二維矩陣的橫軸決定發送時間順序,所述二維矩陣的縱軸決定發送通道。
5. —種多通道傳輸負載均衡裝置,其特徵在於,包括序列元素確定單元,用於根據成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道排列信息是唯一的;仲裁模板組建單元,用於從所有的序列元素中選擇全部或部分序列元素組建仲裁模板;發送序列確定單元,用於遍歷所述仲裁模板確定各個通道的發送序列。
6. 根據權利要求5所述的裝置,其特徵在於,所述序列元素確定單元具體用於,構造一個成員通道數目X成員通道數目的二維矩陣,根據所有成員通道在所述二維矩陣中的不同排列方式,確定階乘個數的成員通道數目的所有的序列元素,並且每個序列元素為一個每行與每列中只有一個單元為真,其餘單元為假的所述二維矩陣。
7. 根據權利要求6所述的裝置,其特徵在於,所述仲裁模板組建單元具體用於,採用隨機因子的方式從所有的序列元素中選擇全部或部分序列元素,按選擇時間順序排列組建仲裁模板;或者,使用配置數組的方式從所有的序列元素中選擇全部或部分序列元素,確定使用編號和順序組建仲裁模板;其中,所述組建的仲裁模板是由所述選擇的序列元素組成的二維矩陣。
8. 根據權利要求7所述的裝置,其特徵在於,所述發送序列確定單元具體用於,遍歷所述仲裁模板的二維矩陣,所述二維矩陣的橫軸決定發送時間順序,所述二維矩陣的縱軸決定發送通道。
全文摘要
本發明的實施例公開了一種多通道傳輸負載均衡方法及裝置,以解決在流量中報文長度規律變化的情況下如何能夠均勻地向各個通道分發報文的問題。本發明提供的技術方案包括根據成員通道數目確定所有的序列元素,其中每個序列元素包含的成員通道排列信息是唯一的;從所有的序列元素中選擇全部或部分序列元素組建仲裁模板;遍歷所述仲裁模板確定各個通道的發送序列。本發明的實施例可以應用在任何需要向多個埠按數量均分報文的場景中。
文檔編號H04L12/56GK101753463SQ20101010482
公開日2010年6月23日 申請日期2010年1月29日 優先權日2010年1月29日
發明者王亮 申請人:華為技術有限公司