All the Previous posts of this article series are bellow. Please read them before continuing this post. This post is the last post of this article series.
1. Developing A Network Monitoring Tool Using CISCO NetFlow : Part 1
2. Developing A Network Monitoring Tool Using CISCO NetFlow: 2 – Analysis and Design
3. Developing A Network Monitoring Tool Using CISCO NetFlow: 3 – Implementation 1
4. Developing A Network Monitoring Tool Using CISCO NetFlow: 4 – Implementation 2
5. Developing A Network Monitoring Tool Using CISCO NetFlow: 5 – Implementation 3
6. Developing A Network Monitoring Tool Using CISCO NetFlow: 6 – Implementation 4
7. Developing A Network Monitoring Tool Using CISCO NetFlow: 7 – Testing

In this article, I’m going to explain how I tested this Network Monitoring tool.

Testing the Network Monitoring Tool

Unit Testing

The tool used unit testing for the testing process. Because the testing as a whole system is more complicated. But it is easy to test as a single unit.

Testing the NetFlow Data Collector and Analyzer

  • Test Case 1:
    Check the NetFlow data collected and decapsulate by the tool were the 1st test case. NetFlow data should be captured and decapsulate. If the process is correct, NetFlow data should be printed on the console.
  • Test Case 2:
    Bandwidth calculation should be accurate, and when the NetFlow packets send to the tool, it should be printed on the console.
  • Test Case 3:
    Check the bandwidth output for different services when the different NetFlow packets send to the tool. It should be printed as a different service.
  • Test Case 4:
    Check the bandwidth files are saved according to the service and type of traffic by sending a different type of NetFlow traffic.
  • Test Case 5:
    Load the bandwidth files into the graphs and check it is generating correct graphs.

Testing the Alert System

  • Test Case 1:
    Reduce the bandwidth alert threshold and send NetFlow traffic to check the sound alert, email alert, and alert log. Open the alert page to check the saved “alert.dat” file.
  • Test Case 2:
    Reduce the client system usage alert threshold on the client and check the alerts are sent to the server by checking the alert log, sound, or email.
  • Test Case 3:
    Open the system email account and check the alert emails that were sent to the network administrator.

Testing the Remote Logging and Administration System

  • Test Case 1:
    Enter an IP to check it is available and send a message from TCP socket connection and print it on the console to check the connection.
  • Test Case 2:
    Send the screenshots from the client through the TCP connection to the server and show them and adjust them to fit the screen.
  • Test Case 3:
    Performed mouse actions and the keyboard actions send relevant values to the client and print in the console. Check the client mouse and keyboard are performed according to the server mouse and keyboard actions.

Testing the IP and Port Scanner

Testings for For IP Scanner

  • Test Case 1 :
    Check an IP address and return the availability and the hostname of it. Load the network address from the “settings.dat” and check all the availability and hostnames of all the IP addresses in the network. Then the results print on the console. 
  • Test Case 2:
    Check available IP addresses and hostnames are includes to console of tool and the data table.

Testings for For Port Scanner

  • Test Case 1:
    Check the entered IP is available or not and print the result in the console. Check the port scanning process and print the result in the console.
  • Test Case 2:
    Check the opened ports are added to the console of the tool and the data table.
Testing of the Network Monitoring Tool Using CISCO NetFlow

Increment and Tool Testing

The author has tested all the components of the tool. But when we talk about NetFlow Data Collector and Analyser, it is not practical to always use routers to test the system when coding the tool. But the NetFlow packets are a must for this project. In this case, the author has used small software to generate NetFlow packets. It is “Paessler NetFlow Generator 1.0” and available at https://www.paessler.com/tools. It works as a NetFlow enabled virtual router.

 At the end of the development process, the tool was tested using real devices. 

Summery and Achievements

The output of this project is the Remote Client Monitoring & Administrating Tool and mainly based on NetFlow. It can capture and analyze NetFlow packets to calculate bandwidth data. Calculated data is saved on “.dat” files to use future usage. It can generate bandwidth graphs according to the service. Upload and download bandwidths in Mbps shown in the same graph.

The tool is not only including NetFlow monitoring, it also monitors system usage, such as RAM usage and hard disk usage.

The alerting system supports email alerting, sound alerting, and alert log. Alerting will be done when the threshold of bandwidth or system usage reached.

The remote logging and administration system of the tool is impressive. It can share a remote desktop with the server, and the server can control the system remotely. Because of that, the server has administrative rights to that system remotely.

IP scanner in the aurora can scan the local network for available devices and IP addresses. The result is shown with the IP address and the hostname.
It also has a port scanner, which can scan for all ports on a given IP address for opened or active ports.

Review of the Tool Objectives

  1. Develop a network monitoring tool to capture (using NetFlow) and monitor traffic in network links. 
    This objective was 100% completed. The tool can capture and monitor network traffic using NetFlow.  
  2. The tool shall monitor traffic bandwidth, utilization, and transactions (Eg:- IPs, ports) using the developed tool.
    This objective was 90% completed. The tool calculates upload and downloads bandwidth according to the network. Also, the bandwidth calculation is done per service (port). But it was not calculated per IP.
  3. Develop a system monitoring component to monitor the computer system’s resources utilization (Eg: Memory usage).  
    This objective was 100% completed with additional features. The tool can monitor resource utilization such as RAM usage and Hard disk usage. 
  4. Enhance the monitoring tool to generate alerts when the thresholds are reached (Eg: Bandwidth, Memory) 
    This objective was 100% completed. The tool can generate alerts when the system usage or bandwidth threshold reached. Alerts are email, sound, and alert log.
  5. Enhance the tool to provide remote Desktop access with IP and Port scan function.
    This objective was 100% completed. The tool can scan IP for an available IP address and open ports of a given IP address. Also, the tool has remote desktop access for clients.
  6. Analyze potential development technologies and deployment solutions.
    This objective was 100% completed. I have analyzed most of the available technologies to develop this tool and come up with better and reliable technologies. 
Testing of the Network Monitoring Tool Using CISCO NetFlow

Conclution

The tool that developed in this project gives support for network monitoring.  This tool encourages users to use NetFlow to monitor network, which is the best solution. On the other hand, this tool features both famous intrusive and non-intrusive network monitoring methods such as NetFlow IP scan and port scan. Apart from that the tool has a famous feature, remote desktop sharing system.

Most of the commercial tools available in the market only specialize for one task. There is no proper total solution for network monitoring. Absolutely this tool is not a total solution. But there is no other tool that combined the services that provide this tool.

The tool that developed in this project gives support for network monitoring. This tool encourages users to use NetFlow to monitor the network, which is the best solution. On the other hand, this tool features both famous intrusive and non-intrusive network monitoring methods such as NetFlow IP scan and port scan. Apart from that, the tool has a famous feature, a remote desktop sharing system.

Most of the commercial tools available in the market only specialize in one task. There is no proper total solution for network monitoring. Absolutely this tool is not a total solution. But there is no other tool that combined the services that provide this tool.

It is important to mention that the goal of this tool was to combine intrusive and non-intrusive network monitoring methods into a single tool. As I think, I have succeeded in this goal.

Leave a Comment

Your email address will not be published. Required fields are marked *