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

一種虛擬化環(huán)境中共存應(yīng)用I/O性能干擾的分析方法及其系統(tǒng)與流程

文檔序號:11972063閱讀:251來源:國知局
一種虛擬化環(huán)境中共存應(yīng)用I/O性能干擾的分析方法及其系統(tǒng)與流程
本發(fā)明涉及虛擬化環(huán)境中,虛擬機的應(yīng)用共存分析,尤其涉及分析和計算共存所造成的I/O性能干擾。

背景技術(shù):
虛擬化技術(shù)的出現(xiàn),使得一個物理機上可以共存多臺虛擬機(VM),通過虛擬機監(jiān)控器(VMM)對共享物理資源以及虛擬機進行管理。虛擬化技術(shù)提供了更好的應(yīng)用共存的能力,虛擬機可以在隔離的環(huán)境中運行不同的應(yīng)用,提高了服務(wù)器的資源利用率。但是,盡管虛擬機監(jiān)控器為虛擬機提供了很多層次的隔離,共存在同一臺物理機上的虛擬機仍然會相互干擾,尤其是對于資源請求密集型的負載。每個虛擬機被分配到物理機資源的一部分,并請求虛擬機監(jiān)控器的協(xié)作來完成任務(wù),例如磁盤或者網(wǎng)絡(luò)I/O請求.當(dāng)多個虛擬機請求同一個硬件資源時,就可能在物力資源層面或者虛擬機監(jiān)控器層面產(chǎn)生瓶頸,造成性能的下降。共存應(yīng)用性能干擾的分析對提高虛擬化環(huán)境中的資源利用率是十分重要的,同時也是虛擬化技術(shù)中的研究熱點和挑戰(zhàn)。名稱為“2012ThirdInternationalConferenceonNetworkingandComputing”的會議中公開了一篇名稱為:“EvluationofPerformanceDegradationinHPCApplicationswithVMConsolidation”的文獻,作者:YuyaHashimoto,KentoAida,其中公開了通過運行基準(zhǔn)測試程序,監(jiān)控物理機的性能指標(biāo),包括CPU利用率,內(nèi)存利用率,磁盤利用率等,分析了運行不同類型應(yīng)用的虛擬機之間的干擾.但是其方法粒度較粗,只對整個物理機的性能指標(biāo)進行監(jiān)控和分析,不能準(zhǔn)確分析出在某一種資源上,虛擬機之間產(chǎn)生的干擾。名稱為“2010IEEE3rdInternationalConferenceonCloudComputing”的會議中公開了一篇名稱為:“UnderstandingPerformanceInterferenceofI/OWorkloadinVirtualizedCloudEnvironments”的文獻,作者:XingPu,LingLiu,YiduoMei,SankaranSivathanu,YounggunKoh,CaltonPu,其中提供了一種分析虛擬化環(huán)境中網(wǎng)絡(luò)I/O性能干擾的方法,通過比較虛擬機獨占情景和共存情景下,隨著I/O請求大小的變化,物理機和虛擬機中的cpu利用率、虛擬機中的I/O請求數(shù)量和完成效率、以及VMM中的切換次數(shù)和事件數(shù)變化來分析出影響I/O性能的關(guān)鍵因素。但該方法僅僅是通過比較實驗結(jié)果,找到影響I/O性能的關(guān)鍵因素,并沒有提供一種量化虛擬機受到干擾的方法,并且,該方法并沒有具體到分析每個I/O請求的等待時間,而來自某個虛擬機的I/O請求的等待時間的延長,是該虛擬機I/O性能受到干擾的直接體現(xiàn)。名稱為:“2013IEEE4th,InternationalConferenceonCloudComputingTechnologyandScience”的會議中公開了一篇名稱為:“UnderstandingtheEffectsofHypervisorI/OSchedulingforVirtualMachinePerformanceInterfernce”的文獻,作者:ZiyeYang,HaifengFang,YingjunWu,ChunqiLi,BinZhao,H.HowieHuang,其中設(shè)計了一個分析虛擬機hypervisor的I/O調(diào)度特性的框架,通過分析hypervisor對I/O請求的調(diào)度過程,來分析虛擬機直接的干擾。但是該框架要求在虛擬機內(nèi)部運行監(jiān)控模塊,但是這樣對影響虛擬機的性能造成影響,從而使分析結(jié)果產(chǎn)生偏差。對虛擬機I/O性能干擾的分析,不應(yīng)該影響虛擬機原始的運行狀態(tài)。

