一种基于网卡对PCIE进行最大化测试的方法与流程

文档序号:11215574阅读:775来源:国知局
一种基于网卡对PCIE进行最大化测试的方法与流程

本发明涉及pcie测试技术领域,具体地说是一种基于网卡对pcie进行最大化测试的方法。



背景技术:

随着服务器技术的不断发展,intel每一代cpu的升级,都会在pcie(pci-express,即peripheralcomponentinterconnectexpress,是一种高速串行计算机扩展总线标准)性能以及扩展能力都有较大提升,pcie从1.0逐步发展到3.0,不论是性能还是扩展能力,已经有了长足的进步。为保证服务器的pcie功能在实际使用中高效并且稳定,对pcie的测试就显得尤为重要。

在8路服务器中,pcie已经扩展到支持24张pciex8级别的pcie卡,鉴于如此多的pcie槽位,需要对所有槽位进行pcie最大化测试就非常有必要,现有技术在实际测试过程中,需要手动配置测试环境,并且手动执行测试,实现pcie最大化测试需要配置的pcie卡数量大,全部过程需要人工完成,工作量相当大,工作效率低,且手动配置环境一旦出现错误,排除错误耗费时间,并且环境配置错误,还存在导致系统崩溃的风险,测试无法进行。



技术实现要素:

为克服上述现有技术存在的不足,本发明的目的在于提供一种工作效率高、无需人工干预的基于网卡对pcie进行最大化测试的方法。

本发明解决其技术问题所采用的技术方案是:一种基于网卡对pcie进行最大化测试的方法,其特征是:包括以下步骤:

s1,搭建测试环境;

s2,进行pcie最大化配置,分别在服务器端和客户端上执行测试;

s3,通过客户端查看测试结果。

进一步地,步骤s1所述搭建测试环境的具体步骤为:

s11,连接服务器端和客户端,在客户端上安装linux操作系统;

s12,使用root用户登录linux操作系统;

s13,将测试脚本及iperf工具拷贝到客户端上。

进一步地,步骤s2中在服务器端上执行测试的具体步骤为:

s211,服务器端执行ifconfig命令,获取网卡mac地址对应的网卡编号,将网卡编号写入eth.xls文件;

s212,服务器端执行awk命令,获取系统识别到的所有网卡编号,将所有网卡编号写入ethno.xls文件;

s213,定义变量$a,设置服务器端所有网卡的ip地址;

s214,执行iperf-s命令,接收客户端数据。

进一步地,步骤s2中在客户端上执行测试的具体步骤为:

s221,自动配置客户端所有网卡ip地址并测试网卡与服务器端的连通性;

s222,执行bwtest文件调用iperf工具;

s223,执行iperf-c命令,进行网卡的性能测试;

s224,记录所有网卡的测试带宽值,并计算网卡测试带宽值的平均值,将所有网卡的测试带宽值、平均值和测试时间记录在$a.txt文件中。

进一步地,步骤s221中所述自动配置客户端所有网卡ip地址并测试网卡与服务器端的连通性的具体步骤为:

s2211,客户端执行ifconfig命令,获取网卡mac地址对应的网卡编号,将网卡编号写入eth.xls文件;

s2212,客户端执行awk命令,获取系统识别到的所有网卡编号,将所有网卡编号写入ethno.xls文件;

s2213,定义变量$a,设置客户端所有网卡的ip地址;

s2214,客户端执行ping通测试命令测试网卡与服务器的连通性。

进一步地,配置的服务器端网卡与客户端网卡的数量和型号一致。

进一步地,通过修改iperf-c命令中的时间参数改变步骤s224中所述测试时间的值,进行网卡性能的测试。

本发明的有益效果是:

1、自动进行pcie的最大化配置,并分别在服务器端和客户端进行自动测试,整个测试过程无需人员参与,提高工作效率。

2、自动搭建测试环境,避免手动配置测试环境造成失误、影响测试的问题,使测试更加准确高效进行。

3、服务器端网卡与客户端网卡的配置数量和型号一致,简化配置过程,同时避免配置复杂环境导致的测试错误。

4、通过修改iperf-c命令中的时间参数改变测试时间的值,根据不同的需求进行网卡传输性能的测试,实现测试的灵活性。

附图说明

图1是本发明的方法流程图;

图2是本发明搭建测试环境的流程示意图;

图3是本发明在服务器端上执行测试的流程示意图;

图4是本发明在客户端上执行测试的流程示意图;

图5是本发明在客户端上配置网卡并测试网卡与服务器端的连通性的流程示意图。

具体实施方式

为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。

进行pcie最大化的测试,所谓最大化即pcie实现满配,即所有的pcie卡槽均配置pcie卡,由于在实际应用中使用最多的是网卡,所以本发明采用万兆网卡对pcie最大化的性能进行测试。

如图1所示,基于网卡对pcie最大化测试的流程,它包括以下步骤:

s1,搭建测试环境;

s2,进行pcie最大化配置,分别在服务器端和客户端上执行测试;

