一種堆疊系統(tǒng)的報文轉(zhuǎn)發(fā)方法、裝置及堆疊設備的制造方法
【技術領域】
[0001]本發(fā)明涉及通信領域,特別是一種堆疊系統(tǒng)的報文轉(zhuǎn)發(fā)方法、裝置及堆疊設備。
【背景技術】
[0002]堆疊系統(tǒng)即虛擬交換單元(Virtual Switch Unit,簡稱VSU)是一種網(wǎng)絡系統(tǒng)虛擬化技術,支持將多臺設備組合成單一的虛擬設備,即可以將多個物理設備作為一個虛擬的邏輯設備。一般,堆疊系統(tǒng)可以提供高冗余、高可靠性的網(wǎng)絡環(huán)境,因此在網(wǎng)絡組網(wǎng)中得到較為廣泛的應用。
[0003]目前堆疊系統(tǒng)中的大多數(shù)的協(xié)議報文是由主堆疊設備負責處理。因此,當待處理的協(xié)議報文達到一定數(shù)量時,會增大主堆疊設備處理負擔。
【發(fā)明內(nèi)容】
[0004]本發(fā)明要解決的技術問題是:減輕主堆疊設備處理協(xié)議報文的負荷。
[0005]為解決上述技術問題,本發(fā)明的實施例提供一種堆疊系統(tǒng)的報文轉(zhuǎn)發(fā)方法,包括:
[0006]堆疊系統(tǒng)中的第一堆疊設備獲取待向所述堆疊系統(tǒng)的第二堆疊設備轉(zhuǎn)發(fā)的第一待轉(zhuǎn)發(fā)報文;
[0007]若所述第二堆疊設備為主堆疊設備,且所述第一待轉(zhuǎn)發(fā)報文是未解析的協(xié)議報文,則所述第一堆疊設備解析出所述第一待轉(zhuǎn)發(fā)報文的有效數(shù)據(jù),并對解析得到的所述有效數(shù)據(jù)進行封裝,生成第二待轉(zhuǎn)發(fā)報文;
[0008]所述第一堆疊設備將所述第二待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā),使得所述第二堆疊設備能夠直接獲取所述第二待轉(zhuǎn)發(fā)報文中已被解析的有效數(shù)據(jù)。
[0009]其中,若所述第一待轉(zhuǎn)發(fā)報文是單播報文,或者第一待轉(zhuǎn)發(fā)報文是已被解析的協(xié)議報文,則所述第一堆疊設備直接將所述第一待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā)。
[0010]其中,所述第一堆疊設備以硬轉(zhuǎn)發(fā)的方式,將所述第一待轉(zhuǎn)發(fā)報文或第二待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā)。
[0011]其中,所述第一堆疊設備維護有已配置轉(zhuǎn)發(fā)路徑信息的轉(zhuǎn)發(fā)引擎;所述轉(zhuǎn)發(fā)路徑信息具體為:所述第一堆疊設備的每個級聯(lián)端口與除所述第一堆疊設備之外的其它堆疊設備之間的連接對應關系;
[0012]所述第一堆疊設備以硬轉(zhuǎn)發(fā)的方式,將所述第一待轉(zhuǎn)發(fā)報文或第二待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā),包括:
[0013]所述第一堆疊設備通過所述轉(zhuǎn)發(fā)引擎,根據(jù)所述轉(zhuǎn)發(fā)路徑信息,確定能夠與所述第二堆疊設備具有連接對應關系的目標級聯(lián)端口;所述目標級聯(lián)端口屬于所述第一堆疊設備;
[0014]所述第一堆疊設備通過所述轉(zhuǎn)發(fā)引擎,使用所述目標級聯(lián)端口轉(zhuǎn)發(fā)所述第一待轉(zhuǎn)發(fā)報文或第二待轉(zhuǎn)發(fā)報文。
[0015]此外,本發(fā)明的另一實施例還提供一種堆疊系統(tǒng)的報文轉(zhuǎn)發(fā)裝置,所述報文轉(zhuǎn)發(fā)裝置設置于第一堆疊設備,包括:
[0016]獲取模塊,用于獲取待向所述堆疊系統(tǒng)的第二堆疊設備轉(zhuǎn)發(fā)的第一待轉(zhuǎn)發(fā)報文;
[0017]處理模塊,用于若所述第二堆疊設備為主堆疊設備,且所述第一待轉(zhuǎn)發(fā)報文是未解析的協(xié)議報文,則解析出所述第一待轉(zhuǎn)發(fā)報文的有效數(shù)據(jù),并對解析得到的所述有效數(shù)據(jù)進行封裝,生成第二待轉(zhuǎn)發(fā)報文;
[0018]轉(zhuǎn)發(fā)模塊,用于將所述第二待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā),使得所述第二堆疊設備能夠直接獲取所述第二待轉(zhuǎn)發(fā)報文中已被解析的有效數(shù)據(jù)。
[0019]其中,若所述第一待轉(zhuǎn)發(fā)報文是單播報文,或者第一待轉(zhuǎn)發(fā)報文是已被解析的協(xié)議報文,則所述轉(zhuǎn)發(fā)模塊直接將所述第一待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā)。
[0020]其中,所述轉(zhuǎn)發(fā)模塊以硬轉(zhuǎn)發(fā)的方式,將所述第一待轉(zhuǎn)發(fā)報文或第二待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā)。
[0021]其中,所述轉(zhuǎn)發(fā)模塊具體為配置有轉(zhuǎn)發(fā)路徑信息的轉(zhuǎn)發(fā)引擎;所述轉(zhuǎn)發(fā)路徑信息具體為:所述第一堆疊設備的每個級聯(lián)端口與除所述第一堆疊設備之外的其它堆疊設備之間的連接對應關系;
[0022]所述轉(zhuǎn)發(fā)引擎包括:
[0023]確定子模塊,用于根據(jù)所述轉(zhuǎn)發(fā)路徑信息,確定能夠與所述第二堆疊設備具有連接對應關系的目標級聯(lián)端口 ;所述目標級聯(lián)端口屬于所述第一堆疊設備;
[0024]轉(zhuǎn)發(fā)子模塊,用于使用所述目標級聯(lián)端口轉(zhuǎn)發(fā)所述第一待轉(zhuǎn)發(fā)報文或第二待轉(zhuǎn)發(fā)報文。
[0025]此外,本發(fā)明的另一實施例還提供一種堆疊設備,包括上述報文轉(zhuǎn)發(fā)裝置。
[0026]本發(fā)明的上述技術方案的有益效果如下:
[0027]本實施例的方法與現(xiàn)有技術相比,主堆疊設備不需要再對協(xié)議報文執(zhí)行解析步驟,因此能夠減小主堆疊設備的處理負擔。該方案特別適用于通信領域的堆疊系統(tǒng)(主堆疊設備需要處理海量的協(xié)議報文),因此具有很高的實用價值。此外,堆疊設備使用硬轉(zhuǎn)發(fā)方式傳遞報文,以更少的處理資源實現(xiàn)了更高傳遞效率。
【附圖說明】
[0028]圖1為本發(fā)明的堆疊系統(tǒng)的報文轉(zhuǎn)發(fā)方法的步驟示意圖;
[0029]圖2為在本發(fā)明的堆疊系統(tǒng)的報文轉(zhuǎn)發(fā)方法下,堆疊系統(tǒng)邏輯結(jié)構(gòu)示意圖;
[0030]圖3為本發(fā)明的堆疊系統(tǒng)的報文轉(zhuǎn)發(fā)裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0031]為使本發(fā)明要解決的技術問題、技術方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具體實施例進行詳細描述。
[0032]如圖1所示,本發(fā)明的實施例提供一種堆疊系統(tǒng)的報文轉(zhuǎn)發(fā)方法,包括:
[0033]步驟11,堆疊系統(tǒng)中的第一堆疊設備獲取待向所述堆疊系統(tǒng)的第二堆疊設備轉(zhuǎn)發(fā)的第一待轉(zhuǎn)發(fā)報文;
[0034]步驟12,若所述第二堆疊設備為主堆疊設備,且所述第一待轉(zhuǎn)發(fā)報文是未解析的協(xié)議報文,則所述第一堆疊設備解析出所述第一待轉(zhuǎn)發(fā)報文的有效數(shù)據(jù),并對解析得到的所述有效數(shù)據(jù)進行封裝,得到第二待轉(zhuǎn)發(fā)報文;
[0035]步驟13,所述第一堆疊設備將所述第二待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā),使得所述第二堆疊設備能夠直接獲取所述第二待轉(zhuǎn)發(fā)報文中已被解析的有效數(shù)據(jù)。
[0036]在本實施例的方法中,協(xié)議報文的解析工作由從堆疊設備負責執(zhí)行,從而減輕主堆疊設備的處理壓力。
[0037]此外,若所述第一待轉(zhuǎn)發(fā)報文是單播報文(最終的目的地址并非堆疊系統(tǒng)的堆疊設備),或者第一待轉(zhuǎn)發(fā)報文是已被解析的協(xié)議報文(協(xié)議報文已由下聯(lián)的堆疊設備進行解析和封裝),則所述第一堆疊設備直接將所述第一待轉(zhuǎn)發(fā)報文向所述第二堆疊設備進行轉(zhuǎn)發(fā)。
[0038]此外,目前協(xié)議報文主要是通過軟轉(zhuǎn)發(fā)方式在堆疊設備之間進行傳遞,如果傳遞路徑中間有多個堆疊設備,就需要多個堆疊設備的CPU進行處理,顯然即消耗了中間堆疊設備的處理資源,傳輸效率又不高。
[0039]為此,作為優(yōu)選方案,本實施例提供一種硬轉(zhuǎn)發(fā)的傳輸方式:
[0040]S卩,所述第一堆疊設備維護有已配置轉(zhuǎn)發(fā)路徑信息的轉(zhuǎn)發(fā)引擎;所述轉(zhuǎn)發(fā)路徑信息具體為:所述第一堆疊設備的每個級聯(lián)端口與除所述第一堆疊設備之外的其它堆疊設備之間的連接對應關系;
[0041]所述第一堆疊設備通過所述轉(zhuǎn)發(fā)引擎,根據(jù)所述轉(zhuǎn)發(fā)路徑信息,確定能夠與所述第二堆疊設備具有連接對應關系的目標級聯(lián)端口;所述目標級聯(lián)端口屬于所述第一堆疊設備;
[0042]所述第一堆疊設備通過所述轉(zhuǎn)發(fā)引擎,使用所述目標級聯(lián)端口轉(zhuǎn)發(fā)所述第一待轉(zhuǎn)發(fā)報文或第二待轉(zhuǎn)發(fā)報文。
[0043]下面結(jié)合實現(xiàn)方式,對本發(fā)明的整個方案進行具體介紹。
[0044]<實現(xiàn)方式一 >
[0045]示例性地,在本實現(xiàn)方式中,堆疊系統(tǒng)中的4臺堆疊設備(Dev 0、1、2、3)組成圖2所示的拓撲結(jié)構(gòu)。其中,Dev O為主堆疊設備,Dev 1、2、3為從堆疊設別。每個堆疊設備上PO和Pl為級聯(lián)端口,堆疊設備中間通過級聯(lián)端口建立連接。此外,如圖2所示,各堆疊設備都分別維護一個轉(zhuǎn)發(fā)路徑表,用于記錄轉(zhuǎn)發(fā)路徑信息。
[0046]假設Dev 3通過其網(wǎng)絡端口 P2從堆疊系統(tǒng)外接收到一個需要發(fā)往主堆疊設備DevO的協(xié)議報文,則執(zhí)行如下流程:
[0047]Dev 3的CPU對協(xié)議報文進行解析,提取協(xié)議報文的有效數(shù)據(jù)(有效數(shù)據(jù)包括具體協(xié)議內(nèi)容、控制信息等)。
[0048]Dev 3的CPU將解析后的有效數(shù)據(jù)重新封裝回協(xié)議報文。
[0049]Dev 3的CPU控制Dev 3的轉(zhuǎn)發(fā)引擎,向Dev O轉(zhuǎn)發(fā)協(xié)議報文。在本步驟中,Dev3的轉(zhuǎn)發(fā)引擎根據(jù)Dev 3的轉(zhuǎn)發(fā)路徑表,確定Dev O與本地PO端口對應,即通過本地PO端口轉(zhuǎn)發(fā)協(xié)議報文。
[0050]由于Dev 3的PO端口沒有直接與Dev O連接,而是和Dev2直連,因此協(xié)議報文會先到達Dev2上。Dev 2轉(zhuǎn)發(fā)引擎會根據(jù)協(xié)議報文的目的地址,確定出該協(xié)議報文需要發(fā)送至Dev O上,并根據(jù)Dev 2對應的轉(zhuǎn)發(fā)路徑表,確定出Dev O與本地PO端口對應,之后通過Dev 2上的PO端口