本發(fā)明涉及一種網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其是涉及一種堆疊系統(tǒng)中報(bào)文跨芯片轉(zhuǎn)發(fā)方法及交換機(jī)設(shè)備。
背景技術(shù):
為了使交換機(jī)滿足大型網(wǎng)絡(luò)對(duì)端口的數(shù)量要求,一般在較大型網(wǎng)絡(luò)中都采用交換機(jī)堆疊方式來解決。要注意的是只有可堆疊交換機(jī)才具備這種端口,所謂可堆疊交換機(jī),就是指一個(gè)交換機(jī)中一般同時(shí)具有UP和DOWN堆疊端口。當(dāng)多個(gè)交換機(jī)連接在一起時(shí),其作用就像一個(gè)模塊化交換機(jī)一樣,堆疊在一起交換機(jī)可以當(dāng)作一個(gè)單元設(shè)備來進(jìn)行管理。一般情況下,當(dāng)有多個(gè)交換機(jī)堆疊時(shí),其中存在一個(gè)可管理交換機(jī),利用可管理交換機(jī)可對(duì)此可堆疊式交換機(jī)中的其他獨(dú)立型交換機(jī)進(jìn)行管理??啥询B式交換機(jī)能夠方便的實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)的擴(kuò)充,堆疊中的所有交換機(jī)可視為一個(gè)整體的交換機(jī)來進(jìn)行管理,也就是說,堆疊中所有的交換機(jī)從拓?fù)浣Y(jié)構(gòu)上可視為一個(gè)交換機(jī)。堆棧在一起的交換機(jī)可以當(dāng)作一臺(tái)交換機(jī)來統(tǒng)一管理。交換機(jī)堆疊技術(shù)采用了專門的管理模塊和堆棧連接電纜,這樣做的好處是,一方面增加了用戶端口,能夠在交換機(jī)之間建立一條較寬的寬帶鏈路,這樣每個(gè)實(shí)際使用的用戶帶寬就有可能更寬(只有在并不是所有端口都在使用情況下)。另一方面多個(gè)交換機(jī)能夠作為一個(gè)大的交換機(jī),便于統(tǒng)一管理。
在網(wǎng)絡(luò)交換芯片堆疊使用的場景中,源芯片會(huì)根據(jù)查表處理的結(jié)果,增加一個(gè)堆疊頭。后續(xù)芯片只需要根據(jù)這個(gè)堆疊頭中的字段進(jìn)行處理即可,而不需要對(duì)原始報(bào)文做進(jìn)一步查表。但是現(xiàn)有方案中,堆疊頭的長度是固定的,這樣帶來兩個(gè)問題:一是當(dāng)堆疊頭信息過多時(shí),會(huì)額外占用芯片之間的帶寬;二是當(dāng)堆疊頭信息不足時(shí),無法擴(kuò)展。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺陷,提供一種堆疊系統(tǒng)中可變長堆疊頭的實(shí)現(xiàn)方法及其設(shè)備,使得堆疊頭具有較好的擴(kuò)展性,同時(shí)減少堆疊頭帶來的額外開銷。
為實(shí)現(xiàn)上述目的,本發(fā)明提出如下技術(shù)方案:一種堆疊系統(tǒng)中可變長堆疊頭的實(shí)現(xiàn)方法,所述堆疊系統(tǒng)包括復(fù)數(shù)通過內(nèi)部堆疊口相互連接的堆疊設(shè)備,所述可變長堆疊頭的實(shí)現(xiàn)方法包括以下步驟:
S1,對(duì)待轉(zhuǎn)發(fā)報(bào)文內(nèi)容進(jìn)行查找,獲得需要編碼進(jìn)堆疊頭的報(bào)文信息;
S2,對(duì)獲得的需要編碼進(jìn)堆疊頭的報(bào)文信息進(jìn)行分類解析,獲得基礎(chǔ)信息和擴(kuò)展信息;
S3,對(duì)所述基礎(chǔ)信息,以及擴(kuò)展信息進(jìn)行重新編碼,獲得基礎(chǔ)頭,以及擴(kuò)展頭;
S4,對(duì)獲得的基礎(chǔ)頭和擴(kuò)展頭組合成堆疊頭與原始報(bào)文進(jìn)行封裝。
優(yōu)選地,所述基礎(chǔ)頭數(shù)量為1個(gè)且所述基礎(chǔ)頭被封裝至每一個(gè)轉(zhuǎn)發(fā)的報(bào)文中。
優(yōu)選地,所述基礎(chǔ)頭包括擴(kuò)展頭數(shù)量信息、原始端口信息、原始芯片信息、轉(zhuǎn)發(fā)目的信息、報(bào)文優(yōu)先級(jí),以及其他信息。
優(yōu)選地,所述擴(kuò)展頭數(shù)量信息為5位二進(jìn)制數(shù),所述擴(kuò)展頭數(shù)量信息表示基礎(chǔ)頭后攜帶的擴(kuò)展頭數(shù)量,所述擴(kuò)展頭數(shù)量信息第一位為表示無擴(kuò)展頭的二進(jìn)制數(shù)零。
優(yōu)選地,所述擴(kuò)展頭包括擴(kuò)展頭類型,以及擴(kuò)展信息,所述擴(kuò)展頭類型為5位二進(jìn)制數(shù)。
一種堆疊設(shè)備,所述堆疊設(shè)備包括入方向處理模塊、堆疊頭編輯模塊,出方向處理模塊;
所述入方向處理模塊,對(duì)待轉(zhuǎn)發(fā)報(bào)文內(nèi)容進(jìn)行查找,獲得需要編碼進(jìn)堆疊頭的報(bào)文信息,對(duì)獲得的需要編碼進(jìn)堆疊頭的報(bào)文信息進(jìn)行分類解析,獲得基礎(chǔ)信息和擴(kuò)展信息;
所述堆疊頭編輯模塊,對(duì)所述基礎(chǔ)信息,以及擴(kuò)展信息進(jìn)行重新編碼,獲得基礎(chǔ)頭,以及擴(kuò)展頭,對(duì)獲得的基礎(chǔ)頭和擴(kuò)展頭組合成堆疊頭與原始報(bào)文進(jìn)行封裝;
所述出方向處理模塊,對(duì)封裝后的報(bào)文進(jìn)行查找轉(zhuǎn)發(fā)。
優(yōu)選地,所述基礎(chǔ)頭數(shù)量為1個(gè)且所述基礎(chǔ)頭被封裝至每一個(gè)轉(zhuǎn)發(fā)的報(bào)文中。
優(yōu)選地,所述基礎(chǔ)頭包括擴(kuò)展頭數(shù)量信息、原始端口信息、原始芯片信息、轉(zhuǎn)發(fā)目的信息、報(bào)文優(yōu)先級(jí),以及其他信息。
優(yōu)選地,所述擴(kuò)展頭數(shù)量信息為5位二進(jìn)制數(shù),所述擴(kuò)展頭數(shù)量信息表示基礎(chǔ)頭后攜帶的擴(kuò)展頭數(shù)量,所述擴(kuò)展頭數(shù)量信息第一位為零表示無擴(kuò)展頭的二進(jìn)制數(shù)零。
優(yōu)選地,所述擴(kuò)展頭包括擴(kuò)展頭類型,以及擴(kuò)展信息,所述擴(kuò)展頭類型為5位二進(jìn)制數(shù)。
本發(fā)明的有益效果是:
本發(fā)明所述的可變長堆疊頭中基礎(chǔ)頭對(duì)線路帶寬占用低,并且所述堆疊頭擴(kuò)展性強(qiáng),新的堆疊設(shè)備增加的功能不需要改變原有堆疊頭,只需增加擴(kuò)展頭即可,如果接收芯片發(fā)現(xiàn)堆疊頭中有的擴(kuò)展頭不識(shí)別,只需要跳過即可,根據(jù)基礎(chǔ)頭中的擴(kuò)展頭數(shù)量可以很容易實(shí)現(xiàn)。
附圖說明
圖1是本發(fā)明的跨芯片報(bào)文轉(zhuǎn)發(fā)方法步驟示意圖;
圖2是本發(fā)明的基礎(chǔ)頭格式示意圖;
圖3是本發(fā)明的擴(kuò)展頭格式示意圖;
圖4是本發(fā)明的報(bào)文格式示意圖;
圖5是本發(fā)明的堆疊設(shè)備中交換芯片結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明的附圖,對(duì)本發(fā)明實(shí)施例的技術(shù)方案進(jìn)行清楚、完整的描述。
結(jié)合圖1所示,本發(fā)明所揭示的一種在堆疊系統(tǒng)可變長堆疊頭的實(shí)現(xiàn)方法,所述方法包括如下步驟:
S1,對(duì)待轉(zhuǎn)發(fā)報(bào)文內(nèi)容進(jìn)行查找,獲得需要編碼進(jìn)堆疊頭的報(bào)文信息;
S2,對(duì)獲得的需要編碼進(jìn)堆疊頭的報(bào)文信息進(jìn)行分類解析,獲得基礎(chǔ)信息和擴(kuò)展信息;
S3,對(duì)所述基礎(chǔ)信息,以及擴(kuò)展信息進(jìn)行重新編碼,獲得基礎(chǔ)頭,以及擴(kuò)展頭;
S4,對(duì)獲得的基礎(chǔ)頭和擴(kuò)展頭組合成堆疊頭與原始報(bào)文進(jìn)行封裝。
具體的,在對(duì)待轉(zhuǎn)發(fā)報(bào)文內(nèi)容進(jìn)行查找,獲得需要編碼進(jìn)堆疊頭的報(bào)文信息時(shí),堆疊設(shè)備中的芯片對(duì)報(bào)文內(nèi)容進(jìn)行查找,如查找MAC地址或IP地址,這些信息需要編碼進(jìn)堆疊頭中,轉(zhuǎn)發(fā)至目的堆疊設(shè)備時(shí),目的堆疊設(shè)備只需基于堆疊頭內(nèi)容進(jìn)行查找轉(zhuǎn)發(fā)即可,無需對(duì)原始報(bào)文中的MAC地址和IP地址進(jìn)行查找。
為了使堆疊頭可變長,因此需要對(duì)堆疊頭結(jié)構(gòu)進(jìn)行重新編碼,具體的,對(duì)獲得的需要編碼進(jìn)堆疊頭的報(bào)文信息進(jìn)行分類解析,獲得基礎(chǔ)信息和擴(kuò)展信息,其中,基礎(chǔ)信息在任何報(bào)文轉(zhuǎn)發(fā)時(shí)都需要用到的,擴(kuò)展信息是承載的是一些特殊功能,當(dāng)啟動(dòng)某些特殊功能時(shí),才需要編碼擴(kuò)展頭。
獲得基礎(chǔ)信息和擴(kuò)展信息后,對(duì)基礎(chǔ)信息和擴(kuò)展信息進(jìn)行重新編碼,獲得基礎(chǔ)頭和擴(kuò)展頭,所述基礎(chǔ)頭只有一個(gè),報(bào)文轉(zhuǎn)發(fā)時(shí)必須要封裝進(jìn)轉(zhuǎn)發(fā)報(bào)文,擴(kuò)展頭可以有多個(gè),根據(jù)不同的功能選擇不同的擴(kuò)展頭封裝進(jìn)轉(zhuǎn)發(fā)報(bào)文,具體的如圖2示,基礎(chǔ)頭的格式,基礎(chǔ)頭包括擴(kuò)展頭數(shù)量信息,原始端口信息,原始芯片信息,轉(zhuǎn)發(fā)目的信息,報(bào)文優(yōu)先級(jí)信息,以及其他信息,其中,擴(kuò)展頭數(shù)量信息為5位(Bit)二進(jìn)制數(shù),原始端口為8位(Bit)二進(jìn)制數(shù),原始芯片為8位(Bit)二進(jìn)制數(shù),轉(zhuǎn)發(fā)目的信息為16位(Bit)二進(jìn)制數(shù),報(bào)文優(yōu)先級(jí)信息為4位(Bit)二進(jìn)制數(shù),其他信息為7位(Bit)二進(jìn)制數(shù),擴(kuò)展頭數(shù)量信息為5位(Bit)二進(jìn)制數(shù),表示基礎(chǔ)頭后能夠攜帶的擴(kuò)展頭數(shù)量,當(dāng)擴(kuò)展頭數(shù)量信息全為0時(shí)表示無擴(kuò)展頭,可變長堆疊頭最多支持31種擴(kuò)展頭,本發(fā)明所述的基礎(chǔ)頭信息共6個(gè)字節(jié)(Byte),對(duì)帶寬占用低,減小堆疊設(shè)備的開銷。
如圖3示,擴(kuò)展頭格式,所述擴(kuò)展頭包括擴(kuò)展頭類型,以及擴(kuò)展信息,所述擴(kuò)展頭以4字節(jié)(Byte)對(duì)齊,可根據(jù)不同的功能進(jìn)行編碼,編碼成支持不同功能的擴(kuò)展頭,如支持OAM功能的擴(kuò)展頭,支持CPU之間通信的擴(kuò)展頭,支持出方向編輯功能的擴(kuò)展頭,等等,并且,擴(kuò)展頭類型為5位二進(jìn)制數(shù),指示當(dāng)前4字節(jié)擴(kuò)展頭的類型,擴(kuò)展頭類型在擴(kuò)展頭中的位置固定不變,擴(kuò)展信息為27位二進(jìn)制數(shù),表示擴(kuò)展頭攜帶的信息。
如圖4示,重新編碼后的堆疊頭格式,重新堆疊頭的格式為基礎(chǔ)頭+擴(kuò)展頭1+擴(kuò)展頭2+……+擴(kuò)展頭n,報(bào)文轉(zhuǎn)發(fā)時(shí)將重新編碼后的堆疊頭與原始報(bào)文進(jìn)行重新封裝,封裝后轉(zhuǎn)發(fā)至目的堆疊設(shè)備。
一種堆疊設(shè)備,所述堆疊設(shè)備包括入方向處理模塊、堆疊頭編輯模塊,出方向處理模塊;
所述入方向處理模塊,對(duì)待轉(zhuǎn)發(fā)報(bào)文內(nèi)容進(jìn)行查找,獲得需要編碼進(jìn)堆疊頭的報(bào)文信息,對(duì)獲得的需要編碼進(jìn)堆疊頭的報(bào)文信息進(jìn)行分類解析,獲得基礎(chǔ)信息和擴(kuò)展信息;
所述堆疊頭編輯模塊,對(duì)所述基礎(chǔ)信息,以及擴(kuò)展信息進(jìn)行重新編碼,獲得基礎(chǔ)頭,以及擴(kuò)展頭,對(duì)獲得的基礎(chǔ)頭和擴(kuò)展頭組合成堆疊頭與原始報(bào)文進(jìn)行封裝;
所述出方向處理模塊,對(duì)封裝后的報(bào)文進(jìn)行查找轉(zhuǎn)發(fā)。
如圖5示,具體的,入方向處理模塊對(duì)進(jìn)入芯片的報(bào)文內(nèi)容進(jìn)行查找,獲得需要編碼進(jìn)堆疊頭的報(bào)文信息,并對(duì)報(bào)文信息進(jìn)行分類解析,獲得基礎(chǔ)信息和擴(kuò)展信息,其中,基礎(chǔ)信息是每個(gè)轉(zhuǎn)發(fā)報(bào)文時(shí)必須的,擴(kuò)展信息僅當(dāng)需要啟動(dòng)某些功能時(shí),才需要擴(kuò)展信息,所述基礎(chǔ)信息和擴(kuò)展信息送入至堆疊頭編輯模塊進(jìn)行進(jìn)一步處理。
所述堆疊頭編輯模塊對(duì)基礎(chǔ)信息和擴(kuò)展信息進(jìn)行重新編碼,獲得基礎(chǔ)頭和擴(kuò)展頭,其中,基礎(chǔ)頭是固定的,只有一個(gè),且基礎(chǔ)頭包括擴(kuò)展頭數(shù)量信息,原始端口信息,原始芯片信息,轉(zhuǎn)發(fā)目的信息,報(bào)文優(yōu)先級(jí)信息,以及其他信息,其中,擴(kuò)展頭數(shù)量信息為5位(Bit)二進(jìn)制數(shù),原始端口為8位(Bit)二進(jìn)制數(shù),原始芯片為8位(Bit)二進(jìn)制數(shù),轉(zhuǎn)發(fā)目的信息為16位(Bit)二進(jìn)制數(shù),報(bào)文優(yōu)先級(jí)信息為4位(Bit)二進(jìn)制數(shù),其他信息為7位(Bit)二進(jìn)制數(shù),擴(kuò)展頭數(shù)量信息為5位(Bit)二進(jìn)制數(shù),表示基礎(chǔ)頭后能夠攜帶的擴(kuò)展頭數(shù)量,當(dāng)擴(kuò)展頭數(shù)量信息全為0時(shí)表示無擴(kuò)展頭,可變長堆疊頭最多支持31種擴(kuò)展頭。
重新編碼后的堆疊頭格式,重新堆疊頭的格式為基礎(chǔ)頭+擴(kuò)展頭1+擴(kuò)展頭2+……+擴(kuò)展頭n,報(bào)文轉(zhuǎn)發(fā)時(shí)將重新編碼后的堆疊頭與原始報(bào)文進(jìn)行重新封裝,封裝后的報(bào)文進(jìn)入出方向處理模塊,所述出方向處理模塊根據(jù)對(duì)于堆疊頭的內(nèi)容進(jìn)行查找轉(zhuǎn)發(fā)。
本發(fā)明所述的可變長堆疊頭的實(shí)現(xiàn)方法及其設(shè)備能夠使堆疊頭長度可變,具有很強(qiáng)的擴(kuò)展性,并且基礎(chǔ)頭長度固定,在基礎(chǔ)場景下,能夠減少堆疊頭帶來的額外開銷。
本發(fā)明的技術(shù)內(nèi)容及技術(shù)特征已揭示如上,然而熟悉本領(lǐng)域的技術(shù)人員仍可能基于本發(fā)明的教示及揭示而作種種不背離本發(fā)明精神的替換及修飾,因此,本發(fā)明保護(hù)范圍應(yīng)不限于實(shí)施例所揭示的內(nèi)容,而應(yīng)包括各種不背離本發(fā)明的替換及修飾,并為本專利申請(qǐng)權(quán)利要求所涵蓋。