angt / glorytun

Multipath UDP tunnel
BSD 2-Clause "Simplified" License
675 stars 103 forks source link

Dynamic rate detection #51

Closed angt closed 4 years ago

angt commented 4 years ago

This is an important feature for LTE links. Should be delivered in a 0.2.x as the new protocol was designed to do that.

ITz-net commented 4 years ago

this is a very very very important feature for LTE 4G

I tested in parallel mlvpn a slightly updated version from markfoodyburton, it also does not have dynamic bandwidth control, but mlvpn tries to solve this trouble with packet re-ordering, and realisation this leads to underloading ISP channels, so for example we loading file, on one interface, with ifstat we see 4.5 megabits and on the second 1.5 megabits, the situation all time changes, every second, then we see the 3 megabit equation occurs on both interfaces and then again re-ordering and everything on circle, as a result, the full band of both ISP is not used, at some point they gain speed about otherness, and then there is reordering..

Thus, we have good load balancing, but there is no aggregation, mlvpn has a fault tolerance mechanism when one of the ISP is lost or does not work well, but in reality often in such a situation it is necessary to restart the mlvpn client or server.

I’ll just add, mlvpn for now no more supported, i compared mlvpn with glorytun version 0.2.2, testing only with two LTE 4G uplinks , mlvpn works more smoothly, and when using glorytun, jerks are noticeable during file download and speed tests.

angt commented 4 years ago

Yes, Dynamic rate detection and latency compensation are the hot next topics :)

angt commented 4 years ago

If you setup cake on your tun interface (both sides) you can have a better experience too.

ITz-net commented 4 years ago

Adrien of course! congratulate you Happy New Year 2020!!! :-)

image

angt commented 4 years ago

I'm going to tag v0.3 with the current dynamic rate limiter, it is far from perfect but I need to test other part of the code before working on a better one :)