Or you could use TCP's built-in keepalive feature: http://tldp.org/HOWTO/TCP-Keepalive-HOWTO/overview.html On Fri, Dec 8, 2017 at 12:56 PM, Edward Shryane via db-wg <db-wg@ripe.net> wrote:
Hi Job, WG,
On 10 Nov 2017, at 15:31, Tim Bruijnzeels via db-wg <db-wg@ripe.net> wrote:
We can look into this next week.
Kind regards
Tim
there is an existing NRTM 'end-of-stream' indicator, if keep-alive is not used: a comment '%END RIPE' is output after the last object. We could also add an 'end-of-stream' comment in keep-alive mode, something like '%END (starting serial) - (ending serial)', which is output after any backlog of updates.
It's still possible not to have any updates for a time, which a client may see as a timeout. We could also add a heartbeat mechanism, to periodically output a comment such as '%HEARTBEAT', if there have not been any updates.
Do either of these changes necessitate a new protocol version?
We could also provide NRTM over HTTP(S) WebSockets, that protocol includes support for a Ping/Pong heartbeat mechanism.
Regards Ed