NQA简介

  NQA(Network Quality Analyzer,网络质量分析)通过发送探测报文,对链路状态、网络性能、网络提供的服务及服务质量进行分析,并为用户提供标识当前网络性能和服务质量的参数,

  如时延、抖动时间、TCP连接建立时间、FTP连接建立时间和文件传输速率等。

  利用NQA的分析结果,用户可以:

  • 及时了解网络的性能状况,针对不同的网络性能进行相应处理。

  • 对网络故障进行诊断和定位。

1.NQA基本概念

  1)测试组

  NQA测试组是一组测试参数的集合,如测试类型、测试目的地址、测试目的端口等。NQA测试组由一个管理员名称和一个操作标签来标识。管理员通过NQA测试组来实现对NQA测试的管理和调度。

  在一台设备上可以创建多个NQA测试组,可以同时启动多个NQA测试组进行测试。

  2)测试和探测

  启动NQA测试组后,每隔一段时间进行一次测试,测试的时间间隔由frequency命令来设定。

  一次NQA测试由若干次连续的探测组成,探测的次数由probe count命令来设定。

  NQA支持多种测试类型:ICMP-echo、ICMP-jitter、DHCP、DNS、FTP、HTTP、UDP-jitter、SNMP、TCP、UDP-echo、UDP-tracert、Voice、Path-jitter和DLSw测试。不同测试类型中,探测的含义不同:

  • 对于TCP和DLSw测试,一次探测操作是指建立一次TCP或DLSw连接;

  • 对于ICMP-jitter和UDP-jitter和Voice测试,一次探测操作是指连续发送多个探测报文,发送探测报文的个数由probe packet-number命令来设定;

  • 对于FTP、HTTP、DHCP和DNS测试,一次探测操作是指完成一次相应的功能,例如上传或下载一个文件,获取一个Web页面,申请一个IP地址,将一个域名解析为IP地址;

  • 对于ICMP-echo和UDP-echo测试,一次探测操作是指发送一个探测报文;

  • 对于SNMP测试,一次探测操作是指发送三个SNMP协议报文,分别对应SNMPv1、SNMPv2c和SNMPv3三个版本;

  • 对于Path-jitter测试,一次探测操作分为两个步骤:首先通过tracert探路获取到达目的地址的路径(最大为64跳);再根据tracert结果,分别向路径上的每一跳发送多个ICMP-echo探测报文,发送探测报文的个数由probe packet-number命令来设定;

  • 对于UDP-tracert测试,一次探测操作是指一个特定TTL值的节点发送一个探测报文的操作;

2.NQA工作机制

  NQA测试的典型组网中包括以下两部分:

  • NQA测试的源端设备:又称为NQA客户端,负责发起NQA测试,并统计探测结果。NQA测试组在NQA客户端上创建。

  • NQA测试的目的端设备:负责接收、处理和响应NQA客户端发来的探测报文。

  在进行TCP、UDP-echo、UDP-jitter和Voice类型测试时,必须在目的端设备上配置NQA服务器功能,开启指定IP地址和端口上的监听服务。此时,目的端设备又称为NQA服务器。

  当NQA服务器接收到客户端发送给指定IP地址和端口的探测报文后,将对其进行处理,并发送响应报文。

  在其他类型的测试中,目的端设备只要能够处理NQA客户端发送的探测报文即可,不需要配置NQA服务器功能。例如,在FTP测试中,目的端设备上需要配置FTP服务器相关功能,

  以便处理客户端发送的FTP报文,而无需配置NQA服务器功能。

  NQA测试的过程为:

  ① NQA客户端构造指定测试类型的探测报文,并发送给目的端设备;

  ②目的端设备收到探测报文后,回复应答报文;

  ③ NQA客户端根据是否收到应答报文,以及接收应答报文的时间,计算报文丢失率、往返时间等。

3.支持联动功能

  联动功能是指在监测模块、Track模块和应用模块之间建立关联,实现这些模块之间的联合动作。联动功能利用监测模块对链路状态、网络性能等进行监测,并通过Track模块将监测结果及时通知给应用模块,

  以便应用模块进行相应的处理。  NQA可以作为联动功能的监测模块,对NQA探测结果进行监测,当连续探测失败次数达到一定数目时,就通过Track模块触发应用模块进行相应的处理。

   

  以静态路由为例,用户配置了一条静态路由,下一跳为192.168.0.88。通过在NQA、Track模块和静态路由模块之间建立联动,可以实现静态路由有效性的判断:

  ①通过NQA监测地址192.168.0.88是否可达。

  ②如果192.168.0.88可达,则认为该静态路由有效,NQA不通知Track模块改变Track项的状态;如果NQA发现192.168.0.88不可达,则通知Track模块改变Track项的状态。

  ③ Track模块将改变后的Track项状态通知给静态路由模块。静态路由模块据此可以判断该静态路由项是否有效。

