rodrigo_rolle
Hi there!

I'm currently studying the performance of OpenPLC server-slave communications. Attached is a screenshot from Wireshark, where I was able to find the query-response pattern used by OpenPLC. My doubts:
1) Where does communication actually start? Does it start with the first Modbus/TCP query or with the TCP ACK?
2) Correspondingly, where does the communication end? In the last Modbus/TCP response?

test.png 

On this screenshot my PC is the IP 192.168.0.131 while the slave is 192.168.0.125.
Thank you!
Quote 0 0
thiagoralves
The communication is done through a TCP/IP channel, which means that it starts with the TCP handshake and ends with TCP disconnection. Between the TCP handshake and disconnection you have all Modbus requests and responses. The ACK along the way is just part of the TCP moving window process. 
Quote 0 0
rodrigo_rolle
In OpenPLC "Settings" page I define a polling period for slave devices. I'd like to measure if this time is being accomplished as long as I set this period to a shorter value. If I set a 1000ms polling rate (this is default if I'm not wrong), does it mean that each slave will be polled at every second or that all listed slaves will be polled inside this time? Is there a way to measure the actual polling rate on Wireshark?
Quote 0 0
thiagoralves
All listed slave devices are queried once every polling cycle. This means that if the polling rate is set for 1000ms, all read and write requests will be sent once every second. Just keep in mind that for just one device there are multiple requests sent every polling cycle (one to read digital inputs, other to read analog inputs, etc). So on Wireshark you will see a group of messages sent together in a very short period of time, and then a pause of 1 second (or whatever your polling rate is) and then it repeats again.
Quote 0 0