2008年(8065)
分类: 服务器与存储
2008-09-02 14:49:05
因视频应用的差异性和特殊性,目前业内对视频的性能测试没有一个公认的权威测试方法,鉴于浪潮评测工程师先后参与多次视频网站客户实测案例,以及对用户应用的理解和对的专业认识,尝试找出一种有说服力的测试方案。下面就向感兴趣的朋友分享一下我们对AS500M传输性能的测试报告。
测试平台
本次测试的样机-浪潮存储AS500M,配置了单路Xeon 3065处理器,搭载Intel 3200芯片组,以16块Seagate SATA磁盘组建大容量RAID 5存储系统,详细参数见下表:
由于AS500M是一台针对网络视频应用设计的,因此我们的测试也主要在提供海量存储容量的前提下,围绕磁盘性能、网络吞吐量及基于应用的最大并发数测试来进行。具体测试项目如下:
Web负载压力测试工具
浪潮测试工程师基于多次用户实测的经验,借鉴各种通用测试软件的优点,针对大并发测试需求,特别开发了一个Web负载压力测试工具。本测试工具通过模拟用户访问Web网站的动作,进行多并发的负载压力测试,提供更有说服力的测试数据,帮助用户更直观地了解被测的Web性能,以便选择适合自己的Web、存储解决方案。
为了测试AS500M作为Web服务器应用时,磁盘和网络子系统的性能表现,我们设计了两个测试场景:
场景1,网页得到最大程度的缓存,并发数尽可能的高,能够测试出网络的最大带宽以及Web应用系统能否处理大量用户对同一个页面的请求。通过场景1,主要观测网络传输性能。
场景2,最大吞吐量测试。大量网页需要缓存,并发数会相对较低,能够测试出内存和磁盘方面的表现或者网络的最大带宽。通过场景2,主要观测内存与磁盘性能,也可以得到打开一个网页平均所需要的时间。
Windows Media Load Simulator9流媒体测试
Windows Media Load Simulator一款来自微软公司的专门测试Windows媒体服务器的软件,可以用来建立一个Windows Media服务的仿真环境,工作方法是通过读取 Windows Media服务器中一个或多个脚本或者是Microsoft Windows Media Player,通过模拟大量的客户端需求以测试Windows Media服务器的负荷程度并提供日志供系统管理员分析和参考。
可以在一个或多个客户端上运行Windows Media Load Simulator去模拟大量的客户连接,也可以设定程序去模拟许多的用户行为,包括连续运行播放程序、寻找指令内容和通过应用验证来连接等等。通过使用Windows Media Load Simulator可以模拟超过1000个测试用户的性能表现或测试一个服务器的上限。
Windows Media Load Simulator有两个主要的应用:峰值压力测试和在线监控。为了测试不同码流下AS500M作为流媒体服务器能承载的最大并发数,把该项测试分解为5项:
1)1690Kbps可变码流单片源测试
2)1690Kbps可变码流多片源测试(100片源)
3)450Kbps不可变码流单片源测试
4)450Kbps不可变码流多片源测试(100片源)
5)64Kbps不可变码流多片源测试(100片源)
其中,三种片源都是图像视频文件,可以在大并发测试过程中观测声音和图像的播放效果。
Iperf网络带宽测试
带宽是网络的重要性能参数之一。Iperf 是一个网络性能测试工具,可以测试TCP和UDP带宽质量。
1)TCP连接带宽质量测试
TCP window size是影响TCP连接网路性能的重要参数之一。一般,操作系统都默认设置一个TCP window size的最大值(OS upper limits on TCP window size),有的是64KB,有的是1MB。Iperf能够检测出这个操作系统规定的TCP window size的最大值。同时,Iperf还能够测试出在当前TCP window size设定下,网络的最大带宽。
2)UDP连接带宽质量测试
UDP是一种不可靠传输的协议。Iperf能够测试出UDP连接时,网络的带宽与丢包率。
Iperf测试环境为C/S网络架构,客户端与服务器端都安装RHEL4.5 x32操作系统。
测试结果
Web负载压力测试
在Web负载压力测试部分,我们进行了2个场景的测试,测试时长7min:
上图是在不同压力负载下,一台压力机的事务响应时间图。响应时间均值是0.4秒,90%的事务可以在0.887秒完成。一般来说,如果一个网页的打开时间在5秒以内时是可以接受的,在测试场景中,只需要0.4秒,已经很快了。
上图是一台压力机的每秒点击率图,均值是910.812,最大值是1523.5。两台压力机总的点击率均值是1246.753,最大值是1953。也就是说,AS500M可以处理1953个并发用户的网页访问。网页大小从10kB到5MB不等,基本呈正态分布。
上图是一台压力机的每秒吞吐量图,均值是92,061,043Bytes,另一台压力机吞吐量均值是28,385,955 Bytes。两台压力机总的吞吐量均值是120,446,998Bytes。每秒吞吐量值代表了在测试的时间内,每秒传输的网页数据的字节数,这个数值越高越好。
上图是一台压力机的TPS(Total Transaction per Second)图,TPS均值是912.794,最大值是1527.25。两台压力机总的TPS均值是1248.735,总最大值是1953.25。这个指标说明每秒最多可以处理1953个网页下载事务(包含一定比例的500KB、5MB网页)。
通过两个场景的测试,AS500M能完全发挥千兆网卡的极限带宽,利用率可达100%。由于,本次测试5M和500K这样的较大网页占有一定比例,所以最大TPS看起来不是很高,为1953.25。
Windows Media Load Simulator测试
下面是使用WMLS进行1690kbps码流多片源测试的抓图:
1690kbps码流片源是指播放速度是1690kbps的视频文件。多片源就是使用多个相同码流的视频文件。如图中Stream List所示,采用了100个片源。
Client Profiles设置4900个Long Play。Long Play就是模拟用户观看一个视频文件,中间没有"拖放"等其他动作。
设置每秒增加20个并发用户,Stream list Usage选用Random方式。测试时长不限。
根据测试数据,得到测试结论如下:
Windows Media Load Simulator主要是测试AS500M存储作为流媒体时的性能表现。通过流媒体点播测试可以发现,1690Kbps大码流的片源,最大播放机可以达到3254个,稳定播放机数是3020个;这也就意味着,如果有3020个用户同时点播同一个1690kbps码流的视频文件时,可以很流畅的播放。450Kbps码流的片源,最大播放机可以达到4971个,稳定播放机数是4900个;这也就意味着,如果有4900个用户同时点播同一个450kbps码流的视频文件时,声音和图像都可以很流畅的播放。在进行64kbps多片源测试时,由于WMLS测试软件存在瓶颈,没有测试出该码流的最大播放机数,但5961的数值已经不低了。
AS500M配置的是Intel 82566的千兆网卡,从测试结果看,流的网络传输性能非常好,再加上其本身的海量存储(可达16TB),把AS500M作为流媒体服务器是一个很不错的选择。
Iperf测试
下面是使用Iperf测试UDP协议时的抓图:
测试数据如下:
千兆网卡,Iperf测试TCP协议,带宽达到941Mbps,利用率在94.1%。UDP协议测试带宽达到959Mbps,利用率在95.9%。网络丢包率仅0.0027%。
测试总结 通过对AS500M主板、网卡、磁盘、RAID卡等进行特殊优化,这款存储I/O性能的表现令人满意。从以上各项测试我们可以看到,AS500M的独特设计,使得其作为流媒体应用时,性能表现出色,可以稳定支持3020个用户同时点播同一个1690kbps大码流的视频文件,声音、图像均可流畅播放。同时,可以把网卡和内存潜力完全发挥出来,给用户带来最大增益。另外,本次被测的AS500M采用16块Seagate SATA 750GB硬盘,高传输性能的前提下,又能确保海量的存储空间。 AS500M作为存储,虽然并不是完全为Web服务器设计,然而从Web负载压力测试数据来看,其Web性能也很不错。调整AS500M不同的配置,它将是适用于更多用途。