亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種數(shù)據(jù)交換方法、裝置和系統(tǒng)的制作方法

文檔序號(hào):7708898閱讀:177來(lái)源:國(guó)知局
專利名稱:一種數(shù)據(jù)交換方法、裝置和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信技術(shù)領(lǐng)域,更具體地說(shuō),涉及一種數(shù)據(jù)交換方法、裝置 和系統(tǒng)。
背景技術(shù)
隨著互聯(lián)網(wǎng)的帶寬要求日益增長(zhǎng)以及數(shù)據(jù)傳輸技術(shù)的飛速發(fā)展,對(duì)網(wǎng)絡(luò) 交換技術(shù)的要求也越來(lái)越高,因此,對(duì)路由器、交換機(jī)等數(shù)據(jù)交換設(shè)備的性 能要求也越來(lái)越高,而作為路由器、交換機(jī)等數(shù)據(jù)設(shè)備的核心部分,交換結(jié) 構(gòu)的性能直接影響著路由器、交換機(jī)的性能,其中,交換結(jié)構(gòu)的設(shè)計(jì)是基于
一定的交換方法。目前,常用交換結(jié)構(gòu)如下所述
仲裁交叉(Arbiter Crossbar)結(jié)構(gòu),其中,該交換結(jié)構(gòu)采用空分復(fù)用^L構(gòu), 使用集中的仲裁器確定各個(gè)交叉點(diǎn)的連接狀態(tài),實(shí)現(xiàn)將數(shù)據(jù)從交換網(wǎng)輸入端 口傳送到交換網(wǎng)輸出端口的功能。采用該交換結(jié)構(gòu)時(shí),為了達(dá)到較高的交換 效率和較好的公平性,要求各個(gè)輸入端口的發(fā)送能夠同步,因此,該交換結(jié) 構(gòu)不適用于變長(zhǎng)交換。同時(shí),由于該交換結(jié)構(gòu)的交叉點(diǎn)的連接狀態(tài)由集中仲 裁器進(jìn)行控制,因此交換容量就要受限于仲裁器的復(fù)雜度,因此,要進(jìn)行大 容量的數(shù)據(jù)交換,就需要復(fù)雜度^[艮高的仲裁器。
為解決上述問(wèn)題,又相應(yīng)出現(xiàn)了緩沖交叉(Buffered Crossbar)結(jié)構(gòu),其 中,該結(jié)構(gòu)無(wú)需中央仲裁器,在每個(gè)輸出端口用簡(jiǎn)單的輸出端口調(diào)度器調(diào)度 與輸入端口個(gè)數(shù)相同的先進(jìn)先出(FIFO)緩存,而在所有輸入端口與輸出端 口FIFO緩存的交叉點(diǎn)處,分別設(shè)置一個(gè)FIFO緩存,該FIFO緩存根據(jù)輸出端口 調(diào)度器的調(diào)度,向相應(yīng)輸入端口發(fā)送反壓信息,輸入端口可以根據(jù)該反壓信 息決定是否發(fā)送數(shù)據(jù)。該交換結(jié)構(gòu)由于在輸出端口處進(jìn)行數(shù)據(jù)的調(diào)度,因此 適用于變長(zhǎng)交換,并且每個(gè)輸出端口調(diào)度器只負(fù)責(zé)本端口的數(shù)據(jù)調(diào)度工作, 因此,在進(jìn)行大容量的數(shù)據(jù)交換時(shí),也不會(huì)增加調(diào)度器的設(shè)計(jì)難度。在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人發(fā)現(xiàn),現(xiàn)有的緩沖交叉結(jié)構(gòu)至少存在以
下問(wèn)題該種結(jié)構(gòu)雖然避免了調(diào)度器的設(shè)計(jì)難度過(guò)大的問(wèn)題,但在進(jìn)行高效、 大容量的數(shù)據(jù)交換工作,就需要在數(shù)據(jù)交換裝置中設(shè)置大量的緩存,由于該 結(jié)構(gòu)需要在每個(gè)交叉點(diǎn)處設(shè)置緩存,如果該結(jié)構(gòu)中存在7V個(gè)入口,則共需要 有A^個(gè)緩存,而如果入口數(shù)量較多的話,那么所需要的緩存的數(shù)量無(wú)疑是巨 大的,這樣必然會(huì)增加交換結(jié)構(gòu)的制造成本。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明實(shí)施例提供一種數(shù)據(jù)交換方法、裝置和系統(tǒng),以較低 的成本實(shí)現(xiàn)大容量的數(shù)據(jù)交換。
本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的 本發(fā)明實(shí)施例提供了一種數(shù)據(jù)交換方法,包括
輸入端口根據(jù)接收到的數(shù)據(jù)包中攜帶的輸出端口地址信息,向所述輸出 端口地址信息對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求;
當(dāng)所述輸出端口同時(shí)接收到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),所 述輸出端口判斷接收所述多個(gè)輸入端口中哪些輸入端口中的數(shù)據(jù)包;
所述輸出端口調(diào)度該輸出端口內(nèi)的輸出端口緩存,用以進(jìn)行數(shù)據(jù)包接收。
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)交換裝置,包括
輸入端口單元,用于接收數(shù)據(jù)包,并根據(jù)所述數(shù)據(jù)包中所攜帶的輸出端 口地址信息,向所述輸出端口地址信息對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求;
輸出端口單元,用于接收輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求,當(dāng)同時(shí)接收 到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),判斷接收所述多個(gè)輸入端口中哪 些輸入端口中的數(shù)據(jù)包,并調(diào)度所述輸出端口單元內(nèi)的輸出端口緩存,用以 進(jìn)行數(shù)據(jù)包接收。
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)交換系統(tǒng),包括
交換接口控制器,用于向輸入端口單元發(fā)送數(shù)據(jù)包;
輸入端口單元,用于接收數(shù)據(jù)包,并根據(jù)所述數(shù)據(jù)包中所攜帶的輸出端 口地址信息,向所述輸出端口地址信息對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求;輸出端口單元,用于接收輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求,當(dāng)同時(shí)接收 到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),判斷接收所述多個(gè)輸入端口中哪 些輸入端口中的數(shù)據(jù)包,并調(diào)度所述輸出端口單元內(nèi)的輸出端口緩存,用以 進(jìn)行數(shù)據(jù)包接收。
與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例提供的技術(shù)方案具有以下優(yōu)點(diǎn)由于該 技術(shù)方案采取了在輸出端口處對(duì)輸入端口的數(shù)據(jù)包的接收順序進(jìn)行仲裁,這 樣,輸出端口處的緩存與輸入端口之間就不必——對(duì)應(yīng),輸入端口處緩存與 輸入端口交叉點(diǎn)上的緩存就可省去,這種方式在很大程度上節(jié)省了緩存的使 用數(shù)量,降低了交換設(shè)備的制造成本。


