Using Netstress

To use NetStress you launch the application on two different computers on the network -- one instance of the program runs in server/receiver mode and the other in client/transmitter mode. The results of the throughput benchmarking indicate the performance of the path between the client and server machines. By selecting the client and server machines at various points within the network you can analyze critical portions of the data path.

NetStress has an advantage over tools like FTP (File Transfer Protocol) -- which transfers data to and from disks.  If you have a high performance network, then using FTP may be insufficient for real network testing -- since data transfer is occurring to/from disks.  NetStress achieves high performance testing by filling buffers in memory with data, then repeatedly transmitting this data using the TCP protocol.  Since everything is running from memory, then we have a traffic transmitter and receiver that can operate at true network speeds.  In the case of wireless networks -- whose theoretical bandwidth is significantly less than wired networks -- this may not be an issue.

NetStress reports the amount of data transferred and the throughput benchmark in 'bytes / sec'.  By comparing actual throughput with the theoretical bandwidth between the client and server or with a measurement taken at an earlier date, you can tell whether the network is operating as expected.  Variations in throughput may indicate a significant amount of other traffic, overloaded network equipment, communication errors which cause packets to be lost or, in the case of wireless networks, interference from other wireless devices.  By performing tests using different machines on the network then you begin to gain clues as to where the problem lies and which areas should be examined in greater detail.

NetStress uses TCP (Transmission Control Protocol) to transfer data between two machines on a network.  TCP is a connection-oriented protocol that requires a server/receiver that is "listening" before a client/transmitter can connect.  So, to run NetStress, you first launch the application on one machine in server mode and then launch the same application on a second machine in client mode.  The only difference between the two modes (besides which transmits and which receives) is the client application needs to know the IP address of the server machine.  NetStress uses the time and the amount of data transferred from the client to server to calculate the throughput benchmark in 'bytes / sec'.

 

To run a test first go to the "server" machine and launch NetStress in server mode.

After pressing the 'OK' button then the server's application window appears:

This particular machine has two network adapters installed -- one wireless (192.168.1.29) and one wired (192.168.17.75), so we need to specify to the application which one to use.  Since we are interested in testing our wireless network then we select the 192.168.1.29 adapter.  After selecting which adapter to use then press the 'Start Server' button.  The application is now running in server mode and "listening" for a TCP connection.  Take note of the server's IP address -- in our case it is 192.168.1.29. 

 

Next go to the "client" machine and launch NetStress in client mode.

After pressing the 'OK' button then the server's application window appears:

This particular machine only has a wireless adapter -- so the application will use that by default.  For the client application we also need to enter the server's IP address which, in this example, is 192.168.1.29.  And then press the 'Start Client' button.

Once the TCP connection is made and the session begins then the client repeatedly transmits data to the server application.  The current throughput is calculated and also charted as a function of time.  The calculations are performed by the server application and reported back to the client.  In this way both applications can display the results.