云计算数据中心的网络测试主要包含虚拟化测试、安全测试、高可靠测试和性能测试四个部分。前三者重点在于对数据中心网络的功能设计进行测试验证,性能测试则是度量整个云网络的关键,用以确认其能够提供的服务能力基线。云计算技术目前很多应用在大型的高性能计算(超算)数据中心中,在此类数据中心内部,性能处于业务保障的第一关键位置。本文重点关注性能测试的部分,从测试设计方面进行探讨。
测试设计
数据中心网络性能测试手段很多,业务仿真测试是最能体现实际应用情况的测试方法。业务仿真测试往往需要利用大量服务器和存储设备,通过部署仿真应用环境来测试网络针对此类型应用的转发性能。但此方法受成本和测试复杂度影响,一般只在超大型且应用较为单一的数据中心测试时使用,如百度/SOHU搜索业务仿真、QQ/MSN实时通讯业务仿真、石油勘探/气象预报计算业务仿真等。
除了上述专用测试方法外,还可以通过测试仪器模拟一些基本的应用流量来测试其主要性能。此方式由于实施简便、通用型强,在数据中心网络性能测试中应用较多。受当前整个Internet应用使用情况影响,测试仪模拟的网络应用以TCP的HTTP为主,有时会根据具体的实际业务情况添加Mail、FTP和HTTPS进行补充,这种测试设计也符合当前云计算数据中心的实际应用情况。
测试环境
在测试数据中心网络性能时,通常使用成对的测试仪器端口,连接到数据中心网络两端,将整个网络视为黑盒进行端到端的性能结果测试。典型测试组网设计如图1所示。
图1 数据中心性能典型测试组网
图1中的数据中心网络结构采用典型的3层双冗余结构。核心层设备采用高端交换设备进行三层路由转发,其与汇聚层设备间通过OSPF动态路由协议互连,以提供多路冗余保障,同时通过只发布缺省路由到汇聚层设备的方式来减轻汇聚层设备的路由压力;汇聚层设备作为模拟服务器设备的网关提供三层转发功能,使能VRRP等网关冗余协议来保证双机热备,并通过VLANTRUNK方式与接入层设备相连;接入层设备部署为二层转发模式,通过MSTP协议确保多VLAN环境下的冗余链路备份功能。
测试仪器通过多个接口分别与核心层设备和接入层设备连接,并模拟Client和Server进行有状态的流量转发性能测试。测试模拟的协议类型尽量与使用环境贴近,最常见的是使用HTTP协议进行基于L7的业务流量模拟。
另外为了确保数据中心测试的仿真度,还需要模拟大量的路由、VLAN和流数量。例如测试的为一个大型的企业云数据中心,则需要定义以下背景环境参量:
1. 首先设置背景路由,在核心设备上模拟发布1万条OSPF散列路由,其发起源为50个Router,路由模拟调配比例为NetworkLSA:SummaryLSA:ExternalLSA=1:3:16
2. 然后设置背景VLAN与模拟服务器,在汇聚层与接入层设备上部署8个MSTP的Instance,每个Instance中包含8个VLAN,使用测试仪器在每个VLAN中模拟100个HostServer,总共64个VLAN,6400个Server。
3. 最后构造测试流量,定义1万个Client源IP地址一一对应到模拟的1万条散列OSPF路由中,目的IP地址64个,分别为模拟的64个VLAN中每个VLAN随机抽取的各一个HostServer地址。总共为64万条IP测试流。
上述测试参数定义均可通过测试仪器配置完成。
当测试环境部署完毕后,即可使用测试仪器进行整网性能指标的测试执行工作。