s3,通过客户端查看测试结果。

其中步骤s1中对测试环境的搭建需要配置客户端和服务器端,如图2所示,具体的操作步骤为:

s11,连接服务器端和客户端,在客户端上安装linux操作系统;

s12,使用root用户登录linux操作系统;

s13,将测试脚本及iperf工具拷贝到客户端上。

其中iperf是进行网卡性能测试的工具。

如图3所示,步骤s2中在服务器端上执行测试的具体步骤为:

s211,服务器端执行ifconfig命令,获取网卡mac地址对应的网卡编号,将网卡编号写入eth.xls文件;

s212,服务器端执行awk命令,获取系统识别到的所有网卡编号,将所有网卡编号写入ethno.xls文件;

s213,定义变量$a,设置服务器端所有网卡的ip地址;

s214,执行iperf-s命令,接收客户端数据。

服务器端实现自动配置ip地址并执行server端测试指令的部分脚本内容如下:

#ifconfig|grephwaddr|grepeth>eth.xls

#awk'{print$1}'eth.xls>ethno.xls

#echo`catethno.xls`|grep-o'[0-9]\+'>ethnum.xls

#forain`catethnum.xls`;doechoeth$a;ifconfigeth$a192.168.$a.3up;ifconfigeth$a|grep"inetaddr";done>ethipmore.xls

#awk'{print$1,$3}'ethipmore.xls>ethip.xls

#iperf–s

步骤s212中,使用awk命令,对eth.xls文件进行处理,可以完全获取系统下所有识别到的网卡编号,并写入ethno.xls,再根据ethno.xls中的网卡编号,定义变量$a,来设置网卡ip地址。

通过以上脚本可实现服务器自动配置网卡ip地址,执行./bw文件即可,配置的网卡的地址范围为192.168.0.3-192.168.$a.3,变量“$a”范围取决于ethno.xls文件中获取的网卡编号,也就是实际网卡配置数量,避免测试环境复杂化,要求server端以及client端使用相同数量,相同型号的万兆网卡,配置ip地址完成后,执行server端命令iperf-s,用于接收客户端数据。

如图4所示,步骤s2中在客户端上执行测试的具体步骤为:

s221,自动配置客户端所有网卡ip地址并测试网卡与服务器端的连通性;

s222,执行bwtest文件调用iperf工具;

s223,执行iperf-c命令,进行网卡的性能测试;

s224,记录所有网卡的测试带宽值,并计算网卡测试带宽值的平均值,将所有网卡的测试带宽值、平均值和测试时间记录在$a.txt文件中。

如图5所示,步骤s221中自动配置客户端所有网卡ip地址并测试网卡与服务器端的连通性的具体步骤为:

s2211,客户端执行ifconfig命令,获取网卡mac地址对应的网卡编号,将网卡编号写入eth.xls文件;

s2212,客户端执行awk命令,获取系统识别到的所有网卡编号,将所有网卡编号写入ethno.xls文件;

s2213,定义变量$a,设置客户端所有网卡的ip地址;

s2214,客户端执行ping通测试命令测试网卡与服务器的连通性。

客户端测试脚本主要分为两部分,一部分(ethip_client.sh)自动配置网卡ip地址并测试连通性,一部分(iperf.sh)为使用iperf工具,执行bwtest文件来进行调用,即bwtest调用ethip_client.sh脚本以及iperf.sh脚本,进行pcie最大化测试。ethip_client.sh脚本用于配置网卡ip地址,与server端配置ip地址原理相同,地址范围为192.168.0.4-192.168.$a.4,但增加ping功能,用来自动测试连通性,例如配置eth1网卡完成后,会执行如下ping通测试命令:

#ping192.168.1.3

如果环境搭建正常,机器网卡均已配置ip地址,并能够与server端连通。由于server端已执行iperf–s命令,第二部分则执行client端iperf工具测试命令即可,命令如下:

#iperf–c192.168.$a.3–i1–t60000–w1024k–p4|tee>/root/desktop/result/$a.txt

测试完成后在“/root/desktop/result”文件夹下会生成测试文件$a.txt,其中网卡eth0产生的结果为“0.txt”,网卡eth1产生的结果为“eth1.txt”,用来检查性能是否达到标准,通过标准为每个网卡的测试带宽不低于万兆网卡理论性能的90%。

服务器端网卡与客户端网卡的配置数量和型号一致,这是本发明所述方法实现的前提,避免配置复杂环境导致的错误以及测试的复杂性。

通过修改iperf-c命令:client脚本“#iperf–c192.168.$a.3–i1–t60000–w1024k–p4”中的“-t”参数来设置测试时间,通过加长测试时间,来测试机器长时间工作状态下的稳定性,通过缩短测试时间,测试网卡的传输性能,且测试过程无需值守,测试完成自动记录log,方便工作人员在任何时间查看测试的结果。log文件会记录测试时间和该测试时间下测试带宽的稳定性及传输速度的问题。

以上所述只是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也被视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1