專利名稱:一種在寬帶網絡中實現大業務量數據測試的裝置的制作方法
技術領域:
本發明涉及數據測試技術,特別是指一種適用于寬帶網絡中的由網絡處理器(NP)產生大業務量數據進行測試的裝置。
背景技術:
隨著計算機寬帶網絡不斷發展,對網絡系統的性能測試、兼容性測試、故障診斷定位以及可靠性測試等提出了很高的要求。目前,對于寬帶網絡主要有三種常用的測試手段1)利用用戶終端完成測試功能;2)采用網絡設備完成測試診斷功能;3)采用專用的寬帶測試設備實現診斷測試功能。
針對第一種方式,利用用戶終端完成測試是最簡單、最直接的網絡系統測試,借助網絡用戶終端設備完成。例如使用一臺個人電腦,運行ping命令,指定寬帶網上任意一臺服務器的IP地址,根據命令執行結果即可檢查出個人電腦與服務器之間的寬帶網絡連接是否正常。但這種方法能提供的信息非常有限,不能進一步測試出網絡性能如何,不能測試網絡協議處理是否正常以及兼容性如何等信息,尤其在大容量網絡設備間,如交換機之間進行數據測試時,該方法產生的測試數據流量小、內容單一,系統中的很多問題不能檢測出來。
針對第二種方式,采用網絡設備進行測試是指利用網絡設備自身的診斷功能,由于現有的網絡設備對可維護性、故障自診斷功能都有較高要求,一般都能進行自檢環回、業務通道例行測試,通常是借用設備的維護管理通道進行,由系統中的嵌入式CPU通過管理接口產生一定量的數據包插入業務流中,再通過遠端環回或響應來判斷被檢測的數據鏈路是否正常。這種方法與第一種方法相比檢測功能更強,實現更方便、靈活,使用更廣泛,但該方法依然難以產生大業務量的測試數據流,不能充分發現被測系統性能方面存在的缺陷。
針對第三種方式,專用寬帶測試儀器的功能強大,并有各種不同的網絡接口模塊和軟件協議模塊可供選擇,可對寬帶網絡進行全面、多層次的測試與分析,如Spirent公司的SmartBits系列,Ixia公司的IXIA系列,Agilent公司的Router Tester系列等等,但寬帶測試設備價格昂貴,一般根據測試功能配置不同需要幾萬、幾十萬甚至上百萬美元的成本。
在寬帶網絡中,由于對網絡設備靈活性、擴展性和處理能力要求的不斷提高,網絡處理器(NP)越來越多的被應用于網絡設備之中。網絡處理器在自身良好的硬件體系結構和專門針對網絡處理優化部件結構設計的基礎上,提供了可編程控制的軟件環境。網絡處理器主要包括構成多處理器系統的多個片內處理器、高速I/O接口單元、內部高速總線、存儲器、專用指令集合和專用組件。其中,所有片內處理器按任務分工劃分為核心和轉發引擎兩種類型,核心片內處理器用于系統維護和管理以及復雜數據處理,轉發引擎片內處理器用于快速數據處理,提供分類、調度等服務功能,進一步含有多個硬件線程。高速I/O接口單元提供豐富的接口,如物理鏈路接口、交換接口、存儲器接口以及與其它外部處理單元的接口。內部高速總線具有很強的并行處理能力。存儲器包含多種不同性能的存儲結構,例如Flash用于存放硬件啟動/引導程序;靜態隨機存取存儲器(SRAM)存放路由表、隊列結構等各種查詢表格;同步動態隨機存取存儲器(SDRAM)作為緩沖區存放分組數據。專用指令集是指片內轉發引擎針對網絡數據處理的優化一般具有專用的精簡指令集,數據處理優化指數據讀寫、狀態判斷、堆棧操作、哈希查找等等。專用組件也就是協處理器,要求處理速度達到接口支持的最高速度的通用功能模塊可以由硬件來實現,作為專用組件,例如路由查找和數據加密等,以提高系統性能。
網絡處理器可用于開發從第二層到第七層的各種網絡服務和應用,例如交換、路由、虛擬專用網、多協議標記交換、服務質量、計費、負載均衡、安全和監測等。網絡處理器能用于各種用戶端、網絡邊緣/接入和網絡核心/骨干的設備,例如智能交換機、防火墻、企業路由器、核心路由器、遠程訪問服務器等。比較典型的網絡處理器產品有Intel公司的IXP1200,IXP2400和IXP2800系列、IBM公司的NP4GS1和NP4GS3系列等。
由于網絡處理器可應用于多種設備、多種環境下,且具有可編程特性和高速處理能力,能夠產生大業務量的數據,因此,可將網絡處理器運用于寬帶網絡的測試中,使其既能將產生大業務量的數據作為測試數據,又能根據用戶需求通過編程控制測試的執行。但是,目前尚未有人提出采用網絡處理器實現數據測試的技術。
發明內容
有鑒于此,本發明的主要目的在于提供一種在寬帶網絡中實現大業務量數據測試的裝置,使其能產生大業務量的測試數據,支持寬帶網絡的各類測試,且成本低,實現方便、簡單、靈活。
為達到上述目的,本發明的技術方案是這樣實現的一種在寬帶網絡中實現大業務量數據測試的裝置,包括生成大業務量數據的網絡處理單元,主要由核心處理器、一個以上高速數據處理器、至少一個存儲接口單元以及至少一個總線接口單元組成;測試控制模塊,用于控制大業務量數據的產生、發送和統計分析,進一步包括測試數據管理模塊、測試數據處理模塊和共享數據存儲區;測試接口,用于連接被測試設備;測試數據處理模塊控制網絡處理單元中的高速數據處理器將測試數據管理模塊配置的發送數據生成大業務量的測試數據,通過測試接口輸出;從測試接口接收的數據,由網絡處理單元中的高速數據處理器送入測試控制模塊的共享數據存儲區,測試數據管理模塊對共享數據存儲區中的數據進行統計、分析和記錄。
其中,所述的網絡處理單元為網絡處理器。所述共享數據存儲區進一步分為存放產生測試數據流數據的發送數據區、存放接收到數據的接收數據區、存放與接收數據進行比較的數據的比較數據區、以及存放統計分析結果的統計數據區。
所述的測試接口為千兆以太網(GE)接口、或10/100M快速以太網接口、或基于光同步數字網的分組傳輸(POS)接口、或異步傳輸模式(ATM)接口、或E1/E3接口。
該裝置進一步包括只讀存儲器和SDRAM,均與所述網絡處理單元中的存儲接口單元相連,所述的測試控制模塊存儲于與所述只讀存儲器中,且運行于SDRAM中。
因此,本發明所提供的在寬帶網絡中實現大業務量數據測試的裝置,具有以下的優點和特點1)本發明可直接利用現有的各種網絡處理器實現,那么,對于具有網絡處理器的網絡設備只需要簡單的改進,對沒有網絡處理器的網絡設備則將本發明的測試裝置直接設置與相應的網絡設備中,應用簡單,易于實施,不僅為大業務量數據測試、診斷提供了解決辦法,且降低了設備成本和測試成本。
2)由于本發明的測試裝置直接設置于某個或某幾個網絡設備中,就可以實現自檢、環回或配合測試,因此,對已有的組網沒有任何影響,一方面能保證網絡正常工作,另一方面又能同時實現用戶所需的基于寬帶網的大業務量數據測試。
3)本發明測試裝置中的大業務量測試數據產生,以及對測試數據的統計分析、獲取用戶所需的測試結果,都是采用硬件支持、軟件控制,因此,可根據需要進行調整、配置,實現更方便,運用更靈活。
4)本發明的測試裝置在開發制造上,可借助本身強大的測試能力對其自身進行充分的質量檢驗;同樣,在其它設備的開發制造時,可直接利用本發明的測試裝置替代專用的測試儀器進行性能上的檢驗、測試。那么,在達到相同測試效果的前提下,可大大的降低測試費用和設備開發成本。
5)在網絡開通或設備調試時,可采用本發明的測試裝置完成全面的系統測試驗證以及故障診斷定位,而不需要昂貴的或大型的專用測試儀器,可見,本發明在實際應用中非常方便,且實用性強、適用范圍廣。
6)在實際應用環境中,不需要增加額外設備,可利用本發明配合網管系統實現系統例行測試、遠程故障診斷、預警等功能。比如可定期在空閑網絡帶寬中插入測試數據流監視網絡運行情況,隨時發現網絡性能下降等隱蔽故障,進而提高系統自診斷能力;在系統出現故障時,通過遠程啟動不同方向和路徑的測試數據流,有助于迅速定位問題點,以便快速排除故障,進而提高網絡的整體服務質量。
圖1為本發明測試裝置的組成結構示意圖;圖2為本發明一實施例的硬件組成連接示意圖;圖3為本發明軟件實現組成結構的一實施例示意圖;圖4為應用本發明實現自檢測試實施例的數據流向示意圖;圖5為應用本發明實現對外測試實施例的數據流向示意圖;圖6為應用本發明實現對外環回測試實施例的組網結構示意圖;圖7為應用本發明實現對外配合測試實施例的組網結構示意圖;圖8為應用本發明實現性能參數測試的測試原理示意圖。
具體實施例方式
圖1為本發明測試裝置的組成結構示意圖,如圖1所示,本發明的測試裝置主要包括能生成大業務量數據的網絡處理單元,主要由核心處理器、一個以上高速數據處理器、至少一個存儲接口單元以及至少一個總線接口單元組成,其中核心處理器、高速數據處理器、存儲接口單元和總線接口單元通過總線相連;測試控制模塊,用于控制大業務量數據的產生、發送和統計分析,進一步包括測試數據管理模塊、測試數據處理模塊和共享數據存儲區,測試數據管理模塊和測試數據處理模塊同時與共享數據存儲區,用來向存儲區內存儲數據或從存儲區內提取數據進行處理;測試接口,用于連接被測試設備;測試接口與網絡處理單元中的總線接口單元相連。
測試數據管理模塊將配置的發送數據放入共享數據存儲區中,由測試數據處理模塊控制網絡處理單元中的高速數據處理器利用發送數據產生大業務量的測試數據,通過測試接口輸出;從測試接口接收的數據,由網絡處理單元中的高速數據處理器送入測試控制模塊的共享數據存儲區中,進行統計、分析,產生的統計結果可由測試數據管理模塊上報。
在實際應用中,本發明測試裝置中生成大業務量數據的網絡處理單元可由任何的網絡處理器實現,下面以Intel公司的網絡處理器IXP1200為例,詳細說明本發明測試裝置實現大業務量數據測試的工作原理。
本實施例中,網絡處理器IXP1200的核心處理器為主頻最高達232MHz的處理核心StrongARM Core;高速數據處理器為六個RISC結構的可編程微引擎(Microengine),每個微引擎又包含四個硬件線程;該網絡處理器IXP1200還包括一個32位的SRAM接口單元和一個64位的SDRAM接口單元作為存儲接口單元;這里的總線接口單元則是指64位和最高85MHz的IX Bus接口、32位和最高66MHz的PCI總線接口單元。
本實施例中,網絡處理器通過一個千兆以太網(GE)接口與被測設備相連進行測試,即將該GE接口作為測試接口。圖2為IXP1200通過GE接口進行測試的硬件結構示意圖,如圖2所示,IXP1200通過自身的IX Bus總線接口單元經由先入先出總線(FIFO Bus)與GE的MAC層接口單元相連,進而通過GE MAC接口單元、GE物理層(PHY)接口單元與被測設備連接。實際應用時,可根據當前的網絡環境或需求在不同的網絡接口上實現測試,如通過10/100M快速以太網接口、POS接口、各種速率的ATM接口、E1/E3接口等與被測設備相連。
參見圖2所示,本實施例中,本發明測試裝置中的測試控制模塊設置于只讀存儲器(ROM)中,如此可保證加電不丟失。在運行時,測試控制模塊中的控制軟件加載于SDRAM之中,SDRAM中的存儲空間被劃分為多塊,分別用來存儲StrongARM Core核心處理器和多個微引擎的公有信息,以及StrongARMCore核心處理器和不同微引擎各自的私有信息。本實施例可通過SDRAM與IXP1200之間的連接傳輸控制信令和數據,控制IXP1200中相應的微引擎產生大業務量的測試數據流,或控制StrongARM Core實現對測試數據的管理,或將通過測試接口接收的數據經由GE MAC、FIFO Bus、IXP1200送回SDRAM中進行統計和分析。
本實施例中,測試控制模塊進一步分為兩大部分StrongARM Core管理模塊和微引擎模塊,如圖3所示。StrongARM Core管理模塊用于完成對測試數據的管理,包括設置業務數據內容、啟動/停止數據流、上報數據統計結果等;微引擎模塊用于直接產生數據流,并對接收數據流進行分析比較統計,是系統的核心。StrongARM Core管理模塊和微引擎模塊通過一個共享存儲空間完成數據交換,該共享存儲空間按其功能又分為四大部分發送數據區、接收數據區、比較數據區和統計數據區。其中,發送數據區用于存放產生測試數據流的數據,微引擎模塊通過將此數據區中的數據循環發送產生大業務量數據流,StrongARM Core管理模塊通過設置此數據區的數據控制產生數據流的內容;接收數據區用來供微引擎模塊緩存從數據端口接收到的數據;比較數據區用來存放對接收數據進行比較捕捉的數據,微引擎模塊每次接收到一幀數據都會與此數據區中的數據進行比較,如果匹配,就在統計數據區進行記錄;此數據區內容由StrongARM Core管理模塊根據通過管理通道發來的外部命令進行配置;統計數據區用于存放微引擎模塊對數據的統計分析結果,包括發送數據幀數、接收數據幀數、匹配數據幀數、錯誤幀數等,Strong ARM Core管理模塊可從此處讀出結果經由管理通道上報。
基于上述網絡處理器和測試控制模塊的組成,本實施例中的測試數據處理過程是這樣的對于數據發送,StrongARM Core管理模塊首先在發送數據區中設置好要發送的數據內容、數量和發送間隔,并在比較數據區中設置好要接收數據的圖案,這里設置發送間隔是為了控制流量;配置完成后,StrongARM Core管理模塊啟動微引擎模塊,控制IXP1200中的微引擎發送測試數據,這時微引擎模塊會自動讀取發送數據區的內容,并按照指定的間隔時間發送,并在統計數據區中記錄發送的個數;直至發送完所有數據,或微引擎模塊中止執行。如果發送次數設置為0,則表示循環持續發送,直至微引擎模塊中止運行。這里,由于StrongARM Core管理模塊的執行速度慢,一般都是設置好數據后再發送,但也可以在發送中填入或更改數據。通常,如果需要在發送中改變數據內容,可準備多個緩存,由微引擎輪流發送。
對于數據接收,微引擎模塊控制微引擎接收外部數據,并與比較數據區中設置好的數據圖案進行比較,如果相同,表示接收正確,則在統計數據區記錄正確接收的數據包個數;如果不同,表示接收錯誤,則在統計數據區中記錄錯誤包個數,同時還對接收時間等進行記錄。每收到一個幀還要將其存放在接收數據區中緩存,接收滿后循環覆蓋最早的數據內容,也可以隨時將統計處理過的數據從接收數據區中刪除。
將本發明的裝置設置于不同的網絡設備中,可在實際應用中實現多種數據測試,比如自檢測試、遠端環回測試、設備間配合測試等等。圖4~圖7分別表示實現不同測試時的設備連接和組網結構。
實施例一實現設備自身性能測試。
進行自檢測試時,使業務流向內,經過網絡設備內部功能單元間的接口,完成當前設備自身的檢驗。本實施例以設置有本發明裝置的三層交換機為例,圖4為實現自身性能測試時三層交換機的內部連接圖。如圖4所示,典型的三層交換機主要由核心的交換單元和多個業務接口單元組成,其中,交換單元用于完成數據包交換,多個業務接口單元分別用于實現二層處理以及與不同對外物理接口的連接,圖4中每個業務接口單元上的NP即為本發明的測試裝置。
實現自檢的過程是業務接口單元1中的NP產生大業務量測試數據流后,沿虛線401所示數據流向送入交換單元,經過交換單元繼續沿虛線401所示路徑送至業務接口單元n的NP中進行接收分析;同時,業務接口單元n中NP產生的測試數據流,同樣沿虛線402所示數據流向經過交換單元送回業務接口單元1的NP中進行接收分析。
如此,多個大業務量的測試數據流穿過交換單元,能夠使交換單元達到最大業務負荷,有效地測試系統的交換性能。
可利用設置有本發明測試裝置的網絡設備提供對外的數據測試,即向外發送大業務量測試數據,仍以三層交換機為例,此種情況下,如圖5所示,該三層交換機的內部組成結構和各單元的作用與圖4完全相同,只是在實現測試時將數據流改為向外,通過當前網絡設備對外的接口進行發送和接收,即可對外提供測試功能,虛線501、504所示即為向外提供的測試數據流,虛線502、503所示為從外部輸入進行分析的測試數據流。這里所說的對外測試可以是只涉及一臺設置有本發明測試裝置的網絡設備的環回測試,或是涉及兩臺或多臺設置有本發明測試裝置的網絡設備的配合測試。
實施例二實現對外環回測試。
參見圖6所示,骨干交換機601同時連接兩臺接入交換機602,其中一臺接入交換機602與設置有本發明測試裝置的三層交換機603相連,在骨干交換機601上設置某業務通道的遠端環回,則利用三層交換機603產生大業務量的測試數據流,經過骨干交換機601上所設置的環回通道后,返回三層交換機603接收并進行分析,即可完成環回測試。圖中虛線所示數據流即為測試數據流,產生發送測試數據的NP和接收分析測試數據的可以是該三層交換機603中的一個NP,即從501向外提供大業務量測試數據流,經過骨干交換機601環回后,從502返回同一NP進行分析;也可以是該三層交換機603中的兩個NP,即從501向外提供大業務量測試數據流,經過骨干交換機601環回后,從503返回另一NP中進行分析。
實施例三實現對外配合測試。
參見圖7所示,骨干交換機601同時連接兩臺接入交換機602A和602B,每臺接入交換機602又分別與設置有本發明測試裝置的一臺三層交換機603A和603B相連,兩臺三層交換機603相互配合完成數據測試。那么,在測試時,三層交換機603A中一個業務接口單元的NP產生大業務的測試數據,沿虛線所示的數據流向,經過接入交換機602A至骨干交換機601,通過骨干交換機601的交換,再經過接入交換機602B,送至三層交換機603B某個業務接口單元的NP中進行分析。圖中點劃線所示數據流向是指由三層交換機603B一個業務接口單元的NP產生大業務的測試數據,經過接入交換機602和骨干交換機601,送至三層交換機603A某個業務接口單元的NP中進行分析。
在實現上述基本測試的基礎上,由于測試數據流可達到線速且能進行靈活地處理和分析,因此,可進一步根據用戶需求測試不同的指標和性能,比如涉及轉發性能的吞吐量(throughput)、時延(latency)、丟包率(frame loss rate)、背靠背幀處理(back-back frame handling)、系統恢復速度(system recovery speed)以及復位恢復速度(reset recovery speed)等參數。
實施例四測試設備性能參數。
以測試某個設備或系統的吞吐量和時延參數為例,假設要求在指定包長下,測量沒有包丟失時,被測設備或系統所能轉發包的最大速率,即吞吐量;以及測量無包丟失速率下被轉發包的時延。測試框圖如圖8所示,設備801和802為設置有本發明測試裝置的網絡設備,被測設備或系統800位于設備801和802之間,其中,對于被測設備或系統800來說,其上輸入測試數據的端口稱作源端口,輸出測試數據的端口稱作目的端口。測試過程是由設備801產生大業務量的測試數據,經由源端口輸入被測設備或系統800,被測設備或系統800從一個或多個源端口接收數據流后,通過內部傳輸,從目的端口輸出至設備802進行分析。當然,也可以由設備802產生大業務量的測試數據,由設備801進行接收分析。圖中虛線所示為測試數據流的流向。
由于對吞吐量的測試,需要提供流量連續變化的測試業務數據流,因此需要控制測試裝置發送包的間隔,只要包的發送間隔不同,流量就不同,間隔為0時,端口的數據流量最高。可見,在基本測試的基礎上增加包發送間隔控制,就可以測得被測設備或系統在不同速率下的吞吐量。
那么,對于測試無包丟失下的時延,需要再增加是否出現包丟失的判斷,如果出現包丟失,則將當前數據流量減小,重新測試;如果當前沒有出現包丟失,則可將數據流量增加,重新測試,直到測出沒有丟包的最大速率,然后再在該零包丟失吞吐量速率上測量當前數據包的傳輸時延。
基于同樣的機理,在網絡正常運營階段,設置有本發明測試裝置的網絡設備可配合網管系統實現各種例行測試、遠程故障診斷、預警等測試功能,且能以網絡端口線速或接近線速的能力產生數據包,同時能夠以相同的速度對接收的數據包進行統計分析、上報分析結果。另外,只要在基本測試上增加相應的機制即可,一般通過軟件編程實現性能的完善。這種集成于網絡設備內部的測試能力在設備的整個生命周期中可以得到廣泛的應用。
以上所述,僅為本發明的較佳實施例而已,并非用來限定本發明的保護范圍。
權利要求
1.一種在寬帶網絡中實現大業務量數據測試的裝置,其特征在于,該裝置包括生成大業務量數據的網絡處理單元,主要由核心處理器、一個以上高速數據處理器、至少一個存儲接口單元以及至少一個總線接口單元組成;測試控制模塊,用于控制大業務量數據的產生、發送和統計分析,進一步包括測試數據管理模塊、測試數據處理模塊和共享數據存儲區;測試接口,用于連接被測試設備;測試數據處理模塊控制網絡處理單元中的高速數據處理器將測試數據管理模塊配置的發送數據生成大業務量的測試數據,通過測試接口輸出;從測試接口接收的數據,由網絡處理單元中的高速數據處理器送入測試控制模塊的共享數據存儲區,測試數據管理模塊對共享數據存儲區中的數據進行統計、分析和記錄。
2.根據權利要求1所述的裝置,其特征在于,所述的網絡處理單元為網絡處理器。
3.根據權利要求1所述的裝置,其特征在于,所述共享數據存儲區進一步分為存放產生測試數據流數據的發送數據區、存放接收到數據的接收數據區、存放與接收數據進行比較的數據的比較數據區、以及存放統計分析結果的統計數據區。
4.根據權利要求1所述的裝置,其特征在于,所述的測試接口為千兆以太網(GE)接口、或10/100M快速以太網接口、或基于光同步數字網的分組傳輸(POS)接口、或異步傳輸模式(ATM)接口、或E1/E3接口。
5.根據權利要求1所述的裝置,其特征在于,該裝置進一步包括用于存儲測試控制模塊的只讀存儲器,該只讀存儲器與所述網絡處理單元中的存儲接口單元相連。
6.根據權利要求1或5所述的裝置,其特征在于,該裝置進一步包括用于執行測試控制模塊中相應操作的同步動態隨機存取存儲器(SDRAM),該SDRAM與所述的網絡處理單元的存儲接口單元相連。
全文摘要
本發明公開了一種在寬帶網絡中實現大業務量數據測試的裝置,包括連接被測試設備的測試接口;生成大業務量數據的網絡處理單元,主要由核心處理器、高速數據處理器、存儲接口單元和總線接口單元組成;測試控制模塊,用于控制大業務量數據的產生、發送和統計分析,進一步包括測試數據管理模塊、測試數據處理模塊和共享數據存儲區;測試數據處理模塊控制高速數據處理器將測試數據管理模塊配置的發送數據生成測試數據,通過測試接口輸出;從測試接口接收的數據,由高速數據處理器送入共享數據存儲區,再由測試數據管理模塊進行統計、分析和記錄。本發明裝置能產生大業務量的測試數據,支持寬帶網絡的各類測試,且成本低,實現方便、簡單、靈活。
文檔編號H04Q3/00GK1553632SQ0312395
公開日2004年12月8日 申請日期2003年5月29日 優先權日2003年5月29日
發明者滑思真 申請人:華為技術有限公司