川石教育
全国咨询热线:136-9172-9932
  1. 首页 > 资讯与干货 > 常见问题

性能测试之网络系统监控

作者:川石学院 日期:2021-06-16 15:34:55 点击数:

  相信做性能测试的小伙伴应该都遇到过这样的问题,如果系统的性能出现问题了,但发现其它指标并没任何问题,那么这很可能是由于网络原因导致系统的性能出现问题。如何判断是否是由于网络的原因导致系统性能受影响呢?一个简单的办法是比较涉及网络的操作和与网络无关的操作,如果正在运行的程序在进行一定距离的远程读取和写入,而且运行很慢,但其它的操作是正常的。

性能测试之网络系统监控(图1)

       那这很可能是网络问题造成的,一些潜在的网络瓶颈可能由以下因素造成:

  •   客户端网络接口;

  •   网络带宽;

  •   网络拓扑结构;

  •   服务器端网络接口;

  •   服务器CPU负载;

  •   服务器存储器使用状态;

  •   服务器带宽;

  •   配置效率低下;

  ping命令,在下面这些情况下ping命令有帮助:

  •   确定网络的状态和各种外部主机;

  •   跟踪并隔离硬件和软件故障;

  •   对网络的检测、测定和管理;

  关于ping命令常用参数项如下:

  •   -c

  •   指定了信息包数,如果有IP记录参数,那么这个参数也有可用的,可以捕捉到ping信息包的最小值。

  •   -s

  •   指定信息包的长度,可以使用这个参数项来检查分段和重新组合。

  •   -f

  •   以10ms的间歇发送信息包或者在每次回应之后立即发送,只有根用户才可以使用这个参数项。

  如图9-29所示的实例  

性能测试之网络系统监控(图2)

  图9-29 ping命令报告

  注意:ping命令在网络上运行可能很困难,应该小心使用,连续执行ping命令只能由根用户操作。

  在上面的这个例子中,1秒钟发送了1000个信息包,这个命令使用了IP和网络控制信息协议(ICMP)因而没有涉及到任何传输协议(UDP/TCP)和应用程序,测到的数据,比如往返时间,不会影响到总体的性能特征。

  如果测试过程中发送大量的信息包到目的地址,需要考虑如下几个方面的内容:

  •     发送信息包对系统来说,增加了负载;

  •   使用netstat –i命令可以在试验过程中监测网络接口的状态,通过查看0errs的输出可以发现系统在发送过程中删除信息包的信息;

  •   同时还需要监控其它的资源,如mbuf和发送/接收队列,很难在目标系统上增加一个大的负载,或者在其它的系统过载之前该系统就过载了;

  •   考虑结果的相关性,如果想监控或测试的仅仅是一个目标系统,在其它的一些系统上做同样的测试进行比较,因为可能是网络或路由器出现故障。

  Netstat命令可以用来显示网络的状态,一般来说,它是用来于故障识别作为性能评定用的,通常该命令可以确定网络上的流量,从而可以确定性能故障是否由于网络阻塞所引起。netstat命令显示关于配置网络接上的流量,主要包括以下几方面:

  •   和套接字有关的任何一个协议控制块的地址及所有套接字的状态;

  •   收到、发送出去和通信子系统中丢失的信息包数量;

  •   每个接口的累计统计信息;

  •   路由和它们的状态;

  netstat命令格式如下:

  •   netstat 选项

  常用选项的含义如下:

  •   -a

  •   显示所有socket,包括正在监听的。

  •   -c

  •   每隔1秒就重新显示一遍,直到用户中断他。

  •   -i

  •   显示所有网络接口的信息,格式同“ifconfig –e”。

  •   -n

  •   以网络IP地址代替名称,显示出网络连接情形。

  •   -r

  •   显示核心路由表,格式同“route –e”。

  •   -t

  •   显示TCP协议的连接情况。

  •   -u

  •   显示UDP协议的连接情况。

  •   -v

  •   显示正在进行的工作。

  netstat –in命令:显示所有配置接口的状态,如图9-30所示。  