為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí) 施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面 描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講, 在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例所涉及的一種數(shù)據(jù)交換方法流程圖; 圖2為本發(fā)明實(shí)施例所涉及的另一種數(shù)據(jù)交換方法流程圖; 圖3為本發(fā)明實(shí)施例所涉及的一種數(shù)據(jù)交換裝置結(jié)構(gòu)示意圖; 圖4為本發(fā)明實(shí)施例所涉及的一種數(shù)據(jù)交換系統(tǒng)結(jié)構(gòu)示意圖; 圖5為本發(fā)明實(shí)施例所涉及的一種數(shù)據(jù)交換系統(tǒng)結(jié)構(gòu)示意圖; 圖6為本發(fā)明實(shí)施例所涉及的一種數(shù)據(jù)交換方法流程圖。
具體實(shí)施例方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行 清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而 不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做 出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
6實(shí)施例一
本實(shí)施例提供了一種數(shù)據(jù)交換方法,其中,輸入端口在接收到交換接口 控制器發(fā)送的數(shù)據(jù)包之后,數(shù)據(jù)交換裝置要進(jìn)行數(shù)據(jù)的交換工作,具體步驟
如圖1所示
步驟101:輸入端口根據(jù)所接收到的數(shù)據(jù)包中所攜帶的輸出端口地址信 息,向該輸出端口地址信息所對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求。
在步驟101中,輸入端口在接收到數(shù)據(jù)包后,首先要分析該數(shù)據(jù)包的報(bào) 文頭,根據(jù)該報(bào)文頭中所攜帶的輸出端口地址信息,向該輸出端口地址信息 對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求。
步驟102:當(dāng)該輸出端口同時(shí)接收到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求 時(shí),該輸出端口判斷接收哪些輸入端口中的數(shù)據(jù)包。
在步驟102中,由于一個(gè)輸出端口對(duì)應(yīng)多個(gè)輸入端口,因此輸出端口在 接收到 一個(gè)輸入端口發(fā)送的數(shù)據(jù)包發(fā)送請(qǐng)求后,需要判斷是否可以馬上接收 該輸入端口的數(shù)據(jù)包,此處,可以根據(jù)輸入端口信息來(lái)判斷,如在所有輸 入端口之間采用輪循均衡算法,即對(duì)所有輸入端口進(jìn)行編號(hào)排序,輸出端口
按照已排好的順序?qū)Ω鱾€(gè)輸入端口的數(shù)據(jù)包進(jìn)行接收;還可以為每個(gè)輸入端 口預(yù)先設(shè)定一個(gè)優(yōu)先級(jí),輸出端口可以根據(jù)各個(gè)輸入端口優(yōu)先級(jí)的高低來(lái)進(jìn) 行數(shù)據(jù)包接收工作的判斷。需要強(qiáng)調(diào)的是,輸出端口可以根據(jù)其內(nèi)部的輸出 端口緩存的實(shí)際使用情況來(lái)決定一次接收幾個(gè)輸入端口的數(shù)據(jù)包。
步驟103:該輸出端口調(diào)度其內(nèi)部的輸出端口緩存,用以進(jìn)行數(shù)據(jù)包接收。 在步驟102中,輸出端口經(jīng)過(guò)判斷,確定了所要接收的輸入端口的數(shù)據(jù) 包后,要執(zhí)行步驟103,即對(duì)該輸出端口內(nèi)的輸出端口緩存進(jìn)行調(diào)度,用所調(diào) 度的輸出端口緩存進(jìn)行數(shù)據(jù)包的接收。在進(jìn)行輸出端口緩存的調(diào)度時(shí),通常 情況下, 一個(gè)輸出端口內(nèi)的輸出端口緩存之間并不存在優(yōu)先級(jí)高低的問(wèn)題, 因此,多數(shù)情況下在進(jìn)行輸出端口緩存調(diào)度時(shí),采用的是輪循均衡算法來(lái)進(jìn) 行調(diào)度。在調(diào)度完成,確定接收數(shù)據(jù)包的輸出接口緩存之后,數(shù)據(jù)包即可發(fā) 送至對(duì)應(yīng)的輸出端口緩存中, 一個(gè)交換流程完成。在步驟102中,輸出端口在進(jìn)行完數(shù)據(jù)包接收的判斷工作后,那些未被 接收的數(shù)據(jù)包所述的輸入端口需要繼續(xù)向該輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求, 直至該輸入端口內(nèi)的數(shù)據(jù)包一皮輸出端口接收。
在此處,可以根據(jù)實(shí)際情況設(shè)定一個(gè)時(shí)間間隔,每過(guò)一個(gè)時(shí)間間隔,該 輸入端口就向輸出端口發(fā)起一次數(shù)據(jù)包發(fā)送請(qǐng)求,直至該輸入端口的數(shù)據(jù)包 被接收。
本實(shí)施例所提供的一種數(shù)據(jù)交換方法,由于該技術(shù)方案采取了在輸出端 口處對(duì)輸入端口的數(shù)據(jù)包的接收順序進(jìn)行仲裁,這樣,輸出端口處的緩存與 輸入端口之間就不必——對(duì)應(yīng),輸入端口處緩存與輸入端口交叉點(diǎn)上的緩存 就可省去,這種方式在很大程度上節(jié)省了緩存的使用數(shù)量,降低了交換設(shè)備 的制造成本。
實(shí)施例二
本實(shí)施例提供了另外一種數(shù)據(jù)交換方法,該實(shí)施例與實(shí)施例 一的區(qū)別在 于本實(shí)施例在進(jìn)行數(shù)據(jù)交換的同時(shí),采用了反壓機(jī)制,具體情況如下
在數(shù)據(jù)交換過(guò)程中,為了盡量避免報(bào)文頭阻塞情況的發(fā)生,本實(shí)施例提 供了反壓機(jī)制,具體可以為對(duì)輸出端口緩存的使用狀態(tài)進(jìn)行監(jiān)控,并將監(jiān) 控所得的輸出端口緩存的使用狀態(tài)報(bào)告發(fā)送至交換接口控制器,交換接口控 制器可以根據(jù)該使用狀態(tài)報(bào)告為數(shù)據(jù)包選擇輸出端口 。更進(jìn)一步可具體為 如果使用狀態(tài)報(bào)告顯示,某一輸出端口內(nèi)的輸出端口緩存的使用情況未達(dá)到 接收數(shù)據(jù)包的要求,例如某一輸出端口內(nèi)的輸出端口緩存的使用狀態(tài)超過(guò) 了預(yù)先設(shè)定的門限,則可認(rèn)為該輸出端口內(nèi)的輸出端口緩存的使用情況未達(dá) 到接收數(shù)據(jù)包的要求,或者也可以說(shuō),該輸出端口此時(shí)已不適合繼續(xù)接收數(shù) 據(jù)包。相應(yīng)地,交換接口控制器會(huì)在為數(shù)據(jù)包選擇輸出端口時(shí),盡量避免使 用該輸出端口,直至接收到的使用狀態(tài)報(bào)告顯示該輸出端口內(nèi)輸出端口緩存 的使用情況已達(dá)到接收數(shù)據(jù)包的要求,交換接口控制器才會(huì)在進(jìn)行輸出端口 選擇時(shí)重新考慮該輸出端口。
8需要說(shuō)明的是,反壓機(jī)制的工作流程是貫穿于數(shù)據(jù)包交換流程中的,不 存在位于交換流程的某一步之前或之后的問(wèn)題,并且,可以根據(jù)實(shí)際情況確 定使用狀態(tài)報(bào)告的發(fā)送周期,以使交換接口控制器能夠及時(shí)掌握各個(gè)輸出端 口緩存的使用狀態(tài),便于為數(shù)據(jù)包選擇輸出端口。
本實(shí)施例所提供的數(shù)據(jù)交換方法,在輸出端口處對(duì)輸入端口的數(shù)據(jù)包的 接收順序進(jìn)行仲裁,這樣,輸出端口處的緩存與輸入端口之間就不必——對(duì) 應(yīng),輸入端口處緩存與輸入端口交叉點(diǎn)上的緩存就可省去,這種方式在很大 程度上節(jié)省了緩存的使用數(shù)量,降低了交換設(shè)備的制造成本。同時(shí),由于本 實(shí)施例還采用了反壓機(jī)制,使交換接口控制器可以及時(shí)獲取輸出端口緩存的 使用狀態(tài),為數(shù)據(jù)包選擇合適的輸出端口地址,有效地減少了報(bào)文頭阻塞的 發(fā)生。
相應(yīng)地,本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)交換裝置,如圖2所示,包括 輸入端口單元201,用于接收數(shù)據(jù)包;以及,
用于根據(jù)所接收到的數(shù)據(jù)包中所攜帶的輸出端口地址信息,向該輸出端 口地址信息對(duì)應(yīng)的輸出端口單元發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求;
輸出端口單元202,用于接收輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求,當(dāng)同時(shí)接 收到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),判斷接收所述多個(gè)輸入端口中 哪些輸入端口中的數(shù)據(jù)包,并調(diào)度輸出端口單元202內(nèi)的輸出端口緩存,用 以進(jìn)行數(shù)據(jù)包接收。
除此以外,如果輸入端口單元201中的數(shù)據(jù)包未能被接收,則輸入端口 單元201需要繼續(xù)向輸出單元202發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求,直至其內(nèi)的數(shù)據(jù)包 被接收。
除此以外,本實(shí)施例所提供的一種數(shù)據(jù)交換裝置出包括輸入端口單元201 和輸出端口單元202外,還可包括反壓才幾制控制單元301,并如圖3所示。其 中,反壓機(jī)制控制單元301用于監(jiān)控輸出端口緩存的使用狀態(tài);以及向交換 接口控制器發(fā)送使用狀態(tài)報(bào)告,使交換接口控制器可以根據(jù)該使用狀態(tài)報(bào)告 進(jìn)行數(shù)據(jù)包輸出端口地址的選擇。同時(shí),本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)交換系統(tǒng),該系統(tǒng)結(jié)構(gòu)如圖4所
示,包括
交換接口控制器401,用于向輸入端口單元201發(fā)送數(shù)據(jù)包; 輸入端口單元201,用于接收交換接口控制器401發(fā)送的數(shù)據(jù)包;以及, 用于根據(jù)該數(shù)據(jù)包中所攜帶的輸出端口地址信息,向該輸出端口地址信
息對(duì)應(yīng)的輸出端口單元發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求;
輸出端口單元202,用于接收輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求,當(dāng)同時(shí)接
收到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),判斷接收所述多個(gè)輸入端口中
哪些輸入端口中的數(shù)據(jù)包,并調(diào)度輸出端口單元202內(nèi)的輸出端口緩存,用
以進(jìn)行數(shù)據(jù)包接收。
除此以外,如果輸入端口單元201中的數(shù)據(jù)包為能^皮接收,則輸入端口
單元201需要繼續(xù)向輸出單元202發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求,直至其內(nèi)的數(shù)據(jù)包
被接收。
另外,本實(shí)施例所提供的一種數(shù)據(jù)交換系統(tǒng),還可包括反壓機(jī)制控制單 元301,該單元用于監(jiān)控輸出端口緩存的使用狀態(tài);以及,
用于向交換接口控制器401發(fā)送使用狀態(tài)報(bào)告,使交換接口控制器401 可以根據(jù)該使用狀態(tài)報(bào)告進(jìn)行數(shù)據(jù)包輸出端口地址的選擇。
基于以上系統(tǒng),可通過(guò)如下方式實(shí)現(xiàn)數(shù)據(jù)包的交換
交換接口控制器401向輸入端口單元201發(fā)送需要進(jìn)行交換的數(shù)據(jù)包, 該數(shù)據(jù)包報(bào)文頭中攜帶有該數(shù)據(jù)包的輸出端口的地址信息;輸入端口單元201 在接收到該數(shù)據(jù)包后,首先分析該數(shù)據(jù)包的報(bào)文頭,從中獲取該報(bào)文的輸出 端口地址信息,并按照地址信息向?qū)?yīng)的輸出端口單元202發(fā)起數(shù)據(jù)包發(fā)送 請(qǐng)求;輸出端口單元202接收到該數(shù)據(jù)包發(fā)送請(qǐng)求后,需要判斷是否可以馬 上接收該請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)包,比如,可以根據(jù)該請(qǐng)求所對(duì)應(yīng)的輸入端口信 息或者根據(jù)該請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)包的相關(guān)信息來(lái)判斷是否可以馬上接收該請(qǐng) 求所對(duì)應(yīng)的數(shù)據(jù)包。當(dāng)判斷結(jié)果為是時(shí),輸出端口 202還需對(duì)其內(nèi)的輸出端 口緩存進(jìn)行調(diào)度,確定用哪些輸出端口緩存進(jìn)行數(shù)據(jù)包的接收工作,之后,
10便可利用確定的輸出端口緩存進(jìn)行數(shù)據(jù)包的接收。如果輸入端口單元201中
的數(shù)據(jù)包未被接收,則輸入端口單元201繼續(xù)向輸入端口單元202發(fā)起凄t據(jù) 包發(fā)送請(qǐng)求,直至其內(nèi)的數(shù)據(jù)包被接收。
除了以上實(shí)現(xiàn)數(shù)據(jù)包交換的基本流程之外,反壓機(jī)制控制單元301還可 對(duì)輸出端口 202中的輸出端口緩存的使用狀態(tài)進(jìn)行監(jiān)控,并將監(jiān)控得到的使 用狀態(tài)報(bào)告發(fā)送至交換接口控制器401,使交換接口控制器401可以根據(jù)各個(gè) 輸出端口內(nèi)輸出端口緩存的使用狀態(tài)為數(shù)據(jù)包選擇輸出端口 ,盡量避免才艮文 頭阻塞的發(fā)生。
本實(shí)施例所提供的一種數(shù)據(jù)交換系統(tǒng),由于該技術(shù)方案采取了在輸出端 口處對(duì)輸入端口的數(shù)據(jù)包的接收順序進(jìn)行仲裁,這樣,輸出端口處的緩存與 輸入端口之間就不必——對(duì)應(yīng),輸入端口處緩存與輸入端口交叉點(diǎn)上的鄉(xiāng)爰存 就可省去,這種方式在很大程度上節(jié)省了緩存的使用數(shù)量,降低了交換設(shè)備 的制造成本。
優(yōu)選地,由于本實(shí)施例還采用了反壓機(jī)制,使交換接口控制器可以及時(shí) 獲取輸出端口緩存的使用狀態(tài),為數(shù)據(jù)包選擇合適的輸出端口地址,有效地 減少了報(bào)文頭阻塞的發(fā)生。
根據(jù)上述方法,結(jié)合具體應(yīng)用場(chǎng)景,對(duì)本發(fā)明所涉及的技術(shù)方案做進(jìn)一 步介紹。
如圖5所示,該圖為本發(fā)明具體實(shí)施例所涉及的一種數(shù)據(jù)交換系統(tǒng)的結(jié) 構(gòu)示意圖,在交換芯片501的入口處放置輸入端口緩存502,輸入端口緩存 502可以是小容量FIFO緩存,為實(shí)現(xiàn)將交換數(shù)據(jù)的仲裁調(diào)度工作轉(zhuǎn)換為片內(nèi) 處理,以使芯片的集成度更高一些,現(xiàn)將輸入端口緩存502置于交換芯片內(nèi)。 該FIFO援存除了可以起到緩存交換數(shù)據(jù)包的作用,還可以起到隔離交換接口 控制器和交換芯片的作用。在交換芯片501的輸出端口處放置輸出端口緩存 503,此處同樣可以是小容量FIFO緩存,且每一個(gè)輸出端口包括至少 一個(gè)FIFO 緩存,并由設(shè)置于該輸出端口處的調(diào)度器進(jìn)行各個(gè)FIFO緩存接收?qǐng)?bào)文的調(diào)度 工作,其中,在每個(gè)輸出端口處設(shè)置多個(gè)FIFO緩存的目的是為了能夠使輸入端口處的FIFO緩存內(nèi)的數(shù)據(jù)包得到及時(shí)處理。每個(gè)輸出端口處的所有FIFO 緩存分別與所有輸入端口處的FIFO緩存交叉相連。基于以上交換結(jié)構(gòu),報(bào)文 在該交換芯片501中的處理過(guò)程如圖6所示
步驟601:交換芯片接收交換接口控制器發(fā)送的^t據(jù)包,并將該數(shù)據(jù)包存 儲(chǔ)至輸入端口處的入口 FIFO緩存中。
步驟602:輸入端口分析入口 FIFO緩存內(nèi)數(shù)據(jù)包的報(bào)文頭,根據(jù)該報(bào)文 頭中攜帶的輸出端口地址信息向該數(shù)據(jù)包的輸出端口的調(diào)度器發(fā)起發(fā)送請(qǐng) 求。
在步驟602中,如果有輸出端口發(fā)生擁塞,而入口 FIFO緩存中的數(shù)據(jù)包 還不斷地發(fā)往發(fā)生擁塞的輸出端口,則會(huì)出現(xiàn)報(bào)文頭阻塞(HOL),為了盡 量避免這種情況的發(fā)生,可以采用虛擬輸出隊(duì)列(VOQ)反壓才幾制,可以具 體為交換芯片實(shí)時(shí)監(jiān)控每個(gè)輸出端口處FIFO緩存的使用狀態(tài),并將該狀態(tài) 報(bào)告發(fā)送給交換接口控制器,交換接口控制器可以根據(jù)該狀態(tài)信息為數(shù)據(jù)包 選捧合適的輸出端口,盡量減少HOL的發(fā)生。如,當(dāng)某一輸出端口的FIFO 緩存的使用率已達(dá)到了預(yù)先所設(shè)定的門限,或該端口的FIFO緩存正在同時(shí)接 收數(shù)據(jù)包,并且持續(xù)的時(shí)間已達(dá)到了設(shè)定的門限等多種情況,可認(rèn)為該輸出 端口處于擁塞狀態(tài),暫時(shí)不適合接收數(shù)據(jù)包。
步驟603:輸出端口調(diào)度器接收到關(guān)于輸入端口 FIFO緩存內(nèi)數(shù)據(jù)包的發(fā) 送請(qǐng)求后,判斷是否接收該輸入端口的數(shù)據(jù)包。
在步驟603中,可能會(huì)出現(xiàn)一個(gè)輸出端口同時(shí)接收到多個(gè)來(lái)自不同輸入 端口的發(fā)送請(qǐng)求,在這種情況下,輸出端口需要對(duì)這些請(qǐng)求進(jìn)行仲裁,確定 哪些輸入端口 FIFO緩存內(nèi)的數(shù)據(jù)包可以先被接收,在該處,可以根據(jù)輸入端 口信息來(lái)確定,例如,將所有輸入端口進(jìn)行編號(hào)排序,采用輪循均衡算法對(duì) 各個(gè)接口的數(shù)據(jù)包進(jìn)行接收;還可以為每個(gè)輸入端口預(yù)先設(shè)定一個(gè)優(yōu)先級(jí), 輸出端口可以根據(jù)各個(gè)輸入端口優(yōu)先級(jí)的高低來(lái)進(jìn)行數(shù)據(jù)包接收工作的判 斷。
如果發(fā)起請(qǐng)求的輸入端口處的FIFO緩存內(nèi)的數(shù)據(jù)包經(jīng)過(guò)判斷可以馬上 進(jìn)行接收,則進(jìn)入步驟604,否則,進(jìn)入步驟606。
12步驟604:輸出端口調(diào)度器進(jìn)行內(nèi)部FIFO緩存的調(diào)度,確定由哪些FIFO 緩存接收數(shù)據(jù)包,并進(jìn)入步驟605。
通常情況下,輸出端口調(diào)度器采用輪循均衡(RR)算法、加權(quán)輪循均衡 (WRR)算法等來(lái)進(jìn)行FIFO緩存的調(diào)度。
步驟605:輸出端口調(diào)度器讀出輸入端口 FIFO緩存內(nèi)的數(shù)據(jù)并將該數(shù)據(jù) 寫入到選定的輸出端口 FIFO緩存內(nèi)。
步驟606:輸入端口繼續(xù)向輸出端口發(fā)起發(fā)送i貪求,直至該輸入端口處 FIFO緩存內(nèi)的數(shù)據(jù)包可以^皮處理。
至此,數(shù)據(jù)包已完成了在芯片內(nèi)的交換過(guò)程。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟 可以通過(guò)程序指令相關(guān)的石更件來(lái)完成,前述的程序可以存^f諸于一計(jì)算才幾可讀 取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述 的存儲(chǔ)介質(zhì)包括ROM( Read-Only Memory,只讀存儲(chǔ)記憶體)、RAM( Random Access Memory,隨機(jī)存儲(chǔ)記憶體)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼 的介質(zhì)。
對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用 本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易 見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下, 在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例, 而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相 一致的最寬的范圍。
權(quán)利要求
1、一種數(shù)據(jù)交換方法,其特征在于,包括輸入端口根據(jù)接收到的數(shù)據(jù)包中攜帶的輸出端口地址信息,向所述輸出端口地址信息對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求;當(dāng)所述輸出端口同時(shí)接收到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),所述輸出端口判斷接收所述多個(gè)輸入端口中哪些輸入端口中的數(shù)據(jù)包;所述輸出端口調(diào)度該輸出端口內(nèi)的輸出端口緩存,用以進(jìn)行數(shù)據(jù)包接收。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述輸出端口判斷接收所 述多個(gè)輸入端口中哪些輸入端口中的數(shù)據(jù)包,包括所述輸出端口檢查所述數(shù)據(jù)包發(fā)送請(qǐng)求中所攜帶的輸入端口信息; 所述輸出端口根據(jù)所述輸入端口信息判斷是否接收該輸入端口內(nèi)的數(shù)據(jù)包。
3、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述輸出端口根據(jù)所述輸 入端口信息判斷是否接收該輸入端口內(nèi)的數(shù)據(jù)包,包括所述輸出端口根據(jù)獲取的輸入端口信息,采用輪循均衡算法判斷是否接 收該輸入端口內(nèi)的凄t據(jù)包。
4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述輸出端口調(diào)度該輸出 端口內(nèi)的輸出端口緩存,包括所述輸出端口釆用輪循均衡算法調(diào)度該輸出端口內(nèi)的輸出端口緩存。
5、 根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,其特征在于,還包括未 被接收的數(shù)據(jù)包所處的輸入端口繼續(xù)向所述輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求, 直至該輸入端口內(nèi)的數(shù)據(jù)包被所述輸出端口4^收。
6、 根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,其特征在于,還包括 監(jiān)控輸出端口緩存的使用狀態(tài),并將使用狀態(tài)報(bào)告發(fā)送至交換接口控制器,以使交換接口控制器根據(jù)所述使用狀態(tài)報(bào)告為數(shù)據(jù)包選擇輸出端口 。
7、 一種數(shù)據(jù)交換裝置,其特征在于,包括輸入端口單元,用于接收數(shù)據(jù)包,并根據(jù)所述數(shù)據(jù)包中所攜帶的輸出端 口地址信息,向所述輸出端口地址信息對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求;輸出端口單元,用于接收輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求,當(dāng)同時(shí)接收 到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),判斷接收所述多個(gè)輸入端口中哪 些輸入端口中的數(shù)據(jù)包,并調(diào)度所述輸出端口單元內(nèi)的輸出端口緩存,用以 進(jìn)行數(shù)據(jù)包接收。
8、 根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括反壓機(jī)制控制單 元,用于監(jiān)控輸出端口緩存的使用狀態(tài),并向交換接口控制器發(fā)送使用狀態(tài) 報(bào)告。
9、 一種數(shù)據(jù)交換系統(tǒng),其特征在于,包括 交換接口控制器,用于向輸入端口單元發(fā)送數(shù)據(jù)包; 輸入端口單元,用于接收數(shù)據(jù)包,并根據(jù)所述數(shù)據(jù)包中所攜帶的輸出端口地址信息,向所述輸出端口地址信息對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求; 輸出端口單元,用于接收輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求,當(dāng)同時(shí)接收到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),判斷接收所述多個(gè)輸入端口中哪 些輸入端口中的數(shù)據(jù)包,并調(diào)度所述輸出端口單元內(nèi)的輸出端口緩存,用以 進(jìn)行數(shù)據(jù)包接收。
10、 根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,還包括反壓機(jī)制控制 單元,用于監(jiān)控輸出端口緩存的使用狀態(tài),并向交換接口控制器發(fā)送使用狀 態(tài)報(bào)告。
全文摘要
本發(fā)明實(shí)施例公開(kāi)了一種數(shù)據(jù)交換方法、裝置和系統(tǒng)。其中,該方法包括輸入端口根據(jù)接收到的數(shù)據(jù)包中攜帶的輸出端口地址信息,向所述輸出端口地址信息對(duì)應(yīng)的輸出端口發(fā)起數(shù)據(jù)包發(fā)送請(qǐng)求;當(dāng)所述輸出端口同時(shí)接收到多個(gè)輸入端口發(fā)起的數(shù)據(jù)包發(fā)送請(qǐng)求時(shí),所述輸出端口判斷接收所述多個(gè)輸入端口中哪些輸入端口中的數(shù)據(jù)包;所述輸出端口調(diào)度該輸出端口內(nèi)的輸出端口緩存,用以進(jìn)行數(shù)據(jù)包接收。由于該技術(shù)方案采取了在輸出端口處對(duì)輸入端口的數(shù)據(jù)包的接收順序進(jìn)行仲裁,這樣,輸出端口處的緩存與輸入端口之間就不必一一對(duì)應(yīng),輸入端口處緩存與輸入端口交叉點(diǎn)上的緩存就可省去,這種方式在很大程度上節(jié)省了緩存的使用數(shù)量,降低了交換設(shè)備的制造成本。
文檔編號(hào)H04L12/56GK101582854SQ20091014722
公開(kāi)日2009年11月18日 申請(qǐng)日期2009年6月12日 優(yōu)先權(quán)日2009年6月12日
發(fā)明者臧大軍, 陳武茂 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1