I am currently having the following situation:
I am using a VPN (OpenVPN) over a rather unstable internet connection. This means the maximum bandwidth varies between 100kbs and 1mbit. Whenever the connection is rather unstable and there is high traffic I get a lot of packet loss and everything gets very slow. To prevent this I need some mechanism to control the maxium bandwidth based on packet loss / latency, to get below the threshold where packets are dropped massively. I was thinking of having an icmp (ping) control channel to the vpn server, which is continously analyzed using some kind of script and if the ping gets bad or packets are dropped, the maximum bandwidth will be adjusted by setting a new max bandwidth using tc (for QoS).
My Questions would be: 1. Can this already be done just using tc? 2. Is there maybe a tool, which already does, what I want?
Thanks in advance and best regards!