First of all I know the theories about network loops, 2 physical connections between the same 2 hosts. I know the theory about the loop on layer 2 will create broadcast storms, multicast can't be set with TTL as layer 2 doesn't support that. But I also know for redundancy some companies managed to implement loops even on layer 2.
I also know with ebtables you can drop packets you don't want and there should be a possibility to use this to my advantage on loops. I also know the theories about SPB and STP but I have no knowledge how I can use this, if I can use this, for my request.
So the theory I'm aware of, but I have NO practical information or experience how to set this up right.
REASON: when I create a VPN connection from Asia(Client) to Russia(Host) my download Russia->Asia is 100Mbps but upstream is only 8Mbps to Russia.
The other way around, when I am in Russia(client) and download from Asia (host) the download is 150Mbps and the upstream is 15Mbps.
So in download from A to B or download from B to A it's 150/100Mbps
But Upload from A to B or upload from B to A it's 15/7Mbps
So my thought is I create 2 connections VPN.. and have some sort of filtering to make sure I practically always "download" and never "upload"
Like teaming both connections and at the same time filter the packets marked as "upstream"
I know this is fancy and not standard.
I know this theoretical should be possible.
But how to pull this off with openWRT in practical application, is it possible with openWRT? Maybe no one ever created the proper implementation to pull this off anyway then it won't help me of course.
But I mean, theoretically this should be possible right?
would kmod-bonding be my friend here? Could it bond 2 interfaces established from different locations to each other.