System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种大规模文件存储模拟的测试系统技术方案_技高网

一种大规模文件存储模拟的测试系统技术方案

技术编号:40971288 阅读:3 留言:0更新日期:2024-04-18 21:20
本发明专利技术公开了一种大规模文件存储模拟的测试系统,涉及文件存储测试技术领域,包含大规模虚机参数模拟模块、文件存储行为模板模块、文件存储原子操作模拟模块、NFS报文封装模块、NFS报文收发模块、NFS报文解析模块、NFS报文逻辑处理模块;主要解决在云计算文件存储测试场景中,大规模虚机客户端挂载和操作的测试场景下的测试模拟问题,本发明专利技术极大的减少测试时环境服务器的数量,降低测试成本,减少人工操作,提升测试效率;解决大规模测试环境和操作问题后,复现并验证公有云场景大压力下客户端操作场景,极大地提高系统的稳定性和可靠性,加固系统质量;更好的贴近生产环境场景完成测试。

【技术实现步骤摘要】

本专利技术属于涉及文件存储测试,尤其涉及一种大规模文件存储模拟的测试系统


技术介绍

1、网络文件系统(nfs)是文件系统之上的一个网络抽象,来允许远程客户端以与本地文件系统类似的方式,来通过网络进行访问。虽然nfs不是第一个此类系统,但是它已经发展并演变成linux系统中最强大最广泛使用的网络文件系统。nfs允许在多个用户之间共享公共文件系统,并提供数据集中的优势,来最小化所需的存储空间。

2、网络文件系统(nfs)从1984年问世以来持续演变,并已成为分布式文件系统的基础。当前,nfs(通过pnfs扩展)通过网络对分布的文件提供可扩展的访问。

3、从客户端的角度来说,nfs中的第一个操作称为mount。mount代表将远程文件系统加载到本地文件系统空间中。该流程以对mount(linux系统调用)的调用开始,它通过vfs路由到nfs组件。确认了加载端口号之后(通过get_port请求对远程服务器rpc调用),客户端执行rpc mount请求。这一请求发生在客户端和负责mount协议(rpc.mountd)的特定守护进程之间。这一守护进程基于服务器当前导出文件系统来检查客户端请求;如果所请求的文件系统存在,并且客户端已经访问了,一个rpc mount响应为文件系统建立了文件句柄。客户端这边存储具有本地加载点的远程加载信息,并建立执行input/output场景的行为模式请求的能力。这一协议表示一个潜在的安全问题;因此,nfsv4用内部rpc调用替换这一辅助mount协议,来管理加载点。

4、要读取一个文件,文件必须首先被打开。在rpc内没有open程序;反之,客户端仅检查目录和文件是否存在于所加载的文件系统中。客户端以对目录的getattr rpc请求开始,其结果是一个具有目录属性或者目录不存在指示的响应。接下来,客户端发出lookup rpc请求来查看所请求的文件是否存在。如果是,会为所请求的文件发出getattr rpc请求,为文件返回属性。基于以上成功的getattrs和lookups,客户端创建文件句柄,为用户的未来需求而提供的。

5、利用在远程文件系统中指定的文件,客户端能够触发read rpc请求。read包含文件句柄、状态、偏移、和读取计数。客户端采用状态来确定操作是否可执行(那就是,文件是否被锁定)。偏移指出是否开始读取,而计数指出所读取字节的数量。服务器可能返回或不返回所请求字节的数量,但是会指出在read rpc回复中所返回(随着数据)字节的数量。

6、在公有云场景,文件存储网关挂载几千,甚至几万个客户端,同时读写是很正常的场景。但是在测试环境中如果模拟这个量级的客户端挂载就会需要大量服务器创建虚机进行模拟,需要消耗极大的成本和人力投入。在测试环境准备和人力投入等问题阻塞的情况下,大规模客户端模拟测试无法进行。


技术实现思路

1、本专利技术所要解决的技术问题是针对
技术介绍
的不足提供一种大规模文件存储模拟的测试系统,解决在云计算文件存储测试场景中,大规模虚机客户端挂载和操作的测试场景下的测试模拟问题;通过本专利提出的模拟方法,可以极大的减少测试时环境服务器的数量,降低测试成本,减少人工操作,提升测试效率。

2、本专利技术为解决上述技术问题采用以下技术方案:

3、一种大规模文件存储模拟的测试系统,包含大规模虚机参数模拟模块、文件存储行为模板模块、文件存储原子操作模拟模块、nfs报文封装模块、nfs报文收发模块、nfs报文解析模块、nfs报文逻辑处理模块;其中,nfs为网络文件系统;

4、大规模虚机参数模拟模块,用于对报文的ip头和以太网头替换,模拟多虚机发送报文;

5、文件存储行为模板模块,用于对文件存储典型操作进行模板定义,将典型存储操作对应到文件存储原子操作组合;

6、文件存储原子操作模拟模块,用于对文件存储原子操作定义,将原子操作对应到具体报文组合;

7、nfs报文封装模块,用于对发送的nfs报文进行封装,保证发送报文语义正确;

8、nfs报文收发模块,用于通过python语言定义的报文收发接口,对报文进行发送和接收;

