Currently there's some situations when node drops the connections:
I think it should be writen at "keepalive" how long and how often that packet must be sent. Also, if sending other types of messages (like "push", "confirm_ack") will "reset" the timeout counter. Also, if it's mandatory to reply the keepalive.