Tribler / Dollynator

Autonomous self-replicating code
GNU Lesser General Public License v3.0
22 stars 18 forks source link

VPN selection #49

Open MattSkala opened 5 years ago

MattSkala commented 5 years ago

How are we going to handle VPN selection? Currently it's hardcoded to always use AzireVPN. It makes sense to use the cheapest VPN which is working for the selected VPS provider. It would be interesting if the bot can also learn which VPS providers do not care about traffic so we can save on VPN, and for which the VPN is a necessity for survival. Is it possible to integrate it somehow with the current QTable/should we create a separate QTable for VPN selection?

rpytel1 commented 5 years ago

Is there any way to check if provider requires VPN ? I mean some method other than getting banned. Does VPN providers just vary per price or also there is some transfer/bandwidth/other attributes? If it is simply price we can integrate it to one class, if not we probably will have to either do two specific for VPN and VPS selection or make class QTable more generic to be able to support both VPN and VPS.

MattSkala commented 5 years ago

I don't think there is a way to find out other than get banned. :)

Also, only some providers support VPN installation, some of them require enabling TUN/TAP in the control panel, and some of them may not support it at all. This would either require some work on cloudomate side so it gives us more information regarding VPN support, or we can leave it as a parameter for learning.

MattSkala commented 5 years ago

Does VPN providers just vary per price or also there is some transfer/bandwidth/other attributes?

The VPN can vary by speed, but we would need to measure that with a speed test and the speed could also vary in time. We discussed this on the meeting and I think the outcome was that for now, we can just choose a random VPN provider.