性能测试之网络系统监控(图3)

  图9-30 netstat -in命令报告

  MTU:最大传输单元,使用接口时可以传输的最大信息包大小,以字节为单位。

  RX和TX这两列表示的是已准确无误地收发了多少数据包( RX - OK / TX -OK)、产生了多少错误(RX-ERR/TX-ERR)、丢弃了多少包(RX-DRP/TX-DRP),由于误差而遗失了多少包(RX-OVR/TX-OVR);最后一列展示的是为这个接口设置的标记,在利用ifconfig显示接口设置时,这些标记都采用一个字母。说明如下:

  •   B:已设置了一个广播地址。

  •   L:该接口是个回送设备。

  •   M:接收所有数据包(混乱模式)。

  •   N:避免跟踪。

  •   O:在该接口上,禁用A R P。

  •   P:这是个点到点链接。

  •   R:接口正在运行。

  •   U:接口处于“活动“状态。

  netstat –nr命令:显示路由器的相关信息,如图9-31所示。  

性能测试之网络系统监控(图4)

  图9-31 netstat -nr报告

  输出结果中,第二列展示的是路由条目所指的网关,如果没有使用网关,就会出现一个星号(*)或0.0.0.0;第三列展示路由的概述,在为具体的IP地址找出最恰当的路由时,内核将查看路由表内的所有条目,在对找到的路由和目标路由比较之前,将对IP地址和genmask进行按位“和”计算;第四列显示了不同的标记,这些标记的说明如下:

  •   Gateway:显示路由条目所指的网关,如果没有使用网关,就会出现一个星号(*)或0.0.0.;

  •   Genmask:显示路由的概述,在为具体的IP地址找到最合适的路由时,内核将查看路由表内的所有条目,在对找到的路由和目标路由比较之前,将IP地址和Genmask进行按位“与”计算;

  Flags:显示标记信息,常用标记如下:

  •   G:路由将采用网关;

  •   U:准备使用的接口处于“活动”状态;

  •   H:通过该路由,只能抵达一台主机;

  •   D:如果路由表的条目是由ICMP重定向消息生成的,就会设置这个标记;

  •   M:如果路由表条目已被ICMP重定向消息修改,就会设置这个标记;

  Iface:显示该连接所用的物理网卡,如eth0表示用第一张,eth1表示用第二张。

  如果需要显示活动或被动套接字的信息,可使用选项- t、- u、- w和-x,其分别表示TCP、UDP、RAW和UNIX套接字连接。如果还需要显示出等待连接(也就是说处于监听模式)的套接字,可以使用-a标记,这样就能得到一份服务器清单,当前所有运行于系统中的所有服务器都会列入其中。

  netstat -ta命令:显示TCP套接字连接,如图9-32所示。  

性能测试之网络系统监控(图5)

  图9-32 netstat -nr报告

  本章主要给大家介绍了“性能测试之网络系统监控”的内容,大家觉得喜欢的话可以每天来这里和小编一起学习涨薪技能哦。(笔芯 )

  附:川石信息全国校区最新开班时间,课程资料获取13691729932(微信同号)。  

性能测试之网络系统监控(图6)


相关文章
  • 亚马逊运营成功转行软件测试,薪资13K表示很满意!2021-06-16 15:34:55
  • 西安川石的兰朋友喊你来当他的学弟学妹啦!2021-06-16 15:34:55
  • 国外的月亮也不一定比国内测试猿的年薪美~2021-06-16 15:34:55
  • 建筑工程专业朱同学成功转行为软件测试人!2021-06-16 15:34:55
  • 财务管理专业转行软件测试月薪甩会计几条街!2021-06-16 15:34:55
  • 只有技术沉淀才能成功上岸,深圳就业薪资13K!2021-06-16 15:34:55
  • 薪资11K!实现自我价值,从掌握一门IT技术开始...2021-06-16 15:34:55
  • 文科生转行软件测试照样拿下高薪15K!2021-06-16 15:34:55
  • 恭喜罗同学喜提19.5K,成功入行软件测试!2021-06-16 15:34:55
  • 毕业1年,迷茫的他最终选择转行软件测试2021-06-16 15:34:55