-
Improvement
-
Resolution: Done
-
None
-
Post-Helium
-
None
-
Operating System: All
Platform: All
Some devices drop the netconf session with ODL but the SSH/TCP connection itself is still present. In such situations, ODL has no way of knowing that the session was dropped and does not perform a reconnect.
Netconf southbound connector in ODL could periodically invoke some sort of RPC to check whether a netconf session is active. If there is no response, or the request fails in network, ODL should disconnect the session and schedule a reconnect. This way ODL would know that the session is no longer active, but the connection was not fully dropped.
Suitable RPC call would be get-config with an empty filter section. According to the RFC, an empty response should be returned (so the device is not burdened too much by this keepalive):
http://tools.ietf.org/html/rfc6241#section-6.4.2
- The keepalive frequency should be configurable with a reasonable default value
- Keepalive should be posponed if any other netconf RPCs are being invoked invoked. Its pointless to invoke keepalive RPC if there are other RPCs being invoked at the time by an application or a user