Aggregating multiple internet connections into a single connection to allow improved throughput over a single connection [duplicate]

I have 2 or more internet access paths e.g.:

  • 3G (2 Mb/s)
  • Eth0 (20 Mb/s)
  • Eth1 (separate network) (20Mb/s)

I'd like to aggregate them like Speedify i.e. a single download could benefit from aggregating the links. However rather than speedify's servers I'd like to go through my own server, running linux, that has at least as much bandwidth as my links combined (1Gb/s in, 100Mb/s out). I'd like to do this because I can avoid the additional cost of speedify.

Ideally this would work on Windows and Ubuntu but it's not the end of the world if it's locked to one platform.

Bonus points if the traffic ends up encrypted but that's just a nice to have.

I've investigated MPTCP and it seems like that does what I'd like but I'm having trouble working out how to utilise it.

I've looked at: Aggregating multiple ISP links via tunnels to an endpoint server but it remains unanswered.


Solution 1:

MPTCP is an Experimental standard. Only one gateway is allowed in current standards of networks in Windows&Linux now.