2006年1月JournalonCommunicationsJanuary2006第27卷第1期通信学报Vol.27No.1网络存储系统I/O响应时间边界性能研究(标题1,3号黑体,外文为TimesNewRoman加粗)崔宝江1,刘军2,3,王刚2,刘璟2(人名,5号楷体_GB2312)(1.北京邮电大学信息安全中心,北京100876;2.南开大学计算机科学系,天津300071)(地名,6号宋体、外文TimesNewRoman)摘要:为了对网络存储系统性能进行预测和改进,利用定量分析法研究了系统I/O响应时间与各性能影响因素之间的关系。通过分析网络RAID存储系统的数据传输原理,建立了该系统的闭合排队网络模型,并研究了其I/O当并发任务数较低时,存储中心服务器CPU处理能力和缓冲区命中率是影响I/O响应时间的关键因素。关键词:网络存储;性能建模;排队网络;I/O响应时间中图分类号:TP302文献标识码:A文章编号:1000-436X(2006)01-0001-06(“摘要”题名为小5号黑体,摘要正文为小5号宋体)(“关键词”题名为小5号黑体,关键词正文为小5号宋体)(“中图分类号、文献标识码、文章编号”题名为小5号黑体,内容为小5号TimesNewRoman体)StudyonI/Oresponsetimeboundsofnetworkstoragesystems(标题1,3号TimesNewRoman加粗)CUIBao-jiang1,LIUJun2,3,WANGGang2,LIUJing2(人名,5号TimesNewRoman)(1.InformationSecurityCentre,BeijingUniversityofPostsandTelecommunications,Beijing100876,China;2.Dept.ofComputerScience,NankaiUniversity,Tianjin300071,China)(地名,6号TimesNewRoman)Abstract:Inordertopredictandimprovetheperformanceofnetworkedstoragesystems,therelationshipwasexploredbetweenthesystemI/Oresponsetimeanditsperformancefactorsbyquantitativeanalyticalmethod.Throughanalyzingdynamictrendofitsactualperformance.Furthermore,weconcludethattheCPUprocessingpowerandcachehitrateoftheserveratthestoragecenterarethekeyfactorsaffectingtheI/Oresponsetimeastheconcurrentjobsarelower.Keywords:networkedstorage;performancemodelling;queueingnetworks;I/Oresponsetime(英文摘要、关键词为小5号TimesNewRoman,题名加粗)1引言(标题2,小4号黑体,占2行)网络技术的飞速发展,促使信息量正以超乎人们想象的速度增长。随着海量数据处理需求的日益迫切,用户对数据存储系统在性能方面提出了更高的要求。现有对存储系统性能方面的研究主要集中在DAS存储系统[1],随着网络存储技术的快速发展,针对网络存储系统性能方面的研究逐渐成为当前热点。由于存储网络的引入,使影响网络存储系统性收稿日期(小5号黑体):2005-10-10;修回日期(小5号黑体):2005-11-10基金项目(小5号黑体):国家自然科学基金资助项目(60273031);高校博士点科研基金资助项目(20020055021);天津市科技发展计划重点基金资助项目(043800311)(小5号宋体)FoundationItems:NationalNaturalScienceFoundationofChina(60273031);EducationMinistryDoctoralResearchFoundationofChina(20020055021)(加基金项目中文的译文,小五号TimesNewRoman,题名加粗)·2·通信学报第27卷的因素更加复杂,不仅涉及到DAS存储系统,而且和网络、主机系统性能密切相关。对于网络存储系统性能方面的评价和研究,国内外都做了大量工作。目前,这些关于性能方面的研究大都是定性的[2~4],定量研究模型仍然有限[5]。本文构建了基于网络RAID结构的网络存储系统,对其结构和数据处理流程进行了分析,建立了它的闭合排队网络模型CQNM(closedqueueingnetworksmodel),并在排队网络理论基础上提出了其性能定量分析模型。利用此模型可快速分析网络RAID存储系统I/O响应时间的性能边界,定量地分析影响网络存储系统性能的关键性能影响因素,并区分各种影响因素对系统性能的影响程度。本文的结构如下:第2节,描述网络RAID存储系统的结构;第3节,建立了网络RAID存储系统的排队网络模型,并在此基础上提出了其I/O响应时间的边界性能分析模型;第4节对I/O响应时间的性能分析模型进行了验证,并利用模型分析了网络RAID存储系统的性能影响因素;第5节,结论。2网络RAID存储系统的结构网络RAID存储系统的系统结构如图1所示,构建了基于两级RAID5冗余结构的网络存储系统。分布于网络中的存储设备,利用IP存储协议ENBD映射为存储中心服务器的虚拟存储设备。这些虚拟设备通过存储中心服务器中的软RAID设备驱动程序构建成不同级别的RAID存储空间。从而把在网络中分布的存储资源组织成存储中心服务器可利用的具有统一地址空间的虚拟存储空间。在网络RAID存储系统中,存储中心服务器应用程序对本地虚拟RAID存储设备的读写请求,通过调用ENBDClient端程序,将数据由网络传送到远端的存储服务器。存储服务器中的ENBDServer端程序接收到数据包后,解析出原数据和命令,将读写请求通过设备文件系统或设备驱动程序对存储设备完成具体读写操作,最后将相应信息再反馈回存储中心服务器。在上面对网络存储系统的基本存储数据处理流程进行分析的基础上,可建立其抽象性能分析模型。图1网络RAID存储系统的网络拓扑图3网络RAID存储系统的性能分析模型3.1建立网络模型(标题3,5号黑体,占1行)(以下为正文,正文为5号宋体,外文TimesNewRoman。注意:正文中单个数字和外文字母不得用公式编辑器生成)基于以上对网络RAID存储系统基本存储流程的分析,我们将数据处理流程中的主要环节抽象为一个个服务节点,其中,存储中心服务器和存储服务器中的中央处理器抽象为CPU服务节点,网卡抽象为网卡服务节点,用于在存储中心服务器和存D存储系统的CQNM模型,见图2,图中左侧的存储中心服务器通过网络连接到右侧的存储服务器。CPU服务节点负责处理本地的应用程序和数据,网卡服务节点通过网卡向网络中发送或接收数据,网络传输节点通过网络传输数据,磁盘I/O节点负责对磁盘进行读写操作。3.1.1建立边界性能分析模型(标题4,5号楷体,占1行)建立网络RAID存储系统的CQNM模型后,我们利用BJB[6](balancedjobbounds)方法定量分图2网络RAID存储系统的排队网络模型(图片居中排,图片中字号为6号华文中宋,段前空为12磅,段后空为5磅)(图名为6号宋体,居中,段前空2磅,段后空为10磅)第1期崔宝江等:网络存储系统I/O响应时间边界性能研究·3·析其响应时间的性能边界。假定Di为节点i(i∈{1,…K})的服务需求,定义Dmax=max{Di,i∈(1,…K)},Dsum=K1iiD,i∈(1,…K),Davg=Dsum/K,则网络RAID存储系统I/O响应时间的性能边界为(公式另行居中单倍行距,用制表符隔开,编号右对齐,公式字号大小是10.5磅)max(NDmax,Dsum+(N1)Davg)≤R(N)(1)下面根据网络RAID存储系统中数据处理的具体流程,进一步建立每个服务节点服务需求Di的分析模型。CPU服务节点服务需求的计算又分为存储中心服务器和存储服务器两类。存储中心服务器中CPU服务节点的服务需求DCm是指用于处理存储行为的时间,包括CPU服务节点对网络虚拟磁盘数据读写操作的时间,以及缓存未命中时ENBDClient对数据处理的时间和进行传输所消耗的TCP/IP协议处理时间,可表示为DCm=Tmpro·mmSSTU+(1Pm)TmpIPnum(2)其中,Sm为单个任务操作所处理的字节数,Tmpro为单个数据条纹单元的平均处理时间,包括内存拷贝和读写操作时间。STUm为中心服务器条纹单元的大小,Pm为读写的缓存命中率,1−Pm为读写操作访问存储服务器磁盘的概率。在实验环境中,由于文件大小远大于系统缓存,假定写操作的缓存命中率为0。Tmp为ENBDClient对单个IP包包含的数据进行数据处理和传输所消耗的TCP/IP协议处理时间之和。IPnum为单个任务被分片所得的IP数据包数,则IPnum=mRi/SMSS(3)MSS为以太网中TCP最大分段大小。SmRi为RAIDi时,存储中心服务器处理单个任务所实际操作的字节数。例如,对于RAID5系统的写操作,由于要同时写数据单元和校验单元,故SmR5=Sm·mm/(1)STPSTP(4)STPm为存储中心服务器一个条纹包含的条纹单元数;对于读操作,则SmR5=Sm(5)同理,存储服务器中CPU服务节点的服务需求DCsn可表示为DCsn=mm1PSTP·(Tsnpro·snmSSTU+Tsnp·snnumIP)(6)其中,Tsnpro为存储服务器单个数据条纹单元的平均处理时间,Ssn为存储服务器对于存储中心服务器的一个RAID5任务所需要实际处理的字节数,可表示为Ssn=SmR5/STPm。Tsnp为存储服务器处理单个IP包包含的数据所花费的处理时间。IPsnnum为存储服务器对于中心服务器的一个RAID5任务所需要实际处理的IP数据包数,可表示为IPsnnum=IPnum/STPm。存储中心服务器网卡服务节点的服务需求可以表示为每个任务通过网卡进行传输所用的平均时间DNm=(1Pm)·numeeIPFramesTRate(7)其中,TRatee为以太网的传输速率,Framese为以太帧的大小。与之类似,存储服务器中网卡服务节点的服务需求表示为DNsn=mm1PSTP·IPsnnum·eeFramesTRate(8)网络传输节点的服务需求可以表示为每个任务在网络传输过程中所用的平均时间DNet=(1Pm)·m5eRSTRate(9)磁盘I/O节点的服务需求表示为每个任务在磁盘中进行操作所需时间Dd=mm1PSTP·(1Psn)·snmdm()SSTUseeklatencyTRateSTU(10)其中,Psn为存储服务器的缓存读命中率,1−Psn为读操作访问磁盘的概率,由于文件大小大于系统缓存,假定写操作的命中率为0。seek和latency分别读操作访问磁盘的概率,由于文件大小大于系统缓存,假定写操作的命中率为0。seek和latency分别为磁盘的平均寻道时间和平均延迟时间,TRated为磁盘的最大持续传输速率。将上面各节点的服务需求模型代入式(1)中,即可得到基于网络RAID存储系统I/O响应时间的性能边界分析模型。·4·通信学报第27卷4性能测试与分析我们利用上述模型的基础上,对网络RAID5存储系统的响应时间和性能影响因素进行分析。网络存储系统实验环境是由4台运行Linux7.3操作系统的PC机组成的一个网络RAID5存储系统,其网络拓扑参见图1。PC机的配置为PIII650CPU,64MB内存,10/100Mbit