Hacker News new | ask | show | jobs
by tmashb 1873 days ago
Good suggestions but these do not offer redundancy/seamless-failover nor load balancing in case one of the links is poor (only failover), needs excellent and fast connections (the entire thing crumbles, BLEST barely helps), at this point a load balancer with sticky session is better. Very little packetloss with OMR is unusable, and MLVPN needs equal homogeneous uplinks (at least in latency), ubond fork needs manual tuning. Overthebox = OMR, infact OMR is a fork. MPTCP requires excellent connections, unless redundant mode is enabled, no aggregation. Overthebox also switched to Glorytun UDP due to the failover issues, but the performance is poor, and upload is not aggregated.

Speedify/Riverbed($$$) can do bonding, load balancing, and redundancy at the same time per each flow going to the VPN, it also does packet steering if one link goes down in aggregation mode. If parallel downloads are detected, or flows with the same source, they are load balanced instead of aggregation, provides much better performance and no buffer bloat. Uses DPI to detect sensitive connections and routes them to the redundant channel. It also stops bonding and sticks to load balancing if the majority of the uplinks are bad. e.g:

ISP1 Good: LB + aggregation channel with 2 + redundant channel / ISP2 Good: LB + aggregation channel with 1 + redundant channel / ISP3 Bad: LB + redundant channel

or

ISP1 Good: LB + redundant channel / ISP2 Bad: LB + redundant channel

"Bad" as very high latency difference or/and packet loss. Packet aggregation is used only when a single TCP download session is detected. LB is preferred.

It solves all the issues when combining different types of internet which deemed to be impossible or poor before.