專利名稱:一種空分交換設(shè)備及信元交換方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)通信領(lǐng)域,尤其涉及一種帶仲裁的空分交換設(shè)備及信元交換方法。
背景技術(shù):
交換網(wǎng)(Switch Fabric)是路由器中的核心模塊,用于完成多個(gè)端口之間包或信元的交換,即把到達(dá)輸入端口的信元交換至相應(yīng)的輸出端口。如圖1所示,為一個(gè)比較典型的路由器結(jié)構(gòu),交換網(wǎng)的功能由位于線卡(Line Card)上的隊(duì)列管理設(shè)備(Queue Management)和交換網(wǎng)卡(Fabric Card)上的交換設(shè)備(FabricDevice)共同完成。在入口方向上,把從本線卡所進(jìn)來的信元進(jìn)行虛擬輸出排隊(duì)(Virtual Output Queuing,VOQ),并及早送至相應(yīng)的交換設(shè)備上去完成交換;在下行方向上,隊(duì)列管理設(shè)備再次對(duì)信元按輸出端口進(jìn)行排隊(duì),保證信元在保證合適的業(yè)務(wù)質(zhì)量(QoS)前提下發(fā)送到相應(yīng)端口。交換網(wǎng)卡上的一個(gè)或多個(gè)交換設(shè)備(Fabric Device)完成各線卡之間流量的交換功能,即負(fù)責(zé)有效地把各線卡的流量交換至目的線卡上。
圖2為目前采用共享緩存結(jié)構(gòu)的一種交換設(shè)備,在工作時(shí)由線卡把所有的信元盡快地轉(zhuǎn)發(fā)到交換設(shè)備上,在交換設(shè)備上緩存這些信元,并把所有的信元按端口和優(yōu)先級(jí)進(jìn)行排隊(duì),由調(diào)度器對(duì)這些隊(duì)列進(jìn)行調(diào)度,在保證業(yè)務(wù)質(zhì)量(QoS)的前提下把信元交換至目的線卡。
采用這種方案的缺點(diǎn)是由于采用集中的共享緩存交換,需要較大容量的共享緩存,而且所需的緩存RAM帶寬很大。例如,一個(gè)支持16個(gè)10Gbps端口的共享緩存交換設(shè)備,由于每個(gè)信元都需寫入共享緩存,也需讀出共享緩存,因此所需的讀寫帶寬至少為16×10Gbps×2=320Gbps,這是用目前的主流半導(dǎo)體工藝很難達(dá)到的。這也就意味著采用這種結(jié)構(gòu)很難把容量做大。另外,采用集中的共享緩存,需要在芯片內(nèi)集成大容量的RAM,也就使得這種設(shè)備的生產(chǎn)成本和功耗都很高。
發(fā)明內(nèi)容
本發(fā)明的目的在于針對(duì)現(xiàn)有技術(shù)的不足,提供一種空分交換設(shè)備及信元交換方法,以解決現(xiàn)有技術(shù)中存在對(duì)信元緩存容量需求大,功耗和成本高的問題。
為解決上述問題,本發(fā)明提供如下技術(shù)方案一種交換信元的方法,由交換設(shè)備將多個(gè)輸入端口的信元交換到相應(yīng)的輸出端口;其特征在于該方法包括如下步驟從各待交換信元的信元頭中獲取關(guān)于信元需要交換到的目的端口的相關(guān)信息;根據(jù)各相關(guān)信息產(chǎn)生仲裁結(jié)果,該仲裁結(jié)果包含將各輸入端口信元交換到指定輸出端口的信息;依據(jù)各仲裁結(jié)果調(diào)度相應(yīng)的信元到所述交換設(shè)備的輸入端口;和利用仲裁結(jié)果控制交換設(shè)備將輸入端口的信元交換到指定的輸出端口。
根據(jù)上述方法在一個(gè)信元周期內(nèi)產(chǎn)生一組仲裁結(jié)果,該仲裁結(jié)果在經(jīng)過一個(gè)或多個(gè)信元周期的延時(shí)后用于控制所述交換設(shè)備完成信元交換。
將所述仲裁結(jié)果插入信元頭的字段中并發(fā)回給各隊(duì)列管理設(shè)備,隊(duì)列管理設(shè)備依據(jù)信元頭的仲裁結(jié)果調(diào)度信元到交換設(shè)備的響應(yīng)端口。
在發(fā)回給各隊(duì)列管理設(shè)備的信元頭中還加入同步時(shí)標(biāo),隊(duì)列管理設(shè)備將該同步時(shí)標(biāo)附加在根據(jù)該信元頭中的仲裁結(jié)果調(diào)度到交換設(shè)備的信元中,交換設(shè)備根據(jù)各輸入端口信元中的同步時(shí)標(biāo)實(shí)現(xiàn)信元同步。
在交換信元之前,將該信元的信元頭中的同步時(shí)標(biāo)與當(dāng)前用來控制交換設(shè)備的仲裁結(jié)果所對(duì)應(yīng)的時(shí)標(biāo)進(jìn)行比較,并在兩者不相符時(shí)報(bào)告配置錯(cuò)誤;和/或?qū)⑿旁^中的目的端口與當(dāng)前用來控制交換設(shè)備的仲裁結(jié)果中的目的端口進(jìn)行比較,并在兩者不相符時(shí)報(bào)告配置錯(cuò)誤。
一種空分交換設(shè)備,該設(shè)備包括交換矩陣模塊,具有復(fù)數(shù)個(gè)輸入端和對(duì)應(yīng)的輸出端,該模塊將各輸入端進(jìn)來的信元交換至相應(yīng)的輸出端;復(fù)數(shù)個(gè)輸入處理模塊,各模塊的輸出端分別與交換矩陣的一個(gè)輸入端連接,該模塊從接收的信元中提取信元頭信息,并將信元同步后輸出到交換矩陣;仲裁模塊,與各輸入處理模塊連接,根據(jù)信元頭信息中的請(qǐng)求信息產(chǎn)生用于交換信元的仲裁結(jié)果;交換配置模塊,與仲裁模塊和交換矩陣模塊連接,將仲裁模塊輸出的仲裁結(jié)果配置所述交換矩陣模塊進(jìn)行信元交換;復(fù)數(shù)個(gè)輸出處理模塊,各模塊分別與交換矩陣模塊的一個(gè)輸出端和分別與仲裁器模塊連接。
所述空分交換設(shè)備還包括路由檢查模塊,與所述交換配置模塊、各輸入處理模塊和各輸出處理模塊連接,用于對(duì)即將交換的各信元進(jìn)行路由檢查和有效性檢查。
一種交換系統(tǒng),包括用于調(diào)度信元的上行管理隊(duì)列和下行管理隊(duì)列以及復(fù)數(shù)個(gè)如上所述的空分交換設(shè)備;所述上行管理隊(duì)列和下行管理隊(duì)列均為復(fù)數(shù)個(gè),各上行管理隊(duì)列分別與各空分交換設(shè)備中的一個(gè)輸入處理模塊連接,各下行管理隊(duì)列分別與各空分交換設(shè)備中的一個(gè)輸出處理模塊連接。
本發(fā)明具有以下有益效果1、本發(fā)明采用一個(gè)大的空分交換矩陣來實(shí)現(xiàn)信元交換,在進(jìn)行信元交換時(shí)不需大容量的信元緩存,不需要在設(shè)備內(nèi)進(jìn)行排隊(duì),使得實(shí)現(xiàn)非常簡(jiǎn)單,容易把單片的端口數(shù)和容量做大。
2、采用本發(fā)明的空分交換設(shè)備作為交換網(wǎng)的核心時(shí),可以靈活采用一個(gè)或多個(gè)這種交換設(shè)備,結(jié)合線卡上的隊(duì)列管理設(shè)備,實(shí)現(xiàn)各種不同容量的交換系統(tǒng);在需要擴(kuò)展時(shí),可以通過增加空分交換設(shè)備的個(gè)數(shù)和增加空分交換設(shè)備的端口數(shù)來實(shí)現(xiàn),因此,其組網(wǎng)的靈活性和擴(kuò)展性非常好。
3、本發(fā)明中從仲裁完成到仲裁結(jié)果用于配置交換矩陣的延時(shí)可調(diào),因而各隊(duì)列管理設(shè)備之間可完全異步,使系統(tǒng)對(duì)空分交換設(shè)備和隊(duì)列管理設(shè)備之間的延時(shí)要求不高,使系統(tǒng)設(shè)計(jì)變得容易。
圖1是現(xiàn)有技術(shù)中典型的路由器結(jié)構(gòu)示意圖;圖2是現(xiàn)有技術(shù)中共享緩存的交換設(shè)備的結(jié)構(gòu)示意圖;圖3是本發(fā)明帶空分交換設(shè)備的結(jié)構(gòu)示意圖;圖4是本發(fā)明交換矩陣的結(jié)構(gòu)示意圖;圖5是本發(fā)明交換配置模塊的結(jié)構(gòu)示意圖;圖6是本發(fā)明替代方案的交換配置模塊的結(jié)構(gòu)示意圖;圖7是本發(fā)明空分交換設(shè)備的系統(tǒng)應(yīng)用原理圖。
具體實(shí)施例方式
如圖3所示,本發(fā)明的空分交換設(shè)備包括交換矩陣模塊SMX、復(fù)數(shù)個(gè)輸入處理模塊IP、仲裁模塊ARB、交換配置模塊CFG、路由檢測(cè)模塊RCK、復(fù)數(shù)個(gè)輸出處理模塊OP。其中具有復(fù)數(shù)個(gè)輸入端和對(duì)應(yīng)輸出端的交換矩陣模塊SMX是一個(gè)無阻塞的空分交換矩陣,該矩陣用于將各輸入端進(jìn)來的信元交換至相應(yīng)的輸出端;其輸出端分別與交換矩陣的一個(gè)輸入端連接的各輸入處理模塊IP,用于從接收的信元中提取信元頭信息,并將信元輸出到交換矩陣;與各輸入處理模塊連接的仲裁模塊ARB,可根據(jù)信元頭信息中的請(qǐng)求信息產(chǎn)生用于交換信元的仲裁結(jié)果;與仲裁模塊和交換矩陣模塊連接的交換配置模塊CFG,用于將仲裁模塊輸出的仲裁結(jié)果轉(zhuǎn)換成交換矩陣的配置信息,并加以緩存;與交換配置模塊、各輸入處理模塊和各輸出處理模塊分別連接的路由檢查模塊,用于對(duì)即將交換的各信元進(jìn)行路由檢查和有效性檢查;與交換矩陣模塊的一個(gè)輸出端和仲裁模塊分別連接的各輸出處理模塊OP用于輸出交換后的信元信息并將仲裁結(jié)果附加在信元頭中送出。
如圖4所示,所述的交換矩陣模塊包括復(fù)數(shù)個(gè)具有多路輸入和單路輸出的選擇器,各選擇器的其中一個(gè)輸入端與一個(gè)輸入處理模塊相連,并且該輸入端還分別與其他選擇器的一個(gè)輸入端連接。
另外,本實(shí)施例還提供了兩種可供替換的交換配置模塊的結(jié)構(gòu)如圖5所示,交換配置模塊包括復(fù)數(shù)個(gè)存儲(chǔ)單元(即圖中的8個(gè)配置信息模塊),用于緩存仲裁結(jié)果;選擇器1,具有一路輸入和多路輸出,用于選擇復(fù)數(shù)個(gè)存儲(chǔ)單元中的一個(gè)存儲(chǔ)單元存儲(chǔ)仲裁模塊輸出的仲裁結(jié)果;選擇器2,具有多路輸入和一路輸出,用于從復(fù)數(shù)個(gè)存儲(chǔ)單元中選擇一個(gè)存儲(chǔ)單元輸出仲裁結(jié)果。
每個(gè)信元仲裁出來的仲裁結(jié)果轉(zhuǎn)換成交換矩陣配置信息(選擇信號(hào))所需的格式,并由選擇器1按當(dāng)前信元周期的LOCAL_SYNC_TS(同步時(shí)標(biāo))將其存入8個(gè)配置信息塊中的一塊;在讀出信息用于配置交換矩陣時(shí),再由選擇器2根據(jù)LOCAL_SYNC_TS-q(延時(shí))來選取一組配置信息,用于配置交換矩陣。
如圖6所示,交換配置模塊包括復(fù)數(shù)個(gè)移位寄存器(本例中為8個(gè),但不限于8個(gè)),用于緩存仲裁器模塊輸出的仲裁結(jié)果;具有多路輸入和單路輸出的選擇器,各移位寄存器分別與選擇器一個(gè)輸入端連接,該選擇器從所述復(fù)數(shù)個(gè)移位寄存器中選擇一個(gè)寄存器的信息輸出。
圖6中,從仲裁器出來的仲裁結(jié)果固定存入移位寄存器CFG0,以后每個(gè)信元周期,各仲裁結(jié)果組的信息實(shí)現(xiàn)移位,即CFG0移入CFG1,CFG1移入CFG2,...,送往交換矩陣的配置信息則通過一個(gè)選擇器來選擇,這里用信號(hào)q來做選擇器的選擇信號(hào)即可。
仲裁結(jié)果轉(zhuǎn)換成交換矩陣配置信息可以在選擇單元之前就用其余模塊轉(zhuǎn)換,也可以在選擇單元內(nèi)完成,或在存儲(chǔ)單元的接口處均可。
上述空分交換設(shè)備可完成n個(gè)端口到n個(gè)端口的信元空分交換。為了陳述方便,后續(xù)說明假設(shè)n為16,其實(shí),n可以為比16大得多的數(shù),如32,64,128等,都能在目前的半導(dǎo)體工藝下實(shí)現(xiàn)。以下對(duì)交換信元的過程進(jìn)行說明。
送入空分交換設(shè)備的信元是定長(zhǎng)的,除了凈荷(Payload)外,還包括一些完成空分交換所需的信息和需透?jìng)鞯男畔?。這些信息組成一個(gè)信元頭。假設(shè)信元長(zhǎng)度為L(zhǎng)個(gè)字節(jié),那么,若一個(gè)輸入端口帶寬為B字節(jié)/秒,則交換設(shè)備在1秒內(nèi)可交換的每端口信元數(shù)為B/L,我們稱L/B為一個(gè)信元周期,即交換設(shè)備完成一組信元交換的時(shí)間。在這段時(shí)間內(nèi),交換設(shè)備完成一組信元(每個(gè)端口一個(gè))的交換。
1、由輸入處理模塊IP從各待交換信元的信元頭中獲取關(guān)于信元需要交換到的目的端口的相關(guān)信息。
與空分交換設(shè)備相接的各隊(duì)列管理設(shè)備在通過空分交換設(shè)備交換信元之前,要把希望將信元交換到目的端口的端口信息告知空分交換設(shè)備,這是通過在信元頭中帶請(qǐng)求信息REQ來實(shí)現(xiàn)的。請(qǐng)求信息REQ是一個(gè)n比特的信息,其中每比特對(duì)應(yīng)一個(gè)空分交換設(shè)備的目的端口,指示是否有信元送往此目的端口,為“1”代表有信元,為“0”代表無信元。這n個(gè)比特可以有任意位為“1”。這樣,空分交換設(shè)備就能收到n個(gè)n比特的請(qǐng)求信息。因此,空分交換中的IP模塊需首先對(duì)相應(yīng)端口信元流的信元頭中的請(qǐng)求信息REQ采樣。由于從各個(gè)端口進(jìn)來的n組請(qǐng)求信息是不需要同步的,只需在每個(gè)信元周期內(nèi)的某個(gè)固定時(shí)刻,直接把到目前為止收到的請(qǐng)求采樣下來,作為下一步仲裁的依據(jù)。
2、仲裁模塊根據(jù)各相關(guān)信息產(chǎn)生仲裁結(jié)果。
用于控制交換矩陣的選擇器選擇信號(hào)SEL是通過仲裁得到的,仲裁模塊依據(jù)IP模塊采樣獲得的請(qǐng)求信息,決定每個(gè)輸出端口允許哪個(gè)輸入端口往這個(gè)輸出端口發(fā)送信息,從而獲得包含選擇信號(hào)的仲裁結(jié)果。由于空分交換矩陣的每個(gè)輸入端口進(jìn)來的信元頭中都攜帶n比特的請(qǐng)求信息,這樣可以使得仲裁器同時(shí)考慮到所有的有交換需求的隊(duì)列管理設(shè)備,而使得空分交換矩陣的利用率達(dá)到最高。在每一個(gè)信元周期內(nèi)產(chǎn)生一組仲裁結(jié)果3、將該仲裁結(jié)果發(fā)回給各隊(duì)列管理設(shè)備調(diào)度信元,同時(shí)將仲裁結(jié)果緩存于交換配置模塊。
仲裁結(jié)果需要發(fā)回給隊(duì)列管理設(shè)備,作為隊(duì)列管理設(shè)備調(diào)度信元的依據(jù)。這是通過在信元頭加入一個(gè)允許字段(GRANT)來實(shí)現(xiàn)的,GRANT指示相應(yīng)的隊(duì)列管理設(shè)備,表明是否可以發(fā)送信元且已經(jīng)將信元發(fā)送到哪個(gè)空分交換設(shè)備端口;GRANT字段的位數(shù)為log2n+1,本實(shí)施例中n=16,則需要5位,其中一位表示是否可以發(fā)送信元,其余4位表示能發(fā)送信元到16個(gè)端口中的哪個(gè)端口。
在一個(gè)信元周期內(nèi)產(chǎn)生的仲裁結(jié)果不能立即用于配置交換矩陣,需要延時(shí)固定的q周期,這是因?yàn)樵O(shè)備需要等待交換信元從外部設(shè)備送入IP模塊,才能配置交換矩陣。這里的延時(shí)周期q在芯片內(nèi)是可配的,在系統(tǒng)設(shè)計(jì)時(shí),可根據(jù)一個(gè)仲裁結(jié)果送出后,到外部隊(duì)列管理設(shè)備響應(yīng)這個(gè)仲裁結(jié)果送來的信元之間的實(shí)際延時(shí)來配置。在實(shí)際系統(tǒng)中,各條鏈路的這個(gè)延時(shí)是有偏差的,假定其中最大的延時(shí)為p個(gè)信元周期,則q應(yīng)配置為比p稍大一點(diǎn)的值,因?yàn)槿舯萷小,則待交換信元還沒有從外部設(shè)備送入IP模塊,若比p大得太多,則使得信元的交換延時(shí)變得太大。
由于仲裁結(jié)果要在多拍后才用于配置交換矩陣,因此,要先把這些仲裁結(jié)果緩存起來,這是通過交換配置器CFG實(shí)現(xiàn)的。CFG在完成緩存步驟的同時(shí),完成交換矩陣配置信息的轉(zhuǎn)換過程。
由于交換矩陣中n個(gè)選擇器的SEL選擇信號(hào)是同時(shí)切換的,這就意味著信元在被送到交換矩陣交換之前要進(jìn)行同步,空分交換設(shè)備在同一信元周期往n個(gè)隊(duì)列管理設(shè)備送出的各GRANT信號(hào)是通過信元傳送的,送往不同隊(duì)列管理設(shè)備的信元走的鏈路不一樣,這就導(dǎo)致不同的隊(duì)列管理設(shè)備接收到含有此GRANT信息的信元的時(shí)間不同,而且通常各隊(duì)列管理設(shè)備在不同的線卡上,它們之間是完全異步的,因此,根據(jù)這個(gè)GRANT信息送出的信元到達(dá)空分交換設(shè)備的時(shí)間是不同的。為此,需要有一種同步機(jī)制來保證一批GRANT的信元在同一時(shí)間送入交換矩陣交換。
這個(gè)同步機(jī)制通過在送GRANT信息的同時(shí),也在信元頭中附加上一個(gè)同步時(shí)標(biāo)SYNC_TS[2:0]域,這個(gè)域是一個(gè)3位的字段,在每個(gè)信元周期加1,稱之為L(zhǎng)OCAL_SYNC_TS,每個(gè)信元周期往所有的隊(duì)列管理設(shè)備發(fā)送的信元頭中,所帶的同步時(shí)標(biāo)是一樣的,都是LOCAL_SYNC_TS,這樣,在隊(duì)列管理設(shè)備接收到一個(gè)信元后,把GRANT域和SYNC_TS域同時(shí)取下來,再把這個(gè)SYNC_TS值附加在根據(jù)這個(gè)GRANT信息出隊(duì)后往空分交換設(shè)備發(fā)送的信元頭中送給空分交換設(shè)備,這樣,空分交換設(shè)備就能根據(jù)各端口進(jìn)來信元中的SYNC_TS域來實(shí)現(xiàn)同步。
信元交換前的同步是在輸入處理模塊IP中完成的,每個(gè)IP模塊都有一個(gè)4個(gè)信元深度的緩存(BUFFER),這個(gè)BUFFER通過對(duì)進(jìn)入IP模塊的信元進(jìn)行緩存來實(shí)現(xiàn)同步。這個(gè)BUFFER分為4個(gè)塊,每塊可以存儲(chǔ)一個(gè)信元,一個(gè)信元根據(jù)其信元頭中SYNC_TS低兩位來選擇寫入哪一個(gè)塊,也就是SYNC_TS[1:0]做為BUFFER的最高兩位地址。所有IP模塊的BUFFER讀是同步的,即所有IP模塊內(nèi)同一拍BUFFER的讀地址是一樣的,這個(gè)地址的最高兩位為L(zhǎng)OCAL_SYNC_TS-q,正如上面描述的,這里的q為一個(gè)可調(diào)節(jié)的表示一個(gè)仲裁結(jié)果在多少個(gè)周期后用于配置交換矩陣的值。
4、在交換信元之前,由路由檢測(cè)模塊RCK對(duì)各即將交換的信元做組檢查(有效性檢查)和路由檢查。即將該信元的信元頭中的同步時(shí)標(biāo)與當(dāng)前用來配置交換矩陣的仲裁結(jié)果所對(duì)應(yīng)的時(shí)標(biāo)進(jìn)行比較,并在兩者不相符時(shí)報(bào)告配置錯(cuò)誤;將信元頭中的目的端口與當(dāng)前用來配置交換矩陣的仲裁結(jié)果中的目的端口進(jìn)行比較,并在兩者不相符時(shí)報(bào)告配置錯(cuò)誤。具體包括(1)組檢查如前所述,仲裁結(jié)果是q個(gè)信元周期后才用來配置交換矩陣的,為了便于系統(tǒng)調(diào)試,避免由于q的配置錯(cuò)誤導(dǎo)致信元交換錯(cuò)誤,RCK模塊對(duì)即將交換的模塊做組檢查。
為了盡可能減少邏輯,本實(shí)施例附加在信元中的同步時(shí)標(biāo)是3位,但在輸入處理模塊中只用了四個(gè)信元深度的BUFFER,只用同步時(shí)標(biāo)中的低2位用于選擇存入哪個(gè)緩存塊,而不是用8個(gè)信元深度的BUFFER,這是因?yàn)椋钚〉闹俨媒Y(jié)果→GRANT提取→信元出隊(duì)整個(gè)環(huán)路周期min_loop_slot和最大的環(huán)路周期max_loop_slot之間的差別一般不會(huì)超過4個(gè)信元周期(一般都很容易做到3甚至2個(gè)信元周期以下)。但一種可能是,若q沒有設(shè)置正確,則可能導(dǎo)致送入交換矩陣的信元中的SYNC_TS[2]與相應(yīng)的配置矩陣信息的SYNC_TS[2]不同,導(dǎo)致交換錯(cuò)誤。為了檢查出和避免這種情況,CFG模塊在配置信息寄存器組內(nèi)不僅保存了交換矩陣配置信息,同時(shí)也把SYNC_TS[2:0]保存起來,這樣,在每信元周期,從4個(gè)緩存中選出一個(gè)信元送往交換矩陣進(jìn)行交換時(shí),同時(shí)會(huì)將這個(gè)信元頭中的SYNC_TS[2]與即將用來配置交換矩陣的配置信息所對(duì)應(yīng)的SYNC_TS[2]進(jìn)行比較,稱之為組檢查,若檢查不通過,即表示當(dāng)前期望的交換信元和實(shí)際交換信元的組號(hào)(即SYNC_TS的bit2)不符。導(dǎo)致組檢查不通過的原因一般是由于q設(shè)置過大或過小造成。這就為系統(tǒng)調(diào)試提供了參考,且保證了交換的可靠性。
(2)路由檢查為了保證交換的可靠,即保證當(dāng)前交換矩陣配置信息與待交換信元需路由到的目的端口一致,在信元頭中有一個(gè)路由檢查(Routing Check的簡(jiǎn)稱RCHK)域,用于表示此信元的目的端口。RCK模塊在交換每個(gè)信元時(shí)比較這個(gè)目的端口和當(dāng)前的配置信息,以確保將信元交換到正確的目的端口,即將信元頭中的目的端口與當(dāng)前用來配置交換矩陣的仲裁結(jié)果中的目的端口進(jìn)行比較,并在兩者不相符時(shí)報(bào)告配置錯(cuò)誤信息,并引發(fā)中斷。
5、利用仲裁結(jié)果配置交換矩陣模塊,使其將輸入端口的信元交換到指定的輸出端口。
信元的交換是在交換矩陣模塊內(nèi)完成的,交換矩陣可看作n個(gè)n路輸入到一路輸出的選擇器。如圖4所示,這些選擇器根據(jù)一個(gè)選擇信號(hào)SEL來選擇該路輸出從哪一路輸入選擇而來,這樣,在每個(gè)信元周期內(nèi),可通過切換這個(gè)選擇信號(hào)來完成信元的空分交換。為了簡(jiǎn)單起見,交換矩陣對(duì)16個(gè)端口信元的交換是同步的,即所有n個(gè)選擇器的選擇信號(hào)是同時(shí)切換的。
以上詳細(xì)描述了空分交換設(shè)備及信元的交換方法,在實(shí)際應(yīng)用中,多個(gè)交換設(shè)備可并行使用,本發(fā)明據(jù)此提供了一種交換系統(tǒng),該系統(tǒng)包括多個(gè)上行管理隊(duì)列和下行管理隊(duì)列,以及連接于其間的多個(gè)空分交換設(shè)備。如圖7所示,在交換網(wǎng)卡(Fabric Card)上用了m個(gè)交換設(shè)備,這樣總的交換容量就增加了m倍。線卡上的上行隊(duì)列管理設(shè)備(Ingress Queue Device)把信元分發(fā)到多個(gè)交換設(shè)備上的任一個(gè),由交換設(shè)備交換至下行隊(duì)列管理設(shè)備(Egress QueueDevice)。這里的上行隊(duì)列管理設(shè)備和下行隊(duì)列管理設(shè)備可以是兩個(gè)設(shè)備,也可以是在一個(gè)設(shè)備中完成。
運(yùn)用這種結(jié)構(gòu),多個(gè)空分交換設(shè)備之間就實(shí)現(xiàn)了互相備份,在任一個(gè)空分交換設(shè)備出現(xiàn)故障后,任一個(gè)上行隊(duì)列管理設(shè)備的信元仍可以通過別的空分交換設(shè)備路由至任一個(gè)下行隊(duì)列管理設(shè)備。
另外,這種結(jié)構(gòu)還使得交換網(wǎng)的容量擴(kuò)展很容易,通過增加空分交換設(shè)備,就可實(shí)現(xiàn)容量的擴(kuò)展。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1.一種交換信元的方法,由交換設(shè)備將多個(gè)輸入端口的信元交換到相應(yīng)的輸出端口;其特征在于該方法包括如下步驟從各待交換信元的信元頭中獲取關(guān)于信元需要交換到的目的端口的相關(guān)信息;根據(jù)各相關(guān)信息產(chǎn)生仲裁結(jié)果,該仲裁結(jié)果包含將各輸入端口信元交換到指定輸出端口的信息;依據(jù)各仲裁結(jié)果調(diào)度相應(yīng)的信元到所述交換設(shè)備的輸入端口;和利用仲裁結(jié)果控制交換設(shè)備將輸入端口的信元交換到指定的輸出端口。
2.如權(quán)利要求1所述的方法,其特征在于,在一個(gè)信元周期內(nèi)產(chǎn)生一組仲裁結(jié)果,該仲裁結(jié)果在經(jīng)過一個(gè)或多個(gè)信元周期的延時(shí)后用于控制所述交換設(shè)備完成信元交換。
3.如權(quán)利要求1或2所述的方法,其特征在于,將所述仲裁結(jié)果插入信元頭的字段中并發(fā)回給各隊(duì)列管理設(shè)備,隊(duì)列管理設(shè)備依據(jù)信元頭的仲裁結(jié)果調(diào)度信元到交換設(shè)備的響應(yīng)端口。
4.如權(quán)利要求3所述的方法,其特征在于,在發(fā)回給各隊(duì)列管理設(shè)備的信元頭中還加入同步時(shí)標(biāo),隊(duì)列管理設(shè)備將該同步時(shí)標(biāo)附加在根據(jù)該信元頭中的仲裁結(jié)果調(diào)度到交換設(shè)備的信元中,交換設(shè)備根據(jù)各輸入端口信元中的同步時(shí)標(biāo)實(shí)現(xiàn)信元同步。
5.如權(quán)利要求4所述的方法,其特征在于,在交換信元之前,將該信元的信元頭中的同步時(shí)標(biāo)與當(dāng)前用來控制交換設(shè)備的仲裁結(jié)果所對(duì)應(yīng)的時(shí)標(biāo)進(jìn)行比較,并在兩者不相符時(shí)報(bào)告配置錯(cuò)誤;和/或?qū)⑿旁^中的目的端口與當(dāng)前用來控制交換設(shè)備的仲裁結(jié)果中的目的端口進(jìn)行比較,并在兩者不相符時(shí)報(bào)告配置錯(cuò)誤。
6.一種空分交換設(shè)備,其特征在于包括交換矩陣模塊,具有復(fù)數(shù)個(gè)輸入端和對(duì)應(yīng)的輸出端,該模塊將各輸入端進(jìn)來的信元交換至相應(yīng)的輸出端;復(fù)數(shù)個(gè)輸入處理模塊,各模塊的輸出端分別與交換矩陣的一個(gè)輸入端連接,該模塊從接收的信元中提取信元頭信息,并將信元同步后輸出到交換矩陣;仲裁模塊,與各輸入處理模塊連接,根據(jù)信元頭信息中的請(qǐng)求信息產(chǎn)生用于交換信元的仲裁結(jié)果;交換配置模塊,與仲裁模塊和交換矩陣模塊連接,將仲裁模塊輸出的仲裁結(jié)果配置所述交換矩陣模塊以進(jìn)行信元交換;復(fù)數(shù)個(gè)輸出處理模塊,各模塊分別與交換矩陣模塊的一個(gè)輸出端和分別與仲裁器模塊連接。
7.如權(quán)利要求6所述的空分交換設(shè)備,其特征在于還包括路由檢查模塊,與所述交換配置模塊、各輸入處理模塊和各輸出處理模塊連接,用于對(duì)即將交換的各信元進(jìn)行路由檢查和有效性檢查。
8.如權(quán)利要求6或7所述的空分交換設(shè)備,其特征在于,所述交換矩陣模塊包括復(fù)數(shù)個(gè)具有多路輸入和單路輸出的選擇器,各選擇器的其中一個(gè)輸入端與一個(gè)輸入處理模塊相連,并且該輸入端還分別與其他選擇器的一個(gè)輸入端連接。
9.如權(quán)利要求8所述的空分交換設(shè)備,其特征在于,所述交換配置模塊包括復(fù)數(shù)個(gè)存儲(chǔ)單元,用于存儲(chǔ)仲裁結(jié)果;第一選擇器,具有一路輸入和多路輸出,用于選擇復(fù)數(shù)個(gè)存儲(chǔ)單元中的一個(gè)存儲(chǔ)單元存儲(chǔ)所述仲裁模塊輸出的仲裁結(jié)果;第二選擇器,具有多路輸入和一路輸出,用于從所述復(fù)數(shù)個(gè)存儲(chǔ)單元中選擇一個(gè)存儲(chǔ)單元輸出仲裁結(jié)果;或者,所述交換配置模塊包括復(fù)數(shù)個(gè)移位寄存器,用于緩存仲裁器模塊輸出的仲裁結(jié)果;具有多路輸入和單路輸出的選擇器,各移位寄存器分別與選擇器一個(gè)輸入端連接,該選擇器從所述復(fù)數(shù)個(gè)移位寄存器中選擇一個(gè)寄存器的信息輸出。
10.一種交換系統(tǒng),包括用于調(diào)度信元的上行管理隊(duì)列和下行管理隊(duì)列;其特征在于該交換系統(tǒng)還包括復(fù)數(shù)個(gè)如權(quán)利要求6所述的空分交換設(shè)備;所述上行管理隊(duì)列和下行管理隊(duì)列均為復(fù)數(shù)個(gè),各上行管理隊(duì)列分別與各空分交換設(shè)備中的一個(gè)輸入處理模塊連接,各下行管理隊(duì)列分別與各空分交換設(shè)備中的一個(gè)輸出處理模塊連接。
11.如權(quán)利要求10所述的交換系統(tǒng),其特征在于,所述上行隊(duì)列管理設(shè)備和下行隊(duì)列管理設(shè)備為相互獨(dú)立的設(shè)備,或者為同一設(shè)備。
全文摘要
本發(fā)明涉及一種空分交換設(shè)備及信元交換方法,以解決現(xiàn)有技術(shù)中存在對(duì)信元緩存容量需求大,功耗和成本高的問題。所述方法為從各待交換信元的信元頭中獲取關(guān)于信元需要交換到的目的端口的相關(guān)信息;根據(jù)各相關(guān)信息產(chǎn)生仲裁結(jié)果,該仲裁結(jié)果包含將各輸入端口信元交換到指定輸出端口的信息;依據(jù)各仲裁結(jié)果調(diào)度相應(yīng)的信元到交換設(shè)備的輸入端口;和利用仲裁結(jié)果控制交換設(shè)備將輸入端口的信元交換到指定的輸出端口。該空分交換設(shè)備主要包括交換矩陣模塊、輸入處理模塊、仲裁模塊、交換配置模塊、輸出處理模塊。采用本發(fā)明在交換信元時(shí)不需大容量的信元緩存,不需在交換設(shè)備內(nèi)進(jìn)行排隊(duì),可以實(shí)現(xiàn)超大容量的可擴(kuò)展性好的交換網(wǎng)絡(luò)。
文檔編號(hào)H04L12/54GK1783828SQ20041010090
公開日2006年6月7日 申請(qǐng)日期2004年12月2日 優(yōu)先權(quán)日2004年12月2日
發(fā)明者劉運(yùn)華 申請(qǐng)人:華為技術(shù)有限公司