Kea http client should re-establish connection after timeout
While testing behavior of the HA implementation when the network between two peers gets partitioned we found that the servers may time out. This may even happen when the connection gets broken one way. In one of the tests we saw the situation that the connection was broken one way but that affected both clients and one of them started to time out until the connection got reset by the peer. If the client was able to reset such connection on its own, it would be able to re-establish the connection with the peer much faster. In addition, in the following resource: https://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html, I found this:
When a client or server wishes to time-out it SHOULD issue a graceful close on the transport connection.
Clients and servers SHOULD both constantly watch for the other side of the transport close, and respond
to it as appropriate. If a client or server does not detect the other side's close promptly it could
cause unnecessary resource drain on the network.
From my reading of it, our client should close the connection upon timeout, but it doesn't.
Edited by Marcin Siodelski