專利名稱:流量負載均衡處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種方法,特別是涉及一種在通信設(shè)備中使用多個網(wǎng) 絡(luò)處理器協(xié)同處理網(wǎng)絡(luò)流量的一種流量負載均衡處理方法。
背景技術(shù):
網(wǎng)絡(luò)設(shè)備在提供深度包檢測(DPI)功能時,其轉(zhuǎn)發(fā)性能會因為報 文的處理深度不同而有所不同。當一塊單個處理器在處理DPI時無法 達到系統(tǒng)性能時,為了保證報文經(jīng)過系統(tǒng)不會產(chǎn)生丟包,系統(tǒng)便會對 流量采用隨機抽樣的方式進行DPI處理,其它的則采用直接轉(zhuǎn)發(fā)的方 式。因此系統(tǒng)勢必會對報文的檢測與統(tǒng)計存在一定的偏差。
發(fā)明內(nèi)容
鑒于上述問題,本發(fā)明的主要目的在于提供一種對流量負載進行 準處理的均衡方法。
為了實現(xiàn)上述目的,本發(fā)明采用了下述技術(shù)方案 本發(fā)明所述流量負載均衡處理方法為包括對系統(tǒng)帶寬進行估 算,根據(jù)該實際帶寬確定網(wǎng)絡(luò)處理器的使用數(shù)目;且對于上下行方向, 均分別使用一個網(wǎng)絡(luò)處理器做分發(fā)處理, 一個網(wǎng)絡(luò)處理器做匯聚處 理;同時,且對上下行流量實施對稱處理,均衡上下行的負載,保證 上行報文和下行報文在系統(tǒng)中的處理路徑完全對稱。其中,所述分發(fā)處理為包括使用一個網(wǎng)絡(luò)處理器作為主控,且 采用TCP連接對報文進行分類處理,并對其進行解析,且對不同的 連接標識不同的類別;同時,提取其中一類別對其進行深度包檢測解 析,而其余類別則分別使用不同的接口/端口轉(zhuǎn)發(fā)至交換芯片,并通 過該交換芯片轉(zhuǎn)發(fā)至其他網(wǎng)絡(luò)處理器上。
所述匯聚處理為包括使用一個網(wǎng)絡(luò)處理器來對出端口報文進行 匯聚,并在匯聚后進行端口限速和統(tǒng)計;在匯聚中且通過不同的接口 /端口將流量轉(zhuǎn)發(fā)至交換芯片,且再由交換芯片轉(zhuǎn)發(fā)至系統(tǒng)輸入輸出 接口,其中,網(wǎng)絡(luò)處理器為根據(jù)交換芯片在轉(zhuǎn)發(fā)報文時端口號的不同 來區(qū)別不同的報文。
本發(fā)明使用多塊網(wǎng)絡(luò)處理器并行處理深度包檢測,且各網(wǎng)絡(luò)處理 器按一定規(guī)則對報文進行隨機抽樣處理,既保證了各網(wǎng)絡(luò)處理器處理 的數(shù)據(jù)不出現(xiàn)疊加和重復(fù),也使得系統(tǒng)的處理能力得到提高。
圖1本發(fā)明所述流量負載均衡處理方法的流程示意圖2為發(fā)明所述流量負載均衡處理方法的具體實施例之流程框圖。
具體實施例方式
下面結(jié)合附圖以及具體實施例來對本發(fā)明所述流量均衡處理方 法作進一步的詳細說明。本發(fā)明所述流量負載均衡處理方法在網(wǎng)絡(luò)設(shè)備中實現(xiàn)多個處理 器并行處理網(wǎng)絡(luò)流量的一種流量負載均衡的技術(shù)方案。
在整個系統(tǒng)設(shè)計中,首先,需要分析系統(tǒng)實際需處理的網(wǎng)絡(luò)帶寬; 根據(jù)實際網(wǎng)絡(luò)中上下行流量不對稱;其次,在設(shè)計中必須保證上下行 流量在系統(tǒng)中流程對稱,以此首先均衡上下行負載;然后,在設(shè)計中 設(shè)計采用TCP連接進行流量分類,并使用該類別將報文轉(zhuǎn)發(fā)至不同 的網(wǎng)絡(luò)處理器中進行深度包解析,從而進一步確保系統(tǒng)在處理深度包 解析時,各網(wǎng)絡(luò)處理器的負荷相同。
參照圖1中所示,本發(fā)明所述方法具體如下
步驟100:對系統(tǒng)實際處理的帶寬進行分析,確定使用的網(wǎng)絡(luò)處 理器;
步驟101:對上下行流量進行流程對稱處理,均衡上下行的負載, 保證上行報文和下行報文在系統(tǒng)中的處理路徑完全對稱。
步驟102:對于上下行方向,均分別使用一個網(wǎng)絡(luò)處理器做分發(fā) 處理, 一個網(wǎng)絡(luò)處理器做匯聚處理。
在實現(xiàn)流量負載均衡處理上,上述步驟100、步驟101和步驟102 不分先后。
其中,所述分發(fā)處理為包括使用一個網(wǎng)絡(luò)處理器作為主控,且 使用TCP連接對報文進行分類處理,并對其進行解析,且對不同的 連接標識不同的類別;同時,提取其中一類別對其進行深度包檢測解 析,而其余類別則分別使用不同的接口/端口轉(zhuǎn)發(fā)至交換芯片,并通 過該交換芯片轉(zhuǎn)發(fā)至其他網(wǎng)絡(luò)處理器上。所述匯聚處理為包括使用一個網(wǎng)絡(luò)處理器來對出端口報文進行 匯聚,并在匯聚后進行端口限速和統(tǒng)計;在匯聚中且通過不同的接口 /端口將流量轉(zhuǎn)發(fā)至交換芯片,且再由交換芯片轉(zhuǎn)發(fā)至系統(tǒng)輸入輸出 接口,其中,網(wǎng)絡(luò)處理器為根據(jù)交換芯片在轉(zhuǎn)發(fā)報文時端口號的不同 來區(qū)別不同的報文。
此外,在步驟100中,所述網(wǎng)絡(luò)處理器的確定為包括首先,網(wǎng) 絡(luò)處理器的選型為借用廠商的評估板來進行評估測試,從中得出單塊 處理器處理DPI的能力;其次根據(jù)估算的實際帶寬計算出處理需要的 網(wǎng)絡(luò)處理器數(shù)目,即,如果測試出的單塊處理器處理DPI的能力為
5Gbps,則在實際應(yīng)用中,如果為了達到雙向個10Gbps的處理能力,
則可確定系統(tǒng)需要4塊網(wǎng)絡(luò)處理器。
基于系統(tǒng)要求,于一般應(yīng)用中,可設(shè)計使用四塊網(wǎng)絡(luò)處理器和兩
塊六端口交換芯片來對雙向10Gbps流量負載進行均衡處理。
針對雙向各10Gbps的流量,則每塊網(wǎng)絡(luò)處理器處理深度包檢測 的流量為(10/4"2-5Gbps,且對上下行方向均考慮使用一個網(wǎng)絡(luò)處理 器做分發(fā)處理, 一個網(wǎng)絡(luò)處理器做匯聚處理,因此,各網(wǎng)絡(luò)處理器直 接轉(zhuǎn)發(fā)流量為2.5Gbps*3=7.5Gbps,各網(wǎng)絡(luò)處理器出入口流量均為 12.5Gbps。
其中,為保證系統(tǒng)內(nèi)各網(wǎng)絡(luò)處理器處理深度包檢測時負荷均等, 則系統(tǒng)需保證同一個TCP連接需在同一塊網(wǎng)絡(luò)處理器上處理,且使 用一塊網(wǎng)絡(luò)處理器做為主控網(wǎng)絡(luò)處理器處理報文的分類。該所述主控 網(wǎng)絡(luò)處理器首先去接收到報文并對其進行解析,且對不同的連接標示不同的類別,并均勻分成4份。該主控網(wǎng)絡(luò)處理器提取一種類別在本 網(wǎng)絡(luò)處理器上做深度包檢測解析,其它3種類別則使用不同的接口/ 端口轉(zhuǎn)發(fā)至交換芯片。此時,該所述交換芯片則是基于接口/端口而 將不同報文轉(zhuǎn)發(fā)至不同的網(wǎng)絡(luò)處理器上,從而去減少報文的延遲和其 它網(wǎng)絡(luò)處理器的性能消耗。
另外,且基于整個系統(tǒng)對出端口流量進行全局限速和統(tǒng)計,并使 用一塊網(wǎng)絡(luò)處理器進行報文匯聚,該網(wǎng)絡(luò)處理器通過交換芯片轉(zhuǎn)發(fā)報 文的端口號不同來區(qū)分不同的報文。在該實際應(yīng)用中,該報文為包括 7.5Gbps的已做過深度包檢測的流量和需本網(wǎng)絡(luò)處理器處理的 2.5Gbps流程;其中,且使用指定的接口/端口將已做過深度包檢測的 流量轉(zhuǎn)發(fā)至交換芯片,由交換芯片將該流量轉(zhuǎn)發(fā)至系統(tǒng)輸入輸出接口 上。
通過上述過程,從而保證各網(wǎng)絡(luò)處理器處理的數(shù)據(jù)沒有疊加和重 復(fù),并使系統(tǒng)達到10Gbps的處理能力。
參照圖2中所示,圖中虛線表示沒有DPI的數(shù)據(jù)流量,實線表示 已經(jīng)DPI的流量。為了兼顧硬件設(shè)備不會太大,系統(tǒng)設(shè)計將4塊網(wǎng)絡(luò) 處理器分兩組分別裝設(shè)于兩塊板子上。參見圖2中所示,網(wǎng)絡(luò)處理器 a為表示第一塊板的主網(wǎng)絡(luò)處理器,網(wǎng)絡(luò)處理器b表示第一塊板的從 網(wǎng)絡(luò)處理器,網(wǎng)絡(luò)處理器c和網(wǎng)絡(luò)處理器d為分別表示第二塊板的主 網(wǎng)絡(luò)處理器和從網(wǎng)絡(luò)處理器。
數(shù)據(jù)流A進入網(wǎng)絡(luò)處理器A后被負載均衡分為4個數(shù)據(jù)流Al, A2, A3, A4,在第一塊板上處理完成后通過交換芯片和串并轉(zhuǎn)換器發(fā)到第二塊板上,最后由網(wǎng)絡(luò)處理器d發(fā)送到第二塊板的系統(tǒng)輸入輸 出接口。
如圖所示,數(shù)據(jù)流A的具體移動線路如下
數(shù)據(jù)流A:第一塊板系統(tǒng)輸入輸出接口+交換芯片^網(wǎng)絡(luò)處理器
數(shù)據(jù)流Al:網(wǎng)絡(luò)處理器a ^交換芯片~>第一塊板串并轉(zhuǎn)換器^ 第二塊板串并轉(zhuǎn)換器+交換芯片+網(wǎng)絡(luò)處理器d+第二塊板系統(tǒng) 輸入輸出接口;
數(shù)據(jù)流A2:網(wǎng)絡(luò)處理器a+交換芯片^網(wǎng)絡(luò)處理器b+交換芯片 今第一塊板串并轉(zhuǎn)換器+第二塊板串并轉(zhuǎn)換器今交換芯片+網(wǎng)絡(luò)處 理器d^交換芯片^第二塊板系統(tǒng)輸入輸出接口;
數(shù)據(jù)流A3:網(wǎng)絡(luò)處理器a +交換芯片">第一塊板串并轉(zhuǎn)換器^ 第二塊板串并轉(zhuǎn)換器—交換芯片今網(wǎng)絡(luò)處理器c今交換芯片^網(wǎng)絡(luò) 處理器d+交換芯片^第二塊板系統(tǒng)輸入輸出接口;
數(shù)據(jù)流A4:網(wǎng)絡(luò)處理器a ~>交換芯片^第一塊板串并轉(zhuǎn)換器+ 第二塊板串并轉(zhuǎn)換器">交換芯片+網(wǎng)絡(luò)處理器d》交換芯片》第二塊 板系統(tǒng)輸入輸出接口。
數(shù)據(jù)流B進入網(wǎng)絡(luò)處理器c后被負載均衡分為4個數(shù)據(jù)流Bl , B2, B3, B4,在第二塊板上處理完成后通過交換芯片和背板的串并 轉(zhuǎn)換器發(fā)到第一塊板上,最后由網(wǎng)絡(luò)處理器b發(fā)送到第一塊板的系統(tǒng) 輸入輸出接口。
參見圖2,數(shù)據(jù)流B的具體移動線路如下數(shù)據(jù)流B:第二塊板系統(tǒng)輸入輸出接口^交換芯片^網(wǎng)絡(luò)處理器
數(shù)據(jù)流B1:網(wǎng)絡(luò)處理器c+交換芯片+第二塊板串并轉(zhuǎn)換器^第 二塊板串并轉(zhuǎn)換器+交換芯片^網(wǎng)絡(luò)處理器b+第一塊板系統(tǒng)輸入輸 出接口;
數(shù)據(jù)流B2:網(wǎng)絡(luò)處理器c^交換芯片—網(wǎng)絡(luò)處理器d^交換芯片 ">第二塊板串并轉(zhuǎn)換器今第一塊板串并轉(zhuǎn)換器+交換芯片+網(wǎng)絡(luò)處 理器b^交換芯片^第一塊板系統(tǒng)輸入輸出接口;
數(shù)據(jù)流B3:網(wǎng)絡(luò)處理器0">交換芯片+第二塊板串并轉(zhuǎn)換器">第 一塊板串并轉(zhuǎn)換器+交換芯片^網(wǎng)絡(luò)處理器a^交換芯片今網(wǎng)絡(luò)處理 器b^交換芯片+第一塊板系統(tǒng)輸入輸出接口 ;
數(shù)據(jù)流B4:網(wǎng)絡(luò)處理器c^交換芯片+第二塊板串并轉(zhuǎn)換器今第 一塊板串并轉(zhuǎn)換器+交換芯片今網(wǎng)絡(luò)處理器b今交換芯片+第一塊板 系統(tǒng)輸入輸出接口
上述每個網(wǎng)絡(luò)處理器使用20個線程做DPI業(yè)務(wù)處理并轉(zhuǎn)發(fā) 5Gbps,使用8個線程直接轉(zhuǎn)發(fā)7.5Gbps。
權(quán)利要求
1. 一種流量負載均衡處理方法,其特征在于,包括以下步驟1)對系統(tǒng)帶寬進行估算,根據(jù)該實際帶寬確定網(wǎng)絡(luò)處理器的使用數(shù)目;2)對于上下行方向,均分別使用一個網(wǎng)絡(luò)處理器做分發(fā)處理,一個網(wǎng)絡(luò)處理器做匯聚處理;3)對上下行流量實施對稱處理,均衡上下行的負載;上述步驟不分先后;其中,所述分發(fā)處理過程為使用一個網(wǎng)絡(luò)處理器作為主控,且對報文進行分類處理,并對其進行解析,且對不同的連接標識不同的類別;同時,提取其中一類別對其進行深度包檢測解析,而其余類別則分別使用不同的接口/端口轉(zhuǎn)發(fā)至交換芯片,并通過該交換芯片轉(zhuǎn)發(fā)至其他網(wǎng)絡(luò)處理器上;所述匯聚處理過程為使用一個網(wǎng)絡(luò)處理器來對出端口報文進行匯聚,并在匯聚后進行端口限速和統(tǒng)計;在匯聚中通過不同的接口/端口將流量轉(zhuǎn)發(fā)至交換芯片,再由交換芯片轉(zhuǎn)發(fā)至系統(tǒng)輸入輸出口。
2. 根據(jù)權(quán)利要求1所述流量負載均衡處理方法,其特征在于,所 述分類處理為采用TCP連接對報文進行分類。
3. 根據(jù)權(quán)利要求1所述流量負載均衡處理方法,其特征在于,所 述網(wǎng)絡(luò)處理器對報文采用基于連接的隨機抽樣。
4. 根據(jù)權(quán)利要求1所述流量負載均衡處理方法,其特征在于,所 述網(wǎng)絡(luò)處理器為根據(jù)交換芯片在轉(zhuǎn)發(fā)報文時端口號的不同來區(qū)別不 同的報文。
全文摘要
本發(fā)明公開一種流量負載均衡處理方法,其需對系統(tǒng)的帶寬進行估算,并根據(jù)實際使用帶寬確定網(wǎng)絡(luò)處理器的數(shù)量;且對于上下行方向均分別使用一個網(wǎng)絡(luò)處理器做分發(fā)處理和一個網(wǎng)絡(luò)處理器做匯聚處理;同時,需對上下行流量進行對稱處理,均衡上下行的負載。其中,分發(fā)處理為采用TCP連接對報文進行分類處理和解析,且對不同的連接標識不同的類別,并同時提取其中一類別進行深度包檢測解析,而其余類別則分別使用不同的接口/端口轉(zhuǎn)發(fā)至交換芯片,通過其轉(zhuǎn)發(fā)至其他網(wǎng)絡(luò)處理器上。匯聚處理則是用以對出端口報文進行匯聚,并在匯聚后進行端口限速和統(tǒng)計。本發(fā)明優(yōu)點在于各網(wǎng)絡(luò)處理器處理的數(shù)據(jù)不出現(xiàn)疊加和重復(fù),系統(tǒng)的處理能力高。
文檔編號H04L29/08GK101442490SQ200810241138
公開日2009年5月27日 申請日期2008年12月30日 優(yōu)先權(quán)日2008年12月30日
發(fā)明者易善平, 穆志新 申請人:北京暢訊信通科技有限公司