專利名稱:靈活實現(xiàn)cpu數(shù)據(jù)傳輸?shù)木W(wǎng)絡交換系統(tǒng)及cpu數(shù)據(jù)傳輸?shù)姆椒?br>
技術領域:
本
發(fā)明內(nèi)容
涉及網(wǎng)絡交換系統(tǒng),特別是靈活實現(xiàn)網(wǎng)絡交換系統(tǒng)中的系統(tǒng)CPU與網(wǎng)絡交換系統(tǒng)中的專用芯片(ASIC,Application SpecialIntegrated Circuit,特殊用途集成電路,或稱為特殊用途專用芯片,在本發(fā)明中統(tǒng)稱為“專用芯片”)之間的數(shù)據(jù)傳輸?shù)木W(wǎng)絡交換系統(tǒng)和方法。
背景技術:
通常,在一個網(wǎng)絡交換系統(tǒng)中,例如一個以太網(wǎng)交換機系統(tǒng)中,具有系統(tǒng)CPU和若干個專用芯片。一般來說,專用芯片與系統(tǒng)CPU之間的數(shù)據(jù)包(Packet)傳輸是通過CPU總線,例如PCI總線來完成的。但對于一個CPU而言,其所能支持的PCI總線的傳輸能力是有限的,這樣的傳輸方式實際上限制了系統(tǒng)CPU與專用芯片間的數(shù)據(jù)傳輸能力。
而且,PCI總線本身也存在帶寬有限的問題,且系統(tǒng)中很多元器件都在使用PCI總線來與系統(tǒng)CPU進行通訊,迫使專用芯片不得不與其他元器件競爭使用PCI總線,這也限制了系統(tǒng)CPU與專用芯片間的數(shù)據(jù)傳輸能力。
因此,盡管專用芯片和系統(tǒng)CPU都具有比較快的數(shù)據(jù)處理能力和傳輸能力,但目前,多數(shù)系統(tǒng)所使用的通過PCI總線在系統(tǒng)CPU與專用芯片之間傳輸數(shù)據(jù)的方法限制了兩者之間的數(shù)據(jù)傳輸能力,而且這種方法也非常不靈活。因此,有必要提供一種方法和相應的設備來實現(xiàn)網(wǎng)絡交換系統(tǒng)中的系統(tǒng)CPU與專用芯片之間的更快、更靈活的數(shù)據(jù)傳輸。
發(fā)明內(nèi)容本發(fā)明的目的在于提供一種不通過CPU總線、可以靈活實現(xiàn)系統(tǒng)CPU與專用芯片之間數(shù)據(jù)傳輸?shù)木W(wǎng)絡交換系統(tǒng),以及在該等網(wǎng)絡交換系統(tǒng)中進行數(shù)據(jù)傳輸?shù)姆椒?,且本發(fā)明支持多個CPU與多個專用芯片之間進行數(shù)據(jù)傳輸?shù)姆椒ā?br>
本發(fā)明所述的網(wǎng)絡交換系統(tǒng)包括一個或多個系統(tǒng)CPU,一個交換芯片,以及一個或多個專用芯片,該等專用芯片包括多個CPU數(shù)據(jù)傳輸隊列以及數(shù)據(jù)處理單元,其中,該等專用芯片還包括一傳輸處理單元,且所述的交換芯片分別連接上述的系統(tǒng)CPU以及上述的專用芯片。
上述系統(tǒng)CPU與現(xiàn)有技術中的系統(tǒng)CPU相同,對整個網(wǎng)絡交換機起到主控作用,亦具備相應的數(shù)據(jù)處理功能。
上述交換芯片用于完成上述一個或多個系統(tǒng)CPU與上述一個或多個專用芯片之間的數(shù)據(jù)傳輸,保證由專用芯片發(fā)往系統(tǒng)CPU的相關數(shù)據(jù)包可以被送至正確的系統(tǒng)CPU以及由系統(tǒng)CPU發(fā)往專用芯片的數(shù)據(jù)包也可以被傳送至正確的專用芯片。
上述傳輸處理單元用于將CPU傳輸隊列中的數(shù)據(jù)包讀出,并對該等數(shù)據(jù)包增加系統(tǒng)CPU的MAC地址;而且還將來自于系統(tǒng)CPU的數(shù)據(jù)包中包含的系統(tǒng)CPU的MAC地址去除,并將處理后的數(shù)據(jù)包傳送給所述專用芯片的下一數(shù)據(jù)處理單元。
上述每個CPU傳輸隊列在初始化過程中均已包含一個系統(tǒng)CPU的MAC地址,通過該MAC地址使得該CPU傳輸隊列與特定的系統(tǒng)CPU建立對應關系。在上述傳輸處理單元從該等CPU傳輸隊列中讀取數(shù)據(jù)包之后,該等CPU傳輸隊列包含的系統(tǒng)CPU的MAC地址,被上述傳輸處理單元增加到所讀取的數(shù)據(jù)包的目標地址域中,該等MAC地址決定該數(shù)據(jù)包被傳送至哪一個系統(tǒng)CPU。
在網(wǎng)絡交換系統(tǒng)中靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)姆椒?,包括專用芯片向系統(tǒng)CPU傳輸數(shù)據(jù)的方法,以及系統(tǒng)CPU向?qū)S眯酒瑐鬏敂?shù)據(jù)的方法,其中,專用芯片向系統(tǒng)CPU傳輸數(shù)據(jù)的方法包括下述步驟上述網(wǎng)絡交換系統(tǒng)中的所述傳輸處理單元從一個CPU傳輸隊列中讀取下一個待傳輸數(shù)據(jù)包;上述網(wǎng)絡交換系統(tǒng)中的所述傳輸處理單元將上述CPU傳輸隊列所包含的系統(tǒng)CPU的MAC地址增加到上述待傳輸數(shù)據(jù)包的目標地址域中,并將處理后的數(shù)據(jù)包傳輸給上述網(wǎng)絡交換系統(tǒng)中的所述交換芯片;上述交換芯片根據(jù)上述目標地址中包含的系統(tǒng)CPU的MAC地址將上述待傳輸數(shù)據(jù)包傳輸給相應的系統(tǒng)CPU。
在上述過程中,所述的傳輸處理單元是按照輪詢的方式依次從所述的多個CPU傳輸隊列中讀取下一個待傳輸數(shù)據(jù)。
在上述過程中,所述的傳輸處理單元是依照所述的多個CPU傳輸隊列本身的優(yōu)先級決定從哪一個CPU傳輸隊列中讀取下一個待傳輸數(shù)據(jù)。
其中,系統(tǒng)CPU向?qū)S眯酒瑐鬏敂?shù)據(jù)的方法包括下述步驟系統(tǒng)CPU形成待傳輸給專用芯片的數(shù)據(jù)包;系統(tǒng)CPU將上述待傳輸數(shù)據(jù)包傳輸給上述交換芯片;上述交換芯片根據(jù)從系統(tǒng)CPU接收到的上述數(shù)據(jù)包中的目標地址域?qū)⒃摂?shù)據(jù)包發(fā)送給上述網(wǎng)絡交換系統(tǒng)中的與該目標地址域?qū)膶S眯酒簧鲜鰧S眯酒乃鰝鬏斕幚韱卧獙⑸鲜鰯?shù)據(jù)包內(nèi)的源地址域中所包含的系統(tǒng)CPU的MAC地址去除,并將處理后的數(shù)據(jù)包傳送給上述專用芯片的下一處理單元。
在上述過程中,系統(tǒng)CPU所形成的待傳輸給專用芯片的數(shù)據(jù)包是基于對從專用芯片接收到的數(shù)據(jù)包進行處理后得到的,此時系統(tǒng)CPU將處理前的數(shù)據(jù)包的源地址域作為處理后的數(shù)據(jù)包的目標地址域,處理前的數(shù)據(jù)包的目標地址域作為處理后的數(shù)據(jù)包的源地址域。
在上述過程中,系統(tǒng)CPU所形成的待傳輸給專用芯片的數(shù)據(jù)包是系統(tǒng)CPU自行產(chǎn)生的,而不是基于對來自于專用芯片的數(shù)據(jù)包進行處理后的數(shù)據(jù)產(chǎn)生的。
在上述從系統(tǒng)CPU向?qū)S眯酒瑐鬏敂?shù)據(jù)的過程中以及相反的過程中,所述的交換芯片具備自動交換功能,其保證被傳輸?shù)臄?shù)據(jù)包根據(jù)其目標地址域中的地址傳輸至正確的設備。
本發(fā)明所提供的可以靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)木W(wǎng)絡交換系統(tǒng)設備以及在網(wǎng)絡交換系統(tǒng)中靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)姆椒ㄊ沟孟到y(tǒng)CPU和專用芯片可以直接進行數(shù)據(jù)傳輸,不需要再使用PCI總線,從而大大提高了兩者之間數(shù)據(jù)傳輸?shù)男?、速度和傳輸質(zhì)量。這種系統(tǒng)和相應的方法還可以支持多個CPU與多個專用芯片間的數(shù)據(jù)傳輸,這也是傳統(tǒng)的使用PCI總線的解決方案所不及的。
圖1是本發(fā)明所提供的可以靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)木W(wǎng)絡交換系統(tǒng)的系統(tǒng)示意圖。
圖2是一個系統(tǒng)CPU和一個專用芯片進行數(shù)據(jù)傳輸?shù)墓ぷ髟硎疽鈭D。
圖3是本發(fā)明所提供的網(wǎng)絡交換系統(tǒng)中多個專用芯片向多個系統(tǒng)CPU傳輸數(shù)據(jù)的工作原理示意圖。
圖4是本發(fā)明所提供的網(wǎng)絡交換系統(tǒng)中多個系統(tǒng)CPU向多個專用芯片傳輸數(shù)據(jù)的工作原理示意圖。
標號說明1、系統(tǒng)CPU2、交換芯片3、專用芯片31 據(jù)處理單元32CPU傳輸隊列 33傳輸處理單元4X、數(shù)據(jù)包的數(shù)據(jù)域41源地址域 42目標地址域 43至CPU的數(shù)據(jù)41′源地址域 42′目標地址域43′來自CPU的數(shù)據(jù)具體實施方式
參見圖1,是本發(fā)明的實施例一的系統(tǒng)示意圖。在該實施例中,多個系統(tǒng)CPU1與交換芯片2相連接,該交換芯片2又與多個專用芯片3相連接。專用芯片3包括數(shù)據(jù)處理單元31、多個CPU傳輸隊列32以及一傳輸處理單元33。其中,所述的傳輸處理單元33用于將專用芯片3內(nèi)部的各CPU傳輸隊列32中的待傳輸數(shù)據(jù)讀出,并將相應的CPU傳輸隊列32所附帶的系統(tǒng)CPU1的MAC地址增加到該等數(shù)據(jù)包的目標地址域中,形成新的數(shù)據(jù)包。經(jīng)過上述傳輸處理單元33處理后的新的數(shù)據(jù)包被通過交換芯片2傳輸給相應的系統(tǒng)CPU1。同時,上述傳輸處理單元33還將來自于某一個系統(tǒng)CPU1的數(shù)據(jù)包中所包含的系統(tǒng)CPU的MAC地址去除,經(jīng)過該等處理后的數(shù)據(jù)包被所述專用芯片2的下一處理單元繼續(xù)處理。
在本實施例中,上述數(shù)據(jù)處理單元31是一個或多個處理單元的統(tǒng)稱,其按照現(xiàn)有技術對數(shù)據(jù)包進行常規(guī)處理,本領域的技術人員結(jié)合現(xiàn)有技術均了解其用途以及實現(xiàn)方式。
在本實施例中,各CPU傳輸隊列32在初始化時已經(jīng)包含了某一個系統(tǒng)CPU的MAC地址,該CPU傳輸隊列中的數(shù)據(jù)包即被傳送到該CPU傳輸隊列附帶的系統(tǒng)CPU的MAC地址對應的系統(tǒng)CPU中。
在與本實施例類似的其他實施例中,上述各CPU傳輸隊列32所包含的CPU的MAC地址也可以是在系統(tǒng)運行過程中由專用芯片32內(nèi)的控制單元動態(tài)更改,這樣的話,則要求標識系統(tǒng)CPU的MAC地址的信息位可以被動態(tài)更改。這樣的實施例更具靈活性。
參見圖2,是本發(fā)明的實施例二。與實施例一不同的是,在本實施例中,只有一個系統(tǒng)CPU 1和一個專用芯片3。由于只有一個系統(tǒng)CPU和一個專用芯片,因此,該專用芯片可以直接通過物理連接將數(shù)據(jù)包傳輸給系統(tǒng)CPU,反之亦然。因此,就不再需要實施例一中包含的交換芯片2,而只需將該系統(tǒng)CPU與該專用芯片直接連接即可實現(xiàn)本發(fā)明所提供的系統(tǒng)。相應地,由于只有一個系統(tǒng)CPU1,所以專用芯片3中的各CPU傳輸隊列32的數(shù)據(jù)包均只能傳送給該系統(tǒng)CPU,因此,在本實施例中,各CPU傳輸隊列32所包含的系統(tǒng)CPU的MAC地址均為該系統(tǒng)CPU1的地址。
參見圖2,在其上半部分,即由從右向左的箭頭標示的部分,其描述了本實施例中專用芯片3將數(shù)據(jù)包傳輸給系統(tǒng)CPU1的過程。由專用芯片3傳輸給系統(tǒng)CPU1的數(shù)據(jù)包經(jīng)過專用芯片3內(nèi)部的數(shù)據(jù)處理單元31處理后被送至序號為6的CPU傳輸隊列32中排隊。專用芯片3內(nèi)的傳輸處理單元33將序號為6的CPU傳輸隊列32中的下一個待傳輸數(shù)據(jù)包讀出,并將該CPU傳輸隊列32所附帶的系統(tǒng)CPU的MAC地址增加到該數(shù)據(jù)包的目標地址(DA,Destination Address)域42中,然后該數(shù)據(jù)包根據(jù)該目標地址域42中的CPU的MAC地址被傳送給系統(tǒng)CPU1。如上所述,由于只有一個系統(tǒng)CPU1,專用芯片內(nèi)部的所有CPU傳輸隊列32所附帶的CPU的MAC地址均是該系統(tǒng)CPU的MAC地址。因此,該數(shù)據(jù)包必然被傳輸?shù)较到y(tǒng)CPU1。此時,被傳輸數(shù)據(jù)包的源地址(SA,Source Address)域41即標明該專用芯片3,目標地址域即標明該系統(tǒng)CPU1。
在上述專用芯片3將數(shù)據(jù)包傳輸給系統(tǒng)CPU1的過程中,專用芯片3主動讀取專用芯片3內(nèi)部的各CPU傳輸隊列32中的數(shù)據(jù)包,并主動傳送給系統(tǒng)CPU1。該點與現(xiàn)有技術中由系統(tǒng)CPU1通過PCI總線讀取數(shù)據(jù)有所不同,能大大提高數(shù)據(jù)在系統(tǒng)CPU與專用芯片間傳輸?shù)男省?br>
參見圖2,在其下半部分,即由從左向右的箭頭標示的部分,其描述了實施例二中系統(tǒng)CPU1向?qū)S眯酒?傳輸數(shù)據(jù)包的過程。系統(tǒng)CPU1形成待傳輸數(shù)據(jù)包后,將該數(shù)據(jù)包傳輸給專用芯片3。該數(shù)據(jù)包的源地址域42′中包括系統(tǒng)CPU1的MAC地址,該數(shù)據(jù)包的目標地址域41′即指向?qū)S眯酒?。專有芯片3的傳輸處理單元33首先將接收到的數(shù)據(jù)包的源地址域42′中包含的系統(tǒng)CPU1的MAC地址去除,然后再由數(shù)據(jù)處理單元31對其按照常規(guī)方式進行處理。
在上述過程中,數(shù)據(jù)處理單元31對被傳輸處理單元33去除數(shù)據(jù)包中包含的系統(tǒng)CPU的MAC地址后的數(shù)據(jù)包進行的處理是一種常規(guī)方式的處理,即普通的網(wǎng)絡交換系統(tǒng)中的普通專用芯片對數(shù)據(jù)包進行處理的普通方式,本領域的技術人員結(jié)合現(xiàn)有技術可以理解并可以實現(xiàn)該等常規(guī)方式的處理過程。
結(jié)合上述描述可見,可以把實施例二理解為本發(fā)明的一個特例,即本發(fā)明存在n個系統(tǒng)CPU和m個專用芯片,而在實施例二中,恰恰是“n=m=1”的情況。
參考圖3、圖4,其共同描述了圖1所示的實施例一中由多個專用芯片3向多個系統(tǒng)CPU1傳輸數(shù)據(jù)包的過程,以及多個系統(tǒng)CPU1向多個專用芯片3傳輸數(shù)據(jù)包的過程。
參考圖3,其描述了由多個專用芯片3向多個系統(tǒng)CPU1傳輸數(shù)據(jù)包的過程。如圖1所示,本實施例中包括多個專用芯片3和多個系統(tǒng)CPU1,相應地存在一個交換芯片2,用于連接多個專用芯片3和多個系統(tǒng)CPU1。所述第0~n個專用芯片3中的傳輸處理單元33各自獨立地工作,其從所在專用芯片3中的各CPU傳輸隊列32中讀取下一個待傳輸數(shù)據(jù)包,然后將該CPU傳輸隊列32所附帶的CPU的MAC地址增加到該數(shù)據(jù)包的目標地址域中,形成新的數(shù)據(jù)包;接著,被處理后的新的數(shù)據(jù)包被專用芯片3的傳輸處理單元33傳送給交換芯片2;交換芯片2根據(jù)接收到的數(shù)據(jù)包中包含的目標地址域中包含的系統(tǒng)CPU的MAC地址將該數(shù)據(jù)包傳送給對應的系統(tǒng)CPU。
此時,被傳輸數(shù)據(jù)包的目標地址域標明某一系統(tǒng)CPU,例如系統(tǒng)CPU3,源地址域即標明數(shù)據(jù)包來源的專用芯片,例如ASIC1。
與圖2所示實施例不同的是,專用芯片3中的CPU傳輸隊列所附帶的系統(tǒng)CPU的MAC地址不再相同,而是分別對應不同的系統(tǒng)CPU。在本實施例中,共有2個系統(tǒng)CPU,4專用芯片,每個專用芯片中有8個CPU傳輸隊列,每個專用芯片的0~3個CPU傳輸隊列附帶的MAC地址對應系統(tǒng)CPU1,每個專用芯片的4~7個CPU傳輸隊列附帶的MAC地址對應系統(tǒng)CPU2。而在與本實施例類似的其他實施例中,則有3個系統(tǒng)CPU,8個專用芯片,第0~3個專用芯片有4個CPU傳輸隊列,第4~7個專用芯片有6個CPU傳輸隊列,在該實施例中,第0~2個專用芯片的序號為0的CPU傳輸隊列對應序號為0的系統(tǒng)CPU,序號為1的CPU傳輸隊列對應序號為1的系統(tǒng)CPU,序號為2、3的CPU傳輸隊列均對應序號為2的系統(tǒng)CPU;而序號為3的專用芯片的前兩個CPU傳輸隊列對應于序號為0的系統(tǒng)CPU,后兩個CPU傳輸隊列對應于序號為2的系統(tǒng)CPU;第4~7個專用芯片的前三個CPU傳輸隊列對應于序號為0的系統(tǒng)CPU,接下來的兩個CPU傳輸隊列對應于序號為1的系統(tǒng)CPU,最后一個CPU傳輸隊列對應于序號為2的系統(tǒng)CPU。上述的某CPU傳輸隊列對應于某序號的系統(tǒng)CPU,即該CPU傳輸隊列所包含的系統(tǒng)CPU的MAC地址為該系統(tǒng)CPU的地址。
參考圖4,其描述了多個系統(tǒng)CPU1將數(shù)據(jù)包傳輸給多個專用芯片3的具體過程。同樣,各系統(tǒng)CPU1獨立工作,并形成將要傳輸給某專用芯片3的數(shù)據(jù)包;系統(tǒng)CPU1將數(shù)據(jù)包傳輸給交換芯片2,交換芯片2根據(jù)接收到的數(shù)據(jù)包內(nèi)包含的目標地址域中的信息將數(shù)據(jù)包傳輸給該等信息所對應的專用芯片3;該等專用芯片3接收到該數(shù)據(jù)包后,由專用芯片3中的傳輸處理單元33將該數(shù)據(jù)包內(nèi)的源地址域中包含的系統(tǒng)CPU的MAC地址去除;經(jīng)過處理后的數(shù)據(jù)包由專用芯片3中的數(shù)據(jù)處理單元33按照常規(guī)處理方式繼續(xù)處理。
與針對實施例二描述的過程相類似,上述的“按照常規(guī)方式的處理”,即普通的網(wǎng)絡交換系統(tǒng)中的普通專用芯片對數(shù)據(jù)包進行處理的普通方式,本領域的技術人員結(jié)合現(xiàn)有技術可以理解并可以實現(xiàn)該等常規(guī)方式的處理過程。
在上述實施例一、實施例二中,系統(tǒng)CPU形成的待傳輸數(shù)據(jù)包的來源可能有兩種方式。第一,即系統(tǒng)CPU將來自于專用芯片的數(shù)據(jù)包進行處理后,將處理結(jié)果作為待傳輸數(shù)據(jù)包傳輸給專用芯片,此時,待傳輸數(shù)據(jù)包的目標地址域的信息即被系統(tǒng)CPU處理前的數(shù)據(jù)包的源地址域,即某個專用芯片的地址,而待傳輸數(shù)據(jù)包的源地址域即被系統(tǒng)CPU處理前的數(shù)據(jù)包的目標地址域,即包含系統(tǒng)CPU的MAC地址的信息。這種方式,使得數(shù)據(jù)包的處理結(jié)果可以被正確地返回給該數(shù)據(jù)包的發(fā)送者,即將其發(fā)送給該系統(tǒng)CPU的那個專用芯片。第二種方式,即系統(tǒng)CPU形成一個新的數(shù)據(jù)包并發(fā)送給專用芯片,此時,該數(shù)據(jù)包與該系統(tǒng)CPU所曾經(jīng)接收并處理的專用芯片的數(shù)據(jù)包沒有直接的關系。
在圖3、圖4所示的實施例一中,由于交換芯片2本身具有自動交換功能,因此其可以根據(jù)數(shù)據(jù)包中的目標地址域?qū)⒃摂?shù)據(jù)包傳送到相應的目的地。當數(shù)據(jù)包由多個系統(tǒng)CPU向多個專用芯片傳輸時,交換芯片2使得數(shù)據(jù)包可以被正確地傳送到相應的專用芯片,反之亦然。
在本發(fā)明中,對于交換芯片而言,其只要具備自動交換功能即可用于一個具體的實施例中。這樣的產(chǎn)品有很多,例如可以選擇Marvell GalNet-2GT-48304 G.Link Crossbar,也可以選擇Marvell Prestera-FX9210 12-PortCrossbar Switch Fabric或者Broadcom BCM5675等等。
在本發(fā)明的其他實施例中,上述交換芯片2還可以是多個,此時,多個交換芯片構成一個交換矩陣,共同完成實施例一中的交換芯片的功能。在一個實施例中,存在2個交換芯片,則部分專用芯片連接到第1個交換芯片,剩余專用芯片則連接到第2個交換芯片上,類似地,各系統(tǒng)CPU也分別連接到兩個交換芯片上。在與圖3、圖4類似的傳輸過程中,則兩個交換芯片互相配合完成數(shù)據(jù)包的自動交換。在這樣的實施例中,本領域的技術人員可以參考實施例一、實施例二實現(xiàn)本實施例。同時,在本實施例中,兩個交換芯片采用同種型號的交換芯片,即Marvell GalNet-2GT-48304 G.Link Crossbar;而在與本實施例類似的其他實施例中,兩個交換芯片采用不同型號的,即分別采用Marvell Prestera-FX9210 12-PortCrossbar Switch Fabric和Broadcom BCM5675。在與本實施例類似的其他實施例中,所需要交換芯片的數(shù)目實際根據(jù)專用芯片和系統(tǒng)CPU的數(shù)量以及交換芯片的交換能力而定。一般而言,實施例一中所描述的一個交換芯片的情況即可以滿足系統(tǒng)需要。
在本發(fā)明的其他實施例中,存在只有一個系統(tǒng)CPU、多個專用芯片的情況。在該實施例中,仍然需要1個或多個交換芯片,但各專用芯片中的各CPU傳輸隊列所包含的系統(tǒng)CPU的MAC地址則與實施例二相類似,即均是該唯一一個系統(tǒng)CPU的地址。關于本實施例的系統(tǒng)組成以及數(shù)據(jù)傳輸過程,本領域的技術人員可以參照實施例一、實施例二予以實現(xiàn),不再贅述。
在上述各實施例中所描述的專用芯片3的傳輸處理單元33從上述CPU傳輸隊列中讀取數(shù)據(jù)包之前,該等數(shù)據(jù)包由上述專用芯片3的數(shù)據(jù)處理單元31寫入CPU傳輸隊列32中,這個過程與現(xiàn)有網(wǎng)絡交換系統(tǒng)中的專用芯片所進行的處理過程是一致的,本領域的技術人員均了解其實現(xiàn)原理以及具體處理方式,在此不再贅述。
在本發(fā)明中,對于專用芯片,其是通過本發(fā)明在通常所用的專用芯片基礎上做出的發(fā)明創(chuàng)造而得到的,而這些“通常所用的專用芯片”只要具備一定的功能,且在所述的網(wǎng)絡交換系統(tǒng)中需要使用該功能,那么其就可以在本系統(tǒng)中被采用,從而可以借助本系統(tǒng)所述在其與系統(tǒng)CPU靈活地完成數(shù)據(jù)包的傳輸。
盡管本發(fā)明已經(jīng)以如上所述的優(yōu)選實施例予以說明,但上述實施例并非用來限定本發(fā)明,任何對該領域熟悉的技術人員,根據(jù)本發(fā)明的設計思想、具體發(fā)明內(nèi)容以及實施例的啟示,應該可以各種改動和調(diào)整,而通過這些改動和調(diào)整所得到的新的內(nèi)容應被本發(fā)明內(nèi)容所涵蓋。
權利要求
1.可以靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)木W(wǎng)絡交換系統(tǒng),包括一個或多個系統(tǒng)CPU(1),一個或多個專用芯片(3),包括多個的CPU數(shù)據(jù)傳輸隊列(32)以及數(shù)據(jù)處理單元(31),以及一交換芯片(2),用于完成上述一個或多個系統(tǒng)CPU(1)與上述一個或多個專用芯片(3)之間的數(shù)據(jù)傳輸,其特征在于所述的交換芯片(2)分別連接所述的系統(tǒng)CPU(1)以及所述的專用芯片(3),且所述專用芯片(3)還包括一傳輸處理單元(33),該單元(33)從所述CPU傳輸隊列(32)中讀取數(shù)據(jù)包,對數(shù)據(jù)包增加系統(tǒng)CPU(1)的MAC地址;該單元(33)還將來自于系統(tǒng)CPU的數(shù)據(jù)包中包含的系統(tǒng)CPU(1)的MAC地址去除。
2.如權利要求1所述的網(wǎng)絡交換系統(tǒng),其特征在于,所述專用芯片的每個CPU傳輸隊列(33)都包含一個系統(tǒng)CPU(1)的MAC地址。
3.如權利要求1所述的網(wǎng)絡交換系統(tǒng),其特征在于,數(shù)據(jù)包從專用芯片(3)向系統(tǒng)CPU(1)傳輸?shù)倪^程中,所述的傳輸處理單元(33)將CPU傳輸隊列(33)所包含的系統(tǒng)CPU(1)的MAC地址增加到該數(shù)據(jù)包的目標地址域中。
4.如權利要求1所述的網(wǎng)絡交換系統(tǒng),其特征在于,數(shù)據(jù)包從系統(tǒng)CPU(1)向?qū)S眯酒?3)傳輸?shù)倪^程中,所述的傳輸處理單元(33)將數(shù)據(jù)包中的源地址域中所包含的系統(tǒng)CPU(1)的MAC地址去除。
5.如權利要求1所述的網(wǎng)絡交換系統(tǒng),其特征在于,所述的交換芯片(2)可以是多個。
6.在權利要求1所提供的網(wǎng)絡交換系統(tǒng)中所使用的靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)姆椒?,包括專用芯?3)向系統(tǒng)CPU(1)傳輸數(shù)據(jù)的方法,以及系統(tǒng)CPU(1)向?qū)S眯酒?3)傳輸數(shù)據(jù)的方法,其特征在于,所述專用芯片(3)向系統(tǒng)CPU(1)傳輸數(shù)據(jù)的方法包括下述步驟所述專用芯片(3)中的傳輸處理單元(33)從所述專用芯片(3)中的一個CPU傳輸隊列(32)中讀取下一個待傳輸數(shù)據(jù)包;所述傳輸處理單元(33)將所述的CPU傳輸隊列(32)所包含的系統(tǒng)CPU(1)的MAC地址增加到所述待傳輸數(shù)據(jù)包的目標地址域中,并將處理后的數(shù)據(jù)包傳輸給所述網(wǎng)絡交換系統(tǒng)中的交換芯片(2);所述交換芯片(2)根據(jù)所述數(shù)據(jù)包中的目標地址域所包含的系統(tǒng)CPU(1)的MAC地址將所述數(shù)據(jù)包傳輸給相應的系統(tǒng)CPU(1);其特征還在于,系統(tǒng)CPU(1)向?qū)S眯酒?3)傳輸數(shù)據(jù)的方法包括下述步驟系統(tǒng)CPU(1)形成待傳輸給專用芯片(3)的數(shù)據(jù)包;系統(tǒng)CPU(3)將上述待傳輸數(shù)據(jù)包傳輸給上述交換芯片(2);所述交換芯片(2)根據(jù)從系統(tǒng)CPU(1)接收到的所述數(shù)據(jù)包中的目標地址域?qū)⑺鰯?shù)據(jù)包發(fā)送給與該目標地址域?qū)膶S眯酒?3);所述專用芯片(3)的傳輸處理單元(33)將所述數(shù)據(jù)包的源地址域所包含的系統(tǒng)CPU(1)的MAC地址去除,并將處理后的數(shù)據(jù)包傳送給所述專用芯片(3)的下一處理單元。
7.如權利要求6所述的靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,所述的系統(tǒng)CPU(1)所形成的待傳輸給專用芯片(3)的數(shù)據(jù)包是基于對從專用芯片(3)接收到的數(shù)據(jù)包進行處理后得到的。
8.如權利要求6所述的靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,所述的系統(tǒng)CPU(1)所形成的待傳輸給專用芯片(3)的數(shù)據(jù)包是系統(tǒng)CPU(1)自行產(chǎn)生的。
9.如權利要求6所述的靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,所述傳輸處理單?33)按照輪詢方式從所述專用芯片(3)中的一個CPU傳輸隊列(32)中讀取下一個待傳輸數(shù)據(jù)包。
10.如權利要求6所述的靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,所述傳輸處理單?33)按照優(yōu)先級從所述專用芯片(3)中的優(yōu)先級最高的CPU傳輸隊列(32)中讀取下一個待傳輸數(shù)據(jù)包。
全文摘要
靈活實現(xiàn)CPU數(shù)據(jù)傳輸?shù)木W(wǎng)絡交換系統(tǒng),包括一個或多個系統(tǒng)CPU,交換芯片,一個或多個專用芯片,其特征在于專用芯片中還包括一傳輸處理單元,系統(tǒng)CPU與專用芯片通過交換芯片相連接并傳輸數(shù)據(jù)。傳輸處理單元將數(shù)據(jù)包從CPU傳輸隊列中讀出并對數(shù)據(jù)包進行增加MAC地址的處理后將數(shù)據(jù)包通過交換芯片傳輸給系統(tǒng)CPU,從而使得系統(tǒng)CPU和專用芯片可以直接進行數(shù)據(jù)傳輸,不再使用PCI總線。大大提高了兩者之間數(shù)據(jù)傳輸?shù)男?、速度和傳輸質(zhì)量。本發(fā)明還提供了與上述系統(tǒng)相對應的靈活的數(shù)據(jù)傳輸方法。
文檔編號H04L12/56GK1959656SQ20051011938
公開日2007年5月9日 申請日期2005年11月2日 優(yōu)先權日2005年11月2日
發(fā)明者孫劍勇, 熊波, 鄭曉陽, 古陶 申請人:盛科網(wǎng)絡有限公司