一種負載均衡方法及裝置的制造方法
【技術領域】
[0001 ]本發明實施例涉及通信技術領域,尤其涉及一種負載均衡方法及裝置。
【背景技術】
[0002]互聯網用戶數量與日倶增,互聯網數據的帶寬和實時流量也快速提升。運營商迫切地需要及時了解用戶上網行為及喜好等,通過對用戶行為的分析,提供更好的增值服務,以提升自己的競爭力。
[0003]現有的負載均衡方法中,主要確定不同數據對應的協議還原機,從而將不同數據分發到不同協議還原機中,實現了協議還原機的負載均衡。然而,現有的負載均衡方法尚未考慮協議還原機內部包含的多個解碼通道之間的負載均衡。
【發明內容】
[0004]本發明提供一種負載均衡方法及裝置,以實現協議還原機內部不同解碼通道之間的負載均衡。
[0005]第一方面,本發明實施例提供了一種負載均衡方法,包括:
[0006]依據統計的協議還原機中包含的各解碼通道的流量信息,計算所述協議還原機的均衡比值;
[0007]在計算的均衡比值大于均衡比閥值時,依據所述各解碼通道中的負載最大通道和所述均衡比值,對所述負載最大通道對應的流量信息作均衡分發。
[0008]第二方面,本發明實施例還提供了負載均衡裝置,包括:
[0009]均衡計算單元,用于依據統計的協議還原機中包含的各解碼通道的流量信息,計算所述協議還原機的均衡比值;
[0010]流量分發單元,用于在計算的均衡比值大于均衡比閥值時,依據所述各解碼通道中的負載最大通道和所述均衡比值,對所述負載最大通道對應的流量信息作均衡分發。
[0011]本發明實施例提供的技術方案,通過統計協議還原機中包含的各解碼通道的流量信息,依據各解碼通道的流量信息計算協議還原機的均衡比例值,并且在均衡比值大于均衡比閥值時,依據所述各解碼通道中的負載最大通道和所述均衡比值,對所述負載最大通道對應的流量信息作均衡分發,實現協議還原機內部不同解碼通道之間的負載均衡。
【附圖說明】
[0012]圖1是本發明實施例一中的一種負載均衡方法的流程圖;
[0013]圖2是本發明實施例二中的一種負載均衡方法的流程圖;
[0014]圖3a是本發明實施例三中的一種負載均衡方法的流程圖;
[0015]圖3b是本發明實施例三中的通過散列函數確定散列地址的示意圖;
[0016]圖3c是本發明實施例三中的確定目標解碼通道的示意圖;
[0017]圖3d是本發明實施例三中的統計各解碼通道的示意圖;
[0018]圖3e是本發明實施例三中的對負載最大通道對應的流量信息二次分發的示意圖;
[0019]圖4是本發明實施例四中的一種負載均衡裝置的結構圖。
【具體實施方式】
[0020]下面結合附圖和實施例對本發明作進一步的詳細說明。可以理解的是,此處所描述的具體實施例僅僅用于解釋本發明,而非對本發明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發明相關的部分而非全部結構。
[0021 ] 實施例一
[0022]圖1是本發明實施例一中的一種負載均衡方法的流程圖。該方法可以由負載均衡裝置來執行,該裝置可通過硬件和/或軟件的方式實現。如圖1所示,所述方法具體包括如下步驟:
[0023]步驟11、依據統計的協議還原機中包含的各解碼通道的流量信息,計算所述協議還原機的均衡比值。
[0024]在本實施例中,協議還原機指的是互聯網數據的提取設備。協議還原機內包含有多個解碼通道,通常一個協議還原機內部包含的解碼通道數量小于或等于16。均衡比值指的是多個解碼通道的流量中,最大流量與最小流量的比值。由均衡比值的含義可見,其最小值為I,1也是其理想狀態下的最為均衡的負載。均衡比值越大,表示負載越不均衡。
[0025]具體的,統計協議還原機中各解碼通道的流量信息,將對應的流量信息最大的解碼通道作為負載最大通道,流量信息最小的解碼通道作為負載最小通道,并計算出均衡比值。
[0026]步驟12、在計算的均衡比值大于均衡比閥值時,依據所述各解碼通道中的負載最大通道和所述均衡比值,對所述負載最大通道對應的流量信息作均衡分發。
[0027]在本實施例中,均衡比閥值可以根據用戶需要進行設定,為了提高各解碼通道的負載均衡,均衡比閥值不大于1.5。具體的,在均衡比值大于均衡比閥值時,將負載最大通道對應的部分散列地址的流量信息分發給其他解碼通道,從而縮小負載最大通道與其他解碼通道的不均衡性。
[0028]本實施例提供的技術方案,通過統計協議還原機中包含的各解碼通道的流量信息,依據各解碼通道的流量信息計算協議還原機的均衡比例值,并且在均衡比值大于均衡比閥值時,依據所述各解碼通道中的負載最大通道和所述均衡比值,對所述負載最大通道對應的流量信息作均衡分發,實現協議還原機內部不同解碼通道之間的負載均衡。
[0029]為了進一步提高各解碼通道的負載均衡,依據統計的協議還原機中包含的各解碼通道的流量信息,計算所述協議還原機的均衡比值,可以包括:依據預設的二次均衡定時器,依據統計的協議還原機中包含的各解碼通道的流量信息,定時計算所述協議還原機的均衡比值。
[0030]具體的,二次均衡定時器的時間步長可以依據上一次計算得到的均衡比值進行更改。如,在均衡比值接近I時,可以延長二次均衡定時器的時間步長,如在1.5分鐘-2分鐘范圍內,在均衡比值大于I時,可以縮短二次均衡定時器的時間步長,如在I分鐘左右。即,在各解碼通道的負載不均衡時,加快負載均衡方法的執行頻率,在各解碼通道的負載較均衡時,減慢負載均衡方法的執行頻率。
[0031]實施例二
[0032]圖2是本發明實施例二中的一種負載均衡方法的流程圖。本實施例以上述實施例為基礎對“對所述負載最大通道對應流量信息作均衡分發”做進一步限定。如圖2所示,本實施例提供的方法具體可以包括如下步驟:
[0033]步驟21、依據統計的協議還原機中包含的各解碼通道的流量信息,計算所述協議還原機的均衡比值。
[0034]步驟22、依據計算的均衡比值確定轉移比例值。
[0035]轉移比例值是從負載最大通道(記為max通道)轉移出的流量比例,轉移比例也標示著將要轉移到負載最小通道(記為min通道)的數據流量。
[0036]具體的,依據計算的均衡比值確定轉移比例值,包括:按照如下公式,依據計算的均衡比值確定轉移比例值:n= (m-l)/k,其中η為轉移比例值,m為均衡比值,k大于或等于4。轉移比例值與k值呈反比關系,k值越大轉移比例值越小,則在一次二次均衡過程中轉移的流量越小。轉移比例值不易過大,否則,在將負載最大通道對應的流量信息分發給負載最小通道后,可能會使負載最小通道的流量過大而導致新的負載不均衡問題。
[0037]步驟23、依據所述轉移比例值,將所述負載最大通道對應的流量信息分發給所述各解碼通道中的負載最小通道。
[0038]示例性的,依據所述轉移比例值,將所述負載最大通道對應的流量信息分發給所述各解碼通道中的負載最小通道,包括:將所述負載最大通道對應的各散列地址按照流量從小到大排序;累加流量最小的前i個散列地址對應的流量信息,直到累加的流量信息占負載最大通道的總流量信息的比例值大于所述轉移比例值時,將被累加的各散列地址對應的流量信息分發給所述各解碼通道中的負載最小通道;其中i為自然數。
[0039]本實施例的技術方案,在協議還原機的均衡比值小于均衡比閥值時,通過確定轉移比例值,并依據轉移比例值,將負載最大通道中的部分散列地址對應的流量信息分發給負載最小通道,縮小了負載最大通道與其他解碼通道的不均衡性,提高了數據分發的均衡性,實現了負載均衡方法對多個解析通道的支持。
[0040]實施例三
[0041 ]圖3a是本發明實施例三中的一種負載均衡方法的流程圖。如圖3a所示,本實施例提供的方法具體可以包括如下步驟:
[0042]步驟31、提取目標數據的關鍵字。
[0043]接收到目標數據包之后,根據數據源類型,分析數據協議棧,解析數據包中的協議頭部提取關鍵字KEY,其中目標數據包可以是從萬兆接口獲取的萬兆級數據,現有的基于千兆接口標準的分發負載均衡不適用于萬兆接口標準的數據接入方式。
[0044]KEY在不同的數據來源中取自不同協議數據,如,固網互聯網數據可以使用源IP(源IP指明了此數據包是由哪個IP發送出來的);中國電信無線網互聯網數據需要使用GRE(Generic Routing Encapsulat1n,即通用路由封裝協議)協議的GRE-key。
[0045]步驟32、將提取的關鍵字作為散列函數的參數,計算目標數據對應的目標散列地址,并統計目標散列地址的流量信息。
[0046]在本實施例中,散列地址的數量需要足夠大,如散列地址的數量不低于65536。圖3b是本發明實施例三中的通過散列函數確定散列地址的示意圖。如圖3b所示,散列函數(HASH_FUN)指的是確定KEY關聯的散列地址(BUCKET)的函數,HASH_FUN適用于多種不同來源的互聯網數據,包括有線固網和中國移動、中國聯通、中國電信等標準的無線互聯網數據。
[0047]步驟33、依據預設的散列地址與解碼通道間的映射關系,確定目標散列地址關聯的目標解碼通道,并統計各解碼通道的流量信息。
[0048]圖3c是本發明實施例三中的確定目標解碼通道的示意圖。如圖3c所示,散列地址與解