Is it possible to create service/GUI to be able to monitor rate of communication and provide evaluation between servers and hardware?

6 days ago 6
ARTICLE AD BOX

I have a case where I am using a virtual machine which is Windows Server and have couple of C# services communicating with hardware devices using for example Advantech and then connects to readers. In addition, I am also connecting to embedded system (IoT) devices to operate readers and using servos to simulate gate barrier raise/lowering.

Issue that I have there are times where the system is working flawlessly and sometimes I notice that there is delay for system to read data from the readers (individual) and/or readers from IoT devices (also the functionality of the gate barrier). So, I want to add another C# service (or maybe GUI) to monitor the hardware communication and to see:

When server sends message to device (timestamp) When server receives message from device (timestamp) Calculate response time Calculate average message rate per device (messages/sec) Compare current rate with historical average (maybe might be using SQLite to store some of those values) Detect when communication becomes slower than normal Log this information continuously to file Possibly visualize it in simple GUI (optional)

Is there any packages I should consider to use in service/GUI (Preferable to be MIT License) that can help in monitor TCP/UDP communication between my C# services and hardware/IoT devices on a closed local network, focusing only on timestamps and message frequency (not deep packet inspection - but it would be nice, if there is a way to maybe just view messages sent/received only), and help detect slowdowns or abnormal communication delays in real time.

Read Entire Article