Page 1 of 1

Builtin Forward Error Correction

Posted: Thu Aug 08, 2019 9:29 pm
by jcordeiro
Hello everyone.

I have been using openvpn for years and I think it is great!
But sometimes I use openvpn on an attempt to make a wireless connection stable.
So far I have had little luck with this as the UDP mode does not offer any error correction method and the TCP mode only uses the settings that desktop apps already use.

But recently I found this:
https://github.com/wangyu-/UDPspeeder

This guy made a UDP tunnel that send duplicated (or more or less) udp frames that allow for high packetloss comunications to suffer very little.
The trade off is a lower bandwidth.

I tested it and it works great.
Even shows how to use this with openvpn. And i used it with great success.
it is also highly configurable. So you can adapt the amount of duplication to the need of your network.

Is it possible to add something like this as a build in option on Openvpn in UDP mode?

Re: Builtin Forward Error Correction

Posted: Fri Aug 09, 2019 11:17 am
by Pippin

Re: Builtin Forward Error Correction

Posted: Sun Aug 11, 2019 2:22 pm
by jcordeiro
I did.

But I fail to understand how a custom TCP relates to Forward Error Correction.

TCP assumes a certain level of PL. Higher PL will result in multiple attempts to resent the information (resulting in high latency) and ultimately in connection loss.

I'm suggesting a builtin mechanism, disabled by default and configured by options, that will send error correction information as an extra UDP frame.
This is not a custom protocol as it is based on standard UDP.
It can be implemented after encryption takes place, as it is a simple mathematic representation of the already existing public package.
I don't know if it can be implemented before encryption takes place, because I don't know if the extra, predictable packages give clues about the encryption secrets.

This system is already a part of every wireless protocol, but its not configurable by the user.

With this openvpn could help stabilize every high PL network.

Re: Builtin Forward Error Correction

Posted: Sun Aug 11, 2019 2:47 pm
by TinCanTech
The openvpn devs made it quite clear why openvpn will not implement this within openvpn itself.

But for the record:
  • FEC requires support by it's own team.
  • FEC will be better implemented outside of openvpn.
  • Nobody in openvpn will do the work, they are busy enough.
  • This can be used as it is now, if you need it.

Re: Builtin Forward Error Correction

Posted: Sun Aug 11, 2019 3:29 pm
by jcordeiro
Openvpn is a opensource project.
If I submit the changes to make this happen, will it be reviewed and added to the mainstream?

Re: Builtin Forward Error Correction

Posted: Sun Aug 11, 2019 4:01 pm
by Pippin
You are free to first discuss it on the mailing list...