Apps for distributed TCP and UDP testing will be very useful for verifying functional interaction both between operating systems (Windows, Linux, macOS, Raspbian, etc) as well as different hosts running the same operating system.
The first distributed test application will be named "Test Data Blaster" (T-DB) and consists of two (initially) executables - an executable that sends and receives test data, and a monitoring process which receives statistics and status messages and sends a shutdown message when initiated by the user.
The monitoring app is a server (acceptor), and both a C++ and Python version is expected. An initial console mode C++ monitoring app should be written, then later a GUI oriented monitoring app (Python or other similar language).
Initially TCP (only) will be supported, but at some point UDP will be supported.
More details for T-DB is in the README in the chops-net-ip/test/test_data_blaster directory.
Define monitor message (DSR to monitor) wire protocol. Update README.
Write code to marshall and unmarshall monitor message (C++). Write unit tests for marshall and unmarshall.
Define shutdown message (monitor to DSR) wire protocol. Update README.
Write code to marshall and unmarshall shutdown message (C++). Write unit tests for marshall and unmarshall.
Implement monitor connector code. Write unit test for non-networking code as needed.
Define TCP DSR command line parameters. Anticipate (and define, as time allows) UDP DSR command line parameters. Decide on whether to use 3rd party command line processing library (pros - library to do messy work; cons - another dependency). Update README.
Write function to process TCP DSR command line parameters. If time allows, write function to process UDP DSR command line parameters. Write unit tests for command line processing function.
Design C++ monitor, including command line parameters, monitor message displays, and shutdown command user interface. Update README.
Implement C++ monitor.
Design Python monitor with same general criteria as C++ monitor. Update README.
Implement Python monitor.
Debug all T-DB code (group effort).
System test everything including production Chops Net IP library (group effort).
Apps for distributed TCP and UDP testing will be very useful for verifying functional interaction both between operating systems (Windows, Linux, macOS, Raspbian, etc) as well as different hosts running the same operating system.
The first distributed test application will be named "Test Data Blaster" (T-DB) and consists of two (initially) executables - an executable that sends and receives test data, and a monitoring process which receives statistics and status messages and sends a shutdown message when initiated by the user.
The monitoring app is a server (acceptor), and both a C++ and Python version is expected. An initial console mode C++ monitoring app should be written, then later a GUI oriented monitoring app (Python or other similar language).
Initially TCP (only) will be supported, but at some point UDP will be supported.
More details for T-DB is in the README in the
chops-net-ip/test/test_data_blaster
directory.