4.支持阈值告警功能

  NQA可以对探测结果进行监测,在本地记录监测结果,或通过Trap消息将监测结果通知给网络管理系统,以便网络管理员了解NQA测试运行结果和网络性能。

  NQA通过创建阈值告警项,并在阈值告警项中配置监测的对象、阈值类型及触发的动作,来实现阈值告警功能。

  阈值告警项包括invalid、over-threshold和below-threshold三种状态:

  • NQA测试组未启动时,阈值告警项的状态为invalid。

  • NQA测试组启动后,每次测试或探测结束时,检查监测的对象是否超出指定类型的阈值。如果超出阈值,则阈值告警项的状态变为over-threshold;如果未超出阈值,则状态变为below-threshold。

  如果阈值告警项的触发动作为trap-only,则当阈值告警项的状态改变时,向网络管理系统发送Trap消息。

  1)监测对象

  NQA阈值告警功能支持的监测对象及对应的测试类型,如下表所示。

   

  2)阈值类型

  NQA阈值告警功能支持的阈值类型包括:

  • 平均值(average):监测一次测试中探测结果的平均值,如果平均值不在指定的范围内,则该监测对象超出阈值。例如,监测一次测试中探测持续时间的平均值。

  • 累计数目(accumulate):监测一次测试中探测结果不在指定范围内的累计数目,如果累计数目达到或超过设定的值,则该监测对象超出阈值。

  • 连续次数(consecutive):NQA测试组启动后,监测探测结果连续不在指定范围内的次数,如果该次数达到或超过设定的值,则该监测对象超出阈值。

  3)触发动作

  NQA阈值告警功能可以触发如下动作:

  • none:只在本地记录监测结果,以便通过显示命令查看,不向网络管理系统发送Trap消息。

  • trap-only:不仅在本地记录监测结果,当阈值告警项的状态改变时,还向网络管理系统发送Trap消息。

  • trigger-only:在显示信息中记录监测结果的同时,触发其他模块联动。

5.NQA配置任务简介

  NQA客户端支持两种配置方式:NQA测试组和NQA模板。NQA测试组配置完毕后,通过调度测试组就可以进行测试操作;NQA模板配置完毕后并不启动测试,需要外部特性(如负载均衡)调用NQA模板,

  为该特性创建NQA测试组后,并自动启动NQA测试。

   

6.配置举例

  1)在NQA客户端上配置NQA测试组

  以ICMP-echo举例

  ICMP-echo测试利用ICMP协议,根据是否接收到应答报文判断目的主机的可达性。ICMP-echo测试的功能与ping命令类似,但ICMP-echo测试中可以指定测试的下一跳设备。在源端和目的端设备之间存在多条路径时,

  通过配置下一跳设备可以指定测试的路径。并且,与ping命令相比,ICMP-echo测试输出的信息更为丰富。

  nqa entry admin-name operation-tag  :创建NQA测试组,进入NQA测试组视图

    type icmp-echo:配置测试类型为ICMP-echo,并进入测试类型视图

      destination ip x.x.x.x :配置探测报文的目的地址

      type icmp-echo:配置测试类型为ICMP-echo,并进入测试类型视图      

      frequency x:指定连续两次NQA测试操作的时间间隔

      next-hop ip x.x.x.x:指定ICMP echo操作的下一跳

      reaction 1 checked-element probe-fail threshold-type consecutive 5 action-type trigger-only:配置一个反应设置

  2)在NQA客户端上配置NQA模板

  以ICMP举例

  ICMP类型的NQA模板为外部特性提供ICMP类型的测试,外部特性通过引用该模板来启动ICMP测试,并根据是否接收到ICMP应答报文判断目的主机的可达性。

  nqa template icmp xx:创建ICMP类型的NQA模板,并进入模板视图

    destination ip x.x.x.x :配置探测报文的目的地址

    frequency x:指定连续两次NQA测试操作的时间间隔    

    probe timeout xx:配置每次探测超时时间

    ttl xx:配置探测报文在网络中可以经过的最大跳数

    tos xx:配置NQA探测报文IP报文头中服务类型域的值

    vpn-instance xx:指定操作所属的VPN

    reaction trigger probe-pass xx:配置连续探测成功的次数,当连续探测成功次数达到命令配置的数值时,NQA客户端会把探测成功的消息发送给外部特性,使外部特性利用NQA测试的结果进行相应处理

    reaction trigger probe-fail xx:配置连续探测失败的次数,当连续探测失败次数达到命令配置的数值时,NQA客户端会把探测失败的消息发送给外部特性,使外部特性利用NQA测试的结果进行相应处理

  3)显示与维护命令

  display nqa history [ admin-name operation-tag ]:显示NQA测试组的历史记录

  display nqa reaction counters [ admin-name operation-tag [ item-number ]]:显示NQA阈值告警功能的当前监测结果

  display nqa result [ admin-name operation-tag ]:显示最近一次NQA测试的当前结果

  display nqa statistics [ admin-name operation-tag ]:显示NQA测试的统计信息

  display nqa server:显示服务器的状态信息

 

posted on 2021-07-16 18:05  星痕1216  阅读(1425)  评论(0编辑  收藏  举报