技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題在于提供一種虛擬化環(huán)境中共存應(yīng)用I/O性能干擾分析方法及其系統(tǒng),,以克服現(xiàn)有技術(shù)中存在的無法全面分析虛擬機I/O性能干擾水平,并無法將干擾水平進行量化的問題。為達上述目的,本發(fā)明提供了一種虛擬化環(huán)境中共存應(yīng)用I/O性能干擾分析方法,其特征在于,包括:性能監(jiān)控步驟:通過對系統(tǒng)中上下文切換事件進行跟蹤監(jiān)控,并收集所述事件信息和I/O操作請求信息;性能干擾分析步驟:統(tǒng)計得出所述事件信息統(tǒng)計值,并根據(jù)所述I/O操作請求信息,統(tǒng)計得出各個虛擬機的I/O操作的平均服務(wù)率,根據(jù)所述事件信息統(tǒng)計值和所述I/O操作的平均服務(wù)率,得出共存應(yīng)用的I/O性能的干擾水平。上述虛擬化環(huán)境中I/O性能干擾分析方法,其特征在于,所述性能監(jiān)控步驟還包括:獨占監(jiān)控步驟:在預(yù)定的監(jiān)控時間段內(nèi),獲取虛擬機獨占時在系統(tǒng)單位時間內(nèi)產(chǎn)生的所述上下文切換次數(shù),并收集和跟蹤記錄來自所述虛擬機獨占時的I/O操作請求信息;共存監(jiān)控步驟:在預(yù)定的監(jiān)控時間段內(nèi),獲取虛擬機共存時在系統(tǒng)單位時間內(nèi)產(chǎn)生的所述上下文切換次數(shù),并收集和跟蹤記錄來自所述虛擬機共存時的I/O操作請求信息。上述虛擬化環(huán)境中I/O性能干擾分析方法,其特征在于,所述性能干擾分析步驟還包括:性能統(tǒng)計步驟:分別統(tǒng)計所述虛擬機獨占時和所述虛擬機共存時的I/O操作請求信息個數(shù)統(tǒng)計值和所述請求執(zhí)行等待時間統(tǒng)計值;性能分析步驟:對比分析所述虛擬機獨占時和所述虛擬機共存時的所述上下文切換次數(shù)、所述I/O操作請求信息個數(shù)統(tǒng)計值和所述請求執(zhí)行等待時間統(tǒng)計值,得出系統(tǒng)所述虛擬機共存時的干擾水平。上述虛擬化環(huán)境中I/O性能干擾分析方法,其特征在于,所述性能分析步驟還包括:上下文對比步驟:對比分析所述獨占虛擬機和所述共存虛擬機的所述上下文切換次數(shù),得出上下文切換次數(shù)對比值;平均服務(wù)率步驟:通過所述虛擬機獨占時和所述虛擬機共存時的所述I/O操作請求信息個數(shù)統(tǒng)計值和所述請求執(zhí)行等待時間統(tǒng)計值,分別得出所述虛擬機獨占時和所述虛擬機共存時I/O操作平均服務(wù)率;I/O請求對比步驟:對比分析所述獨占虛擬機和所述共存虛擬機的所述I/O操作平均服務(wù)率,得出I/O操作平均服務(wù)率對比值;干擾水平分析步驟:匯總所述上下文切換次數(shù)對比值和所述I/O操作平均服務(wù)率對比值,得出系統(tǒng)所述共存虛擬機的干擾水平。上述虛擬化環(huán)境中I/O性能干擾分析方法,其特征在于,所述事件信息包括:上下文切換的時間名稱、事件數(shù)目和事件花費時間。上述虛擬化環(huán)境中I/O性能干擾分析方法,其特征在于,所述I/O操作請求信息包括:I/O操作屬于的虛擬機號、目標(biāo)扇區(qū)號、請求塊大小、等待執(zhí)行時間和操作完成時間。本發(fā)明提供的一種虛擬化環(huán)境中共存應(yīng)用I/O性能干擾分析系統(tǒng),采用所述性能分析方法,其特征在于,所述性能干擾分析系統(tǒng)還包括:性能監(jiān)控模塊:通過對系統(tǒng)中上下文切換事件進行跟蹤監(jiān)控,并收集事件信息和I/O操作請求信息;性能干擾分析模塊:統(tǒng)計得出所述事件信息統(tǒng)計值,并根據(jù)I/O操作請求信息,統(tǒng)計得出各個虛擬機的I/O操作的平均服務(wù)率,根據(jù)所述事件信息統(tǒng)計值和所述I/O操作的平均服務(wù)率,得出共存應(yīng)用的I/O性能的干擾水平。上述虛擬化環(huán)境中I/O性能干擾分析系統(tǒng),其特征在于,所述性能監(jiān)控模塊還包括:獨占監(jiān)控模塊:在預(yù)定的監(jiān)控時間段內(nèi),獲取虛擬機獨占時在系統(tǒng)單位時間內(nèi)產(chǎn)生的所述上下文切換次數(shù),并收集和跟蹤記錄來自所述虛擬機獨占時的I/O操作請求信息;共存監(jiān)控模塊:在預(yù)定的監(jiān)控時間段內(nèi),獲取虛擬機共存時在系統(tǒng)單位時間內(nèi)產(chǎn)生的所述上下文切換次數(shù),并收集和跟蹤記錄來自所述虛擬機共存時的I/O操作請求信息。上述虛擬化環(huán)境中I/O性能干擾分析系統(tǒng),其特征在于,所述性能干擾分析模塊還包括:性能統(tǒng)計模塊:分別統(tǒng)計所述虛擬機獨占時和所述虛擬機共存時的I/O操作請求信息個數(shù)統(tǒng)計值和所述請求執(zhí)行等待時間統(tǒng)計值;性能分析模塊:對比分析所述虛擬機獨占時和所述虛擬機共存時的所述上下文切換次數(shù)、所述操作I/O請求信息個數(shù)統(tǒng)計值和所述請求執(zhí)行等待時間統(tǒng)計值,得出系統(tǒng)所述虛擬機共存時的干擾水平。上述虛擬化環(huán)境中I/O性能干擾分析系統(tǒng),其特征在于,所述性能分析模塊還包括:上下文對比模塊:對比分析所述獨占虛擬機和所述共存虛擬機的所述上下文切換次數(shù),得出上下文切換次數(shù)對比值;平均服務(wù)率模塊:通過所述虛擬機獨占時和所述虛擬機共存時的所述I/O操作請求信息個數(shù)統(tǒng)計值和所述請求執(zhí)行等待時間統(tǒng)計值,分別得出所述虛擬機獨占時和所述虛擬機共存時I/O操作平均服務(wù)率;I/O請求對比模塊:對比分析所述獨占虛擬機和所述共存虛擬機的所述I/O操作平均服務(wù)率,得出I/O操作平均服務(wù)率對比值;干擾水平分析模塊:匯總所述上下文切換次數(shù)對比值和所述I/O操作平均服務(wù)率對比值,得出系統(tǒng)所述共存虛擬機的干擾水平。上述虛擬化環(huán)境中I/O性能干擾分析系統(tǒng),其特征在于,所述事件信息包括:上下文切換的時間名稱、事件數(shù)目和事件花費時間。上述虛擬化環(huán)境中I/O性能干擾分析系統(tǒng),其特征在于,所述I/O操作請求信息包括:I/O操作屬于的虛擬機號、目標(biāo)扇區(qū)號、請求塊大小、等待執(zhí)行時間和操作完成時間。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:在虛擬機的I/O請求的整個執(zhí)行路徑上,分析出最能體現(xiàn)出性能干擾的指標(biāo),包括在虛擬機監(jiān)控器層面上,系統(tǒng)中發(fā)生的上下文切換次數(shù),以及在物理資源層面上,來自虛擬機的I/O請求的服務(wù)率,通過這兩個指標(biāo)結(jié)合,全面的刻畫虛擬機I/O性能干擾水平,并通過獨占和共存場景下的比較,將干擾水平進行量化。附圖說明圖1為本發(fā)明性能干擾分析方法步驟示意圖;圖2為本發(fā)明性能分析詳細步驟示意圖;圖3為虛擬化環(huán)境中的I/O架構(gòu)示意圖;圖4為虛擬化環(huán)境下I/O請求的執(zhí)行過程示意圖;圖5為本發(fā)明方法一具體實施例示意圖;圖6為本發(fā)明實施例XEN虛擬化架構(gòu)下I/O請求執(zhí)行過程示意圖;圖7為本發(fā)明方法XEN環(huán)境下實施例流程示意圖;圖8為本發(fā)明性能干擾分析系統(tǒng)結(jié)構(gòu)示意圖;圖9為本發(fā)明性能分析模塊結(jié)構(gòu)示意圖;圖10為本發(fā)明系統(tǒng)XEN虛擬化環(huán)境下具體實施例框架示意圖。其中,附圖標(biāo)記:10性能監(jiān)控模塊20性能干擾分析模塊11獨占監(jiān)控模塊12共存監(jiān)控模塊21性能統(tǒng)計模塊22性能分析模塊221上下文對比模塊222平均服務(wù)率模塊223I/O請求對比模塊224干擾水平分析模塊S1~S2、S11~S12、S21~S22、S221~S224、1~7、100~700:本發(fā)明各實施例的施行步驟具體實施方式下面給出本發(fā)明的具體實施方式,結(jié)合附圖和具體實施實例對本發(fā)明做詳細描述。通過現(xiàn)有技術(shù)的不足之處的研究和分析,本發(fā)明提出了一種全面分析虛擬化環(huán)境下I/O性能干擾的方法,本方法是對I/O操作從虛擬機出發(fā)出,到真實執(zhí)行完成的整個過程中,監(jiān)控該過程中在虛擬機監(jiān)控器層面和物理資源共享層面最能體現(xiàn)出性能干擾的指標(biāo),進而計算干擾水平。本發(fā)明提供的一種虛擬化環(huán)境中共存應(yīng)用I/O性能干擾分析方法,圖1為本發(fā)明性能干擾分析方法步驟示意圖,如圖1所示,該方法包括:性能監(jiān)控步驟S1:通過對系統(tǒng)中上下文切換事件進行跟蹤監(jiān)控,并收集事件信息和I/O操作請求信息;性能干擾分析步驟S2:統(tǒng)計得出事件信息統(tǒng)計值,并根據(jù)I/O操作請求信息,統(tǒng)計得出各個虛擬機的I/O操作的平均服務(wù)率,根據(jù)事件信息統(tǒng)計值和I/O操作的平均服務(wù)率,得出共存應(yīng)用的I/O性能的干擾水平。其中,性能監(jiān)控步驟S1還包括:獨占監(jiān)控步驟S11:在預(yù)定的監(jiān)控時間段內(nèi),獲取虛擬機獨占時在系統(tǒng)單位時間內(nèi)產(chǎn)生的上下文切換次數(shù),并收集和跟蹤記錄來自虛擬機獨占時的I/O操作請求信息;共存監(jiān)控步驟S12:在預(yù)定的監(jiān)控時間段內(nèi),獲取虛擬機共存時在系統(tǒng)單位時間內(nèi)產(chǎn)生的上下文切換次數(shù),并收集和跟蹤記錄來自虛擬機共存時的I/O操作請求信息。其中,性能干擾分析步驟S2還包括:性能統(tǒng)計步驟S21:分別統(tǒng)計虛擬機獨占時和虛擬機共存時的I/O操作請求信息個數(shù)統(tǒng)計值和請求執(zhí)行等待時間統(tǒng)計值;性能分析步驟S22:對比分析虛擬機獨占時和虛擬機共存時的上下文切換次數(shù)、I/O操作請求信息個數(shù)統(tǒng)計值和請求執(zhí)行等待時間統(tǒng)計值,得出系統(tǒng)虛擬機共存時的干擾水平。其中,圖2為本發(fā)明性能分析詳細步驟示意圖,如圖2所示,性能分析步驟S22還包括:上下文對比步驟S221:對比分析獨占虛擬機和共存虛擬機的上下文切換次數(shù),得出上下文切換次數(shù)對比值;平均服務(wù)率步驟S222:通過虛擬機獨占時和虛擬機共存時的I/O操作請求信息個數(shù)統(tǒng)計值和請求執(zhí)行等待時間統(tǒng)計值,分別得出虛擬機獨占時和虛擬機共存時I/O操作平均服務(wù)率;I/O請求對比步驟S223:對比分析獨占虛擬機和共存虛擬機的I/O操作平均服務(wù)率,得出I/O操作平均服務(wù)率對比值;干擾水平分析步驟S224:匯總上下文切換次數(shù)對比值和I/O操作平均服務(wù)率對比值,得出系統(tǒng)共存虛擬機的干擾水平。以下結(jié)合圖示,詳細說明本發(fā)明性能干擾分析方法的具體實施例過程。圖3為虛擬化環(huán)境中的I/O架構(gòu)示意圖,圖4為虛擬化環(huán)境下I/O請求的執(zhí)行過程示意圖,如圖4所示,其中各個步驟說明如下:步驟S80:虛擬機發(fā)出I/O操作的請求,產(chǎn)生中斷,進行上下文切換,將CPU的運行狀態(tài)從虛擬機切換到VMM;步驟S81:VMM捕捉到虛擬機發(fā)送的I/O請求;步驟S82:VMM通過驅(qū)動程序?qū)/O請求發(fā)送到設(shè)備;步驟S83:I/O請求在真實設(shè)備中等待調(diào)度;步驟S84:設(shè)備執(zhí)行I/O操作。如圖3和圖4所示,本發(fā)明技術(shù)關(guān)鍵點具體如下:1)由于虛擬機的I/O請求的實現(xiàn),是需要虛擬機和虛擬機監(jiān)控器的協(xié)作共同實現(xiàn),在此過程中會造成虛擬機監(jiān)控器和客戶虛擬機之間的上下文切換,切換次數(shù)的增多會使CPU耗費較多的時間來處理I/O中斷操作,同時上下文切換也會造成cache的命中率下降,從而導(dǎo)致虛擬機I/O性能的下降。因此將單位時間內(nèi)系統(tǒng)中發(fā)生的切換次數(shù)作為衡量I/O性能干擾的指標(biāo)之一;2)虛擬機的I/O操作被驅(qū)動程序發(fā)送到真實設(shè)備的執(zhí)行隊列時,來自不同虛擬機的I/O請求會產(chǎn)生競爭,造成請求在執(zhí)行前的等待時間增長,即表現(xiàn)為虛擬機的I/O性能下降,因此將虛擬機I/O請求的服務(wù)率,即單位時間內(nèi)完成的此虛擬機的請求個數(shù),作為衡量虛擬機I/O性能干擾的指標(biāo)之一。本發(fā)明的目的在于克服上述現(xiàn)有技術(shù)的缺陷,提供一種準(zhǔn)確監(jiān)控虛擬化環(huán)境中虛擬機的I/O性能的方法,并提供一種計算共存虛擬機之間I/O性能干擾的方法,為虛擬機的部署和遷移提供依據(jù)。本發(fā)明的一個實施例中,提供了一種監(jiān)控虛擬化環(huán)境中I/O性能的概要方法,圖5為本發(fā)明方法一具體實施例示意圖,如圖5所示,所述方法包括:步驟1、從預(yù)定的監(jiān)控時間段內(nèi)獲取虛擬機A獨占物理機時,系統(tǒng)中平均每秒產(chǎn)生的上下文切換次數(shù)。步驟2、在上述監(jiān)控時間段內(nèi),收集所有來自虛擬機A的I/O請求,跟蹤并記錄所有I/O請求信息。步驟3、將虛擬機A和虛擬機B共同部署在同一個物理機上,從預(yù)定的監(jiān)控時間段內(nèi),獲取Domain0和VM之間,統(tǒng)中平均每秒產(chǎn)生的上下文切換次數(shù)。步驟4、從預(yù)定的監(jiān)控時間段內(nèi),在VMM中收集所有來自虛擬機A和B的I/O請求,跟蹤并記錄所有I/O請求信息。上述步驟2和步驟4中,在VMM中收集的I/O請求信息,是指虛擬機的I/O操作,通過驅(qū)動程序發(fā)送到真實真實設(shè)備后,對此I/O請求跟蹤,收集得到的信息,包括該操作屬于的進程號,該操作目標(biāo)扇區(qū)號,該操作請求塊大小,該操作發(fā)送到真實設(shè)備等待執(zhí)行的時間,該操作的完成的時間。從上述信息中統(tǒng)計出I/O操作的等待時間,和真實執(zhí)行時間。其中,請求塊大小包括讀字節(jié)數(shù)和寫字節(jié)數(shù)。I/O操作的等待時間,是指該I/O操作從被發(fā)送到真實執(zhí)行隊列到被調(diào)度并開始實際執(zhí)行。I/O操作的執(zhí)行時間,是指磁盤處理該請求所花的時間。本發(fā)明的另一個實施例中,提供了一種分析和計算共存應(yīng)用之間I/O干擾水平的詳細方法,如圖5所示,方法包括:步驟5、將虛擬機A在獨占情況下,收集得到的系統(tǒng)中上下文切換次數(shù)(base_switch),和在虛擬機A,B共存情況下得到的切換次數(shù)(Combine_switch)進行比較:switch_score代表由于切換次數(shù)的增多,對性能干擾的貢獻值。當(dāng)switch_score的值等于或者接近1時,表面虛擬機A,B之間幾乎沒有I/O性能干擾。當(dāng)switch_score的值大于1時,表明共存情況下的上下文切換次數(shù)要比獨占情況下的多,那么虛擬機A,B在虛擬機監(jiān)控器層面發(fā)生的競爭程度越大,干擾程度也越大,步驟6、將虛擬機A在獨占和共存情況下,收集得到的I/O請求操作信息進行統(tǒng)計分析:步驟61、在監(jiān)控時間段內(nèi),統(tǒng)計虛擬機A在獨占情況下,I/O請求的個數(shù)(vm_quest_num_base),每個請求從被發(fā)送到真實執(zhí)行隊列到被調(diào)度并開始實際執(zhí)行的等待時間(wait_time_base),磁盤設(shè)備處理該請求所花的時間(exc_time_base),計算出在虛擬機A獨占情況下I/O操作平均服務(wù)率(svctm_base).步驟62、在監(jiān)控時間段內(nèi),統(tǒng)計虛擬機A在與虛擬機B共存情況下,I/O請求的個數(shù)(vm_quest_num_combine),每個請求從被發(fā)送到真實執(zhí)行隊列到被調(diào)度并開始實際執(zhí)行的等待時間(wait_time_combine),磁盤設(shè)備處理該請求所花的時間(exc_time_combine),計算出在虛擬機A與虛擬機B共存下I/O操作平均服務(wù)率(svctm_combine).步驟63、比較獨占情況和共享情況下虛擬機A的I/O操作平均服務(wù)率svctm_score代表由于虛擬機A的I/O操作服務(wù)率的變化,對I/O性能干擾的貢獻。當(dāng)此值等于或者接近1時,表面虛擬機A的I/O性能幾乎沒有受到干擾。此值越大,說明虛擬機A在和B共存后,I/O請求的處理速度降低越多,受到的干擾越明顯。步驟7、通過步驟5和步驟6中的指標(biāo),計算虛擬機A在和虛擬機B共存情況下,所受到的干擾水平。interference=switch_score+scvtm_scoreInterference代表虛擬機A受到的干擾程度,該值越大,代表受到的干擾程度越大。當(dāng)interference的值等于或者接近2時,表明虛擬機A的I/O性能幾乎沒有受到干擾。為了使本發(fā)明的目的和技術(shù)方案以及目的的描述更加清晰,結(jié)合圖示,通過XEN虛擬化環(huán)境下的具體實施例來對本發(fā)明詳細的說明。應(yīng)當(dāng)理解,本發(fā)明可以應(yīng)用于所有的虛擬化環(huán)境,并不僅限于XEN環(huán)境,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。圖6為本發(fā)明實施例XEN虛擬化架構(gòu)下I/O請求執(zhí)行過程示意圖,如圖6所示,其中各個步驟說明如下:步驟S90:DOMU中的應(yīng)用程序發(fā)送出I/O請求;步驟S91:DOMU中的后端驅(qū)動程序接收到來自應(yīng)用的I/O請求;步驟S92:產(chǎn)生中斷,進行DOMU和DOM0之間的上下文切換,DOM0通過前端驅(qū)動接收到I/O請求后,通過原生設(shè)備驅(qū)動發(fā)送給設(shè)備;步驟S93:產(chǎn)生中斷,進行DOM0和VMM之間的上下文切換,I/O操作通過VMM被發(fā)送到設(shè)備等待執(zhí)行;步驟S94:設(shè)備執(zhí)行I/O操作。圖7為本發(fā)明方法XEN環(huán)境下實施例流程示意圖,如圖7所示,該方法包括:步驟100、在一臺物理機上,創(chuàng)建唯一的一個虛擬機,虛擬機A,此時物理機上有Domain0和虛擬機A步驟200、在預(yù)設(shè)的監(jiān)控時間段內(nèi),使虛擬機A保持運行狀態(tài),利用虛擬機監(jiān)控器提供的監(jiān)控工具,例如xenhypervisor提供的系統(tǒng)監(jiān)控工具Xentrace跟蹤CPU切換事件的信息。Xentrace是xen自帶的一個監(jiān)控工具,可以跟蹤指定的事件,收集信息。Xentrace_format是xen自帶的一款分析工具,用來分析xentrace收集的二進制信息。利用xentrace_format工具解析xentrace收集的信息,統(tǒng)計出在此時間段內(nèi)CPU上下文切換的次數(shù),記作switch_base步驟300、在預(yù)設(shè)的監(jiān)控時間段內(nèi),使虛擬機A保持運行狀態(tài),利用我們擴展的blktrace監(jiān)控工具(Blktrace是一款可以收集磁盤I/O信息中當(dāng)I/O進行到塊設(shè)備層時的詳細信息的工具),收集所有發(fā)送到塊設(shè)備上的I/O操作信息。統(tǒng)計I/O請求的信息,記錄所有來自虛擬機A的I/O操作數(shù)目,即vm_request_num_base,并進行跟蹤,統(tǒng)計出所有I/O操作的等待時間和執(zhí)行時間。即wait_time_base,exc_time_base.計算出虛擬機A的I/O請求的服務(wù)率,即單位時間內(nèi),來自虛擬機A的I/O請求被完成數(shù)目的平均值,即svctm_base。步驟400、在與前述步驟相同的物理機上,同時創(chuàng)建虛擬機A和虛擬機B,在監(jiān)控時間段內(nèi)保持A和B的正常運行。同步驟200中的方法,收集VMM和Domain0以及Domain0和vm之間的上下文切換次數(shù),計算出在監(jiān)控時間段內(nèi)平均的每秒切換次數(shù),記作switch_combine;步驟500、在步驟400的基礎(chǔ)上,利用步驟300中的方法,收集所有發(fā)送到塊設(shè)備上的I/O操作信息。統(tǒng)計I/O請求的信息,記錄所有來自虛擬機A的I/O操作數(shù)目,即vm_request_num_combine,并進行跟蹤,從而統(tǒng)計出所有I/O操作的等待時間和執(zhí)行時間。即wait_time_combine,exc_time_combine。計算出在共存情況下,虛擬機A的I/O請求的服務(wù)率,即單位時間內(nèi),來自虛擬機A的I/O請求被完成數(shù)目的平均值,svctm_combine.步驟600、通過比較步驟200和步驟400的結(jié)果,以及比較步驟300和步驟500的結(jié)果,來計算出虛擬機A在與虛擬機B共存的情況下,所受到的干擾程度。步驟601、計算步驟200中得到的switch_base和步驟4得到的switch_combine的比值,switch_combine/switch_base,得到上下文切換對性能干擾造成的貢獻。步驟602、計算步驟300中得到的svctm_base和步驟4得到的svctm_combine的比值,svctm_base/svctm_combine得到I/O操作服務(wù)率的下降對性能干擾造成的貢獻。步驟603、計算步驟601,602共同造成的干擾貢獻。interference=switch_score+scvtm_score步驟700、分析計算的結(jié)果:步驟701、計算switch_score,即switch_base/switch_combine,當(dāng)switch_score在1-1.5之間時,可以表明虛擬機B并沒有明顯的增加切換次數(shù),沒有明顯的競爭Domain0對I/O請求的處理。此時干擾程度不明顯。當(dāng)switch_score在1.5-2之間時,說明虛擬機B對I/O請求的處理,有較大的競爭,此時干擾程度較為明顯。當(dāng)switch_score超過2時,此時干擾程度很大,會造成共存應(yīng)用I/O性能明顯的下降。步驟702、計算svctm_score,即svctm_base/svctm_combine,當(dāng)svctm_score在1-1.5之間時,虛擬機A的I/O處理速度沒有明顯下降,此時干擾不明顯。當(dāng)svctm_score在1.5-2之間時,說明虛擬機A的I/O處理速度收到了明顯影響,此時干擾程度較為明顯。當(dāng)svctm_score超過2時,此時干擾程度很大,虛擬機的共存造成I/O性能明顯的下降。步驟703、通過步驟701和步驟702中的比值的加和,最終計算出虛擬機A在與B共存時,所受到的干擾程度大小。即Interference最終得到的結(jié)果越大,表明受到的干擾程度越大。在實際情況下,可以根據(jù)物理機的特點,為svctm_score和switch_score設(shè)置不同的權(quán)重,例如,對于磁盤性能較好的物理機,由于虛擬機共存較不容易達到磁盤處理能力的瓶頸,所以共存情況下和獨占情況下,I/O請求在真實設(shè)備上的處理速度會較接近,當(dāng)服務(wù)率下降時,說明已經(jīng)發(fā)生了較強的干擾,應(yīng)該給予svctm_score較大的權(quán)重(0.5~1)。對于CPU和內(nèi)存性能較好的物理機,由于能夠處理更多的上下文切換,因此switch_score可以給予較低的權(quán)重(0~0.5)。當(dāng)switch_score和svctm_score擁有相同的權(quán)重時:如果interference的值在等于或者接近2,表面此時虛擬機A和B的干擾較小。如果interference的值在2-3之間,表面此時虛擬機A和B的干擾較小。如果interference的值在3-4之間,表面此時虛擬機A和B的干擾較大。如果interference的值等于或者超過4,表面此時虛擬機A和B的干擾嚴重,會造成嚴重的I/O性能下降。本發(fā)明還提供一種虛擬化環(huán)境中共存應(yīng)用I/O性能干擾分析系統(tǒng),采用上述性能分析方法,圖8為本發(fā)明性能干擾分析系統(tǒng)結(jié)構(gòu)示意圖,如圖8所示,該系統(tǒng)還包括:性能監(jiān)控模塊10:通過對系統(tǒng)中上下文切換事件進行跟蹤監(jiān)控,并收集事件信息和I/O操作請求信息;性能干擾分析模塊20:統(tǒng)計得出所述事件信息統(tǒng)計值,并根據(jù)I/O操作請求信息,統(tǒng)計得出各個虛擬機的I/O操作的平均服務(wù)率,根據(jù)所述事件信息統(tǒng)計值和所述I/O操作的平均服務(wù)率,得出共存應(yīng)用的I/O性能的干擾水平。其中,性能監(jiān)控模塊10還包括:獨占監(jiān)控模塊11:在預(yù)定的監(jiān)控時間段內(nèi),獲取虛擬機獨占時在系統(tǒng)單位時間內(nèi)產(chǎn)生的上下文切換次數(shù),并收集和跟蹤記錄來自虛擬機獨占時的I/O操作請求信息;共存監(jiān)控模塊12:在預(yù)定的監(jiān)控時間段內(nèi),獲取虛擬機共存時在系統(tǒng)單位時間內(nèi)產(chǎn)生的上下文切換次數(shù),并收集和跟蹤記錄來自虛擬機共存時的I/O操作請求信息。其中,性能干擾分析模塊20還包括:性能統(tǒng)計模塊21:分別統(tǒng)計虛擬機獨占時和虛擬機共存時的I/O操作請求信息個數(shù)統(tǒng)計值和請求執(zhí)行等待時間統(tǒng)計值;性能分析模塊22:對比分析虛擬機獨占時和虛擬機共存時的上下文切換次數(shù)、操作I/O請求信息個數(shù)統(tǒng)計值和請求執(zhí)行等待時間統(tǒng)計值,得出系統(tǒng)虛擬機共存時的干擾水平。其中,圖9為本發(fā)明性能分析模塊結(jié)構(gòu)示意圖,如圖9所示,性能分析模塊22還包括:上下文對比模塊221:對比分析獨占虛擬機和共存虛擬機的上下文切換次數(shù),得出上下文切換次數(shù)對比值;平均服務(wù)率模塊222:通過虛擬機獨占時和虛擬機共存時的I/O操作請求信息個數(shù)統(tǒng)計值和請求執(zhí)行等待時間統(tǒng)計值,分別得出虛擬機獨占時和虛擬機共存時I/O操作平均服務(wù)率;I/O請求對比模塊223:對比分析獨占虛擬機和共存虛擬機的I/O操作平均服務(wù)率,得出I/O操作平均服務(wù)率對比值;干擾水平分析模塊224:匯總上下文切換次數(shù)對比值和I/O操作平均服務(wù)率對比值,得出系統(tǒng)共存虛擬機的干擾水平。圖10為本發(fā)明系統(tǒng)XEN虛擬化環(huán)境下具體實施例框架示意圖,如圖10所示,各個模塊的功能和關(guān)系如下:性能監(jiān)控模塊30:采集在I/O請求執(zhí)行的過程中,對系統(tǒng)中所有上下文切換事件進行跟蹤,收集事件信息,包括產(chǎn)生上下文切換的事件名稱,事件的數(shù)目,事件花費的時間;跟蹤發(fā)送到真實設(shè)備上的I/O操作,收集I/O請求信息,信息包括每一個I/O操作屬于的虛擬機號,該操作目標(biāo)扇區(qū)號,該操作請求塊大小,該操作發(fā)送到真實設(shè)備等待執(zhí)行的時間,該操作的完成的時間。性能干擾分析模塊40還包括:性能統(tǒng)計模塊41和性能分析模塊42;性能統(tǒng)計模塊41:通過數(shù)據(jù)性能監(jiān)控模塊30中收集的數(shù)據(jù),統(tǒng)計出系統(tǒng)中發(fā)生的上下文切換次數(shù);通過性能監(jiān)控模塊30中收集的數(shù)據(jù),統(tǒng)計出來自各個虛擬機的I/O操作的等待時間,真實執(zhí)行時間;性能分析模塊42:通過性能統(tǒng)計模塊41計算出的結(jié)果,分析共存應(yīng)用的干擾程度。綜上所述,本發(fā)明提供的一種虛擬化環(huán)境中共存應(yīng)用I/O性能干擾分析方法及其系統(tǒng),分析了虛擬機I/O性能干擾水平,并通過獨占和共存場景下的比較,將干擾水平進行量化。當(dāng)然,本發(fā)明還可有其它多種實施例,在不背離本發(fā)明精神及其實質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明做出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護范圍。
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1