TOP Server DNP3 Client Ethernet Driver - Keep Alive interval setting
I am using the TOP Server DNP3 Client Ethernet driver to communicate with an outstation. I noticed the Keep Alive interval setting, under the device's communication properties; what is this setting used for? is it referring to the TCP Keep Alives?
The Keep Alive Interval is used to determine the status of a TCP connection to a DNP3 outstation. Particularly in scenarios where communication is unsolicited, and there is no class polling that could indicate when there is a connection problem with the device, the Keep Alive interval adds an additional layer of data validation.
Despite the Keep Alive setting being specific to a TCP connection, it is completely separate from the TCP layer "TCP Keep Alive" packets - which are controlled by the Operating system, and can be adjusted via the Registry. The DNP3 Client Ethernet driver Keep Alive interval determines whether, and how frequently, DNP3 Link Status Requests will be sent to the outstation. The Link Status Requests will only be sent out when the link has been inactive for the interval specified, and the outstation is expected to respond with the status of the link. If the outstation does not respond within the request timeout period, the connection is collapsed.