1、NQA基本概念
NQA测试组是一组测试参数的集合,如测试类型、测试目的地址、测试目的端口等。NQA测试组由一个管理员名称和一个操作标签来标识。管理员通过NQA测试组来实现对NQA测试的管理和调度。
在一台设备上可以创建多个NQA测试组,可以同时启动多个NQA测试组进行测试。
启动NQA测试组后,每隔一段时间进行一次测试,测试的时间间隔由frequency命令来设定。
一次NQA测试由若干次连续的探测组成,探测的次数由probe count命令来设定
NQA支持多种测试类型:ICMP-echo、DHCP、DNS、FTP、HTTP、UDP-jitter、SNMP、TCP、UDP-echo、UDP-tracert、Voice、Path-jitter和DLSw测试。不同测试类型中,探测的含义不同:
· 对于TCP和DLSw测试,一次探测操作是指建立一次TCP或DLSw连接;
· 对于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测试,对目的节点进行的整个Tracert过程称为一次测试,对于一个特定TTL值的节点发送一个探测报文的操作称为一次探测,对于同一个TTL值的节点发送探测报文的次数由probe count命令来设定。
1.1 NQA工作机制
图1-1 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服务器功能。
(1) NQA客户端构造指定测试类型的探测报文,并发送给目的端设备;
(3) NQA客户端根据是否收到应答报文,以及应答报文中的时间戳,计算报文丢失率、往返时间等。
1.2 支持联动功能
联动功能是指在监测模块、Track模块和应用模块之间建立关联,实现这些模块之间的联合动作。联动功能利用监测模块对链路状态、网络性能等进行监测,并通过Track模块将监测结果及时通知给应用模块,以便应用模块进行相应的处理。联动功能的详细介绍,请参照下文。
如上图所示