CN106161132B - 用于对存储网络进行测试的装置和方法 - Google Patents
用于对存储网络进行测试的装置和方法 Download PDFInfo
- Publication number
- CN106161132B CN106161132B CN201510185152.8A CN201510185152A CN106161132B CN 106161132 B CN106161132 B CN 106161132B CN 201510185152 A CN201510185152 A CN 201510185152A CN 106161132 B CN106161132 B CN 106161132B
- Authority
- CN
- China
- Prior art keywords
- test
- measured
- tester
- storage
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明的实施方式提供了一种用于对存储网络进行测试的装置。该方法包括:处理器,被配置为响应于测试请求来生成配置信号;以及与所述处理器耦合的测试器,通过所述配置信号被配置为在不同的操作模式下操作,以便对所述存储网络中的不同的待测对象进行测试;其中所述测试请求指示所述测试器的操作模式。利用本发明所提出的方案,能够通过一个测试设备来实现对存储网络中的多种类型的待测对象的测试,而且测试成本低、操作更为便捷。
Description
技术领域
本发明的各实施方式涉及测试技术,更具体地,涉及用于对存储网络进行测试的装置和方法。
背景技术
存储网络通常包括一个或多个服务器以及能够由服务器进行访问的存储系统。为了扩展存储网络的规模,通常利用一个或多个存储扩展设备将多个服务器耦合至存储系统。
在新设备的研发过程中,设备厂商通常会按照设计方案生产一批试验产品,以进行测试,在测试通过之后,再进行批量生产。目前,存储网络中的不同设备分别由不同的厂商来生产。例如,服务器由服务器的厂商来生产,而存储系统中的物理存储设备由存储设备的厂商来生产。因此,不同的厂商会利用各自的测试设备针对各自的产品进行测试。在将设备组织成存储网络之后,利用不同的设备厂商在研发过程中所使用的不同测试设备对各个设备进行测试往往是低效的。
因此,需要能够通过一个测试设备来实现对存储网络中的多种类型的待测对象的测试的高效解决方案。
发明内容
为了解决上述问题,本发明提出了一种利用操作模式可配置的测试器来对存储网络中的多种类型的待测对象进行测试的技术方案。
在本发明的第一方面,提供了一种用于对存储网络进行测试的装置。该装置可以包括:处理器,被配置为响应于测试请求来生成配置信号;以及与该处理器耦合的测试器,通过该配置信号被配置为在不同的操作模式下操作,以便对该存储网络中的不同的待测对象进行测试。该测试请求指示该测试器的操作模式。
在一个实施方式中,该测试器可以被进一步配置为在该操作模式之一下,对该待测对象中的至少一个待测对象进行仿真,从而对与被仿真的待测对象通信的其他待测对象进行测试。
在一个实施方式中,该测试器被进一步配置为在所述操作模式之一下,对所述待测对象中的两个待测对象进行仿真,从而对与被仿真的两个待测对象通信的其他待测对象进行测试。
在一个实施方式中,该测试器可以被进一步配置为支持该不同的待测对象之间进行通信的协议。
在一个实施方式中,该测试器可以进一步包括至少一个测试端口,被配置为向该待测对象传送测试信号和/或从该待测对象接收针对该测试信号的响应。该测试端口中的每个测试端口与该操作模式之一相关联。
在一个实施方式中,该测试端口可以包括以下各项之一:串行附接小型计算机(SAS)端口、光纤通道(FC)端口、以及串行高级技术附件(SATA)端口。
在一个实施方式中,该处理器可以包括嵌入式处理器。
在一个实施方式中,该待测对象可以至少包括以下各项中的两项:主机总线适配器(HBA);物理存储设备;以及耦合于该主机总线适配器和该物理存储设备之间的存储扩展设备。
在本发明的第二方面,提供了一种用于对存储网络进行测试的方法。该方法包括:响应于测试请求来生成配置信号;以及通过该配置信号将测试器配置为在不同的操作模式下操作,以便对该存储网络中的不同的待测对象进行测试;其中该测试请求指示该测试器的操作模式。
在本发明的第三方面,提供了一种计算机程序产品,该计算机程序产品被有形地存储在非瞬态计算机可读存储介质上,并且包括机器可执行指令。该指令在被执行时使得该机器执行如上所述的方法的步骤。
利用本发明所提出的方案,能够通过一个测试设备来实现对存储网络中的多种类型的待测对象的测试,而且测试成本低、操作更为便捷。
附图说明
下面将参考附图中示出的若干示例实施例来描述本发明的原理。应当理解,描述这些实施例仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
图1示意性示出了常规的存储网络的架构;
图2示意性示出了根据本发明一个实施方式的用于对存储网络进行测试的装置的框图;
图3示意性示出了适于用来实践本发明实施方式的嵌入式计算设备的框图;以及
图4示意性示出了根据本发明一个实施方式的用于对存储网络进行测试的方法的流程图。
具体实施方式
下面将参考附图中示出的若干示例实施例来描述本发明的原理。应当理解,描述这些实施例仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
图1示出了常规的存储网络100的示意性架构。如图1所示,存储网络100包括服务器110以及能够与之通信的存储系统。服务器110包括主机总线适配器(HBA)111。HBA 111被配置为实现服务器110的内部通道协议(例如PCI协议)和存储系统的I/O通道协议之间的转换。存储系统的I/O通道协议的示例包括、但是不限于:串行连接小型计算机系统接口(Serial Attached Small Computer System Interface,SAS)协议、光纤通道(FibreChannel,FC)协议、以及串行高级技术附件(Serial Advanced Technology Attachment,SATA)协议。
该存储系统包括物理存储设备1201、1202、1203、1204以及1205(统称为物理存储设备120)。作为一个示例,该物理存储设备为硬盘驱动器(HDD)。为了扩展存储网络100的规模,可以在服务器110与存储系统之间耦合一个或多个彼此级联的存储扩展设备1301、1302和1303(统称为存储扩展设备130)、以及存储扩展设备1401和1402(统称为存储扩展设备140)。存储扩展设备130和/或140通常还被配置为将从服务器110接收的命令和/或数据路由至相应的物理存储设备120。作为一个示例,存储扩展设备130和/或140为交换机。
应当理解,为了清晰起见,图1中仅示出了一个服务器110。然而,根据实际需要,可以存在访问存储系统的多个服务器110。此外,出于说明的目的,图1中示出了在每个驱动器轴(spindle)上仅设置了一个物理存储设备120。然而,为了节省空间,可以在每个驱动器轴上设置了多个物理存储设备120。
服务器110与物理存储设备120之间可以基于任何适当的协议来通信。该协议的示例包括、但是不限于:SAS协议、FC协议、以及SATA协议。
在SAS协议的示例中,由于服务器110作为I/O命令和/或数据的发起方,因而也被称作发起器(initiator)。此外,由于物理存储设备120作为I/O命令和/或数据的接收方,因而也被称作目标(target)。另外,存储扩展设备130和/或140也被称作扩展器(expander)。
在将服务器110、存储扩展设备130和/或140以及物理存储设备120组织成存储网络100之后,通常需要对其性能进行测试。然而,利用服务器110、存储扩展设备130和/或140以及物理存储设备120各自的生产厂商在研发过程中所使用的不同测试设备对他们进行测试往往是低效的。因此,期望能够通过一个测试设备来实现对存储网络中的多种类型的待测对象的测试的高效解决方案。
此外,在生产厂商所使用的测试设备往往仅适用于研发过程,而不适用于后期的使用过程。例如,在将多个物理存储设备120组织成存储网络100的过程中,需要对多个物理存储设备120进行封装。在此情况下,如果利用生产厂商所使用的测试设备对封装后的物理存储设备120,则需要破坏封装,从而增大了测试成本并且增大了测试复杂度。因此,期望提供一种低成本且更为便捷的解决方案。
因此,在本发明的一个方面,提供了一种利用模式可配置的测试器来对存储网络中的多种类型的待测对象进行测试的装置。
图2示出了根据本发明一个实施方式的用于对存储网络进行测试的装置200的框图。如图2所示,装置200包括处理器210以及与处理器210耦合的测试器220。如本文所使用的术语“耦合”包括直接连接或间接地通过中间元件连接。
在一个实施方式中,处理器210被实现为嵌入式处理器。“嵌入式处理器”是相对于通用计算机处理器而言的,通常指代被设计用于执行一个或一些专用功能的处理器。嵌入式处理器的示例包括、但是不限于:嵌入式微处理器(Micro Processor Unit,MPU)、嵌入式微控制器(Microcontroller Unit,MCU)、嵌入式DSP处理器(Embedded Digital SignalProcessor,EDSP)、以及嵌入式片上系统(System On Chip,SoC)。由于嵌入式处理器具有体积小、易于与其他模块集成等优点,因此在采用嵌入式处理器的情况下,装置200也能够具有较小的尺寸,从而便于携带。然而,应当理解,处理器210能够采用本领域中已知的或将来开发的任何适当的形式来实现,本发明的范围在此方面不受限制。
处理器210被配置为响应于测试请求来生成配置信号。在一个实施方式中,装置200进一步包括输入/输出设备(未示出),处理器210经由该输入/输出设备、从测试者来获取该测试请求。作为一个示例,该输入/输出设备包括小键盘,例如九宫格键盘。测试者可以通过按压小键盘上的预定的按键或预定的按键组合来向处理器210发送该测试请求。作为另一个示例,该输入/输出设备包括触摸屏显示器。测试者可以通过触摸在该触摸屏显示器上呈现的预定的图标来向处理器210发送该测试请求。由此,处理器210经由该输入/输出设备来获取该测试请求。
附加地或者可替换地,在另一个实施方式中,装置200进一步包括通信接口(未示出),处理器210经由该通信接口从特定计算设备来获取该测试请求,例如从台式计算机(PC)、膝上型计算机、平板式计算机、或移动电话等获取。该通信接口包括串行通信接口和/或并行通信接口。该通信接口的示例包括、但是不限于:以太网接口、USB接口、通用异步收发器(UART)接口。应当理解,处理器210可以通过任何适当的方式来获取该测试请求,本发明的范围在此方面不受限制。
在本发明的各实施方式,处理器210所获取的测试请求指示将测试器220配置成何种操作模式。
作为一个示例,在装置200如上所述那样包括小键盘的情况下,小键盘上的预定的按键或预定的按键组合与测试器220的相应操作模式相关联。由此,测试者通过按压预定的按键或预定的按键组合来指示将测试器220配置成相应的操作模式。例如,按键组合“123”可以与测试器220的第一操作模式相关联,测试者通过按压该按键组合“123”来指示将测试器220配置成第一操作模式。
作为另一个示例,在装置200如上所述那样包括触摸屏显示器的情况下,该触摸屏显示器上的预定的图标与测试器220的相应操作模式相关联。由此,测试者通过触摸预定的图标来指示将测试器220配置成相应的操作模式。例如,“磁盘”图标可以与测试器220的第一操作模式相关联,测试者通过触摸该“磁盘”图标来指示将测试器220配置成第一操作模式。
在本发明的各实施方式中,处理器210对所获取的测试请求进行解析以生成相应的配置信号,利用该配置信号将测试器220配置为在不同的操作模式下操作,以便对存储网络中的不同的待测对象进行测试。
在一个实施方式中,测试器220进一步包括一个或多个测试接口,该测试接口支持在不同待测对象之间进行通信的协议。作为一个示例,上述协议包括SAS协议;相应地,该测试接口包括SAS接口。作为另一个示例,上述协议包括FC协议;相应地,该测试接口包括FC接口。作为又一个示例,上述协议包括SATA协议;相应地,该测试接口包括SATA接口。
在一个实施方式中,测试器220被进一步配置为在多个操作模式之一下,对多个待测对象中的至少一个待测对象进行仿真,从而对与被仿真的待测对象通信的其他待测对象进行测试。在一个实施方式中,所述待测对象至少包括以下各项中的两项:主机总线适配器(HBA),物理存储设备,以及耦合于所述主机总线适配器和所述物理存储设备之间的存储扩展设备。该物理存储设备的示例包括、但是不限于:硬盘驱动器(HDD)、固态盘驱动器(SSD)、磁带(tape)驱动器。该存储扩展设备的示例包括、但是不限于:交换机。
图3示出了适于用来实践本发明实施方式的嵌入式计算设备300的示意性框图。如图3所示,嵌入式计算设备300包括嵌入式处理器310。嵌入式处理器310的示例包括、但是不限于:MPU、MCU、EDSP、以及SoC。
此外,嵌入式处理器310可以与RAM以及闪存(Flash)存储器(未示出)相耦合。可以通过软件将一部分RAM模拟为硬盘来使用,从而形成虚拟内存盘(RAMDISK)。相对于直接的硬盘文件访问而言,可以极大的提高在其上进行的文件访问的速度。Flash存储器中可以存储有嵌入式计算设备300的操作系统和固件镜像。
嵌入式计算设备300进一步包括通信接口330。通信接口320的示例包括、但是不限于:以太网接口、USB接口、通用异步收发器(UART)接口。嵌入式处理器310可以经由通信接口330从另一特定计算设备来获取测试请求,并且响应于该测试请求来生成配置信号。此外,嵌入式处理器310还可以经由通信接口330从该另一特定计算设备接收预定的测试案例(test case),以供在测试过程中运行。
嵌入式计算设备300进一步包括测试器320。测试器320可以实现为支持不同的待测对象之间进行通信的协议的控制器。该协议的示例包括、但是不限于:SAS协议、FC协议、以及SATA协议。作为一个示例,在SAS协议的情况下,测试器320可以实现为SAS控制器320。SAS控制器320是一种支持SAS协议的磁盘驱动器控制器。SAS控制器320被配置为从嵌入式处理器310接收配置信号,并且通过该配置信号被配置为在不同的操作模式下操作,以便对存储网络中的不同的待测对象进行测试。
嵌入式计算设备300进一步包括测试端口3401、3402、3403、3404(统称为测试端口340)。测试端口的数目可以根据SAS控制器320的操作模式的数目来确定。因此,尽管图3中示出了四个测试端口,但是根据SAS控制器320的操作模式的数目,嵌入式计算设备300可以包括更多或更少数目的测试端口。SAS控制器320的每一操作模式均与测试端口340中的一个或多个相关联。此外,测试端口340被配置为支持不同的待测对象之间进行通信的协议。该协议的示例包括、但是不限于:SAS协议、FC协议、以及SATA协议。作为一个示例,在SAS协议的情况下,测试端口340可以实现为SAS端口340。
SAS控制器320的操作模式至少包括第一操作模式和第二操作模式。在第一操作模式下,SAS控制器320被配置为对物理存储设备(例如图1中的物理存储设备140)之一进行仿真,或者被配置为充当该物理存储设备,以便对服务器上的HBA(例如图1中的HBA 111)或存储扩展设备之一(例如图1中的存储扩展设备130或140)进行测试。此外,SAS控制器320的第一操作模式与测试端口340之一、例如测试端口3401相关联。
在第一操作模式下的测试中,SAS控制器320经由测试端口3401例如从HBA 111或存储扩展设备130/140接收测试数据流,将所接收的测试数据流发送至嵌入式处理器310。嵌入式处理器310对测试数据流进行分析,以生成测试结果。测试结果可以经由显示器350呈现给测试者。此外,测试结果也可以经由通信接口320传送至另一特定计算设备。
此外,利用本发明的测试装置,在第一操作模式下的测试中,不需要采用实际的物理存储设备、例如硬盘驱动器或固态盘驱动器,因而能够实现利用实际的物理存储设备所无法进行的极限测试,例如满12Gbps数据路径的压力测试。另外,可以理解,如果反复对实际的物理存储设备进行该极限测试,将严重影响物理存储设备的使用寿命。然而,利用本发明的测试装置不但可以达到该极限测试的目的,而且可以避免损害物理存储设备。
再者,在第一操作模式下的测试中,来自HBA的测试数据流可以被写入RAM中的RAMDISK中。可以理解,如果反复对实际的物理存储设备进行读取/写入操作,将影响物理存储设备的使用寿命。然而,利用本发明的测试装置则可以避免因测试而降低物理存储设备的使用寿命。
另外,在第一操作模式下的测试中,可以利用本发明的测试装置对各种数据速率(例如3Gbps、6Gbps或12Gbps)的物理存储设备进行仿真,避免了频繁更换实际的物理存储设备,从而使得测试更加便捷。
在第二操作模式下,SAS控制器320被配置为对服务器上的HBA(例如图1中的HBA111)进行仿真,以便对物理存储设备(例如图1中的物理存储设备140)之一或存储扩展设备之一(例如图1中的存储扩展设备130或140)进行测试。在此情况下,SAS控制器320的第二操作模式例如与测试端口3402相关联。
在第二操作模式下的测试中,嵌入式处理器310运行预定的测试案例,以生成相应的测试数据流。SAS控制器320经由测试端口3402向物理存储设备140或存储扩展设备130/140发送该测试数据流,并且从物理存储设备140或存储扩展设备130/140接收针对该测试数据流的响应数据流。SAS控制器320将所接收的响应数据流发送至嵌入式处理器310。嵌入式处理器310对响应数据流进行分析,以生成测试结果。
此外,利用本发明的测试装置还包括遵循协议(例如SAS协议)的标准连接器,从在第二操作模式下,易于将测试装置经由该连接器连接至服务器,从而从服务器获得电力,而无需连接外部电源。另外,本发明的测试装置的尺寸可以被确定为与物理存储设备的尺寸相同,例如2.5英寸或3.5英寸,从而方便与物理存储设备和/或存储扩展设备耦合。
在第三操作模式下,SAS控制器320被配置为对服务器上的HBA(例如图1中的HBA111)以及物理存储设备(例如图1中的物理存储设备140)二者进行仿真,以便对存储扩展设备之一(例如图1中的存储扩展设备130或140)进行测试。在此情况下,SAS控制器320的第三操作模式例如与测试端口3403和3404相关联。
在第三操作模式下的测试中,嵌入式处理器310运行预定的测试案例,以生成相应的测试数据流。SAS控制器320经由测试端口3402向存储扩展设备130/140发送该测试数据流,并且从存储扩展设备130/140接收针对该测试数据流的响应数据流。SAS控制器320将所接收的响应数据流发送至嵌入式处理器310。嵌入式处理器310对响应数据流进行分析,以生成测试结果。
值得注意的是,利用本发明的测试装置,在第三操作模式下,可以将多个本发明的测试装置与存储扩展设备相耦合,以实现对存储扩展设备的多发起器(multi-initiatorstest)或回送测试(loopback test)。
为了便于理解,以下将结合图1和图3来描述测试器330在不同操作模式下的操作。然而,如上所述,待测对象之间也能够基于SAS协议之外的协议进行通信。在此情况下,测试器330的操作可以随具体的协议而变化,本发明的范围在此方面不受限制。
作为一个示例,例如参照图3,测试器330被配置为在第一操作模式下,对物理存储设备120或存储扩展设备130/140进行仿真,以便对服务器110上的HBA 111进行测试。可以理解,在协议层,SAS协议包括以下三种类型的协议,根据所连接的设备来使用相应的协议进行数据传输:(1)串行SCSI协议(SSP),用于传输SCSI命令;(2)SCSI管理协议(SMP),用于对所连接的设备进行维护和管理;(3)SATA通道协议(STP),用于SAS设备和SATA设备之间数据的传输。
在第一操作模式下,测试器330可以基于SMP协议和/或SSP协议对HBA 111进行测试,以确定HBA 111能否达到最大的速率要求、最大的IO速度、和/或物理信号质量等。
在SMP协议的示例中,HBA 111可以以期望的速度向测试器330发送各种SMP子页面(sub page),例如以3Gbps、6Gbps或12Gbps发送。测试器330通过测试端口3401接收该SMP子页面,记录I/O过程中的任何错误,并且将所记录的内容发送至处理器310。处理器310对从测试器330接收的内容进行分析,以生成测试结果。在一个示例中,处理器310将测试结果组织为文件,以存储于本地存储器、例如闪存中。在另一个示例中,处理器310将测试结果通过输入/输出设备、例如图3中的显示器350呈现给测试者。在又一个示例中,处理器310将测试结果通过通信接口、例如图3中的通信接口320传送至特定计算设备。
在SSP协议的示例中,HBA 111可以以期望的速度向测试器330发送具有不同模式(pattern)的I/O帧,例如以3Gbps、6Gbps或12Gbps发送。测试器330监控测试端口3401的各个物理端口(phy)的速度,记录I/O过程中的任何错误,并且将所记录的内容发送至处理器310。处理器310对从测试器330接收的内容进行分析,以生成测试结果。
在第二操作模式下,测试器330可以基于SMP协议和/或SSP协议对物理存储设备120或存储扩展设备130/140进行测试,以及对其进行特殊的I/O压力(stress)测试,以确定其能否达到期望的I/O响应速度和/或响应能力。
在SMP协议的示例中,测试器330通过测试端口3402向物理存储设备120或存储扩展设备130/140发送各种SMP帧。测试器330从物理存储设备120或存储扩展设备130/140接收其针对各种SMP帧的响应,以测试物理存储设备120或存储扩展设备130/140是否支持各种SMP帧。此外,测试器330记录I/O过程中的任何错误,并且将所记录的内容发送至处理器330。处理器310对从测试器330接收的内容进行分析,以生成测试结果。
在压力测试的示例中,测试器330通过测试端口3402向物理存储设备或存储扩展设备130/140发送具有各种模式的I/O压力并且从物理存储设备120或存储扩展设备130/140接收其针对各种I/O压力的响应。此外,测试器330记录I/O过程中的任何错误,并且将所记录的内容发送至处理器310。处理器310对从测试器330接收的内容进行分析,以生成测试结果。
在压力测试的另一示例中,测试器330针对物理存储设备或存储扩展设备130/140执行不同的I/O压力测试以验证其是否支持所有数据帧。此外,测试器330记录I/O过程中的任何错误,并且将所记录的内容发送至处理器310。处理器310对从测试器330接收的内容进行分析,以生成测试结果。
在第三操作模式下,测试器330可以基于SMP协议和/或SSP协议对存储扩展设备130/140进行测试,以及进行特殊的I/O压力测试。例如,利用多个测试器330对存储扩展设备130/140的多个特定物理端口(phy)执行I/O压力测试。此外,测试器330记录I/O过程中的任何错误,并且将所记录的内容发送至处理器310。处理器310对从测试器330接收的内容进行分析,以生成测试结果。
应当理解,测试装置200和300中的各部件可以是硬件模块,也可以是软件单元模块。处理器210/310、测试器220/330、通信接口320、以及测试端口340可以部分或者全部基于硬件来实现,例如被实现为集成电路(IC)、专用集成电路(ASIC)、片上系统(SoC)、现场可编程门阵列(FPGA)等。本发明的范围在此方面不受限制。备选地或附加地,在某些实施例中,处理器210/310、测试器220/330、通信接口320、以及测试端口340可以部分或者全部利用软件和/或固件来实现,例如被实现为包含在计算机可读介质上的计算机程序产品。
此外,应当理解,在不同的操作模式下可以根据具体的测试需求而选择适当的测试案例来运行,本发明的范围在此范围不受限制。
另外,尽管以上结合图1的存储网络架构对测试过程进行了描述,但是本发明的测试装置能够适用于具有任何架构的存储网络,包括但是不限于:具有SAN(存储区域网络)架构的存储网络、以及具有NAS(网络附加存储)架构的存储网络。
在本发明的第二方面,提供了一种用于对存储网络进行测试的方法。图3示出了根据本发明的一个实施例的用于对存储网络进行测试的方法400的流程图。
在步骤S410,响应于测试请求来生成配置信号。在步骤S420,通过所述配置信号将测试器配置为在不同的操作模式下操作,以便对所述存储网络中的不同的待测对象进行测试。所述测试请求指示所述测试器的操作模式。
在一个实施方式中,步骤S420包括:在所述操作模式之一下,对所述待测对象中的至少一个待测对象进行仿真,从而对与被仿真的待测对象通信的其他待测对象进行测试。
在一个实施方式中,步骤S420包括:在所述操作模式之一下,对所述待测对象中的两个待测对象进行仿真,从而对与被仿真的两个待测对象通信的其他待测对象进行测试。
在一个实施方式中,步骤S420包括:基于所述不同的待测对象之间进行通信的协议来对所述对象进行测试。
在一个实施方式中,所述测试器进一步包括:至少一个测试端口,被配置为向所述待测对象传送测试信号和/或从所述待测对象接收针对所述测试信号的响应。方法400进一步包括:将所述测试端口中的每个测试端口与所述操作模式之一相关联。
在一个实施方式中,将所述测试端口中的每个测试端口与所述操作模式之一相关联包括:响应于配置请求来生成另一配置信号;以及通过所述另一配置信号将所述测试端口中的每个测试端口与所述操作模式之一相关联;其中所述配置请求指示所述操作模式之一。作为一个示例,该配置请求经由图3中的通信接口320接收。嵌入式处理器310响应于该配置请求来生成另一配置信号,并且通过所述另一配置信号将所述测试端口中的每个测试端口与所述操作模式之一相关联。
在一个实施方式中,所述协议包括以下各项之一:串行附接小型计算机(SAS)协议、光纤通道(FC)协议、以及串行高级技术附件(SATA)协议。
在一个实施方式中,所述待测对象至少包括以下各项中的两项:主机总线适配器(HBA);物理存储设备;以及耦合于所述主机总线适配器和所述物理存储设备之间的存储扩展设备。
应当理解,方法400中的步骤可以通过分别参考图2和图3描述的装置200和300来执行。因此,上文结合图2和图3描述的特征同样适用于方法400,并且具有同样的效果,具体细节不再赘述。
在本发明的第三方面,提供了一种计算机程序产品,所述计算机程序产品被有形地存储在非瞬态计算机可读存储介质上,并且包括机器可执行指令,所述指令在被执行时使得所述机器执行如上所述的方法的步骤。
计算机可读存储介质可以是可以存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的、非穷举的例子包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Java、Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的装置、方法和计算机程序产品的框图和/或流程图描述了本发明的各个方面。应当理解,框图和/或流程图的每个方框以及框图和/或流程图中各方框的组合,都可以由计算机可读程序指令实现。
已经出于示例的目的描述了本发明的各个实施例,但是本发明并不意图限于所公开的这些实施例。在不脱离本发明实质的前提下,所有修改和变型均落入由权利要求所限定的本发明的保护范围之内。
Claims (13)
1.一种用于对存储网络进行测试的装置,包括:
处理器,被配置为响应于测试请求来生成配置信号;以及
与所述处理器耦合的测试器,通过所述配置信号被配置为在不同的操作模式下操作,以便对所述存储网络中的不同的待测对象进行测试;
其中所述测试请求指示所述测试器的操作模式;并且
其中所述测试器被进一步配置为在所述操作模式之一下,对所述存储网络中的物理存储设备进行仿真,从而对所述存储网络中的被仿真的物理存储设备以外的其他类型的待测对象进行测试。
2.根据权利要求1所述的装置,其中所述测试器被进一步配置为支持所述不同的待测对象之间进行通信的协议。
3.根据权利要求1所述的装置,其中所述测试器进一步包括:
至少一个测试端口,被配置为向所述待测对象传送测试信号和/或从所述待测对象接收针对所述测试信号的响应;
其中所述测试端口中的每个测试端口与所述操作模式之一相关联。
4.根据权利要求3所述的装置,其中所述测试端口包括以下各项之一:串行附接小型计算机(SAS)端口、光纤通道(FC)端口、以及串行高级技术附件(SATA)端口。
5.根据权利要求1至4中任一项所述的装置,其中所述处理器包括嵌入式处理器。
6.根据权利要求1至4中任一项所述的装置,其中所述其他类型的待测对象至少包括以下各项中的一项:
主机总线适配器(HBA);以及
耦合于所述主机总线适配器和所述物理存储设备之间的存储扩展设备。
7.一种用于对存储网络进行测试的方法,包括:
响应于测试请求来生成配置信号;以及
通过所述配置信号将测试器配置为在不同的操作模式下操作,以便对所述存储网络中的不同的待测对象进行测试;
其中所述测试请求指示所述测试器的操作模式;并且
其中对所述存储网络中的不同的待测对象进行测试包括:
在所述操作模式之一下,对所述存储网络中的物理存储设备进行仿真,从而对所述存储网络中的被仿真的物理存储设备以外的其他类型的待测对象进行测试。
8.根据权利要求7所述的方法,其中对所述存储网络中的不同的待测对象进行测试包括:
基于所述不同的待测对象之间进行通信的协议来对所述对象进行测试。
9.根据权利要求7所述的方法,其中所述测试器进一步包括:
至少一个测试端口,被配置为向所述待测对象传送测试信号和/或从所述待测对象接收针对所述测试信号的响应;并且
所述方法进一步包括:
将所述测试端口中的每个测试端口与所述操作模式之一相关联。
10.根据权利要求9所述的方法,其中将所述测试端口中的每个测试端口与所述操作模式之一相关联包括:
响应于配置请求来生成另一配置信号;以及
通过所述另一配置信号将所述测试端口中的每个测试端口与所述操作模式之一相关联;
其中所述配置请求指示所述操作模式之一。
11.根据权利要求8所述的方法,其中所述协议包括以下各项之一:串行附接小型计算机(SAS)协议、光纤通道(FC)协议、以及串行高级技术附件(SATA)协议。
12.根据权利要求7至10中任一项所述的方法,其中所述其他类型的待测对象至少包括以下各项中的一项:
主机总线适配器(HBA);以及
耦合于所述主机总线适配器和所述物理存储设备之间的存储扩展设备。
13.一种非瞬态计算机可读介质,所述非瞬态计算机可读介质具有存储于其上的计算机可读指令集合,所述计算机可读指令集合在由至少一个处理器执行时使设备执行根据权利要求7至12中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510185152.8A CN106161132B (zh) | 2015-04-17 | 2015-04-17 | 用于对存储网络进行测试的装置和方法 |
US15/097,589 US10204702B2 (en) | 2015-04-17 | 2016-04-13 | Testing a storage network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510185152.8A CN106161132B (zh) | 2015-04-17 | 2015-04-17 | 用于对存储网络进行测试的装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106161132A CN106161132A (zh) | 2016-11-23 |
CN106161132B true CN106161132B (zh) | 2019-10-01 |
Family
ID=57129919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510185152.8A Active CN106161132B (zh) | 2015-04-17 | 2015-04-17 | 用于对存储网络进行测试的装置和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10204702B2 (zh) |
CN (1) | CN106161132B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10528416B2 (en) | 2017-12-11 | 2020-01-07 | International Business Machines Corporation | Checking data integrity of data storage systems |
CN109067575A (zh) * | 2018-07-27 | 2018-12-21 | 郑州云海信息技术有限公司 | 一种存储多路径自动化测试的方法 |
CN109600442A (zh) * | 2018-12-14 | 2019-04-09 | 郑州云海信息技术有限公司 | 一种测试结果的获取方法、装置、介质及设备 |
CN111382040A (zh) * | 2018-12-29 | 2020-07-07 | 中兴通讯股份有限公司 | 一种网络性能测试的方法及装置 |
CN112885403B (zh) * | 2021-02-08 | 2023-07-14 | 山东云海国创云计算装备产业创新中心有限公司 | 一种Flash控制器的功能测试方法、装置及设备 |
CN115913960A (zh) * | 2021-08-02 | 2023-04-04 | 北京车和家信息技术有限公司 | 一种时间敏感网络验证设备、方法、装置、系统和介质 |
CN115547403A (zh) * | 2022-10-25 | 2022-12-30 | 宁畅信息产业(北京)有限公司 | 一种硬盘热插拔测试方法、装置、设备以及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102081565A (zh) * | 2010-12-31 | 2011-06-01 | 创新科存储技术有限公司 | 一种对存储系统进行稳定性测试方法和装置 |
CN102236591A (zh) * | 2010-04-28 | 2011-11-09 | Lsi公司 | 接收自存储网络环境的scsi目标的scsi错误响应的定制系统和方法 |
CN102789410A (zh) * | 2012-06-29 | 2012-11-21 | 浪潮电子信息产业股份有限公司 | 一种存储系统性能的测试方法 |
CN103038751A (zh) * | 2010-05-28 | 2013-04-10 | 爱德万测试公司 | 具有可变并行性和固件可升级性的灵活存储接口测试器 |
US8595680B1 (en) * | 2012-06-15 | 2013-11-26 | Google Inc. | Constrained random error injection for functional verification |
CN104199756A (zh) * | 2014-09-03 | 2014-12-10 | 航天科工防御技术研究试验中心 | 一种fpga多重自动配置装置及其方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5854889A (en) * | 1996-06-26 | 1998-12-29 | Mci Worldcom, Inc. | Method and system for heterogeneous telecommunications network testing |
WO2002025296A2 (en) * | 2000-09-22 | 2002-03-28 | Don Mccord | Method and system for wafer and device-level testing of an integrated circuit |
US6904389B2 (en) * | 2001-03-06 | 2005-06-07 | Hewlett-Packard Development Company, L.P. | Remote computer testing |
US6665626B2 (en) * | 2001-11-14 | 2003-12-16 | Inventec Corporation | Network-based computer testing system |
US7124342B2 (en) * | 2004-05-21 | 2006-10-17 | Syntest Technologies, Inc. | Smart capture for ATPG (automatic test pattern generation) and fault simulation of scan-based integrated circuits |
US7281165B2 (en) * | 2003-06-12 | 2007-10-09 | Inventec Corporation | System and method for performing product tests utilizing a single storage device |
US20060277231A1 (en) * | 2005-06-06 | 2006-12-07 | Javaground Usa, Inc. | Integrated software development and porting system for wireless devices |
US7895472B2 (en) * | 2008-05-21 | 2011-02-22 | Dell Products, Lp | System and method of managing BIOS test routnes |
US9626284B2 (en) * | 2012-02-09 | 2017-04-18 | Vmware, Inc. | Systems and methods to test programs |
US20140282327A1 (en) * | 2013-03-14 | 2014-09-18 | Nvidia Corporation | Cutter in diagnosis (cid) a method to improve the throughput of the yield ramp up process |
US20140331209A1 (en) * | 2013-05-02 | 2014-11-06 | Amazon Technologies, Inc. | Program Testing Service |
US9720818B2 (en) * | 2015-09-03 | 2017-08-01 | Netapp, Inc. | Scalable, distributed, fault-tolerant test framework |
-
2015
- 2015-04-17 CN CN201510185152.8A patent/CN106161132B/zh active Active
-
2016
- 2016-04-13 US US15/097,589 patent/US10204702B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102236591A (zh) * | 2010-04-28 | 2011-11-09 | Lsi公司 | 接收自存储网络环境的scsi目标的scsi错误响应的定制系统和方法 |
CN103038751A (zh) * | 2010-05-28 | 2013-04-10 | 爱德万测试公司 | 具有可变并行性和固件可升级性的灵活存储接口测试器 |
CN102081565A (zh) * | 2010-12-31 | 2011-06-01 | 创新科存储技术有限公司 | 一种对存储系统进行稳定性测试方法和装置 |
US8595680B1 (en) * | 2012-06-15 | 2013-11-26 | Google Inc. | Constrained random error injection for functional verification |
CN102789410A (zh) * | 2012-06-29 | 2012-11-21 | 浪潮电子信息产业股份有限公司 | 一种存储系统性能的测试方法 |
CN104199756A (zh) * | 2014-09-03 | 2014-12-10 | 航天科工防御技术研究试验中心 | 一种fpga多重自动配置装置及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106161132A (zh) | 2016-11-23 |
US10204702B2 (en) | 2019-02-12 |
US20160307643A1 (en) | 2016-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106161132B (zh) | 用于对存储网络进行测试的装置和方法 | |
US10288681B2 (en) | Test architecture with a small form factor test board for rapid prototyping | |
CN110032462A (zh) | 远端系统恢复的方法 | |
CN105738854B (zh) | 智能电表嵌入式应用的模拟存储器测试板系统及测试方法 | |
CN103052993B (zh) | 用于全速、并行dut测试的解决方案 | |
US20180300431A1 (en) | Universal verification methodology (uvm) register abstraction layer (ral) traffic predictor | |
US20130326278A1 (en) | Server and method of manipulation in relation to server serial ports | |
CN110502374A (zh) | 识别自动测试时设备故障的根本原因的流量捕获调试工具 | |
CN102004219B (zh) | 一种红外焦平面阵列探测器模拟装置及模拟方法 | |
CN110050441A (zh) | 在故障情况下实时捕获流量以进行协议调试 | |
CN105008943A (zh) | 对在fpga块内分组创建加速的测试仪 | |
US11521082B2 (en) | Prediction of a data protection activity time for a backup environment | |
CN203260029U (zh) | 基于fpga的系统芯片原型验证调试装置 | |
US20070043548A1 (en) | Verifying a simulated hardware environment for a simulated device under test | |
CN104360921A (zh) | 一种移动端性能监控方法、装置及系统 | |
CN113407393A (zh) | 芯片验证方法、终端设备、验证平台以及存储介质 | |
CN103677806A (zh) | 用于系统管理的方法和系统 | |
CN110109794A (zh) | 一种基于uvm的总线验证方法 | |
CN115345122A (zh) | 一种用于仿真的非标准总线协议的芯片验证装置 | |
US20090216517A1 (en) | Dedicated simulator for testing a usb host solution | |
TW201327158A (zh) | 量測一資訊設備之效能的方法與裝置 | |
US11475191B2 (en) | Generating and adding additional control information to logic under test to facilitate debugging and comprehension of a simulation | |
CN104090833A (zh) | 服务器及其讯号解析装置 | |
TW202311978A (zh) | 用於實體埠鏡像之傳輸控制字架構 | |
CN104331352B (zh) | cache一致性芯片地址带外读取检测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200416 Address after: Massachusetts, USA Patentee after: EMC IP Holding Company LLC Address before: Massachusetts, USA Patentee before: EMC Corp. |
|
TR01 | Transfer of patent right |