What is NQA?
It is a feature that functions above link layer to measure performance of protocols running at the network layer, transport layer and application layer. It is useful to monitor network and locate faults occurring in the network. NQA can accurately test the network and collect statistics as well. You can configure and display NQA statistics through CLI but, as NQA is fully supported by Huawei NMS, you can also do this in GUI.
Most of Huawei devices support NQA but configuration can vary a little bit between NE routers, AR routers and switches. Of course we can perform more advanced test on carrier class devices. In this post we will focus on CLI and use CX600 router as an example.
NQA tests supported by CX600:
- ICMP test
- DHCP test
- FTP test
- HTTP test
- DNS test
- Traceroute test
- SNMP test
- TCP test
- UDP test
- ICMP Jitter test
- UDP Jitter test
- LSP Ping test
- LSP Traceroute test
- LSP Jitter test
- MTrace test
- MPing test
- PWE3 Ping test
- PWE3 Trace test
- MAC Ping test
- MACTunnel Ping test
- VPLS MAC Ping
- VPLS MAC Trace
- ICMP Jitter test
- Path Jitter test
- Path MTU test
- Ittertest based on the mechanism that the LPU sends packets
- ICMP Jitter test based on the mechanism that the LPU sends packets
- VPLS Mping test
- VPLS Mtrace test
Let’s configure a few examples. Below our testing topology:
To ensure communication between loopback interfaces use static or dynamic routing protocols. In this case static routing has been configured on both routers. We will use CX_1 as NQA client:
[CX_1]ip route-static 172.16.200.2 255.255.255.255 10.100.200.2
NQA ICMP test
[CX_1]nqa test-instance labnario ICMP test-type icmp destination-address ipv4 172.16.200.2 source-address ipv4 172.16.200.1
Please use “start” command to start the test.
You can display results of ICMP test by the command:
[CX_1]dis nqa results test-instance labnario ICMP NQA entry(labnario, ICMP) :testflag is inactive ,testtype is icmp 1 . Test 1 result The test is finished Send operation times: 3 Receive response times: 3 Completion:success RTD OverThresholds number: 0 Attempts number:1 Drop operation number:0 Disconnect operation number:0 Operation timeout number:0 System busy operation number:0 Connection fail number:0 Operation sequence errors number:0 RTT Stats errors number:0 Destination ip address:172.16.200.2 Min/Max/Average Completion Time: 1/7/4 Sum/Square-Sum Completion Time: 14/86 Last Good Probe Time: 2012-01-30 14:59:03.7 Lost packet ratio: 0 %
By default, the command output shows the results of the latest five tests.
NQA trace test
[CX-1]nqa test-instance labnario trace test-type trace destination-address ipv4 172.16.200.2 source-address ipv4 172.16.200.1 start now [CX-1]dis nqa results test-instance labnario trace NQA entry(labnario, trace) :testflag is inactive ,testtype is trace 1 . Test 1 result The test is finished Completion:success Attempts number:1 Disconnect operation number:0 Operation timeout number:0 System busy operation number:0 Connection fail number:0 Operation sequence errors number:0 RTT Stats errors number:0 Drop operation number:0 Last good path Time:2012-01-30 15:06:55.3 1 . Hop 1 Send operation times: 3 Receive response times: 3 Min/Max/Average Completion Time: 3/10/6 Sum/Square-Sum Completion Time: 18/134 RTD OverThresholds number: 0 Last Good Probe Time: 2012-01-30 15:06:55.3 Destination ip address:10.100.200.2 Lost packet ratio: 0 %
NQA Jitter test
First configure CX_2 router as NQA server:
[CX_2]nqa-server udpecho 172.16.200.2 9000
Configure NQA test on CX_1:
[CX_1]nqa test-instance labnario jitter test-type jitter destination-address ipv4 172.16.200.2 destination-port 9000 start now [CX_1]dis nqa results test-instance labnario jitter NQA entry(labnario, jitter) :testflag is inactive ,testtype is jitter 1 . Test 1 result The test is finished SendProbe:60 ResponseProbe:60 Completion:success RTD OverThresholds number:0 OWD OverThresholds SD number:0 OWD OverThresholds DS number:0 Min/Max/Avg/Sum RTT:1/20/2/117 RTT Square Sum:699 NumOfRTT:60 Drop operation number:0 Operation sequence errors number:0 RTT Stats errors number:0 System busy operation number:0 Operation timeout number:0 Min Positive SD:1 Min Positive DS:1 Max Positive SD:10 Max Positive DS:13 Positive SD Number:9 Positive DS Number:21 Positive SD Sum:60 Positive DS Sum:72 Positive SD Square Sum:482 Positive DS Square Sum:584 Min Negative SD:1 Min Negative DS:1 Max Negative SD:14 Max Negative DS:11 Negative SD Number:9 Negative DS Number:22 Negative SD Sum:50 Negative DS Sum:83 Negative SD Square Sum:454 Negative DS Square Sum:641 Min Delay SD:0 Min Delay DS:0 Avg Delay SD:0 Avg Delay DS:0 Max Delay SD:10 Max Delay DS:9 Delay SD Square Sum:161 Delay DS Square Sum:112 Packet Loss SD:0 Packet Loss DS:0 Packet Loss Unknown:0 Average of Jitter:4 Average of Jitter SD:6 Average of Jitter DS:3 jitter out value:0.1145833 jitter in value:0.1614583 NumberOfOWD:60 Packet Loss Ratio: 0% OWD SD Sum:39 OWD DS Sum:18 ICPIF value: 0 MOS-CQ value: 0 TimeStamp unit: ms
Additional useful commands:
- agetime – configures the aging time of an NQA test, by default 0 means test in not aged
- clear-records – clears all historical statistics and test results
- datasize – sets the size of the test packet, by default 0 and the test packet is then constructed with 100 bytes
- fail-percent – sets the percentage of failed probes, if the number of failed probe exceeds this value, the test is considered as failing.
- frequency – sets the interval for the automatic test, by default not configured, means the test is performed ones
- interval – sets the interval for sending NQA test packets, by default 20 milliseconds for jitter tests, 4 seconds for all other tests
- probe-count – sets the probe times in the NQA test, by default 3
- restart – restarts an NQA test
- send-trap – configures conditions for sending trap messages
- stop – stops a test.
Of course you can do all tests you want and check NQA functionality to confirm that it would be useful feature in your network.
Please be invite to ask questions and express your opinions.