Improve VPN robustness
In order to have the VPN work more trouble free, particularly on mobile, we should implement the following 'smart' behavior.
There are three primary reasons that the app might not be able to connect to a gateway:
(1) the network might be down or too bad to sustain a connection. (2) the gateway might be down (3) the network might have a firewall that is blocking the IP or port or protocol that the app is using to connect to the gateway.
Our long term goal should be to make the app behave robustly in the face of any of these three difficulties. In other words, we want the app to automatically recover when possible and alert the user to the correct problem otherwise.
So, to implement robustness really involves three elements: (1) testing the internet to see if is is really up (2) trying different gateways after the first one cannot be contacted. (3) trying different protocols if the first ones are blocked.
I am not sure what exact algorithm for trying different possibilities should be. TBD.
(from redmine: created on 2014-03-26)
- Relations:
- relates #5487 (closed)
- relates #6560 (closed)