The DNP3 protocol provides a link to a keep-alive mechanism which can be used in both Ethernet (TCP/IP) and serial communication modes. When the client has successfully established connection to the protection relay, keep-alive messages are sent periodically by the client or protection relay, depending on which one has a lower keep-alive interval setting. Keep-alive timer is also restarted by any normal DNP3 frame, so keep-alive messages are only being transmitted after a longer idle time between frames. In the protection relay, the keep-alive timeout can be set with the Link keep-alive (seconds) parameter.
Default value “0” means that no keep-alive messages are sent by the protection relay. Keep-alive requests sent by the client are still responded to. If a keep-alive message is not responded to, the connection is considered broken. In case of TCP/IP connection the protection relay closes the associated TCP socket connection, and a new connection must be initiated by the client.
The DNP3 link status (True/False) is updated in the Monitoring data Status, which also can be also used in Application Configuration tool in PCM600 for additional logic connection, for example, to a LED. DNP3 link status exists separately for each DNP3 protocol instance. True (value 1) means that the connection is active. False (value 0) means the connection has timed out. The status can be found via
.On Application Configuration tool level, the DNP3 protocol instance is represented by a function block DNPLPRTn, where n is the protocol instance number 1…5.
Use of TCP/IP connection keep-alive timeout only
When the DNP3 link keep-alive mechanism is not used in TCP/IP case, the Ethernet stack TCP socket keep-alive mechanism is still in use. If there is a TCP socket keep-alive timeout, the protection relay closes the associated TCP socket connection and updates the DNP3 link status.