# Advanced Network Test

(Applicable to BurnInTest Pro version only)

Overview

The Advanced Network test allows peer to peer testing of NICs and network connections using various different parameters and load settings. BurnInTest is capable of detecting the presence of remote machines on the same the network segment and setting connections between the unit under test (TU) and the remote machine in an automated fashion. BurnInTest will need to run on one system and the remote machines will need to run ‘End point’ (EP) software, that will allow peer to peer connections and testing to take place.

The connection topology will be M:N meaning that each NIC in each machine (both local and remote) can connect to multiple peers at the same time during testing in order to attempt to obtain the required load on the NIC.

To ensure compatibility between BurnInTest and the Endpoint software, it is important that you use the version of Endpoint that is included in the BurnInTest distribution you are using.

Test options

A configuration window to set the various test options is available from the “Network” tab in BurnInTest.

The options for each NIC will include;

- Test ON / OFF
  Turn testing on or off for the NIC in question.
- Data validation
  If turned on, data sent and received will have a checksum. Turning on this option will increase CPU load (and possibly decrease throughput).
- Protocol : TCP, UDP, FTP, Cycle, Cycle (NO FTP).
  Selecting Cycle will result in the test cycling between the TCP, UDP and FTP options.
- Mode (Half / Full Duplex).
  In the half duplex case, data will only be sent from the TU to the EP.
- The option of using a random file transfer size with user configurable maximum size in MB of a fixed file size. Note that in reality the ‘file’ will not actually be written to disk but will just be held in a RAM buffer.
- IP Port numbers to use.
  There will be one IP port number used for broadcasting and another used for the actual test. Broadcasting is required to detect the presence of remote machines running the EP software.
- Log file update interval to write out current testing status.
- Transfer size for the data blocks being sent
- UDP % loss warning
  The user can specify the percentage of UDP data loss before an error is flagged.
- Max % load on NIC
  This is the target load for the NIC in question in the TU.

The data sent during the test will be pseudo randomly generated. A checksum will be added to the data to allow the remote machine to verify the data integrity (if the user has selected this option).

For more information see the description of the Advanced Network Test.

Routing

At the start of testing, BurnInTest broadcasts a request and enumerates the EPs on the local LAN segment. The broadcast will use UDP and be directed at the universal 255.255.255.255 broadcast address.

Routing table entries will be set up on the test unit (TU) and EP to force traffic through the correct NICs at both ends, the new routes will need to be created without disturbing any exiting ones.

Load monitoring

BurnInTest and the EP monitor CPU and Network load in order to,

1. Know when additional EPs are required to achieve a requested load.
2. Try and estimate when attempting to add a new EP (in order to achieve a requested load) will be counter productive due to a CPU throughput bottleneck.
3. Try and estimate how much data should be sent to EPs already connected in order to achieve a requested load.

Load data is transferred from the EPs to BurnInTest in order to allow BurnInTest to manage which EPs are the best to connect to (the least loaded).

Logging

A log file can be generated for each network card being tested and saved in the directory specified in the “Logging” tab of BurnInTest. The log file name will conform to the following convention;

IP-date-time.txt eg 10.10.24.32-31may04-154919.txt

The log file will be written to during the testing process and contains the following:

- type of protocol being used at moment;
- average throughput;
- start time and stop times;
- number of MB transferred back and forth during the test;
- any errors detected and details of those errors.

Errors will also be logged in the standard BurnInTest log files as specified in Preferences -> Logging.

EP (End point) overview

EP is a standalone application that is started on a remote machine and will be able to run whether there is an instance of BurnInTest running or not. It will need to be able to access all available NICs of the machine that it is running on. It will register itself with the “Check Endpoint” (CE) application when started. The registration will include the machine name the EP is running on and every available NIC.

An EP that has already registered with a CE, will re-register with that CE after the EP process restarts (such as a reboot), rather than waiting for the next CE polling interval.

EPs purpose is to detect requests from BurnInTest to start network testing and to send, receive and verify data from an instance of BurnInTest.

The EP will register itself with the machine running the Check EP application using UDP broadcasting, receiving an acknowledgment from the Check EP application when it has been registered. During this communication, the machine name will be passed to the EP for display.

Endpoints will de-register themselves with the Check EP application.

The “Endpoint.exe” software file is included in the BurnInTest installation directory and should be copied to the remote PC’s and run from these systems. For example they should be copied from the BurnInTest directory on the main PC, C:\Program Files\BurnInTest\Endpoint.exe, to each remote PC to a directory C:\Program Files\BurnInTest\Endpoint\Endpoint.exe. EP can be run by double clicking on the application file.

To use the advanced network test there must be at least 1 endpoint running on another machine on the network separate to the machine running BurnInTest. The test will dynamically connect to the EndPoint applications as needed.

To successfully run the test BurnInTest uses broadcasts to find all the available EndPoint applications on the network, so anything that may block the broadcasts, such as a router, needs to be taken into account. Firewalls could also interfere with the test and may need to be configured to allow BurnInTest and the EndPoint applications to use the network.

It should be noted that when there is more than one network card in the machine being tested the FTP option cannot lock to a specific network card in the same way that the UDP and TCP tests do.

Check Endpoint overview

This standalone application checks on a periodic basis (in minutes) that every EP that has registered itself with the CE is still running and functional. If an EP is found to be non-functional then an email will be sent to an email list of addresses that have been entered by the user. The email will contain the machine name and IP of the EP that is non-functional (only 1 IP from the EP will need to be reported).

Once a day, the CE will email a report to the email list. This will occur regardless of the current status of the EPs. The E-mail will list the registered EPs and their states. The user can select the time of day at which the report is generated.

Care will have to be taken to ensure the NIC is really non-functional and not just too busy to respond. 3 status states will be defined.

OKThe EP is registered and responded correctly to the last poll from the CE

SUSPECTThe EP failed to respond to the last poll from the CE

DISCONNECTEDThe EP failed to respond to at least two consecutive polls from the CE

A user can force a de-registration of an EP from the user interface of the Check EP application.

The “CheckEnd.exe” software file is included in the BurnInTest installation directory.