專利名稱:仿真路由分析測(cè)試的裝置及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信設(shè)備仿真測(cè)試技術(shù)領(lǐng)域,尤其涉及一種仿真路由分析測(cè)試的裝置及其方法。
背景技術(shù):
在網(wǎng)絡(luò)通信過程中,是網(wǎng)絡(luò)交換機(jī)將各種網(wǎng)絡(luò)通信設(shè)備連接在一起。如圖1所示,通過網(wǎng)絡(luò)交換機(jī)可以將不同類型的網(wǎng)絡(luò)通信設(shè)備連接在一起,實(shí)現(xiàn)相應(yīng)的網(wǎng)絡(luò)通信功能。
網(wǎng)絡(luò)交換機(jī)具有多個(gè)端口,端口的類型可以是不一樣的,有的可以是雙絞線以太網(wǎng)口,有的可以是連接SDH(同步數(shù)字序列)設(shè)備的光纖端口,有的可以是連接ATM(異步傳輸模式)設(shè)備的光纖端口,等等。根據(jù)網(wǎng)絡(luò)交換機(jī)的功能的不同,其提供的端口數(shù)量和種類也各不相同。網(wǎng)絡(luò)交換機(jī)的一項(xiàng)重要功能就是將從某個(gè)設(shè)備過來的數(shù)據(jù)包正確的轉(zhuǎn)發(fā)到目的設(shè)備。
同時(shí),為了充分利用網(wǎng)絡(luò)通信設(shè)備間的連接線纜,使其能夠承載更多的業(yè)務(wù),可以在同一條線纜上劃分出多個(gè)傳輸通道。劃分的方法可以是按照不同的時(shí)間傳輸不同的業(yè)務(wù)數(shù)據(jù),也可以按照不同的傳輸頻率傳輸不同的業(yè)務(wù),這樣在一條物理線纜上劃分出來的不同傳輸通道,我們這里稱為虛通道,可以將許多虛通道分組,這樣一個(gè)虛通道的標(biāo)識(shí)由組號(hào)和在組內(nèi)的編號(hào)唯一確定。
網(wǎng)絡(luò)交換機(jī)的核心部件是路由轉(zhuǎn)發(fā)芯片,是一個(gè)大規(guī)模數(shù)字邏輯芯片,報(bào)文的正確轉(zhuǎn)發(fā)都是在路由轉(zhuǎn)發(fā)芯片內(nèi)完成的。從路由轉(zhuǎn)發(fā)芯片的角度看,網(wǎng)絡(luò)交換機(jī)的外部連接設(shè)備都與它連接,路由轉(zhuǎn)發(fā)芯片也有許多端口,稱其為物理端口,它的物理端口連線是印刷電路板上的一組導(dǎo)線。路由轉(zhuǎn)發(fā)芯片通過接口芯片才能與網(wǎng)絡(luò)交換機(jī)的外部連接設(shè)備連接,接口芯片是網(wǎng)絡(luò)交換機(jī)的外部連接設(shè)備的映像,如圖2所示,接口芯片可以等效表示為相應(yīng)的接口設(shè)備。
路由轉(zhuǎn)發(fā)芯片的有些物理端口可以同時(shí)連接多個(gè)外部設(shè)備,當(dāng)然這些設(shè)備的類型是相同的,比如都是ATM設(shè)備,各設(shè)備共享同一個(gè)路由轉(zhuǎn)發(fā)芯片的物理端口。這是因?yàn)橛∷迳系囊唤M導(dǎo)線能夠以很高的速度傳輸數(shù)據(jù),遠(yuǎn)比線纜的傳輸數(shù)據(jù)的速度高,所以低速外部設(shè)備可以分時(shí)共享路由轉(zhuǎn)發(fā)芯片的一個(gè)物理端口。
路由轉(zhuǎn)發(fā)芯片的關(guān)鍵任務(wù)之一是將某個(gè)接口設(shè)備(如某個(gè)虛通道上的業(yè)務(wù)報(bào)文)的數(shù)據(jù)包轉(zhuǎn)發(fā)到其它設(shè)備(如某個(gè)虛通道上),即實(shí)現(xiàn)路由轉(zhuǎn)發(fā)功能。為保證路由轉(zhuǎn)發(fā)芯片的功能可靠,在路由轉(zhuǎn)發(fā)芯片設(shè)計(jì)時(shí),需要采用仿真驗(yàn)證的方式驗(yàn)證其轉(zhuǎn)發(fā)數(shù)據(jù)包功能的可靠性。
目前,常規(guī)的進(jìn)行仿真驗(yàn)證的方法是測(cè)試人員編寫復(fù)雜的測(cè)試程序進(jìn)行測(cè)試,或者在開發(fā)樣機(jī)上測(cè)試。如圖3所示,在現(xiàn)有的路由轉(zhuǎn)發(fā)芯片仿真驗(yàn)證方法中,由激勵(lì)報(bào)文產(chǎn)生器輸出數(shù)據(jù)包給路由轉(zhuǎn)發(fā)芯片,同時(shí)還將數(shù)據(jù)包的一個(gè)拷貝輸出到路由轉(zhuǎn)發(fā)芯片參考模型,路由轉(zhuǎn)發(fā)芯片參考模型完成與路由轉(zhuǎn)發(fā)芯片相似的功能。路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型均將自己輸出的數(shù)據(jù)包傳遞到目的物理端口的數(shù)據(jù)包隊(duì)列中,所述的數(shù)據(jù)包隊(duì)列保存于數(shù)據(jù)包比較模塊內(nèi),并由數(shù)據(jù)包比較模塊負(fù)責(zé)比較二者輸出的數(shù)據(jù)包,從而進(jìn)行路由芯片路由轉(zhuǎn)發(fā)功能的測(cè)試。
針對(duì)圖3所示的方法,在具體實(shí)現(xiàn)過程中,通常需要每個(gè)接收路由轉(zhuǎn)發(fā)芯片輸出數(shù)據(jù)包的接口設(shè)備對(duì)應(yīng)一個(gè)數(shù)據(jù)包比較模塊,每個(gè)向路由轉(zhuǎn)發(fā)芯片發(fā)送數(shù)據(jù)包的接口設(shè)備對(duì)應(yīng)一個(gè)激勵(lì)報(bào)文產(chǎn)生器。因此,上述方案具有驗(yàn)證技術(shù)實(shí)現(xiàn)難度及工作量較大,而且開發(fā)生成的驗(yàn)證需要的各個(gè)功能模塊難以被重用等缺點(diǎn)。
發(fā)明內(nèi)容
鑒于上述現(xiàn)有技術(shù)所存在的問題,本發(fā)明的目的是提供一種仿真路由分析測(cè)試的裝置及其方法,從而便利針對(duì)路由分析測(cè)試開發(fā)的功能模塊可以被重復(fù)到各種路由分析測(cè)試過程中,以提高實(shí)現(xiàn)路由分析測(cè)試的效果,降低路由分析測(cè)試的實(shí)現(xiàn)難度。
本發(fā)明的目的是通過以下技術(shù)方案實(shí)現(xiàn)的本發(fā)明提供了一種仿真路由分析測(cè)試的裝置,包括激勵(lì)報(bào)文產(chǎn)生器用于根據(jù)路由分析測(cè)試需要生成報(bào)文發(fā)送給路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型;路由轉(zhuǎn)發(fā)芯片為待測(cè)試的實(shí)體,用于從激勵(lì)報(bào)文產(chǎn)生器接收所述報(bào)文并進(jìn)行路由轉(zhuǎn)發(fā)處理,然后從路由轉(zhuǎn)發(fā)芯片的一個(gè)端口輸出給路由分析測(cè)試模塊;路由轉(zhuǎn)發(fā)芯片參考模型與路由轉(zhuǎn)發(fā)芯片實(shí)現(xiàn)相同的路由轉(zhuǎn)發(fā)功能,從激勵(lì)報(bào)文產(chǎn)生器接收所述報(bào)文并進(jìn)行路由轉(zhuǎn)發(fā)處理,再通知路由分析測(cè)試模塊所述報(bào)文的出路由端口信息,作為所述報(bào)文的預(yù)期出路由端口信息;路由分析測(cè)試模塊;根據(jù)路由轉(zhuǎn)發(fā)芯片發(fā)送來的報(bào)文確定該報(bào)文在路由轉(zhuǎn)發(fā)芯片上的實(shí)際出路由端口信息,并將其與從路由轉(zhuǎn)發(fā)芯片參考模型獲取的預(yù)期出路由端口信息進(jìn)行比較,獲得針對(duì)所述路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試結(jié)果。
所述的路由分析測(cè)試模塊進(jìn)一步包括報(bào)文解析模塊接收路由轉(zhuǎn)發(fā)芯片發(fā)送來的報(bào)文,獲取報(bào)文的實(shí)際出路由端口信息,并通知路由轉(zhuǎn)發(fā)分析模塊;
路由轉(zhuǎn)發(fā)分析模塊分別與報(bào)文解析模塊和路由轉(zhuǎn)發(fā)芯片參考模型連接,獲取所述報(bào)文的預(yù)期出路由端口信息和實(shí)際出路由端口信息,并根據(jù)所述信息確定路由分析測(cè)試結(jié)果。
所述的路由轉(zhuǎn)發(fā)分析模塊中包括預(yù)期出路由端口列表用于記錄每一種報(bào)文的預(yù)期出路由端口信息,所述的預(yù)期出路由端口可以為一個(gè)或多個(gè)。
所述的激勵(lì)報(bào)文產(chǎn)生器及報(bào)文解析模塊與路由轉(zhuǎn)發(fā)芯片的物理端口一一對(duì)應(yīng)。
本發(fā)明還提供了一種仿真路由分析測(cè)試的方法,包括A、由激勵(lì)報(bào)文產(chǎn)生器生成待發(fā)送的報(bào)文,并分別發(fā)送給路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型;B、所述路由轉(zhuǎn)發(fā)芯片對(duì)所述報(bào)文進(jìn)行路由轉(zhuǎn)發(fā)處理,根據(jù)路由轉(zhuǎn)發(fā)處理結(jié)果確定所述報(bào)文的實(shí)際出路由端口信息;所述的路由轉(zhuǎn)發(fā)芯片參考模型對(duì)所述報(bào)文進(jìn)行路由轉(zhuǎn)發(fā)處理,并輸出所述報(bào)文的預(yù)期出路由端口信息;C、根據(jù)所述報(bào)文的實(shí)際出路由端口信息和預(yù)期出路由端口信息確定針對(duì)路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試結(jié)果。
本發(fā)明所述的方法中所述的步驟A還包括針對(duì)每個(gè)生成的待發(fā)送報(bào)文插入一個(gè)數(shù)據(jù)包標(biāo)識(shí);所述的步驟C還包括根據(jù)所述的數(shù)據(jù)包標(biāo)識(shí)確定同一報(bào)文的實(shí)際出路由端口信息和預(yù)期出路由端口信息。
所述的步驟C進(jìn)一步包括根據(jù)路由轉(zhuǎn)發(fā)芯片參考模型確定的報(bào)文的預(yù)期出路由端口信息建立預(yù)期出路由端口列表,表中保存該報(bào)文的預(yù)期出路由端口信息,各個(gè)預(yù)期出路由端口列表以數(shù)據(jù)包標(biāo)識(shí)區(qū)別;獲取所述路由轉(zhuǎn)發(fā)芯片轉(zhuǎn)發(fā)處理的報(bào)文的數(shù)據(jù)包標(biāo)識(shí)及實(shí)際出路由端口信息,并根據(jù)所述的數(shù)據(jù)包標(biāo)識(shí)查找確定對(duì)應(yīng)的預(yù)期出路由端口列表;將所述預(yù)期出路由端口列表中記錄的該報(bào)文的預(yù)期出路由端口信息和該報(bào)文的實(shí)際出路由端口信息進(jìn)行比較獲得路由分析測(cè)試結(jié)果。
所述的預(yù)期出路由端口列表中記錄的報(bào)文的預(yù)期出路由端口可以為一個(gè)或多個(gè)。
所述步驟C還包括C1、根據(jù)路由轉(zhuǎn)發(fā)芯片轉(zhuǎn)發(fā)處理的報(bào)文的數(shù)據(jù)包標(biāo)識(shí)查找對(duì)應(yīng)的預(yù)期出路由端口列表,判斷是否找到,如果找到,執(zhí)行步驟C2,否則,報(bào)告錯(cuò)誤;C2、查看所述報(bào)文的實(shí)際出路由端口是否保存于預(yù)期出路由端口列表中,如果是,則設(shè)置有效的數(shù)據(jù)包輸出標(biāo)志,并執(zhí)行步驟C3,否則報(bào)告錯(cuò)誤;C3、檢查所述的預(yù)期出路由端口列表中是否有未設(shè)置有效的數(shù)據(jù)包輸出標(biāo)志的預(yù)期出路由端口,并根據(jù)檢查結(jié)果確定路由轉(zhuǎn)發(fā)芯片是否發(fā)生丟包。
所述步驟C2還包括當(dāng)查看所述報(bào)文的實(shí)際出路由端口已經(jīng)保存于預(yù)期出路由端口列表中,且該端口已經(jīng)設(shè)置了有效的數(shù)據(jù)包輸出標(biāo)志,則報(bào)告錯(cuò)誤。
所述路由端口信息包括路由轉(zhuǎn)發(fā)芯片的物理端口編號(hào)、連接于路由轉(zhuǎn)發(fā)芯片上的設(shè)備編號(hào)、虛通道編號(hào)信息,并可選地包括子虛通道編號(hào)信息。
由上述本發(fā)明提供的技術(shù)方案可以看出,本發(fā)明提供了一種可以被重復(fù)應(yīng)用到各種路由分析測(cè)試過程中的裝置,可以應(yīng)用于各種路由轉(zhuǎn)發(fā)芯片的仿真測(cè)試驗(yàn)證。因此,本發(fā)明可以提高路由轉(zhuǎn)發(fā)芯片的仿真驗(yàn)證效率和質(zhì)量,并可以有效減少實(shí)現(xiàn)針對(duì)路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試的工作量,提高路由轉(zhuǎn)發(fā)芯片開發(fā)速度。
圖1為網(wǎng)絡(luò)交換機(jī)與網(wǎng)絡(luò)通信設(shè)備的連接結(jié)構(gòu)示意圖;圖2為路由轉(zhuǎn)發(fā)芯片的應(yīng)用環(huán)境示意圖;圖3為現(xiàn)有的路由轉(zhuǎn)發(fā)芯片傳真驗(yàn)證方案示意圖;圖4為本發(fā)明提供的路由轉(zhuǎn)發(fā)芯片傳真驗(yàn)證方案示意圖;圖5為圖4中路上轉(zhuǎn)發(fā)分析模塊的內(nèi)部結(jié)構(gòu)示意圖;圖6和圖7為兩種預(yù)期路由端口的類型示意圖。
具體實(shí)施例方式
本發(fā)明的核心思想是對(duì)路由轉(zhuǎn)發(fā)芯片進(jìn)行抽象建模,并總結(jié)出一個(gè)通用的路由分析測(cè)試過程,以便于開發(fā)的一種針對(duì)路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試工具可以被重復(fù)應(yīng)用于針對(duì)各種路由轉(zhuǎn)發(fā)芯片的仿真測(cè)試過程。
本發(fā)明首先提供了一種仿真路由分析測(cè)試的裝置,所述裝置的具體實(shí)現(xiàn)方式如圖4所示,包括激勵(lì)報(bào)文產(chǎn)生器用于根據(jù)路由分析測(cè)試需要生成待發(fā)送的報(bào)文,之后分別發(fā)送給路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型,以便于根據(jù)所述的報(bào)文的路由轉(zhuǎn)發(fā)處理情況對(duì)路由轉(zhuǎn)發(fā)芯片的路由轉(zhuǎn)發(fā)功能進(jìn)行分析測(cè)試;本發(fā)明應(yīng)用的激勵(lì)報(bào)文產(chǎn)生器與現(xiàn)有技術(shù)涉及的激勵(lì)報(bào)文產(chǎn)生器功能作用相同;路由轉(zhuǎn)發(fā)芯片所述的路由轉(zhuǎn)發(fā)芯片為待測(cè)試的實(shí)體,用于從激勵(lì)報(bào)文產(chǎn)生器接收所述報(bào)文并進(jìn)行路由轉(zhuǎn)發(fā)處理,然后從路由轉(zhuǎn)發(fā)芯片的某一個(gè)確定的端口輸出給路由分析測(cè)試模塊,以便于所述的路由分析測(cè)試模塊可以獲知路由轉(zhuǎn)發(fā)芯片針對(duì)該報(bào)文的轉(zhuǎn)發(fā)處理情況;所述的路由轉(zhuǎn)發(fā)處理是根據(jù)報(bào)文承載的信息在路由轉(zhuǎn)發(fā)芯片上確定相應(yīng)的出端口;路由轉(zhuǎn)發(fā)芯片參考模型與路由轉(zhuǎn)發(fā)芯片實(shí)現(xiàn)相同的路由轉(zhuǎn)發(fā)功能,用于從激勵(lì)報(bào)文產(chǎn)生器接收所述報(bào)文并進(jìn)行路由轉(zhuǎn)發(fā)處理,再通知路由分析測(cè)試模塊所述報(bào)文的出路由端口信息,作為所述報(bào)文的預(yù)期出路由端口信息;所述的路由轉(zhuǎn)發(fā)芯片參考模型是根據(jù)待測(cè)試的路由轉(zhuǎn)發(fā)芯片設(shè)計(jì)的一種路由轉(zhuǎn)發(fā)處理模塊,用于作為路由轉(zhuǎn)發(fā)芯片路由轉(zhuǎn)發(fā)處理是否準(zhǔn)確的標(biāo)準(zhǔn);路由分析測(cè)試模塊;該模塊是本發(fā)明的核心所在,該模塊的作用是根據(jù)路由轉(zhuǎn)發(fā)芯片發(fā)送來的報(bào)文確定該報(bào)文在路由轉(zhuǎn)發(fā)芯片上的實(shí)際出路由端口信息,并將其與從路由轉(zhuǎn)發(fā)芯片參考模型獲取的預(yù)期出路由端口信息進(jìn)行比較,獲得針對(duì)所述路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試結(jié)果,如果所述的實(shí)際出路由端口信息與預(yù)期出路由端口信息一致,則確定該路由轉(zhuǎn)發(fā)芯片路由轉(zhuǎn)發(fā)功能正常,否則,確定所述路由轉(zhuǎn)發(fā)芯片的路由轉(zhuǎn)發(fā)功能有錯(cuò)誤;在具體的實(shí)現(xiàn)過程中,所述的路由分析測(cè)試模塊進(jìn)一步包括報(bào)文解析模塊接收路由轉(zhuǎn)發(fā)芯片發(fā)送來的報(bào)文,獲取報(bào)文的實(shí)際出路由端口信息及報(bào)文的數(shù)據(jù)包ID(標(biāo)識(shí))信息,并通知路由轉(zhuǎn)發(fā)分析模塊,具體為將報(bào)文的數(shù)據(jù)包ID及實(shí)際出路由端口信息注冊(cè)到路由轉(zhuǎn)發(fā)分析模塊中去;路由轉(zhuǎn)發(fā)分析模塊分別與報(bào)文解析模塊和路由轉(zhuǎn)發(fā)芯片參考模型連接,獲取所述報(bào)文的預(yù)期出路由端口信息和實(shí)際出路由端口信息,并根據(jù)所述信息確定路由分析測(cè)試結(jié)果;所述的路由轉(zhuǎn)發(fā)分析模塊中設(shè)置有預(yù)期出路由端口列表,該表用于記錄每一種報(bào)文的預(yù)期出路由端口信息,所述的預(yù)期出路由端口可以為一個(gè)或多個(gè),將報(bào)文的數(shù)據(jù)包ID及實(shí)際出路由端口信息注冊(cè)到路由轉(zhuǎn)發(fā)分析模塊中即為根據(jù)報(bào)文的數(shù)據(jù)包ID查找相應(yīng)的預(yù)期出路由端口列表,并查找表中是否保存有該報(bào)文的實(shí)際出路由端口信息,如果有,則將表中的輸出數(shù)據(jù)包標(biāo)志設(shè)置為有效,這樣,當(dāng)報(bào)文轉(zhuǎn)發(fā)處理過程結(jié)束后,便可以根據(jù)預(yù)期出路由端口列表確定所述路由轉(zhuǎn)發(fā)芯片的路由轉(zhuǎn)發(fā)功能是否正常;由路由轉(zhuǎn)發(fā)芯片參考模型提供的數(shù)據(jù)包的出路由端口(列表)為預(yù)期出口列表,列表中的每個(gè)出路由端口也可以稱為預(yù)期出路由端口。
本發(fā)明中所述的激勵(lì)報(bào)文產(chǎn)生器及報(bào)文解析模塊是與路由轉(zhuǎn)發(fā)芯片的物理端口一一對(duì)應(yīng)的。所述的路由轉(zhuǎn)發(fā)芯片的參考模型和路由轉(zhuǎn)發(fā)分析模塊在測(cè)試一種路由轉(zhuǎn)發(fā)芯片時(shí)各設(shè)置一個(gè)即可,用于通過報(bào)文的出路由端口識(shí)別數(shù)據(jù)包的歸屬。
在仿真環(huán)境下,路由轉(zhuǎn)發(fā)芯片通常是使用硬件設(shè)計(jì)語言HDL描述的,所述的路由轉(zhuǎn)發(fā)芯片,是指邏輯設(shè)計(jì)代碼,根據(jù)該邏輯設(shè)計(jì)代碼可以制造芯片,邏輯設(shè)計(jì)代碼可以用來仿真芯片的功能。路由轉(zhuǎn)發(fā)芯片的參考模型通常是使用高級(jí)語言描述的,比如C++。路由轉(zhuǎn)發(fā)芯片的參考模型完成路由轉(zhuǎn)發(fā)芯片類似的功能,它計(jì)算出輸入數(shù)據(jù)包的出路由端口(對(duì)于組播,是出路由端口列表),并將其注冊(cè)到路由轉(zhuǎn)發(fā)分析模塊中。
本發(fā)明還提供了一種仿真路由分析測(cè)試的方法,下面將結(jié)合附圖對(duì)本發(fā)明所述的方法進(jìn)行詳細(xì)的說明。
如果對(duì)路由轉(zhuǎn)發(fā)芯片進(jìn)行路由分析測(cè)試,首先需要清楚數(shù)據(jù)包相對(duì)于路由轉(zhuǎn)發(fā)芯片的來源和去向,為了很好地描述一個(gè)數(shù)據(jù)包基于所述路由轉(zhuǎn)發(fā)芯片的來源和去向,需要知道數(shù)據(jù)包進(jìn)出路由轉(zhuǎn)發(fā)芯片的物理端口編號(hào)、設(shè)備編號(hào)、虛通道編號(hào);物理端口編號(hào)從0開始遞增,標(biāo)識(shí)路由轉(zhuǎn)發(fā)芯片的每個(gè)物理端口;設(shè)備編號(hào),從0開始遞增,標(biāo)識(shí)連接到同一個(gè)物理端口的所有設(shè)備;如果一個(gè)物理端口只有一個(gè)設(shè)備,設(shè)備編號(hào)就是0;設(shè)備編號(hào)與物理端口編號(hào)組合在一起,才能確定一個(gè)物理設(shè)備;虛通道編號(hào),為了支持虛通道分組,需要兩個(gè)編號(hào)才能唯一確定一個(gè)虛通道,虛組通道編號(hào)和虛子通道編號(hào);沒有虛通道分組的情況,可以認(rèn)為所有虛通道都在一個(gè)虛通道組內(nèi),此時(shí)虛組通道編號(hào)為0;至此,數(shù)據(jù)包的來源和去向就可以用物理端口編號(hào)、設(shè)備編號(hào)、虛組通道編號(hào)和虛子通道編號(hào)四個(gè)數(shù)字來進(jìn)行表示,這一組4個(gè)數(shù)字稱為路由端口信息;在沒有使用虛通道的情況下,虛組通道編號(hào)和虛子通道編號(hào)可以設(shè)置為-1,或者其他區(qū)別于通道編號(hào)的數(shù)字標(biāo)識(shí)。
所述的路由轉(zhuǎn)發(fā)芯片處理報(bào)文通常有以下三種方式1、單播數(shù)據(jù)包一個(gè)數(shù)據(jù)包從某個(gè)路由端口輸入,唯一的從某個(gè)路由端口輸出;2、組播數(shù)據(jù)包一個(gè)數(shù)據(jù)包從某個(gè)路由端口輸入,拷貝多份從不同的路由端口輸出;3、為了提高數(shù)據(jù)吞吐速率,還可以設(shè)計(jì)幾個(gè)物理端口“捆綁”在一起進(jìn)行傳輸數(shù)據(jù),一個(gè)輸出報(bào)文可以從這幾個(gè)“捆綁”的物理端口中的任意一個(gè)端口出來,但不能從其中的2個(gè)或多個(gè)物理端口出來形成多份拷貝。這種路由端口被稱為“捆綁”路由端口。
本發(fā)明所述方法的具體實(shí)現(xiàn)方式具體包括以下步驟步驟1由激勵(lì)報(bào)文產(chǎn)生器生成待發(fā)送的報(bào)文,并分別發(fā)送給路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型;針對(duì)每個(gè)生成的待發(fā)送報(bào)文還需要插入一個(gè)唯一的數(shù)據(jù)包ID,以便于識(shí)別不同的報(bào)文,并基于不同的報(bào)文分別進(jìn)行路由分析測(cè)試,所述的數(shù)據(jù)包ID是一個(gè)數(shù)據(jù)編號(hào),且該數(shù)據(jù)包標(biāo)識(shí)可以被報(bào)文解析模塊提??;所述的數(shù)據(jù)包ID是全局性的,即所有激勵(lì)報(bào)文產(chǎn)生器輸出的數(shù)據(jù)包在一起編號(hào),不存在有相同編號(hào)的數(shù)據(jù)包。
步驟2所述的激勵(lì)報(bào)文產(chǎn)生器生成相應(yīng)的報(bào)文并發(fā)送給路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型后,便由所述的路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型分別對(duì)其進(jìn)行路由轉(zhuǎn)發(fā)處理;所述路由轉(zhuǎn)發(fā)芯片對(duì)所述報(bào)文進(jìn)行路由轉(zhuǎn)發(fā)處理,并發(fā)送給報(bào)文解析模塊;所述的路由轉(zhuǎn)發(fā)芯片參考模型對(duì)所述報(bào)文進(jìn)行路由轉(zhuǎn)發(fā)處理,并輸出所述報(bào)文的預(yù)期出路由端口信息給路由轉(zhuǎn)發(fā)分析模塊。
步驟3在路由轉(zhuǎn)發(fā)分析模塊中,根據(jù)路由轉(zhuǎn)發(fā)芯片參考模型確定的報(bào)文的預(yù)期出路由端口信息建立預(yù)期出路由端口列表;即如圖5所示,路由轉(zhuǎn)發(fā)分析模塊內(nèi)部存儲(chǔ)一個(gè)預(yù)期出口列表隊(duì)列,每個(gè)預(yù)期出口列表以數(shù)據(jù)包ID為索引,開始仿真時(shí),預(yù)期出口列表隊(duì)列是空的;表中保存該報(bào)文的預(yù)期出路由端口信息,每一個(gè)報(bào)文對(duì)應(yīng)一個(gè)預(yù)期出路由端口列表,所述的列表中還包括輸出數(shù)據(jù)包標(biāo)志信息,用于記錄路由轉(zhuǎn)發(fā)芯片的相應(yīng)端口是否輸出數(shù)據(jù)報(bào)文;所述的預(yù)期出路由端口列表中記錄的報(bào)文的預(yù)期出路由端口可以為一個(gè)或多個(gè);所述的路由端口可以是“捆綁”路由端口,也可以是單個(gè)路由端口,如圖6和圖7所示。
同時(shí),路由轉(zhuǎn)發(fā)分析模塊還從報(bào)文解析模塊獲取所述路由轉(zhuǎn)發(fā)芯片轉(zhuǎn)發(fā)處理的報(bào)文的數(shù)據(jù)包標(biāo)識(shí)及實(shí)際出路由端口信息,并根據(jù)所述的數(shù)據(jù)包標(biāo)識(shí)查找確定對(duì)應(yīng)的預(yù)期出路由端口列表;所述的報(bào)文解析模塊用于接收路由轉(zhuǎn)發(fā)芯片發(fā)來的報(bào)文,并提取報(bào)文的數(shù)據(jù)包ID,之后與所述報(bào)文的實(shí)際出路由端口信息一起發(fā)送給路由轉(zhuǎn)發(fā)分析模塊。
步驟4路由轉(zhuǎn)發(fā)分析模塊根據(jù)報(bào)文解析模塊發(fā)來的路由轉(zhuǎn)發(fā)芯片轉(zhuǎn)發(fā)處理的報(bào)文的數(shù)據(jù)包標(biāo)識(shí)查找對(duì)應(yīng)的預(yù)期出路由端口列表,判斷是否找到,如果找到,執(zhí)行步驟5,否則,報(bào)告出現(xiàn)錯(cuò)誤;步驟5查看所述報(bào)文的實(shí)際出路由端口是否保存于預(yù)期出路由端口列表中,如果是,則在所述的預(yù)期出路由端口列表中設(shè)置相應(yīng)的數(shù)據(jù)包輸出標(biāo)志為有效,并執(zhí)行步驟6,否則,報(bào)告出現(xiàn)錯(cuò)誤;在該步驟中,如果查看所述報(bào)文的實(shí)際出路由端口已經(jīng)保存于預(yù)期出路由端口列表中,且該端口對(duì)應(yīng)的表項(xiàng)已經(jīng)設(shè)置了有效的數(shù)據(jù)包輸出標(biāo)志,則報(bào)告出現(xiàn)錯(cuò)誤;步驟6當(dāng)報(bào)文的轉(zhuǎn)發(fā)處理過程結(jié)束后,檢查所述的預(yù)期出路由端口列表中是否有未設(shè)置有效的數(shù)據(jù)包輸出標(biāo)志的預(yù)期出路由端口,并根據(jù)檢查結(jié)果確定路由轉(zhuǎn)發(fā)芯片是否發(fā)生丟包,即根據(jù)路由轉(zhuǎn)發(fā)分析模塊中的預(yù)期出路由端口列表中記錄的內(nèi)容信息確定所述的路由轉(zhuǎn)發(fā)芯片的路由轉(zhuǎn)發(fā)功能是否正常,以獲得所述路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試結(jié)果;在步驟6中,如果預(yù)期出路由端口是“捆綁”路由端口,則當(dāng)報(bào)文解析模塊提供的報(bào)文的實(shí)際出路由端口與“捆綁”路由端口中的某個(gè)預(yù)期出路由端口一致,即認(rèn)為在該“捆綁”的預(yù)期出路由端口上有數(shù)據(jù)包輸出,設(shè)置對(duì)應(yīng)的輸出數(shù)據(jù)包標(biāo)志有效;針對(duì)所述的路由轉(zhuǎn)發(fā)分析模塊中的預(yù)期出路由端口列表可以采用自動(dòng)的方法對(duì)其進(jìn)行檢查,自動(dòng)檢查可以檢查出尚未輸出報(bào)文的預(yù)期出路由端口,從而確定路由轉(zhuǎn)發(fā)芯片是否丟棄了數(shù)據(jù)包,即通過對(duì)預(yù)期出路由端口列表的自動(dòng)檢查便可以獲知路由轉(zhuǎn)發(fā)芯片的路由轉(zhuǎn)發(fā)處理性能。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求書的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種仿真路由分析測(cè)試的裝置,其特征在于,包括激勵(lì)報(bào)文產(chǎn)生器用于根據(jù)路由分析測(cè)試需要生成報(bào)文發(fā)送給路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型;路由轉(zhuǎn)發(fā)芯片為待測(cè)試的實(shí)體,用于從激勵(lì)報(bào)文產(chǎn)生器接收所述報(bào)文并進(jìn)行路由轉(zhuǎn)發(fā)處理,然后從路由轉(zhuǎn)發(fā)芯片的一個(gè)端口輸出給路由分析測(cè)試模塊;路由轉(zhuǎn)發(fā)芯片參考模型與路由轉(zhuǎn)發(fā)芯片實(shí)現(xiàn)相同的路由轉(zhuǎn)發(fā)功能,從激勵(lì)報(bào)文產(chǎn)生器接收所述報(bào)文并進(jìn)行路由轉(zhuǎn)發(fā)處理,再通知路由分析測(cè)試模塊所述報(bào)文的出路由端口信息,作為所述報(bào)文的預(yù)期出路由端口信息;路由分析測(cè)試模塊;根據(jù)路由轉(zhuǎn)發(fā)芯片發(fā)送來的報(bào)文確定該報(bào)文在路由轉(zhuǎn)發(fā)芯片上的實(shí)際出路由端口信息,并將其與從路由轉(zhuǎn)發(fā)芯片參考模型獲取的預(yù)期出路由端口信息進(jìn)行比較,獲得針對(duì)所述路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試結(jié)果。
2.根據(jù)權(quán)利要求1所述的仿真路由分析測(cè)試的裝置,其特征在于,所述的路由分析測(cè)試模塊進(jìn)一步包括報(bào)文解析模塊接收路由轉(zhuǎn)發(fā)芯片發(fā)送來的報(bào)文,獲取報(bào)文的實(shí)際出路由端口信息,并通知路由轉(zhuǎn)發(fā)分析模塊;路由轉(zhuǎn)發(fā)分析模塊分別與報(bào)文解析模塊和路由轉(zhuǎn)發(fā)芯片參考模型連接,獲取所述報(bào)文的預(yù)期出路由端口信息和實(shí)際出路由端口信息,并根據(jù)所述信息確定路由分析測(cè)試結(jié)果。
3.根據(jù)權(quán)利要求2所述的仿真路由分析測(cè)試的裝置,其特征在于,所述的路由轉(zhuǎn)發(fā)分析模塊中包括預(yù)期出路由端口列表用于記錄每一種報(bào)文的預(yù)期出路由端口信息,所述的預(yù)期出路由端口可以為一個(gè)或多個(gè)。
4.根據(jù)權(quán)利要求2所述的仿真路由分析測(cè)試的裝置,其特征在于,所述的激勵(lì)報(bào)文產(chǎn)生器及報(bào)文解析模塊與路由轉(zhuǎn)發(fā)芯片的物理端口一一對(duì)應(yīng)。
5.一種仿真路由分析測(cè)試的方法,其特征在于,包括A、由激勵(lì)報(bào)文產(chǎn)生器生成待發(fā)送的報(bào)文,并分別發(fā)送給路由轉(zhuǎn)發(fā)芯片和路由轉(zhuǎn)發(fā)芯片參考模型;B、所述路由轉(zhuǎn)發(fā)芯片對(duì)所述報(bào)文進(jìn)行路由轉(zhuǎn)發(fā)處理,根據(jù)路由轉(zhuǎn)發(fā)處理結(jié)果確定所述報(bào)文的實(shí)際出路由端口信息;所述的路由轉(zhuǎn)發(fā)芯片參考模型對(duì)所述報(bào)文進(jìn)行路由轉(zhuǎn)發(fā)處理,并輸出所述報(bào)文的預(yù)期出路由端口信息;C、根據(jù)所述報(bào)文的實(shí)際出路由端口信息和預(yù)期出路由端口信息確定針對(duì)路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試結(jié)果。
6.根據(jù)權(quán)利要求5所述的仿真路由分析測(cè)試的方法,其特征在于所述的步驟A還包括針對(duì)每個(gè)生成的待發(fā)送報(bào)文插入一個(gè)數(shù)據(jù)包標(biāo)識(shí);所述的步驟C還包括根據(jù)所述的數(shù)據(jù)包標(biāo)識(shí)確定同一報(bào)文的實(shí)際出路由端口信息和預(yù)期出路由端口信息。
7.根據(jù)權(quán)利要求5或6所述的仿真路由分析測(cè)試的方法,其特征在于,所述的步驟C進(jìn)一步包括根據(jù)路由轉(zhuǎn)發(fā)芯片參考模型確定的報(bào)文的預(yù)期出路由端口信息建立預(yù)期出路由端口列表,表中保存該報(bào)文的預(yù)期出路由端口信息,各個(gè)預(yù)期出路由端口列表以數(shù)據(jù)包標(biāo)識(shí)區(qū)別;獲取所述路由轉(zhuǎn)發(fā)芯片轉(zhuǎn)發(fā)處理的報(bào)文的數(shù)據(jù)包標(biāo)識(shí)及實(shí)際出路由端口信息,并根據(jù)所述的數(shù)據(jù)包標(biāo)識(shí)查找確定對(duì)應(yīng)的預(yù)期出路由端口列表;將所述預(yù)期出路由端口列表中記錄的該報(bào)文的預(yù)期出路由端口信息和該報(bào)文的實(shí)際出路由端口信息進(jìn)行比較獲得路由分析測(cè)試結(jié)果。
8.根據(jù)權(quán)利要求7所述的仿真路由分析測(cè)試的方法,其特征在于,所述的預(yù)期出路由端口列表中記錄的報(bào)文的預(yù)期出路由端口可以為一個(gè)或多個(gè)。
9.根據(jù)權(quán)利要求5或6所述的仿真路由分析測(cè)試的方法,其特征在于,所述步驟C還包括C1、根據(jù)路由轉(zhuǎn)發(fā)芯片轉(zhuǎn)發(fā)處理的報(bào)文的數(shù)據(jù)包標(biāo)識(shí)查找對(duì)應(yīng)的預(yù)期出路由端口列表,判斷是否找到,如果找到,執(zhí)行步驟C2,否則,報(bào)告錯(cuò)誤;C2、查看所述報(bào)文的實(shí)際出路由端口是否保存于預(yù)期出路由端口列表中,如果是,則設(shè)置有效的數(shù)據(jù)包輸出標(biāo)志,并執(zhí)行步驟C3,否則報(bào)告錯(cuò)誤;C3、檢查所述的預(yù)期出路由端口列表中是否有未設(shè)置有效的數(shù)據(jù)包輸出標(biāo)志的預(yù)期出路由端口,并根據(jù)檢查結(jié)果確定路由轉(zhuǎn)發(fā)芯片是否發(fā)生丟包。
10.根據(jù)權(quán)利要求9所述的仿真路由分析測(cè)試的方法,其特征在于,所述步驟C2還包括當(dāng)查看所述報(bào)文的實(shí)際出路由端口已經(jīng)保存于預(yù)期出路由端口列表中,且該端口已經(jīng)設(shè)置了有效的數(shù)據(jù)包輸出標(biāo)志,則報(bào)告錯(cuò)誤。
11.根據(jù)權(quán)利要求5或6所述的仿真路由分析測(cè)試的方法,其特征在于,所述路由端口信息包括路由轉(zhuǎn)發(fā)芯片的物理端口編號(hào)、連接于路由轉(zhuǎn)發(fā)芯片上的設(shè)備編號(hào)、虛通道編號(hào)信息,并可選地包括子虛通道編號(hào)信息。
全文摘要
本發(fā)明涉及一種仿真路由分析測(cè)試的裝置及其方法。本發(fā)明的核心思想是對(duì)路由轉(zhuǎn)發(fā)芯片進(jìn)行抽象建模,并總結(jié)出一個(gè)通用的路由分析測(cè)試過程,以便于開發(fā)的一種針對(duì)路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試工具可以被重復(fù)應(yīng)用于針對(duì)各種路由轉(zhuǎn)發(fā)芯片的仿真測(cè)試過程。本發(fā)明提供一種路由分析測(cè)試裝置可以被重復(fù)應(yīng)用到各種路由分析測(cè)試過程中,用于對(duì)各種路由轉(zhuǎn)發(fā)芯片的仿真測(cè)試驗(yàn)證。因此,本發(fā)明可以提高路由轉(zhuǎn)發(fā)芯片的仿真驗(yàn)證效率和質(zhì)量,并可以有效減少實(shí)現(xiàn)針對(duì)路由轉(zhuǎn)發(fā)芯片的路由分析測(cè)試的工作量,提高路由轉(zhuǎn)發(fā)芯片開發(fā)速度。
文檔編號(hào)H04L12/56GK1855855SQ200510066580
公開日2006年11月1日 申請(qǐng)日期2005年4月28日 優(yōu)先權(quán)日2005年4月28日
發(fā)明者王進(jìn)成, 易敏 申請(qǐng)人:華為技術(shù)有限公司