Re: [Openvpn-devel] Introducing the OpenVPN Data Channel Offload Linux kernel module (ovpn-dco)

2020-10-06 Thread Steffan Karger
Hi Antonio,

On 22-09-2020 16:17, Antonio Quartulli wrote:
> Dear all,
> 
> OpenVPN Inc.[1] and me are happy to announce that today we have released
> to the public our work-in-progress project called "ovpn-dco".
> 
> [...] 
> 
> The idea of implementing an OpenVPN kernel module has been around for
> years; finally what were once words have become lines of code.
> I hope more enthusiasts will join the project and help pushing the
> development forward.

Congrats! Very cool that the first version of the code is out. I'm very
much looking forward to this progressing towards stable and
feature-complete code.

I can't make any promises on involvement right now, but you most
certainly triggered my interest :)

-Steffan


___
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel


[Openvpn-devel] Introducing the OpenVPN Data Channel Offload Linux kernel module (ovpn-dco)

2020-09-22 Thread Antonio Quartulli
Dear all,

OpenVPN Inc.[1] and me are happy to announce that today we have released
to the public our work-in-progress project called "ovpn-dco".

ovpn-dco stands for "OpenVPN Data Channel Offload".
It is a Linux kernel module and it implements all required
functionalities to handle the OpenVPN data channel.

In other words, when using ovpn-dco, the OpenVPN software will not send
data traffic back and forth between user and kernel space (for
encryption/decryption and routing), but operations on payloads will take
place in the Linux kernel.

Moving the data channel to kernel space is expected to finally remove
that bottleneck that has long prevented OpenVPN to scale better.
This is just the first step towards a feature-complete kernel based
OpenVPN driver and we will continue to work on improving performance and
 implementing more features.

The project is under heavy development, therefore APIs, data structures
and anything else may drastically change in the following months.

Our goal is to bring ovpn-dco up-to-the-standard with the rest of the
Linux kernel and then submit it for review and inclusion to the netdev
community.

Clients currently able to leverage on the ovpn-dco kernel module are the
OpenVPN3 reference client[2] and the OpenVPN3 Linux client[3] will
include ovpn-dco support in the next release. Support for OpenVPN2 is
planned.

ovpn-dco is released under GPLv2 and everybody is welcome to run, crash
and patch this kernel module.

Code is hosted on both GitHub and GitLab:
* https://gitlab.com/openvpn/ovpn-dco
* https://github.com/OpenVPN/ovpn-dco

Please refer to the README file for more details about how to build and
test ovpn-dco.
Patch submission can be done through this mailing list, as explained in
the README as well.

https://gitlab.com/openvpn/ovpn-dco/-/blob/master/README


The idea of implementing an OpenVPN kernel module has been around for
years; finally what were once words have become lines of code.
I hope more enthusiasts will join the project and help pushing the
development forward.

A big thanks goes to OpenVPN Inc. for having provided all required
resources to make this happen.


Looking forward to see patches coming through!
Happy hacking!


[1] https://www.openvpn.net
[2]
https://github.com/openvpn/openvpn3#building-the-openvpn-3-client-on-linux
[3] https://community.openvpn.net/openvpn/wiki/OpenVPN3Linux

-- 
Antonio Quartulli
OpenVPN Inc.


___
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel