Builtin Forward Error Correction

This is where we can discuss what we would like to see added or changed in OpenVPN.
Post Reply
jcordeiro
OpenVpn Newbie
Posts: 3
Joined: Thu Aug 08, 2019 9:17 pm

Builtin Forward Error Correction

Post by jcordeiro » Thu Aug 08, 2019 9:29 pm

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?

User avatar
Pippin
OpenVPN Expert
Posts: 473
Joined: Wed Jul 01, 2015 8:03 am

Re: Builtin Forward Error Correction

Post by Pippin » Fri Aug 09, 2019 11:17 am


jcordeiro
OpenVpn Newbie
Posts: 3
Joined: Thu Aug 08, 2019 9:17 pm

Re: Builtin Forward Error Correction

Post by jcordeiro » Sun Aug 11, 2019 2:22 pm

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.

User avatar
TinCanTech
OpenVPN Protagonist
Posts: 6035
Joined: Fri Jun 03, 2016 1:17 pm

Re: Builtin Forward Error Correction

Post by TinCanTech » Sun Aug 11, 2019 2:47 pm

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.

jcordeiro
OpenVpn Newbie
Posts: 3
Joined: Thu Aug 08, 2019 9:17 pm

Re: Builtin Forward Error Correction

Post by jcordeiro » Sun Aug 11, 2019 3:29 pm

Openvpn is a opensource project.
If I submit the changes to make this happen, will it be reviewed and added to the mainstream?

User avatar
Pippin
OpenVPN Expert
Posts: 473
Joined: Wed Jul 01, 2015 8:03 am

Re: Builtin Forward Error Correction

Post by Pippin » Sun Aug 11, 2019 4:01 pm

You are free to first discuss it on the mailing list...

Post Reply