9、nfs报文解析模块,用于将报文头剥离,解析收到报文的报文体,并与文件存储的原子操作对应;

10、nfs报文逻辑处理模块,用于对解析后的报文进行逻辑判断,判断收到的报文对应原子操作,判断模拟的不同设备发送请求是否均收到了应答报文。

11、作为本专利技术一种大规模文件存储模拟的测试系统的进一步优选方案,所述大规模虚机参数模拟模块,具体包含如下步骤:

12、定义大规模虚机操作场景;模拟报文从不同的设备发送,从而模拟大规模虚机场景下文件存储操作产生的服务端资源占用和文件存储多虚机共享场景下操作冲突场景:

13、模拟大规模虚机挂载文件存储下服务端挂载点资源占用;

14、模拟大规模虚机挂载文件存储下服务端句柄资源占用;

15、模拟大规模虚机挂载相同文件存储时,对同一个文件同时读写的锁场景。

16、作为本专利技术一种大规模文件存储模拟的测试系统的进一步优选方案,所述文件存储行为模板模块,具体包含如下步骤:

17、对虚机内,客户文件系统的存储相关操作进行模板定义,标准化定义文件存储操作场景和input/output场景的行为模式,实现文件存储测试用例与标准化元操作之间的关系对应:

18、定义挂载文件存储场景时需要的挂载相关请求组合;

19、定义对文件存储进行读写时文件夹操作和文件操作交互请求组合。

20、作为本专利技术一种大规模文件存储模拟的测试系统的进一步优选方案,所述文件存储原子操作模拟模块,具体包含如下步骤:

21、定义单个文件系统操作模型下,将客户可见的可理解的单个原子操作与一组远程服务器rpc和nfs交互相关报文关联起来;

22、通过抓包,分析rpc报文格式和nfs报文格式,对于原子操作中每个操作类型定义多组标准报文收发请求,测试时通过参数选取其中一组进行收发模拟,不支持报文根据文件对象而自定义修改。

23、作为本专利技术一种大规模文件存储模拟的测试系统的进一步优选方案,原子操作对应的报文组合:

24、nfs服务端服务启动/未启动时,进行文件存储挂载操作的报文收发组合;

25、文件系统挂载后文件夹的操作的报文收发组合;

26、文件系统挂载后文件的操作的报文收发组合;

27、作为本专利技术一种大规模文件存储模拟的测试系统的进一步优选方案,文件系统挂载后文件夹的操作包含创建、删除、重命名、移动、属性查询、属性修改。

28、作为本专利技术一种大规模文件存储模拟的测试系统的进一步优选方案,文件系统挂载后文件的操作创建、删除、重命名、打开、关闭、移动、属性查询、属性修改。

29、作为本专利技术一种大规模文件存储模拟的测试系统的进一步本文档来自技高网...

【技术保护点】

1.一种大规模文件存储模拟的测试系统,其特征在于:包含大规模虚机参数模拟模块、文件存储行为模板模块、文件存储原子操作模拟模块、NFS报文封装模块、NFS报文收发模块、NFS报文解析模块、NFS报文逻辑处理模块;其中,NFS为网络文件系统;

2.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述大规模虚机参数模拟模块,具体包含如下步骤:

3.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述文件存储行为模板模块,具体包含如下步骤:

4.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述文件存储原子操作模拟模块,具体包含如下步骤:

5.根据权利要求4所述的一种大规模文件存储模拟的测试系统,其特征在于:原子操作对应的报文组合:

6.根据权利要求5所述的一种大规模文件存储模拟的测试系统,其特征在于:文件系统挂载后文件夹的操作包含创建、删除、重命名、移动、属性查询、属性修改。

7.根据权利要求5所述的一种大规模文件存储模拟的测试系统,其特征在于:文件系统挂载后文件的操作创建、删除、重命名、打开、关闭、移动、属性查询、属性修改。

8.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述NFS报文封装模块对发送的NFS报文进行封装,具体如下:对IP报文封装时,修改报文头IP段和MAC段,模拟报文从不同虚机设备发送。

9.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述NFS报文收发模块对报文进行发送和接收,具体如下:将封装好的报文进行发送模拟,和将收到的报文捕获。

10.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述NFS报文解析模块,具体包含如下步骤:

...

【技术特征摘要】

1.一种大规模文件存储模拟的测试系统,其特征在于:包含大规模虚机参数模拟模块、文件存储行为模板模块、文件存储原子操作模拟模块、nfs报文封装模块、nfs报文收发模块、nfs报文解析模块、nfs报文逻辑处理模块;其中,nfs为网络文件系统;

2.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述大规模虚机参数模拟模块,具体包含如下步骤:

3.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述文件存储行为模板模块,具体包含如下步骤:

4.根据权利要求1所述的一种大规模文件存储模拟的测试系统,其特征在于:所述文件存储原子操作模拟模块,具体包含如下步骤:

5.根据权利要求4所述的一种大规模文件存储模拟的测试系统,其特征在于:原子操作对应的报文组合:

6.根据权利要求5所述的一种大规模文件存储模拟的...

【专利技术属性】
技术研发人员:王群潘晓东朱廷祥甄富王璇
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1