專利名稱:存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于服務(wù)器系統(tǒng)測(cè)試領(lǐng)域,為存儲(chǔ)服務(wù)器提供了一種標(biāo)準(zhǔn)的性能綜合測(cè)試系統(tǒng)。
背景技術(shù):
互聯(lián)網(wǎng)的廣泛應(yīng)用使數(shù)據(jù)成為維系千百萬企業(yè)和機(jī)構(gòu)正常運(yùn)行的生命線,怎樣對(duì)這些數(shù)據(jù)提供最可靠的保護(hù)以及確保它們的暢通已經(jīng)成為影響企業(yè)競(jìng)爭(zhēng)力的最關(guān)鍵的因素。選擇恰當(dāng)?shù)姆?wù)器系統(tǒng)以及相應(yīng)的內(nèi)外存儲(chǔ)技術(shù)和設(shè)備又是實(shí)現(xiàn)數(shù)據(jù)暢通和保護(hù)的主要途徑。如何有效的對(duì)存儲(chǔ)服務(wù)器綜合性能進(jìn)行測(cè)試已經(jīng)成為人們研究的熱點(diǎn)問題。
業(yè)界評(píng)測(cè)存儲(chǔ)局域網(wǎng)SAN(Storage Area Network)性能的基準(zhǔn)測(cè)試程序是SPC-1,它主要測(cè)評(píng)SAN的事務(wù)處理能力,測(cè)試指標(biāo)是每秒種輸入輸出數(shù)(IOPS),該基準(zhǔn)測(cè)試程序?qū)儆诖鎯?chǔ)器性能委員會(huì)(Storage PerformanceCouncil)所有。SPC-1測(cè)試工具包軟件采用Java語言編寫,可運(yùn)行在Solaris、AIX和Windows NT/Windows 2000操作系統(tǒng)上,運(yùn)行SPC-1測(cè)試軟件需要Java環(huán)境支持。評(píng)測(cè)存儲(chǔ)服務(wù)器的主要環(huán)節(jié)均由一系列的Java操作構(gòu)成,優(yōu)點(diǎn)是可以很方便的跨平臺(tái)操作,但缺點(diǎn)是在每臺(tái)設(shè)備上運(yùn)行一個(gè)個(gè)的Java命令會(huì)加大評(píng)測(cè)的復(fù)雜度。在SPC-1銷售方面,對(duì)于非會(huì)員客戶,企業(yè)License售價(jià)為10000美元,站點(diǎn)License售價(jià)為2500美元;對(duì)于會(huì)員客戶,企業(yè)License售價(jià)為4000美元,站點(diǎn)License售價(jià)為1000美元;對(duì)于學(xué)術(shù)機(jī)構(gòu),站點(diǎn)License售價(jià)為500美元;這些銷售價(jià)格相比較目前國(guó)內(nèi)的生產(chǎn)和生活水平而言,相對(duì)過高。因此,我們認(rèn)為SPC-1存在評(píng)測(cè)過程復(fù)雜、評(píng)測(cè)費(fèi)用高的問題。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種能克服上述缺陷的存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng),該系統(tǒng)具有簡(jiǎn)單、高效和評(píng)測(cè)成本低的特點(diǎn)。
本發(fā)明提供的一種存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng),其特征在于該系統(tǒng)包括設(shè)置在客戶機(jī)上的測(cè)試管理模塊和負(fù)載產(chǎn)生模塊;其中測(cè)試管理模塊負(fù)責(zé)設(shè)置測(cè)試參數(shù),向負(fù)載產(chǎn)生模塊發(fā)送測(cè)試命令,收集負(fù)載產(chǎn)生模塊的測(cè)試結(jié)果數(shù)據(jù),并將測(cè)試結(jié)果數(shù)據(jù)統(tǒng)計(jì)整理后輸出,控制測(cè)試全過程;負(fù)載產(chǎn)生模塊用于創(chuàng)建I/O訪問流量,在測(cè)試管理模塊控制下,傳送I/O請(qǐng)求報(bào)文到存儲(chǔ)服務(wù)器,并接收存儲(chǔ)服務(wù)器返回的響應(yīng)信息;上述測(cè)試管理模塊包括用戶界面模塊、配置信息模塊、定時(shí)器模塊、負(fù)載管理模塊和進(jìn)程通信模塊;其中,用戶界面模塊用于人機(jī)接口的交互,獲取部分配置信息并傳送給配置信息模塊;配置信息模塊用于接收從用戶界面模塊和配置文件傳送過來的配置信息,并將全部配置信息傳送給負(fù)載管理模塊;負(fù)載管理模塊產(chǎn)生配置命令、測(cè)試命令,并且處理測(cè)試結(jié)果數(shù)據(jù);定時(shí)器模塊負(fù)責(zé)調(diào)度負(fù)載管理模塊的配置命令和測(cè)試命令,控制測(cè)試的全過程,并將配置和測(cè)試命令傳送給進(jìn)程通信模塊;進(jìn)程通信模塊負(fù)責(zé)將配置命令和測(cè)試命令發(fā)送給負(fù)載產(chǎn)生模塊,并從負(fù)載產(chǎn)生模塊收取測(cè)試結(jié)果數(shù)據(jù),完成測(cè)試管理模塊與負(fù)載產(chǎn)生模塊之間的進(jìn)程通信;此外,負(fù)載管理模塊接收進(jìn)程通信模塊從負(fù)載產(chǎn)生模塊收取的測(cè)試結(jié)果數(shù)據(jù),并將這些數(shù)據(jù)處理后生成輸出文件;上述負(fù)載產(chǎn)生模塊包括測(cè)試對(duì)象管理模塊、DISK測(cè)試模塊、多線程模塊和第一、第二TCP模塊、;第一TCP模塊接收來自測(cè)試管理模塊的配置命令和測(cè)試命令,并發(fā)送給測(cè)試對(duì)象管理模塊,測(cè)試對(duì)象管理模塊負(fù)責(zé)配置測(cè)試參數(shù),增加或減少測(cè)試對(duì)象,并將所有配置命令和測(cè)試命令發(fā)往多線程模塊;DISK測(cè)試模塊負(fù)責(zé)產(chǎn)生測(cè)試流、測(cè)試請(qǐng)求命令,接收響應(yīng)信息和記錄測(cè)試結(jié)果,并將信息傳送給多線程模塊和第二TCP模塊;多線程模塊負(fù)責(zé)產(chǎn)生、管理和維護(hù)多個(gè)DISK測(cè)試線程,并發(fā)送DISK測(cè)試模塊的測(cè)試結(jié)果數(shù)據(jù)給測(cè)試對(duì)象管理模塊,測(cè)試對(duì)象管理模塊將這些數(shù)據(jù)統(tǒng)計(jì)整理后通過第一TCP模塊發(fā)送至測(cè)試管理模塊;第二TCP模塊向存儲(chǔ)服務(wù)器發(fā)送I/O讀或者寫請(qǐng)求報(bào)文,并從存儲(chǔ)服務(wù)器接收請(qǐng)求報(bào)文相應(yīng)的響應(yīng)報(bào)文。
上述DISK測(cè)試模塊包括I/O流產(chǎn)生器子模塊、I/O命令產(chǎn)生器子模塊、I/O命令完成子模塊和統(tǒng)計(jì)信息搜集子模塊;I/O流產(chǎn)生器子模塊按照用戶訪問存儲(chǔ)服務(wù)器用戶存儲(chǔ)單元的統(tǒng)計(jì)特性,產(chǎn)生訪問存儲(chǔ)服務(wù)器的一系列I/O流;I/O命令產(chǎn)生器子模塊根據(jù)I/O流產(chǎn)生器子模塊產(chǎn)生的I/O流定義,向存儲(chǔ)服務(wù)器發(fā)出讀/寫請(qǐng)求;I/O命令完成子模塊負(fù)責(zé)收取由存儲(chǔ)服務(wù)器返回的響應(yīng)信息;統(tǒng)計(jì)信息搜集子模塊負(fù)責(zé)從I/O命令完成子模塊中搜集和整理響應(yīng)信息的時(shí)間,以及讀/寫請(qǐng)求的文件大小。
本發(fā)明采用客戶機(jī)/服務(wù)器體系結(jié)構(gòu),在高速寬帶局域網(wǎng)中,使用多臺(tái)客戶機(jī)模擬多個(gè)用戶,遵循用戶訪問存儲(chǔ)服務(wù)器的統(tǒng)計(jì)特性,在規(guī)定的測(cè)試時(shí)間內(nèi)訪問存儲(chǔ)服務(wù)器,測(cè)試存儲(chǔ)服務(wù)器在各種負(fù)載條件下(100%、95%、90%、80%、50%、10%)體現(xiàn)出來的性能,測(cè)試指標(biāo)包括IOPS和LRT,IOPS表示每秒種輸入輸出數(shù),LRT即最小I/O請(qǐng)求響應(yīng)時(shí)間,LRT通常為負(fù)載為10%條件下的平均響應(yīng)時(shí)間。本系統(tǒng)采用了Linux下的多線程技術(shù)、進(jìn)程間通信技術(shù)和網(wǎng)絡(luò)編程技術(shù),評(píng)測(cè)過程簡(jiǎn)單,操作方便,系統(tǒng)資源消耗少,評(píng)測(cè)費(fèi)用低。具體而言,本發(fā)明具有以下優(yōu)點(diǎn)及效果(1)測(cè)試原理規(guī)范測(cè)試原理來源于實(shí)際,采用用戶訪問存儲(chǔ)服務(wù)器的統(tǒng)計(jì)特性,具備良好的科學(xué)基礎(chǔ),非常規(guī)范。
存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng)采用了最新的用戶訪問存儲(chǔ)服務(wù)器的統(tǒng)計(jì)特性,本系統(tǒng)軟件模塊運(yùn)行在多個(gè)客戶機(jī)上,基于客戶機(jī)/服務(wù)器體系結(jié)構(gòu),在高速寬帶局域網(wǎng)內(nèi),按照用戶訪問存儲(chǔ)服務(wù)器的統(tǒng)計(jì)特性,模擬典型的商業(yè)應(yīng)用訪問存儲(chǔ)服務(wù)器,例如OLTP、數(shù)據(jù)庫、電子郵件等應(yīng)用,測(cè)試存儲(chǔ)服務(wù)器在各種負(fù)載條件下體現(xiàn)出來的綜合性能。
(2)評(píng)測(cè)操作控制精簡(jiǎn)存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng)采用C/C++作為開發(fā)語言,無須客戶機(jī)支持Java,降低了對(duì)客戶機(jī)的系統(tǒng)要求和設(shè)置難度;本系統(tǒng)還采用了基于TCP/IP的集中控制技術(shù),利用測(cè)試管理模塊全程控制評(píng)測(cè)過程的各個(gè)環(huán)節(jié),無須逐個(gè)分步操作每臺(tái)測(cè)試設(shè)備,極大地降低了評(píng)測(cè)過程的復(fù)雜度;本系統(tǒng)提供了圖形化的配置界面,方便了人機(jī)交互。
(3)評(píng)測(cè)費(fèi)用低廉存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng)費(fèi)用低廉,運(yùn)行本系統(tǒng)軟件模塊的客戶機(jī)可由多臺(tái)運(yùn)行Linux的PC機(jī)組成,無須專業(yè)的工作站,這樣就大大降低了評(píng)測(cè)成本。
圖1為本發(fā)明測(cè)試系統(tǒng)的結(jié)構(gòu)示意圖;圖2為測(cè)試管理模塊和負(fù)載產(chǎn)生模塊的結(jié)構(gòu)示意圖;圖3為DISK測(cè)試模塊的子模塊示意圖;具體實(shí)施方式
存儲(chǔ)服務(wù)系統(tǒng)包括客戶機(jī)、存儲(chǔ)服務(wù)器和交換機(jī),本發(fā)明用于對(duì)其中的存儲(chǔ)服務(wù)器進(jìn)行測(cè)試,整個(gè)測(cè)試構(gòu)筑在高速寬帶局域網(wǎng)中。從工作原理的角度,可以將測(cè)試系統(tǒng)分為兩大部分,即測(cè)試管理模塊(BenchmarkManager)和負(fù)載產(chǎn)生模塊(Load Generator)。這兩個(gè)模塊均設(shè)置在客戶機(jī)上,由于受到單臺(tái)PC機(jī)硬件性能的限制,這兩個(gè)模塊最好是分開安裝到不同的客戶機(jī)上。根據(jù)測(cè)試負(fù)載的需要,負(fù)載產(chǎn)生模塊可以設(shè)置1到多個(gè),并分別安裝到不同的客戶機(jī)上。
測(cè)試系統(tǒng)的結(jié)構(gòu)如圖1所示,測(cè)試管理模塊1主要用于向負(fù)載產(chǎn)生模塊2發(fā)送測(cè)試命令,并控制測(cè)試全過程。在測(cè)試管理模塊1控制下,負(fù)載產(chǎn)生模塊2發(fā)送I/O請(qǐng)求報(bào)文到存儲(chǔ)服務(wù)器4,并接收存儲(chǔ)服務(wù)器返回的響應(yīng)信息。當(dāng)測(cè)試系統(tǒng)包括多個(gè)負(fù)載產(chǎn)生模塊時(shí),各模塊的功能及工作過程與上述模塊2相同。
下面分別對(duì)各模塊作進(jìn)一步詳細(xì)的說明。
測(cè)試管理模塊1負(fù)責(zé)設(shè)置測(cè)試參數(shù),包括應(yīng)用存儲(chǔ)單元ASU-1、ASU-2和ASU-3的邏輯卷;啟動(dòng)和停止測(cè)試;收集負(fù)載產(chǎn)生模塊的測(cè)試結(jié)果數(shù)據(jù),并將測(cè)試結(jié)果數(shù)據(jù)統(tǒng)計(jì)整理后以純文本形式輸出。如圖2所示,測(cè)試管理模塊1包括配置信息模塊4、定時(shí)器模塊5、用戶界面模塊6、負(fù)載管理模塊7和進(jìn)程通信模塊8。用戶界面模塊6用作人機(jī)接口,錄入部分配置信息并傳送給配置信息模塊,從用戶界面獲取的配置信息主要有負(fù)載產(chǎn)生模塊子線程數(shù)。配置信息模塊4用于接收用戶界面模塊錄入的部分配置信息,以及直接從配置文件獲得的配置信息,并將全部配置信息傳送給負(fù)載管理模塊7,從配置文件獲取的測(cè)試配置參數(shù)有應(yīng)用存儲(chǔ)單元ASU-1、ASU-2和ASU-3的邏輯卷,即路徑和名字。負(fù)載管理模塊7包括配置命令和測(cè)試命令,完成測(cè)試數(shù)據(jù)的處理,其中配置命令中包含上述所有的配置信息。定時(shí)器模塊6負(fù)責(zé)定時(shí)調(diào)用負(fù)載管理模塊7的配置命令和測(cè)試命令,控制存儲(chǔ)服務(wù)器綜合性能測(cè)試的全過程,它將配置命令和測(cè)試命令集傳送給進(jìn)程通信模塊8。進(jìn)程通信模塊8負(fù)責(zé)將配置命令和測(cè)試命令發(fā)送給負(fù)載產(chǎn)生模塊2,并收取每個(gè)負(fù)載產(chǎn)生模塊發(fā)來的測(cè)試結(jié)果數(shù)據(jù),完成測(cè)試管理模塊1與負(fù)載產(chǎn)生模塊2之間的進(jìn)程通信。這樣可以確保配置命令和測(cè)試命令傳送暢通,測(cè)試結(jié)果統(tǒng)計(jì)準(zhǔn)確。此外,負(fù)載管理模塊7通過進(jìn)程通信模塊8,接收所有測(cè)試結(jié)果數(shù)據(jù),并將這些數(shù)據(jù)分類統(tǒng)計(jì)、綜合計(jì)算,最后生成數(shù)據(jù)表格式的TXT文件。
負(fù)載產(chǎn)生模塊2用于創(chuàng)建I/O訪問流量,即通過Samba協(xié)議向存儲(chǔ)服務(wù)器發(fā)送I/O請(qǐng)求,同時(shí)收取存儲(chǔ)服務(wù)器的I/O響應(yīng)信息,并記錄響應(yīng)信息達(dá)到的時(shí)間和文件傳輸大小。如圖2所示,負(fù)載產(chǎn)生模塊2包括測(cè)試對(duì)象管理模塊9、DISK測(cè)試模塊10、多線程模塊11、第一TCP模塊12和第二TCP模塊13。
測(cè)試對(duì)象管理模塊9通過第一TCP模塊12接收來自測(cè)試管理模塊1的配置命令,配置命令攜帶了所有與測(cè)試相關(guān)的配置信息,它們是應(yīng)用存儲(chǔ)單元ASU-1、ASU-2和ASU-3的邏輯卷和DISK測(cè)試線程數(shù);另外,測(cè)試對(duì)象管理模塊9通過第一TCP模塊12也接收測(cè)試管理模塊的測(cè)試命令。即第一TCP模塊12發(fā)送配置命令和測(cè)試命令給測(cè)試對(duì)象管理模塊9。后者將所有配置命令和測(cè)試命令發(fā)往多線程模塊11,并接收多線程模塊11發(fā)送的各個(gè)DISK測(cè)試模塊的測(cè)試結(jié)果數(shù)據(jù),將這些數(shù)據(jù)統(tǒng)計(jì)整理后通過第一TCP模塊12發(fā)送至測(cè)試管理模塊1。
DISK測(cè)試模塊10包括I/O流產(chǎn)生器子模塊14、I/O命令產(chǎn)生器子模塊15、I/O命令完成子模塊16和統(tǒng)計(jì)信息搜集子模塊17,如圖3所示。I/O流產(chǎn)生器子模塊14按照用戶訪問存儲(chǔ)服務(wù)器用戶存儲(chǔ)單元ASU-1、ASU-2、ASU-3的統(tǒng)計(jì)特性,產(chǎn)生訪問存儲(chǔ)服務(wù)器的一系列I/O流,每個(gè)流即為I/O操作的完整定義,包括讀/寫操作,讀/寫文件的大小,以及待訪問的用戶存儲(chǔ)單元;I/O命令產(chǎn)生器子模塊15根據(jù)I/O流產(chǎn)生器子模塊14產(chǎn)生的I/O流定義,向存儲(chǔ)服務(wù)器發(fā)出讀/寫請(qǐng)求;I/O命令完成子模塊16負(fù)責(zé)收取讀/寫請(qǐng)求發(fā)出之后存儲(chǔ)服務(wù)器返回的響應(yīng)信息;統(tǒng)計(jì)信息搜集子模塊17負(fù)責(zé)搜集和整理響應(yīng)信息的時(shí)間,以及讀/寫請(qǐng)求的文件大小。需要說明的是,I/O流產(chǎn)生器子模塊14根據(jù)用戶訪問存儲(chǔ)服務(wù)器用戶存儲(chǔ)單元的統(tǒng)計(jì)特性,調(diào)用相應(yīng)的統(tǒng)計(jì)函數(shù),產(chǎn)生訪問存儲(chǔ)服務(wù)器的一系列I/O流。
多線程模塊11從測(cè)試對(duì)象管理模塊9接收配置命令和測(cè)試命令,并提取一個(gè)重要的配置信息DISK測(cè)試線程數(shù),從而產(chǎn)生多個(gè)線程,每個(gè)線程對(duì)應(yīng)為不同的DISK測(cè)試模塊,多線程模塊11負(fù)責(zé)與這些DISK測(cè)試模塊通信發(fā)送配置命令,即用存儲(chǔ)單元ASU-1、ASU-2和ASU-3的邏輯卷;發(fā)送測(cè)試命令;收取每個(gè)DISK測(cè)試模塊的測(cè)試結(jié)果數(shù)據(jù)。即DISK測(cè)試模塊10向多線程模塊11發(fā)送配置命令測(cè)試命令,多線程模塊11向DISK測(cè)試模塊10發(fā)送測(cè)試結(jié)果數(shù)據(jù)。另外,多線程模塊11搜集所有DISK測(cè)試模塊的測(cè)試結(jié)果數(shù)據(jù)并發(fā)往測(cè)試對(duì)象管理模塊9。
第一TCP模塊12完成負(fù)載產(chǎn)生模塊2和測(cè)試管理模塊1之間的進(jìn)程通信,它負(fù)責(zé)從測(cè)試管理模塊1收取配置命令和測(cè)試命令,并發(fā)送測(cè)試結(jié)果數(shù)據(jù)。第二TCP模塊13向存儲(chǔ)服務(wù)器發(fā)送I/O讀或者寫請(qǐng)求報(bào)文,并從存儲(chǔ)服務(wù)器接收請(qǐng)求報(bào)文相應(yīng)的響應(yīng)報(bào)文。
本發(fā)明為了系統(tǒng)實(shí)現(xiàn)上的方便,將測(cè)試管理模塊和負(fù)載產(chǎn)生模塊放入兩臺(tái)客戶機(jī)上實(shí)現(xiàn),注意,需要在負(fù)載產(chǎn)生模塊程序啟動(dòng)時(shí),向特定測(cè)試管理模塊的IP地址和中指定是否運(yùn)行實(shí)例存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng)的配置及運(yùn)行過程如下(1)建立存儲(chǔ)服務(wù)器。所有客戶機(jī)和服務(wù)器之間通過1000M交換機(jī)互聯(lián)為一個(gè)局域網(wǎng),為了保證測(cè)試結(jié)果的正確性,該局域網(wǎng)與其他用途的網(wǎng)絡(luò)和設(shè)備隔離,避免額外網(wǎng)絡(luò)流量影響測(cè)試結(jié)果。在測(cè)試前,按照測(cè)試規(guī)模,在安裝存儲(chǔ)服務(wù)器時(shí)設(shè)置好用戶存儲(chǔ)單元ASU-1、ASU-2和ASU-3,并將配置這些ASU用Samba協(xié)議共享局域網(wǎng)內(nèi)用戶訪問。應(yīng)用存儲(chǔ)單元ASU是一個(gè)介于數(shù)據(jù)倉(cāng)庫和基于主機(jī)的應(yīng)用程序間的邏輯接口,這些基于主機(jī)的應(yīng)用程序完成基準(zhǔn)測(cè)試,且在此過程中完成持續(xù)穩(wěn)定地存儲(chǔ)讀寫操作。本測(cè)試定義了三種不同的ASU數(shù)據(jù)存儲(chǔ)單元ASU-1,用戶存儲(chǔ)單元ASU-2,日志存儲(chǔ)單元ASU-3。數(shù)據(jù)存儲(chǔ)單元保存應(yīng)用系統(tǒng)的原始輸入數(shù)據(jù),它占ASU總?cè)萘康?5%;用戶存儲(chǔ)單元保存應(yīng)用系統(tǒng)處理過的信息,它占ASU總?cè)萘康?5%;日志存儲(chǔ)單元包含應(yīng)用系統(tǒng)為保護(hù)數(shù)據(jù)存儲(chǔ)單元和用戶存儲(chǔ)單元中數(shù)據(jù)信息的完整性而生成的文件;它占ASU總?cè)萘康?0%。
(2)在運(yùn)行負(fù)載產(chǎn)生器的客戶機(jī)上,用裝載命令smbmount將存儲(chǔ)服務(wù)器上共享的ASU安裝在本地目錄上。所有客戶機(jī)對(duì)三種用戶存儲(chǔ)單元ASU-1、ASU-2和ASU-3的安裝點(diǎn)相同。
(3)運(yùn)行Benchmark Manager。必須在所有的Load Generator客戶端運(yùn)行前,啟動(dòng)Benchmark Manager。在Benchmark Manager的圖形窗口式的配置界面中,輸入需要配置的各項(xiàng)參數(shù)和指定的配置文件名。
(4)運(yùn)行Load Generator,運(yùn)行時(shí)指定測(cè)試控制模塊所在客戶端的以太網(wǎng)卡IP地址。每個(gè)運(yùn)行Load Generator的客戶端配有一張千兆以太網(wǎng)卡。Load Generator會(huì)根據(jù)指定Benchmark Manager的IP地址,向BenchmarkManager注冊(cè),并等待Benchmark Manager的配置命令和測(cè)試命令。在測(cè)試結(jié)束時(shí),向Benchmark Manager發(fā)送測(cè)試結(jié)果數(shù)據(jù)。
(5)Benchmark Manager收到所有Load Generator發(fā)送來的測(cè)試結(jié)果數(shù)據(jù)后,其負(fù)載管理模塊歸納統(tǒng)計(jì)這些測(cè)試結(jié)果數(shù)據(jù),以數(shù)據(jù)表形式輸出測(cè)試結(jié)果文本文件。
權(quán)利要求
1.一種存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng),其特征在于該系統(tǒng)包括設(shè)置在客戶機(jī)上的測(cè)試管理模塊(1)和負(fù)載產(chǎn)生模塊(2);其中測(cè)試管理模塊(1)負(fù)責(zé)設(shè)置測(cè)試參數(shù),向負(fù)載產(chǎn)生模塊(2)發(fā)送測(cè)試命令,收集負(fù)載產(chǎn)生模塊(2)的測(cè)試結(jié)果數(shù)據(jù),并將測(cè)試結(jié)果數(shù)據(jù)統(tǒng)計(jì)整理后輸出,控制測(cè)試全過程;負(fù)載產(chǎn)生模塊(2)用于創(chuàng)建I/O訪問流量,在測(cè)試管理模塊(1)控制下,傳送I/O請(qǐng)求報(bào)文到存儲(chǔ)服務(wù)器,并接收存儲(chǔ)服務(wù)器返回的響應(yīng)信息;上述測(cè)試管理模塊包括用戶界面模塊(6)、配置信息模塊(4)、定時(shí)器模塊(5)、負(fù)載管理模塊(7)和進(jìn)程通信模塊(8);其中,用戶界面模塊(6)用于人機(jī)接口的交互,獲取部分配置信息并傳送給配置信息模塊(4);配置信息模塊(4)用于接收從用戶界面模塊(6)和配置文件傳送過來的配置信息,并將全部配置信息傳送給負(fù)載管理模塊(2);負(fù)載管理模塊(7)產(chǎn)生配置命令、測(cè)試命令,并且處理測(cè)試結(jié)果數(shù)據(jù);定時(shí)器模塊(5)負(fù)責(zé)調(diào)度負(fù)載管理模塊(7)的配置命令和測(cè)試命令,控制測(cè)試的全過程,并將配置和測(cè)試命令傳送給進(jìn)程通信模塊(8);進(jìn)程通信模塊(8)負(fù)責(zé)將配置命令和測(cè)試命令發(fā)送給負(fù)載產(chǎn)生模塊(2),并從負(fù)載產(chǎn)生模塊(2)收取測(cè)試結(jié)果數(shù)據(jù),完成測(cè)試管理模塊(1)與負(fù)載產(chǎn)生模塊(2)之間的進(jìn)程通信;此外,負(fù)載管理模塊(7)接收進(jìn)程通信模塊(8)從負(fù)載產(chǎn)生模塊(2)收取的測(cè)試結(jié)果數(shù)據(jù),并將這些數(shù)據(jù)處理后生成輸出文件;上述負(fù)載產(chǎn)生模塊(2)包括測(cè)試對(duì)象管理模塊(9)、DISK測(cè)試模塊(10)、多線程模塊(11)和第一、第二TCP模塊(12、13);第一TCP模塊(12)接收來自測(cè)試管理模塊(1)的配置命令和測(cè)試命令,并發(fā)送給測(cè)試對(duì)象管理模塊(9),測(cè)試對(duì)象管理模塊(9)負(fù)責(zé)配置測(cè)試參數(shù),增加或減少測(cè)試對(duì)象,并將所有配置命令和測(cè)試命令發(fā)往多線程模塊(11);DISK測(cè)試模塊(10)負(fù)責(zé)產(chǎn)生測(cè)試流、測(cè)試請(qǐng)求命令,接收響應(yīng)信息和記錄測(cè)試結(jié)果,并將信息傳送給多線程模塊(11)和第二TCP模塊(13);多線程模塊(11)負(fù)責(zé)產(chǎn)生、管理和維護(hù)多個(gè)DISK測(cè)試線程,并發(fā)送DISK測(cè)試模塊(10)的測(cè)試結(jié)果數(shù)據(jù)給測(cè)試對(duì)象管理模塊(9),測(cè)試對(duì)象管理模塊(9)將這些數(shù)據(jù)統(tǒng)計(jì)整理后通過第一TCP模塊(12)發(fā)送至測(cè)試管理模塊(1);第二TCP模塊(13)向存儲(chǔ)服務(wù)器發(fā)送I/O讀或者寫請(qǐng)求報(bào)文,并從存儲(chǔ)服務(wù)器接收請(qǐng)求報(bào)文相應(yīng)的響應(yīng)報(bào)文。
2.根據(jù)權(quán)利要求1所述的測(cè)試系統(tǒng),其特征在于DISK測(cè)試模塊(10)包括I/O流產(chǎn)生器子模塊(14)、I/O命令產(chǎn)生器子模塊(15)、I/O命令完成子模塊(16)和統(tǒng)計(jì)信息搜集子模塊(17);I/O流產(chǎn)生器子模塊(14)按照用戶訪問存儲(chǔ)服務(wù)器用戶存儲(chǔ)單元的統(tǒng)計(jì)特性,產(chǎn)生訪問存儲(chǔ)服務(wù)器的一系列I/O流;I/O命令產(chǎn)生器子模塊(15)根據(jù)I/O流產(chǎn)生器子模塊(14)產(chǎn)生的I/O流定義,向存儲(chǔ)服務(wù)器發(fā)出讀/寫請(qǐng)求;I/O命令完成子模塊(16)負(fù)責(zé)收取由存儲(chǔ)服務(wù)器返回的響應(yīng)信息;統(tǒng)計(jì)信息搜集子模塊(17)負(fù)責(zé)從I/O命令完成子模塊(16)中搜集和整理響應(yīng)信息的時(shí)間,以及讀/寫請(qǐng)求的文件大小。
全文摘要
本發(fā)明公開了一種存儲(chǔ)服務(wù)器性能綜合測(cè)試系統(tǒng),包括設(shè)置在客戶機(jī)上的測(cè)試管理模塊和負(fù)載產(chǎn)生模塊,前者負(fù)責(zé)設(shè)置測(cè)試參數(shù),向負(fù)載產(chǎn)生模塊發(fā)送測(cè)試命令,收集負(fù)載產(chǎn)生模塊的測(cè)試結(jié)果數(shù)據(jù),并將測(cè)試結(jié)果數(shù)據(jù)統(tǒng)計(jì)整理后輸出,控制測(cè)試全過程;后者用于創(chuàng)建I/O訪問流量,在測(cè)試管理模塊控制下,傳送I/O請(qǐng)求報(bào)文到存儲(chǔ)服務(wù)器,并接收存儲(chǔ)服務(wù)器返回的響應(yīng)信息。本發(fā)明在高速寬帶局域網(wǎng)中,使用多臺(tái)客戶機(jī)模擬多個(gè)用戶,遵循用戶訪問存儲(chǔ)服務(wù)器的統(tǒng)計(jì)特性,在規(guī)定的測(cè)試時(shí)間內(nèi)訪問存儲(chǔ)服務(wù)器,測(cè)試其在各種負(fù)載條件下體現(xiàn)出來的性能。本發(fā)明測(cè)試原理科學(xué),采用了Linux下的多線程技術(shù)、進(jìn)程間通信技術(shù)和網(wǎng)絡(luò)編程技術(shù),具有評(píng)測(cè)過程簡(jiǎn)單,評(píng)測(cè)費(fèi)用低等優(yōu)點(diǎn)。
文檔編號(hào)H04L12/26GK1588892SQ20041006087
公開日2005年3月2日 申請(qǐng)日期2004年9月17日 優(yōu)先權(quán)日2004年9月17日
發(fā)明者金海 , 謝夏, 李勝利, 盧鵬, 戴志華, 黃瑾, 張琴, 趙俊 申請(qǐng)人:華中科技大學(xué)